Ce que chaque approche modifie
Chaque réponse fournie par un modèle dépend de deux éléments : ses poids, fixés lors de son entraînement, et le contexte qu'il lit au moment de la requête. Le prompting et la recherche agissent sur le contexte. L'affinage agit sur les poids.
Modification instantanée. Les instructions sont envoyées et facturées à chaque requête.
Les connaissances restent en dehors du modèle, elles peuvent donc être mises à jour et citées. La façon dont le modèle répond reste inchangée.
Le comportement est appris une seule fois, à l'avance. Nécessite de bons exemples et une nouvelle exécution lorsque le comportement doit changer.
Prompting
Le prompting consiste à rédiger des instructions, et souvent quelques exemples concrets, directement dans la requête. Il ne nécessite aucun entraînement, prend effet immédiatement et se modifie facilement, ce qui en fait le point de départ idéal. Ses coûts s'appliquent à chaque appel : un prompt de 2 000 tokens est facturé à chaque requête, ajoute de la latence et occupe de l'espace dans la fenêtre de contexte. De plus, les prompts longs sont suivis de manière imparfaite — plus il y a de règles, plus il est probable que certaines soient ignorées ou appliquées de façon incohérente.
Génération augmentée par la récupération (RAG)
La génération augmentée par la recherche ajoute une étape de recherche. Vos documents sont indexés à l'avance ; pour chaque question, les passages les plus pertinents sont extraits et placés dans le prompt, et le modèle s'appuie dessus pour répondre. Ce terme provient d'un article publié en 2020 par Lewis et ses collaborateurs. Les connaissances résidant en dehors du modèle, il vous suffit de mettre à jour les documents pour les actualiser, et les réponses peuvent citer leurs sources. La manière dont le modèle répond reste cependant inchangée : il continue de rédiger dans son propre style et format.
Lorsque l'objectif est l'acquisition de connaissances, la recherche l'emporte généralement. Une comparaison réalisée en 2023 par Ovadia et ses collaborateurs a révélé que la recherche surpassait systématiquement l'affinage non supervisé pour intégrer des faits dans les réponses d'un modèle, qu'il s'agisse de faits que le modèle avait déjà vus ou de faits entièrement nouveaux.
Fine-tuning
L'affinage poursuit l'entraînement du modèle sur vos propres exemples, afin que le comportement souhaité devienne son comportement par défaut. Les instructions que vous devriez autrement répéter dans chaque prompt — le ton, la structure d'une réponse, le niveau de détail à fournir, la marche à suivre face à une question floue — sont apprises une seule fois. Le modèle répond ainsi même avec un prompt court, ce qui peut rendre chaque requête moins coûteuse et plus rapide, et permettre à un petit modèle d'accomplir une tâche spécifique aussi bien qu'un grand modèle soigneusement prompté.
Ses coûts sont initiaux : vous avez besoin de bons exemples, d'un cycle d'entraînement, d'une évaluation, et d'un nouveau cycle chaque fois que le comportement souhaité évolue. Les faits appris de cette manière sont figés au moment de l'entraînement et sont restitués de manière moins fiable que les faits fournis dans le prompt.
Comment choisir
| Si la question est… | Cela indique |
|---|---|
| Le modèle a-t-il besoin de faits qui changent chaque semaine, ou d'une vaste collection de documents ? | Recherche |
| Les réponses doivent-elles indiquer la source d'un fait ? | Recherche |
| Le problème réside-t-il dans la façon dont il répond — ton, format, longueur, cohérence ? | Affinage |
| Vos prompts sont-ils longs et répétés à chaque appel ? | L'affinage peut les absorber |
| Un modèle plus petit et moins cher doit-il égaler un modèle plus grand sur une tâche précise ? | Affinage ou distillation |
| Êtes-vous encore en train de définir à quoi ressemble une bonne réponse ? | Prompting en premier lieu |
- Semaine 1 — prompting. Un prompt système décrit le produit et le ton. Cela fonctionne, mais le format des réponses varie, et le prompt atteint 1 800 tokens à mesure que des règles sont ajoutées.
- Semaine 3 — récupération. Les articles du centre d'aide sont indexés et les trois plus pertinents sont ajoutés à chaque requête. Les réponses concernant les fonctionnalités deviennent précises et à jour.
- Semaine 6 — fine-tuning. Trois cents discussions d'assistance révisées enseignent le format et le ton. Le prompt système se réduit à deux phrases ; la récupération fournit toujours les faits.
- Résultat. Chaque requête comporte beaucoup moins de tokens d'instruction, les réponses sont cohérentes, et modifier une politique implique toujours de modifier un document plutôt que de réentraîner le modèle.
Erreurs courantes
- Affiner le modèle pour lui enseigner des faits qui évoluent, puis le réentraîner à chaque changement.
- Comparer un modèle affiné avec un modèle de base mal prompté ; comparez-le plutôt avec votre meilleur prompt.
- Attendre de la recherche qu'elle corrige le ton ou le format ; elle ne modifie que ce que le modèle lit.
- Abandonner le prompt système après l'affinage alors que le modèle a été entraîné avec celui-ci.
- Affiner le modèle avant de savoir à quoi ressemble une bonne réponse, ce qui donne des exemples contradictoires.
Références et lectures complémentaires
Les sources externes s'ouvrent dans un nouvel onglet.
- 01Retrieval-Augmented Generation for Knowledge-Intensive NLP TasksLewis et al., 2020 · arXiv · arxiv.orgL'article qui a nommé et introduit le RAG.
- 02Fine-Tuning or Retrieval? Comparing Knowledge Injection in LLMsOvadia et al., 2023 · arXiv · arxiv.orgUne comparaison directe des deux méthodes pour l'ajout de connaissances.
- 03Model optimizationOpenAI API docs · developers.openai.comLe point de vue d'un fournisseur sur le moment opportun pour prompter, évaluer et affiner.
- 04Prompt engineering overviewClaude Platform Docs · platform.claude.comJusqu'où un prompting minutieux peut aller avant qu'un entraînement ne soit nécessaire.