Генерация ответа клиенту

Мультимодальные системы с OpenAI API

James Chapman

Curriculum Manager, DataCamp

Напоминание

print(corrected_text)

Исправленный текст (выделен)

Мультимодальные системы с OpenAI API

План практического примера

$$

  • Модерация сообщения клиента

$$

  • Генерация ответа

$$

  • Модерация ответа

Этапы разбора практического примера

Мультимодальные системы с OpenAI API

Модерация сообщения клиента

from openai import OpenAI

client = OpenAI(api_key="ENTER YOUR KEY HERE")

response = client.moderations.create( input=corrected_text )
# Extract scores and convert to dictionary scores = response.results[0].category_scores.model_dump()
Мультимодальные системы с OpenAI API

Модерация сообщения клиента

print(scores)
{'harassment': 1.0383088920207229e-05,
  ...
 'hate': 6.848756015642721e-07,
  ...
 'violence': 6.475193367805332e-05,
 ...}
Мультимодальные системы с OpenAI API

Модерация сообщения клиента

# Extract violence score
violence_score = scores['violence']

# Check if violence score is above 0.7 if violence_score > 0.7: print("Content flagged for violence!") else: print("Content is safe from violence.")
Content is safe from violence.
Мультимодальные системы с OpenAI API

Генерация ответа

print(FAQs)
Q: How can I upgrade my subscription?
A: You can upgrade your plan anytime in your account settings under 'Billing'. 
...

$$

print(content_overview)
Content Type: Career Track // Title: Associate AI Engineer for Developers // 
...
Мультимодальные системы с OpenAI API

Генерация ответа

Промпт с указанием роли

Мультимодальные системы с OpenAI API

Генерация ответа

Передача ресурсов в промпт

Мультимодальные системы с OpenAI API

Генерация ответа

Полный промпт

Мультимодальные системы с OpenAI API

Генерация ответа

response = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[
        {"role": "system", "content": instruction_prompt},
        {"role": "user", "content": corrected_text}
    ],
    max_completion_tokens=400
)
Мультимодальные системы с OpenAI API

Генерация ответа

# Extract chatbot response
chatbot_reply = response.choices[0].message.content

Ответ чат-бота выделен

Мультимодальные системы с OpenAI API

Модерация ответа

response = client.moderations.create(
    input=chatbot_reply
)

scores = response.results[0].category_scores.model_dump()
Мультимодальные системы с OpenAI API

Модерация ответа

# Check if any scores exceed 0.7
if any(score > 0.7 for score in scores.values()):
    print("AI Response flagged for moderation!")
    chatbot_reply = """I'm sorry, but I can't provide a response to that request.
    Please contact [email protected] for further assistance."""
else:
    print("AI Response is safe.")
AI Response is safe.
Мультимодальные системы с OpenAI API

Итоги

Этапы практического примера с отметками выполнения

Мультимодальные системы с OpenAI API

Давайте потренируемся!

Мультимодальные системы с OpenAI API

Preparing Video For Download...