Few-shot prompting

Ingénierie des prompts avec l'API OpenAI

Fouad Trad

Machine Learning Engineer

Few-shot prompting

Modèle fourni avec des exemples (paires question-réponse)

Une représentation visuelle d’un prompt few-shot montrant sa structure avec des exemples de questions et de réponses, puis enfin la question à laquelle nous voulons que le modèle réponde.

Ingénierie des prompts avec l'API OpenAI

Few-shot prompting

Modèle fourni avec des exemples (paires question-réponse)

Un schéma visuel montrant comment nous envoyons un prompt few-shot au LLM.

Ingénierie des prompts avec l'API OpenAI

Few-shot prompting

Modèle fourni avec des exemples (paires question-réponse)

Un schéma visuel montrant comment nous envoyons un prompt few-shot au LLM et obtenons une réponse en retour.

Ingénierie des prompts avec l'API OpenAI

Few-shot prompting

Modèle fourni avec des exemples (paires question-réponse)

Un schéma visuel montrant comment nous envoyons un prompt few-shot au LLM et obtenons une réponse en retour. Nombre d'exemples : Zero -> zero-shot prompting

Ingénierie des prompts avec l'API OpenAI

Zero-shot prompting

Fournir un prompt sans exemple Le modèle génère des réponses en fonction de ses connaissances

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.
Ingénierie des prompts avec l'API OpenAI

One-shot prompting

Fournir un exemple unique au modèle Utile pour assurer la cohérence du formatage ou du style

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
Ingénierie des prompts avec l'API OpenAI

One-shot prompting

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
Ingénierie des prompts avec l'API OpenAI

Few-shot prompting

Fournir plusieurs exemples Puissant pour les 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

"""

Ingénierie des prompts avec l'API OpenAI

Few-shot prompting

Fournir plusieurs exemples Puissant pour les 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
Ingénierie des prompts avec l'API OpenAI

Prompting few-shot avec un modèle de chat

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
Ingénierie des prompts avec l'API OpenAI

Points importants

Sélectionner le nombre de shots en fonction de {{1}}la complexité de la tâche Fewer shots -> tâches basiques

Une image montrant une personne qui se remet en question.

Ingénierie des prompts avec l'API OpenAI

Passons à la pratique !

Ingénierie des prompts avec l'API OpenAI

Preparing Video For Download...