Roluri de chat și mesaje de sistem

Lucrul cu OpenAI API

James Chapman

Curriculum Manager, DataCamp

Chat Completions

 

Sarcini cu un singur schimb

  • Generare de text
  • Transformare de text
  • Clasificare

O sarcină cu un singur schimb: un prompt și un răspuns.

Lucrul cu OpenAI API

Chat Completions

 

Sarcini cu un singur schimb

  • Generare de text
  • Transformare de text
  • Clasificare

 

Conversații cu mai multe schimburi

→ Se bazează pe prompturi și răspunsuri anterioare

O sarcină cu mai multe schimburi: multiple prompturi și răspunsuri.

Lucrul cu OpenAI API

Roluri

 

  • System: controlează comportamentul asistentului
  • User: instruiește asistentul
  • Assistant: răspunde la instrucțiunile utilizatorului
    • Poate fi scris și de dezvoltator pentru a oferi exemple

Cele trei roluri într-o interacțiune de chat: sistemul, utilizatorul și asistentul.

Lucrul cu OpenAI API

Configurarea cererii

response = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[{"role": "user", "content": prompt}]
)
Lucrul cu OpenAI API

Configurarea promptului

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?"}]
Lucrul cu OpenAI API

Trimiterea unei cereri

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)
Lucrul cu OpenAI API

Răspunsul

Mutable objects can be changed after creation, while immutable objects cannot be
modified once they are created.
Lucrul cu OpenAI API

Prevenirea utilizării abuzive

 

  • Mesaj de sistem: poate include restricții
    • Limitări ale răspunsurilor modelului

guardrails.jpg

Un chatbot tutore financiar și un chatbot consilier financiar.

Lucrul cu OpenAI API

Prevenirea abuzurilor cu mesaje de sistem

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.
"""
Lucrul cu OpenAI API

Prevenirea abuzurilor cu mesaje de sistem

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.
Lucrul cu OpenAI API

Să exersăm!

Lucrul cu OpenAI API

Preparing Video For Download...