Entretien Série IA 12 : Comment optimiser le prompt ?
L'optimisation de prompt (Prompt Engineering / Optimization) est une compétence clé pour faire en sorte que les grands modèles de langage « obéissent », en particulier dans les systèmes RAG, car elle détermine directement si le modèle est disposé à suivre fidèlement le contenu récupéré, à éviter les hallucinations et à respecter un format de sortie standard.
1. Principes fondamentaux de l'optimisation de prompt
- Clarté > Complexité : des instructions simples et directes sont souvent plus efficaces que des chaînes de pensée sophistiquées.
- Donner suffisamment de contraintes : indiquer clairement au modèle « ce qu'il peut faire et ce qu'il ne peut pas faire ».
- Fournir des exemples : le Few-shot est plus stable que le Zero-shot.
- Vérifiable : faire en sorte que le modèle fournisse des citations ou des niveaux de confiance pour faciliter les décisions en aval.
- Optimisation itérative : partir d'une base de référence, ne modifier qu'une variable à la fois, et comparer les effets.
2. Techniques spécifiques d'optimisation (de la plus simple à la plus difficile)
1. Paramétrage du rôle (System Prompt)
Vous êtes un assistant de service client professionnel. Vous devez répondre uniquement en fonction des 【Références】 fournies ci-dessous.
Si vous ne connaissez pas la réponse, dites directement « Les informations ne sont pas disponibles dans les documents », sans inventer.
- Rôle : définir les limites et le ton.
- Points d'optimisation : ton (professionnel / amical), force des contraintes (strict / souple).
2. Instructions claires
❌ Mauvais : « Réponds à la question de l'utilisateur. »
✅ Bon : « Uniquement sur la base des 【Références】 ci-dessous. Si les références ne contiennent pas la réponse, réponds « Je ne peux pas répondre à cette question ». »
3. Contrôle du format de sortie
Veuillez fournir la sortie au format JSON suivant :
{
"answer": "Votre réponse",
"confidence": "Élevée/Moyenne/Faible",
"sources": [1, 3]
}
- Utilité : faciliter l'analyse en aval, la citation et le débogage.
4. Exemples Few-shot (très efficace)
Exemple 1 :
Question : Combien de jours de congés annuels ?
Références : Règle des congés annuels : 5 jours pour 1 an, 10 jours pour 10 ans.
Réponse : 5 jours pour 1 an, 10 jours pour 10 ans.
Exemple 2 :
Question : Comment sont calculées les heures supplémentaires ?
Références : Heures supplémentaires en semaine : 1,5 fois, le week-end : 2 fois.
Réponse : En semaine 1,5 fois, le week-end 2 fois.
Maintenant, réponds :
Question : {question de l'utilisateur}
Références : {contenu récupéré}
Réponse :
- Astuce : les exemples doivent couvrir différents niveaux de difficulté, et inclure de préférence un exemple de « réponse impossible ».
5. Citation obligatoire
À la fin de la réponse, indiquez le numéro de source avec [citation:X]. Par exemple : « Les congés annuels sont de 5 jours [citation:1]. »
Si plusieurs sources sont combinées, citez-les séparément.
6. Définition d'un seuil de refus de réponse
- Contrainte dure : « Si les références n'ont aucun rapport avec la question, répondez 'Les documents ne sont pas pertinents'. »
- Contrainte souple : en combinant le score de confiance de la récupération, si en dessous du seuil, déclencher automatiquement la branche de refus.
7. Chaîne de pensée (Chain-of-Thought) pour le raisonnement multi-sauts
Question : Qui est le patron de Zhang San ?
Étapes : 1. D'abord, trouver le département de Zhang San. 2. Ensuite, trouver le responsable de ce département. 3. Donner la réponse finale.
Veuillez réfléchir par étapes avant de répondre.
8. Instructions négatives (Negative Prompting)
N'inventez pas de réponse. N'utilisez pas de mots vagues comme « peut-être », « probablement ». Ne produisez aucun chiffre en dehors des références.
3. Comment évaluer la qualité d'un prompt ?
| Indicateur | Signification | Comment le mesurer |
|---|---|---|
| Fidélité | La réponse est-elle strictement basée sur les références ? | Humain ou mesure Faithfulness de RAGAS |
| Précision du refus | Refuse-t-il de répondre quand il le faut ? | Calcul sur un ensemble de test sans réponse |
| Taux de respect du format | La sortie respecte-t-elle le JSON / la citation demandé(e) ? | Correspondance par expression régulière |
| Satisfaction utilisateur | La réponse est-elle utile ? | Retour en ligne / test A/B |
Conseil : préparez un petit ensemble de test (20 à 50 cas limites), exécutez-le à chaque modification de prompt, et enregistrez les changements.
4. Pièges courants et axes d'optimisation
| Problème observé | Cause possible | Méthode d'optimisation |
|---|---|---|
| Le modèle ignore les références et répond de lui-même | Instruction pas assez contraignante | Remplacer par « Uniquement sur la base des documents suivants » et montrer un refus avec few-shot |
| Le modèle dit toujours « Je ne sais pas » | Seuil de refus trop élevé | Baisser le seuil ou vérifier la qualité de la récupération |
| Format de sortie désordonné, pas en JSON | Instruction peu claire | Ajouter un exemple de format strict, ou utiliser function calling |
| Réponse trop longue / trop courte | Aucune indication de longueur | « Réponds en 3 phrases maximum » |
| Erreur de raisonnement multi-sauts | Capacité de raisonnement insuffisante du modèle | Demander un raisonnement étape par étape, ou utiliser un modèle plus fort |
| Hallucination de chiffres/dates | Le modèle se fie à ses propres connaissances | Insister : « N'utilisez aucun chiffre dont vous vous souvenez, référez-vous uniquement aux documents » |
评论
暂无已展示的评论。
发表评论(匿名)