Роли в чате и системные сообщения

Работа с OpenAI API

James Chapman

Curriculum Manager, DataCamp

Chat Completions

 

Однократные задачи

  • Генерация текста
  • Преобразование текста
  • Классификация

Однократная задача с одним запросом и одним ответом.

Работа с OpenAI API

Chat Completions

 

Однократные задачи

  • Генерация текста
  • Преобразование текста
  • Классификация

 

Многоходовые диалоги

→ Опираются на предыдущие запросы и ответы

Многоходовая задача с несколькими запросами и ответами.

Работа с OpenAI API

Роли

 

  • System: управляет поведением ассистента
  • User: инструктирует ассистента
  • Assistant: отвечает на запрос пользователя
    • Может также заполняться разработчиком для предоставления примеров

Три роли в чат-взаимодействии: system, user и assistant.

Работа с OpenAI API

Настройка запроса

response = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[{"role": "user", "content": prompt}]
)
Работа с OpenAI API

Настройка промпта

messages=[{"role": "system",
           "content": "You are a Python programming tutor who speaks concisely."},
          {"role": "user",
           "content": "What is the difference between mutable and immutable objects?"}]
Работа с OpenAI API

Отправка запроса

response = client.chat.completions.create(
  model="gpt-4o-mini",
  messages=[{"role": "system",
             "content": "You are a Python programming tutor who speaks concisely."},
            {"role": "user",
             "content": "What is the difference between mutable and immutable objects?"}]
)

print(response.choices[0].message.content)
Работа с OpenAI API

Ответ модели

Mutable objects can be changed after creation, while immutable objects cannot be
modified once they are created.
Работа с OpenAI API

Предотвращение злоупотреблений

 

  • Системное сообщение: может включать ограничения
    • Запреты на определённые выходные данные модели

guardrails.jpg

Чат-бот финансового репетитора и чат-бот финансового советника.

Работа с OpenAI API

Предотвращение злоупотреблений с помощью системных сообщений

sys_msg = """
You are finance education assistant that helps students study for exams.

If you are asked for specific, real-world financial advice with risk to their
finances, respond with:

I'm sorry, I am not allowed to provide financial advice.
"""
Работа с OpenAI API

Предотвращение злоупотреблений с помощью системных сообщений

response = client.chat.completions.create(
  model="gpt-4o-mini",
  messages=[{"role": "system",
             "content": sys_msg},
            {"role": "user",
             "content": "Which stocks should I invest in?"}]
)

print(response.choices[0].message.content)
I'm sorry, I am not allowed to provide financial advice.
Работа с OpenAI API

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

Работа с OpenAI API

Preparing Video For Download...