Aller au contenu principal

Le Few-Shot Prompting

Mis à jour le 28 juillet 2026

Apprendre par l’exemple

Le few-shot prompting consiste à fournir au modèle un ou plusieurs exemples de la tâche à réaliser avant de lui soumettre la requête réelle. Au lieu d’expliquer abstraitement ce que vous attendez, vous le montrez concrètement — exactement comme un formateur qui, plutôt que de décrire un bon compte rendu de réunion pendant vingt minutes, en distribue deux bien rédigés et laisse les participants s’en imprégner. Cette technique est l’une des plus efficaces pour obtenir des résultats précis et cohérents avec les modèles Mistral.

Le principe est simple : le modèle s’appuie sur les exemples fournis pour comprendre le format, le ton, le niveau de détail et la logique attendus, puis il reproduit ce schéma pour votre requête. Un exemple bien choisi remplace souvent un paragraphe entier d’explications, et il le remplace mieux.

Zero-shot, one-shot, few-shot : trois niveaux d’accompagnement

Le vocabulaire du domaine distingue trois variantes selon le nombre d’exemples. En zero-shot, vous donnez une instruction sans aucun exemple et le modèle s’appuie uniquement sur ses connaissances :

Classifiez le sentiment de ce texte comme positif, neutre ou négatif :
"Le service client a été réactif mais la livraison était en retard."

Le zero-shot fonctionne pour les tâches simples et courantes que le modèle a rencontrées mille fois pendant son entraînement. Pour des tâches spécifiques à votre métier, il est souvent insuffisant : le modèle classera, mais pas forcément selon vos critères.

En one-shot, un seul exemple suffit parfois à orienter le modèle. L’exemple montre à la fois le format de sortie et la manière de justifier :

Classifiez le sentiment et justifiez en une phrase.

Exemple :
Texte : "Produit excellent, je recommande vivement !"
Sentiment : positif
Justification : Expression d'enthousiasme et recommandation explicite.

À classifier :
Texte : "Le service client a été réactif mais la livraison était en retard."
Sentiment :
Justification :

En few-shot, plusieurs exemples réduisent l’ambiguïté et renforcent la cohérence. C’est particulièrement utile quand les cas limites abondent — comme cet avis mi-figue mi-raisin qui mélange un point positif et un point négatif :

Classifiez le sentiment et justifiez en une phrase.

Exemple 1 :
Texte : "Produit excellent, je recommande vivement !"
Sentiment : positif
Justification : Expression d'enthousiasme et recommandation explicite.

Exemple 2 :
Texte : "Le prix est correct pour ce que c'est."
Sentiment : neutre
Justification : Évaluation factuelle sans émotion forte.

Exemple 3 :
Texte : "Trois semaines d'attente pour un produit défectueux."
Sentiment : négatif
Justification : Problème de délai combiné à un défaut qualité.

À classifier :
Texte : "Le service client a été réactif mais la livraison était en retard."
Sentiment :
Justification :

Avec trois exemples couvrant les trois catégories, le modèle a vu à quoi ressemble chaque cas et calibrera sa réponse en conséquence.

Implémenter le few-shot avec l’API Mistral

Dans un prompt textuel, les exemples s’empilent comme ci-dessus. Mais avec l’API, il existe une méthode plus propre : utiliser les rôles user et assistant pour créer des échanges artificiels qui servent d’exemples. Vous fabriquez de toutes pièces un historique de conversation où le modèle a « déjà » répondu parfaitement :

messages = [
    {
        "role": "system",
        "content": "Vous classifiez des avis clients. Répondez uniquement avec le format indiqué."
    },
    # Exemple 1
    {
        "role": "user",
        "content": "Classifiez : \"Produit excellent, je recommande vivement !\""
    },
    {
        "role": "assistant",
        "content": "Sentiment : positif\nJustification : Expression d'enthousiasme et recommandation explicite."
    },
    # Exemple 2
    {
        "role": "user",
        "content": "Classifiez : \"Trois semaines d'attente pour un produit défectueux.\""
    },
    {
        "role": "assistant",
        "content": "Sentiment : négatif\nJustification : Problème de délai combiné à un défaut qualité."
    },
    # Requête réelle
    {
        "role": "user",
        "content": "Classifiez : \"Le service client a été réactif mais la livraison était en retard.\""
    }
]

En passant les exemples sous forme de messages user/assistant, le modèle les traite comme un historique de conversation réussi qu’il doit prolonger dans la même veine. C’est le pattern à privilégier dès que vous industrialisez : les exemples restent séparés des données, faciles à maintenir et à enrichir.

Quand utiliser le few-shot

Le few-shot brille dans quatre familles de situations. La classification personnalisée, d’abord : quand vos catégories ne sont pas standards — des types de tickets internes propres à votre entreprise, par exemple —, aucune description ne vaut quelques tickets déjà classés. L’extraction de données, ensuite, quand le format de sortie est spécifique à votre organisation. La rédaction avec un ton précis, également : si vous voulez que le modèle adopte votre style éditorial, montrez-lui deux ou trois textes maison plutôt que de tenter de décrire votre style avec des adjectifs. Enfin, les tâches ambiguës en général : dès que la description textuelle ne suffit pas à lever les doutes, un exemple tranche.

Combien d’exemples fournir

Le nombre optimal dépend de la complexité de la tâche. Pour une tâche simple avec un format clair — classification binaire, extraction d’un seul champ —, un ou deux exemples suffisent. Pour une tâche avec plusieurs catégories ou un format complexe, comptez trois à cinq exemples, idéalement un par catégorie. Au-delà de cinq, vous êtes dans le territoire des tâches très spécifiques ou riches en cas limites à couvrir explicitement.

Gardez cependant le coût en tête : chaque exemple consomme des tokens d’entrée, et avec les modèles Mistral, les tokens d’entrée sont facturés. Un prompt de classification appelé dix mille fois par jour avec huit exemples redondants coûte sensiblement plus cher que le même avec trois exemples bien choisis, pour un gain de qualité souvent nul. Trouvez le bon équilibre entre précision et efficacité.

Bien construire vos exemples

Quelques réflexes de qualité pour finir. Variez vos exemples pour couvrir les différents cas possibles, y compris les cas limites : trois exemples tous positifs n’apprennent rien sur le traitement des avis négatifs. Gardez un format rigoureusement identique d’un exemple à l’autre — la moindre variation de structure sera interprétée comme significative et reproduite. Utilisez des exemples réalistes, proches de vos données réelles : un modèle entraîné sur vos vrais avis clients classera mieux vos vrais avis clients que s’il n’a vu que des phrases d’école. Et placez toujours la requête réelle en dernier : le modèle accorde plus d’attention au début et à la fin du prompt.

Points clés à retenir

  • Le few-shot prompting montre au modèle ce que vous attendez par l’exemple
  • Utilisez les rôles user/assistant pour créer des exemples dans l’API Mistral
  • 1 à 5 exemples suffisent dans la majorité des cas
  • Variez les exemples pour couvrir les différents scénarios, format identique partout
  • Le few-shot est idéal pour la classification, l’extraction et la rédaction avec un format spécifique