Invite à quelques exemples

Conception de invites (Prompt Engineering) avec l'API d'OpenAI

Fouad Trad

Machine Learning Engineer

Invite à quelques exemples

  • Modèle muni d'exemples (paires question-réponse)

Schéma d'un invite à quelques exemples montrant sa structure avec des questions-réponses d'exemple, puis la question à faire traiter par le modèle.

Conception de invites (Prompt Engineering) avec l'API d'OpenAI

Invite à quelques exemples

  • Modèle muni d'exemples (paires question-réponse)

Schéma illustrant comment envoyer un invite à quelques exemples au LLM.

Conception de invites (Prompt Engineering) avec l'API d'OpenAI

Invite à quelques exemples

  • Modèle muni d'exemples (paires question-réponse)

Schéma illustrant l'envoi d'un invite à quelques exemples au LLM et la réponse reçue.

Conception de invites (Prompt Engineering) avec l'API d'OpenAI

Invite à quelques exemples

  • Modèle muni d'exemples (paires question-réponse)

Schéma illustrant l'envoi d'un invite à quelques exemples au LLM et la réponse reçue.

  • Nombre d'exemples :
    • Zéro -> invite sans exemple (zero-shot)
    • Un -> invite à un exemple (one-shot)
    • Plus d'un -> invite à quelques exemples (few-shot)
Conception de invites (Prompt Engineering) avec l'API d'OpenAI

Invite sans exemple (zero-shot)

  • Donner un invite sans exemples
  • Le modèle répond selon ses connaissances
  • Idéal pour des tâches rapides et simples
prompt = "What is prompt engineering?"
print(get_response(prompt))
Prompt engineering refers to designing and refining prompts or instructions given 
to a language model like ChatGPT to elicit desired responses or behaviors. It 
involves formulating specific guidelines or hints to guide the model's output 
towards a desired outcome.
Conception de invites (Prompt Engineering) avec l'API d'OpenAI

Invite à un exemple (one-shot)

  • Fournir au modèle un seul exemple
  • Utile pour un formatage ou un style constants
prompt =  """ 
Q: Sum the numbers 3, 5, and 6. A: 3+5+6=14
Q: Sum the numbers 2, 4, and 7. A: 
"""
print(get_response(prompt))
2+4+7=13
Conception de invites (Prompt Engineering) avec l'API d'OpenAI

Invite à un exemple (one-shot)

prompt = """
Q: Sum the numbers 3, 5, and 6. A: The sum of 3, 5, and 6 is 14
Q: Sum the numbers 2, 4, and 7. A: 
"""
print(get_response(prompt))
The sum of 2, 4, and 7 is 13
Conception de invites (Prompt Engineering) avec l'API d'OpenAI

Invite à quelques exemples

  • Fournir plus d'un exemple
  • Puissant pour des tâches contextuelles
prompt = """
Text: Today the weather is fantastic -> Classification: positive
Text: The furniture is small -> Classification: neutral
Text: I don't like your attitude -> Classification: negative

"""

Conception de invites (Prompt Engineering) avec l'API d'OpenAI

Invite à quelques exemples

  • Fournir plus d'un exemple
  • Puissant pour des tâches contextuelles
prompt = """
Text: Today the weather is fantastic -> Classification: positive
Text: The furniture is small -> Classification: neutral
Text: I don't like your attitude -> Classification: negative
Text: That shot selection was awful -> Classification: 
"""
print(get_response(prompt))
negative
Conception de invites (Prompt Engineering) avec l'API d'OpenAI

Invite à quelques exemples avec un modèle de clavardage

response = client.chat.completions.create(
  model = "gpt-4o-mini",

messages = [{"role": "user", "content": "Today the weather is fantastic"},
{"role": "assistant", "content": "positive"},
{"role": "user", "content": "I don't like your attitude"}, {"role": "assistant", "content": "negative"},
{"role": "user", "content": "That shot selection was awful"} ], temperature = 0 )
print(response.choices[0].message.content)
negative
Conception de invites (Prompt Engineering) avec l'API d'OpenAI

Points à considérer

  • Choisir le nombre d'exemples selon la complexité de la tâche
    • Moins d'exemples -> tâches de base
    • Exemples variés -> tâches complexes

Image montrant une personne qui se questionne.

Conception de invites (Prompt Engineering) avec l'API d'OpenAI

Passons à la pratique !

Conception de invites (Prompt Engineering) avec l'API d'OpenAI

Preparing Video For Download...