Aller au contenu principal

Fournir des exemples

One-shot vs multi-shot

Quand les instructions seules ne suffisent pas a obtenir le resultat souhaite, un exemple concret vaut mille mots.

  • Zero-shot : pas d’exemple, uniquement des instructions
  • One-shot : un seul exemple d’entree/sortie
  • Multi-shot : plusieurs exemples couvrant differents cas

Plus la tache est ambigue ou le format de sortie complexe, plus les exemples sont necessaires.

Le probleme : les cas ambigus

Prenons l’analyse de sentiment. Pour des phrases directes, Claude s’en sort bien sans exemple :

  • “Ce produit est genial !” → Positif (facile)
  • “Service deplorable.” → Negatif (facile)

Mais le sarcasme et l’ironie posent probleme :

  • “Bravo, 3 semaines de livraison pour un t-shirt, vraiment impressionnant.” → ?

Sans exemple, Claude peut interpreter le “Bravo” et “impressionnant” comme positifs. Avec un exemple de sarcasme correctement classifie, il comprend immediatement le pattern.

Structure d’un exemple avec XML

Utilisez des balises explicites pour separer l’entree de la sortie attendue :

<exemple>
  <sample_input>
  Wow, 45 minutes d'attente pour un cafe. Quelle efficacite remarquable.
  </sample_input>
  <ideal_output>
  Sentiment : Negatif
  Confiance : 0.9
  Note : Sarcasme detecte. Les mots "Wow" et "remarquable" sont utilises ironiquement
  pour exprimer une frustration face au temps d'attente excessif.
  </ideal_output>
</exemple>

Exemple complet : analyse de sentiment avec sarcasme

<instructions>
Analyse le sentiment du texte fourni. Classifie-le en Positif, Negatif ou Neutre.
Indique ton niveau de confiance (0 a 1) et explique ton raisonnement en une phrase.
Sois attentif au sarcasme et a l'ironie.
</instructions>

<exemple>
  <sample_input>
  Ah super, encore une mise a jour qui casse tout. Merci les developpeurs !
  </sample_input>
  <ideal_output>
  Sentiment : Negatif
  Confiance : 0.95
  Note : Sarcasme. "Super" et "Merci" sont ironiques, l'utilisateur critique
  une mise a jour qui a cause des problemes.
  </ideal_output>
</exemple>

<exemple>
  <sample_input>
  Le support client m'a rappele en 10 minutes et a resolu mon probleme du premier coup.
  </sample_input>
  <ideal_output>
  Sentiment : Positif
  Confiance : 0.95
  Note : Expression sincere de satisfaction. Rapidite (10 minutes) et efficacite
  (premier coup) sont des indicateurs positifs sans ambiguite.
  </ideal_output>
</exemple>

<texte_a_analyser>
{texte_utilisateur}
</texte_a_analyser>

Quand fournir des exemples

Les exemples sont particulierement utiles dans ces situations :

Cas limites et ambigus

Sarcasme, ironie, formulations a double sens. Un exemple bien choisi vaut une longue explication.

Formats de sortie complexes

Si vous attendez un format specifique (JSON avec des cles precises, tableau avec des colonnes exactes), un exemple montre le format mieux que n’importe quelle description.

<exemple>
  <sample_input>Reseau neuronal convolutif</sample_input>
  <ideal_output>
  {
    "terme": "Reseau neuronal convolutif",
    "acronyme": "CNN",
    "definition_simple": "Un type d'IA specialise dans l'analyse d'images",
    "analogie": "Comme un oeil qui apprend a reconnaitre des formes",
    "niveau": "intermediaire"
  }
  </ideal_output>
</exemple>

Style ou ton specifique

Si vous voulez un ton particulier (pedagogique, humoristique, corporate), un exemple ancre le style mieux que des adjectifs.

Entrees ambigues

Quand les memes donnees pourraient etre traitees de plusieurs facons, l’exemple clarifie votre intention.

Trouver de bons exemples

La meilleure source d’exemples est votre pipeline d’evaluation. Quand vous evaluez un prompt :

  1. Identifiez les sorties qui ont obtenu les meilleurs scores
  2. Utilisez-les comme exemples dans votre prompt
  3. Re-evaluez pour mesurer l’impact

C’est un cercle vertueux : les meilleures sorties deviennent les exemples qui ameliorent les sorties suivantes.

Ajouter du contexte aux exemples

Un exemple brut montre le “quoi”. Un exemple avec contexte explique le “pourquoi” — et c’est ca qui fait la difference.

<exemple>
  <sample_input>
  Ce restaurant etait pas mal du tout.
  </sample_input>
  <ideal_output>
  Sentiment : Positif
  Confiance : 0.7
  Note : "Pas mal du tout" est une litote francaise exprimant une appreciation
  moderee mais reelle. Confiance moyenne car l'intensite du sentiment est ambigue.
  </ideal_output>
  <explication>
  Cet exemple illustre comment traiter les litotes, frequentes en francais.
  "Pas mal" semble negatif syntaxiquement mais exprime un sentiment positif.
  La confiance est volontairement basse car l'intensite est difficile a quantifier.
  </explication>
</exemple>

La balise <explication> aide Claude a comprendre la logique derriere l’exemple, pas seulement le resultat.

Bonnes pratiques

  1. Utilisez des balises XML pour structurer vos exemples (<sample_input>, <ideal_output>)
  2. Soyez explicite sur ce qui fait qu’un exemple est bon ou mauvais
  3. Ciblez les cas de defaillance — les exemples ont le plus d’impact la ou Claude echoue
  4. 2-3 exemples suffisent dans la plupart des cas — inutile d’en mettre 10
  5. Variez les exemples — couvrez des cas differents, pas des variations du meme cas
  6. Ajoutez du contexte quand le “pourquoi” n’est pas evident

Points cles

  • One-shot (1 exemple) suffit souvent pour les formats de sortie et les cas simples
  • Multi-shot (2-3 exemples) est necessaire pour les cas ambigus et le sarcasme
  • Structurez les exemples avec <sample_input> et <ideal_output>
  • Les meilleurs exemples viennent de vos evaluations (sorties ayant obtenu les meilleurs scores)
  • Ajoutez une <explication> pour clarifier le raisonnement derriere l’exemple
  • Les exemples sont la technique la plus efficace pour les cas limites que les instructions seules ne resolvent pas