Techniques d’ingénierie d’invite

Ces techniques ne sont pas recommandées pour les modèles de raisonnement comme les modèles gpt-5 et de série o.

La construction rapide peut être difficile. Dans la pratique, la requête agit pour aider le modèle à accomplir la tâche souhaitée. Il s’agit toutefois plus d’un art que d’une science, qui nécessite souvent de l’expérience et de l’intuition pour créer une requête réussie. L’objectif de cet article est de vous aider à bien démarrer avec ce processus d’apprentissage. Cet article tente de capturer des concepts généraux et des modèles qui s’appliquent à tous les modèles GPT. Toutefois, il est important de comprendre que chaque modèle se comporte différemment, de sorte que les apprentissages peuvent ne pas s’appliquer de manière égale à tous les modèles.

Note

Pour obtenir des conseils et des exemples d’API actuels, consultez API Responses et la référence de l’API Azure OpenAI dans Modèles Foundry de Microsoft.

Notions de base

Cette section couvre les concepts de base et les éléments des incitations GPT.

Les invites de texte sont la façon dont les utilisateurs interagissent avec les modèles GPT. Comme avec tous les modèles de langage génératif, les modèles GPT tentent de produire la série suivante de mots qui sont les plus susceptibles de suivre à partir du texte précédent. C’est comme si nous disons quelle est la première chose qui vient à votre esprit quand je dis <prompt>? Les exemples ci-dessous illustrent ce comportement. Quand il rencontre les premiers mots d’un contenu célèbre, le modèle est en mesure de poursuivre le texte avec précision.

Prompt Achèvement
Il y a quatre-vingt-sept ans, nos pères donnèrent naissance sur ce continent à une nouvelle nation conçue dans la liberté et vouée à la thèse selon laquelle tous les hommes sont créés égaux. […]
« Appelez-moi Ishmael. » « Il y a quelques années — peu importe combien exactement — ayant peu ou pas d’argent dans ma poche, et rien de particulier qui m’intéressait à terre, je pensai faire un petit voyage en mer et voir la partie aquatique du monde. » […]

Lorsque vous développez des invites plus complexes, il est utile de garder à l’esprit ce comportement fondamental. Quelle que soit l’invite fournie, le modèle répond simplement à ce qu’il détermine est le plus probable (compte tenu de ses données d’apprentissage et de ses cibles d’entraînement). Si vous posez une question dans votre invite, le modèle ne suit pas un chemin de code « Q&A » distinct, mais il semble plutôt répondre à la question, car une réponse est le type de réponse le plus probable pour la question donnée comme entrée.

Composants d’invite

Lorsque vous utilisez l’API Completion alors qu’il n’existe aucune différenciation entre les différentes parties de l’invite, il peut toujours être utile, à des fins d’apprentissage et de discussion, d’identifier les composants d’invite sous-jacents. Avec l'API de complétion de chat, il y a des sections distinctes du prompt envoyées à l’API sous la forme d’un tableau de dictionnaires avec des rôles associés : système, utilisateur et assistant. Ces conseils se concentrent plus généralement sur la façon de réfléchir à la construction rapide plutôt que de fournir des instructions prescriptives spécifiques à une API sur une autre.

Il est également important de comprendre que, bien qu’il puisse y avoir d’autres moyens valides de disséquer les invites, l’objectif de cette décomposition est de fournir un moyen relativement simple d’envisager la construction des invites. Avec l’API d’achèvement, tous les composants sont facultatifs, mais au moins un doit être présent et la plupart des invites incluent plusieurs composants. Il peut également y avoir une zone grise entre les composants. L’ordre présenté ci-dessous correspond approximativement à la fréquence d’utilisation de chaque composant, du plus au moins.

Consignes

Les instructions sont probablement l'élément de rappel le plus couramment utilisé. Les instructions sont simplement les suivantes : instructions au modèle sur ce qu’il faut faire. Bien que simple dans le concept, ils peuvent être complexes dans la pratique. Le tableau suivant illustre cela en montrant des instructions simples et plus complexes, sous deux formes différentes.

Type d’instruction Prompt Achèvement
Instructions simples Écrivez une introduction pour un bulletin hebdomadaire. Bienvenue dans notre bulletin hebdomadaire. Cette semaine, nous avons un focus spécial sur la productivité. Nous partagerons des conseils et des astuces sur la façon d’être productif dans tous les domaines de votre vie. Nous espérons que vous appréciez et s’il vous plaît partager avec vos amis !
Instructions complexes Écrivez une introduction pour le bulletin hebdomadaire de mon entreprise Contoso. Il devrait mentionner la grande réunion plénière que nous avons tenue la semaine dernière et remercier l’équipe pour tout leur travail acharné au cours des derniers mois difficiles. Bienvenue dans le bulletin hebdomadaire de Contoso ! Nous avons eu une excellente réunion d'équipe la semaine dernière et je tiens à remercier l’équipe pour tout leur travail acharné au cours des derniers mois difficiles. Nous sommes impatients d’avoir un avenir brillant et je suis confiante qu’avec le dévouement et l’engagement de notre équipe, nous réaliserons de grandes choses. Merci d’être membre de notre équipe et j’ai hâte de travailler avec vous dans les semaines et mois à venir. Sincèrement, [Votre nom].
Instructions complexes Écrivez une introduction pour un bulletin hebdomadaire, notamment :
- Mon entreprise est nommée contoso
- Un salutation exubérante
- Merci à l’équipe pour son dur travail au cours d’un couple de mois difficiles
- Perspectives positives pour le prochain trimestre
- Signé par le SLT
Bonjour l’équipe Contoso ! Je voulais prendre un moment pour vous remercier de tout votre travail dur au cours des derniers mois. Cela a été quelques mois difficiles, mais vous vous êtes tous soudés et avez fait ensemble un travail incroyable. Je suis vraiment fier de vous tous. En regardant vers le prochain trimestre, je me sens vraiment positif. Je pense que nous allons réaliser de grandes choses. Merci encore, l’équipe de direction principale.

Contenu principal

Le contenu principal fait référence à un type de texte traité ou transformé par le modèle. Le contenu principal est généralement utilisé conjointement avec des instructions. Un exemple simple serait la traduction linguistique. Dans l’exemple ci-dessous, le texte anglais est considéré comme le contenu principal tandis que « Traduire en français : » est une instruction.

Prompt Achèvement
Pouvez-vous me dire comment accéder au musée ?
Traduire en français :
Pouvez-vous s'il vous plaît me dire comment aller au musée?

Le contenu principal peut également être beaucoup plus long. Dans l’exemple suivant, le contenu principal est la section d’introduction de l’entrée Wikipédia sur la complexité temporelle, qui est de près de 300 mots longs. Ce contenu est abrégé dans notre tableau pour faciliter l’affichage.

Prompt Achèvement
Dans la science informatique, la complexité temporelle est la complexité de calcul qui décrit la durée nécessaire à l’exécution d’un algorithme. La complexité temporelle est généralement estimée par [...]
Résumez le texte précédent en quelques phrases :
La complexité du temps est une mesure du temps nécessaire à l’exécution d’un algorithme. Il est généralement exprimé sous la forme d’une fonction de la taille de l’entrée. La mesure la plus courante est la complexité du temps du pire des cas, qui est la durée maximale nécessaire pour les entrées d’une taille donnée.
Dans la science informatique, la complexité temporelle est la complexité de calcul qui décrit la durée nécessaire à l’exécution d’un algorithme. La complexité temporelle est généralement estimée par [...]
TL;DR (TL;DR : Trop long; pas lu)
La complexité temporelle d’un algorithme est le temps nécessaire à l’exécution d’un algorithme. La complexité temporelle est généralement estimée en comptant le nombre d’opérations élémentaires effectuées par l’algorithme, en supposant que chaque opération élémentaire prend un temps fixe à effectuer. La complexité temporelle est généralement exprimée sous la forme d’une fonction de la taille de l’entrée.

Les modèles GPT peuvent également gérer le contenu principal structuré. Dans l’exemple ci-dessous, un fichier TSV sur les bières belges (abrégé à des fins d’affichage dans cet article) est transmis au modèle dans le cadre de l’invite. Il est capable d’interpréter correctement le contenu et de répondre aux questions sur les données.

Prompt Achèvement
Belgian Beer Brands
Beer name Beer style color ABV Brewery
"Chimay Gold: ""Doree""" trappist pale ale gold 4.80% Chimay Brewery (official trappist)
"Chimay Blue: ""Grande Reserve""" trappist dark ale dark 9.00%
[…]
En se référant au tableau ci-dessus, combien de bières ont un taux d'alcool inférieur à 6 % ABV ?
Il y a 10 bières dans la table qui sont inférieures à 6% ABV.

Exemples

Les invites réussies s’appuient souvent sur la pratique de l’apprentissage « en un coup » ou « en quelques coups ». Cela fait référence à l’inclusion d’un ou plusieurs exemples du comportement souhaité du modèle, généralement en incluant des paires d’entrée et de sortie. Ce n’est pas l’apprentissage dans le sens où le modèle est définitivement modifié, mais plutôt que les exemples conditionnent mieux le modèle à répondre comme souhaité uniquement pour l'inférence actuelle. L’utilisation d’invites sans exemples est parfois appelée apprentissage « zéro coup ». Notez que, dans l’API d’achèvement de conversation, les exemples de few-shot learning sont généralement ajoutés au tableau de messages sous forme d’exemples d’interactions utilisateur/assistant après le message système initial.

Type d’apprentissage Prompt Achèvement
Zéro tir Titre : L’entraîneur confiant que les blessures ne dérailleront pas les Warriors
Sujet:
L’entraîneur est confiant dans le fait que la blessure ne compromettra pas la saison des Guerriers. L’équipe se concentre toujours sur ses objectifs et continuera à travailler dur pour les atteindre.
Quelques coups Titre : Correa des Twins va exercer son option de sortie, tester le marché des agents libres
Rubrique : Baseball
Titre : Des zones de dégrisement prévues à la Coupe du monde au Qatar
Rubrique : Football
Titre : Yates : Informations football fantasy pour la semaine 6
Rubrique : Football
Titre : L’entraîneur confiant que les blessures ne dérailleront pas les Warriors
Sujet:
Basket-ball

L’exemple ci-dessus illustre l’utilité de l’apprentissage à quelques coups. Sans les exemples, le modèle semble deviner le comportement souhaité, tandis que les exemples montrent correctement le modèle comment fonctionner. Cela montre également la puissance du modèle, il peut déduire la catégorie d’étiquette souhaitée, même sans étiquette de « basket » dans les exemples.

Signal

Les indicateurs agissent comme « jumpstart » pour la sortie du modèle, ce qui permet de diriger le modèle vers la sortie souhaitée. Il s’agit souvent d’un préfixe sur lequel le modèle peut être généré. Dans l’exemple ci-dessous, nous montrons le signal qui dirige l'histoire pour inclure des éléments clés. Les indicateurs sont souvent utilisés avec des instructions, mais pas toujours. Dans les exemples ci-dessous, le modèle est utilisé pour résumer un courrier électronique d’annonce long. Un indicateur est utilisé dans un cas pour aider à concentrer la sortie du modèle et à suggérer un format de sortie spécifique (points de puce) dans l’autre.

Dans le contexte de l’API Chat Completion, les instructions prennent la forme du message système, et des exemples en quelques coups sont indiqués en fournissant une série d’exemples d’interactions utilisateur/assistant pour aider à amorcer le modèle.

Nombre de repères Prompt Achèvement
0 Les révisions de performances sont un composant essentiel de notre approche performance &développement chez Contoso. […]
Résumez le message électronique ci-dessus :
L’objectif de cet e-mail est d’informer les employés des modifications récentes apportées à l’expérience d’évaluation des performances, qui fait partie de l’approche de développement et de performance de Contoso. Les modifications incluent une structure améliorée, une expérience utilisateur en outil mise à niveau et des invites ciblées. En outre, il existe maintenant une section de démarrage de conversation facultative pour que les employés signalent les rubriques qu’ils souhaitent discuter avec leurs responsables.
1 Les révisions de performances sont un composant essentiel de notre approche performance &développement chez Contoso. […]
Résumez le message électronique ci-dessus :
Le point clé du message est
que Contoso améliore l’expérience d’évaluation des performances en la rendant plus axée sur les priorités principales, les attentes et l’impact. En outre, ils mettent à niveau l’expérience utilisateur dans l’outil en fournissant des astuces, des ressources et des orientations. Enfin, ils ajoutent des conseils sur la façon d’activer les priorités principales à l’échelle de l’entreprise.
2 Les révisions de performances sont un composant essentiel de notre approche performance &développement chez Contoso. […]
Résumez le message électronique ci-dessus :
Points clés :
Contoso introduit les modifications apportées à l’expérience d’évaluation des performances, en fonction des commentaires des employés.
• Les changements comprennent un nouveau focus sur les priorités principales, les attentes et l’impact ; une expérience utilisateur mise à niveau ; et de nouveaux conseils sur les priorités principales de l’entreprise.
• Les évaluations des performances sont un moment pour réfléchir aux performances et à l’apprentissage passés, ainsi qu’à planifier les priorités futures et les opportunités de croissance.
• Les employés et les gestionnaires doivent écrire des commentaires avant la réunion d’examen des performances.
• Il devrait y avoir au moins deux examens de performances par an.
• Le temps d’investissement pour chaque examen devrait rester le même.

Contenu d'accompagnement

Le contenu de support est une information que le modèle peut utiliser pour influencer le résultat d'une manière quelconque. Il diffère du contenu principal dans le sens où il n’est pas la cible principale de la tâche, mais il est généralement utilisé avec le contenu principal. Les exemples courants incluent des informations contextuelles telles que la date actuelle, le nom de l’utilisateur, les préférences utilisateur, etc. L’exemple ci-dessous utilise le contenu de prise en charge pour organiser un ensemble d’ateliers planifiés pour l’utilisateur. Sans les sujets de soutien (rubriques importantes), le modèle répertorie simplement les ateliers en cours (tronqués pour l'affichage), mais lorsqu'il est informé de mes sujets importants, le modèle est en mesure de regrouper avec précision les réunions.

Contenu de prise en charge Prompt Achèvement
Sans Liste des ateliers :
Description du titre
Lancement de l'atelier de planification. Rejoignez-nous pour lancer notre atelier ! Entendez nos dirigeants sur les priorités et les apprentissages inter-groupes pour l’année à venir. L’invitation à cet événement a déjà été envoyée à tout le monde en [...]
Résumez les ateliers ci-dessus, regroupés par rubrique :
Liste des ateliers :
Lancement de l’atelier de planification
-Conclusion de l'atelier de planification
- Core MeetUp
- Perspectives pilotées par le client
-Impact et domaines de focus clés
-Meilleures pratiques
-Accélération de l’adoption de l’application [...]
Avec Liste des ateliers :
Description du titre
Lancement de l'atelier de planification. Rejoignez-nous pour lancer notre atelier ! Entendez nos dirigeants sur les priorités et les apprentissages inter-groupes pour l’année à venir. L’invitation à cet événement a déjà été envoyée à tout le monde en [...]
Mes rubriques importantes : ingénierie rapide, recherche, modèles GPT
Résumez les ateliers ci-dessus, regroupés par mes sujets importants :
1. Ingénierie rapide :
- Nouveaux conseils sur l’ingénierie d’invite
- L’art de l’ingénierie prompte
2. Rechercher :
-Introduction à la recherche vectorielle avec incorporation
3. Modèles GPT :
- Présentation de GPT-4
- GPT-35-Turbo en profondeur.

Conseils spécifiques au scénario

Les techniques de cette section vous apprendront des stratégies pour augmenter la précision et la base des réponses que vous générez avec un modèle de langage volumineux (LLM). Toutefois, il est important de se rappeler que même lorsque vous utilisez l’ingénierie rapide, vous devez toujours valider les réponses générées par les modèles. Simplement parce qu’une invite soigneusement conçue a bien fonctionné pour un scénario particulier ne signifie pas nécessairement qu’elle généralisera plus largement certains cas d’usage. Comprendre les limitations des llMs est tout aussi important que de comprendre comment tirer parti de leurs forces.

Ce guide ne traite pas en profondeur des mécaniques derrière la structure des messages pour les complétions de chat. Si vous n’êtes pas familiarisé avec les modèles d'achèvement de conversation programmatiquement, nous vous recommandons de lire notre guide pratique sur l’API d'achèvement de conversation.

Note

Tous les exemples de cette section du guide ont été testés sur un modèle GPT-4 de base en anglais. Certaines techniques peuvent produire des résultats différents avec des modèles plus récents comme gpt-4.1, et gpt-4.5. Si vous lisez une version localisée de cet article dans une autre langue, ces réponses représentent une traduction localisée des résultats anglais. Pour en savoir plus sur les limitations potentielles en fonction du langage que vous utilisez pour inviter un modèle, consultez notre note de transparence de l’IA responsable.

Apprentissage par peu d'exemples

Un moyen courant d’adapter des modèles linguistiques à de nouvelles tâches consiste à utiliser l’apprentissage à quelques coups. Dans l’apprentissage en quelques essais, un ensemble d’exemples d’entraînement est fourni dans le cadre de l’invite pour donner davantage de contexte au modèle.

Lors de l’utilisation de l’API d’achèvement de conversation, une série de messages entre l’utilisateur et l’assistant (écrits dans le nouveau format d’invite) peuvent servir d’exemples pour l’apprentissage en quelques essais. Ces exemples peuvent être utilisés pour primer le modèle afin de répondre d’une certaine manière, émuler des comportements particuliers et des réponses initiales aux questions courantes.

Message système Exemples à quelques captures
Assistant est un chatbot intelligent conçu pour aider les utilisateurs à répondre à leurs questions fiscales.
Instructions
- Répondez uniquement aux questions relatives aux taxes.
- Si vous n’êtes pas sûr d’une réponse, vous pouvez dire « Je ne sais pas » ou « Je ne suis pas sûr » et recommander aux utilisateurs d’accéder au site web IRS pour plus d’informations.
Utilisateur : « Quand dois-je déposer mes taxes ? »
Assistant : « En 2023, vous devrez déposer vos taxes d’ici le 18 avril. La date tombe après l’échéance habituelle du 15 avril, car le 15 avril tombe le samedi en 2023. Pour plus d’informations, consultez https://www.irs.gov/filing/individuals/when-to-file «

Utilisateur : « Comment puis-je vérifier l’état de mon remboursement d’impôt ? »
Assistant - « Vous pouvez vérifier l’état de votre remboursement fiscal en visitant https://www.irs.gov/refunds »

Le tableau ci-dessus décrit la structure d’invite de base, mais pour une explication détaillée du format d’invite exact, vous devez vous référer au guide sur la finalisation de conversation.

Scénarios sans conversation

Bien que l'API d’achèvement de conversation soit optimisée pour fonctionner avec des conversations en plusieurs tours, elle peut également être utilisée pour des scénarios autres que des conversations. Par exemple, pour un scénario d’analyse des sentiments, vous pouvez utiliser l’invite suivante :

Message système Utilisateur Assistant
Vous êtes un assistant conçu pour analyser les sentiments à partir de données vocales. Les utilisateurs collent une chaîne de texte et vous répondez avec une évaluation de la réponse de l’orateur. Taux sur une échelle de 1 à 10 (10 étant le plus élevé). Expliquer pourquoi cette évaluation a été donnée. bonjour merci d’avoir appelé la pharmacie contoso à qui ai-je le plaisir de parler je comprends votre frustration mary pouvez-vous me dire ce que vous voulez exactement d’accord je vérifierai ça pour vous avec plaisir un moment s’il vous plaît je vois ici que vous utilisiez une forme générique de lipitor c’est bien ça d’accord donc je vois que votre médecin a arrêté de vous prescrire ce médicament en 2021 d’accord oui je serais heureux de vérifier ça pour vous parce que parfois il y a un écart dans le système et ce n’est pas signalé alors laissez-moi jeter un coup d’œil juste un moment alors je vois ici que votre médecin vous a prescrit ces médicaments de 2012 à 2021 d’accord oui d’après les derniers dossiers fournis par le cabinet du médecin vous prenez maintenant un autre médicament metformine si vous souhaitez nous pouvons vous renouveler cette prescription et vous pouvez venir chercher votre metformine 500 mg avec plaisir mary y a-t-il autre chose que je puisse faire pour vous aider aujourd’hui. Évaluation des sentiments : 8
L’orateur de ce texte semble poli, utile et patient tout en répondant aux préoccupations du client. Ils prennent le temps de vérifier les informations, de fournir des explications claires et d’offrir de l’aide. Toutefois, l’évaluation n’est pas un 10, car il existe toujours un indice d’incertitude dans certaines parties de la conversation, ce qui peut ne pas transmettre une confiance totale au client.

Commencer par des instructions claires

L’ordre des informations dans le prompt est important. Cela est dû au fait que les modèles de style GPT sont intégrés d’une certaine manière qui définit la façon dont ils traitent l’entrée. Notre recherche suggère qu'indiquer au modèle la tâche que vous souhaitez qu'il effectue au début de l'invite, avant de partager des informations contextuelles ou des exemples supplémentaires, peut aider à produire des résultats de qualité supérieure.

Note

Bien que cette technique soit toujours recommandée, contrairement aux versions précédentes du modèle (GPT-3 et antérieures), nos tests ont montré que la réponse du modèle avec les modèles ChatGPT et GPT-4 était la même, que la technique soit utilisée. Dans cet exemple, nous voyons que l’ajout de la déclaration « Plusieurs sources … éruption importante » au début ou à la fin de la requête n’a pas entraîné de modification dans la réponse finale du modèle.

Message système Utilisateur Assistant
Vous êtes un assistant IA qui aide les personnes à trouver des informations. Votre tâche consiste à vérifier si l’instruction « Plusieurs sources mentionnent une chance d’une autre éruption importante » est prise en charge par une citation spécifique de l’ensemble d’extraits de code suivant.
---
EXTRAITS
Une probabilité de 14% de méga-séisme touchant Seattle, disent les experts
SEATTLE - Il y a une probabilité de 14 pour cent qu'un tremblement de terre de magnitude 9 frappe Seattle au cours des 50 prochaines années, selon les estimations de l'US Geological Survey. "Malheureusement, nous ne pouvons pas...

[2] Les experts en séisme ont exposé les dernières perspectives quant au vrai "Big One" qui pourrait frapper Seattle
« Nous disons qu’il y a environ 14% chance d’un autre tremblement de terre d’environ magnitude 9 se produisant au cours des 50 prochaines années », a déclaré un géophysiciste à l’Université de Washington...
---
L’affirmation « Plusieurs sources mentionnent-elles une chance d’une autre éruption importante » directement implicite ou déclarée par les extraits de code ?
Non, l’instruction n’est pas directement implicite ou indiquée par les extraits de code. Les extraits de code mentionnent une chance d’un « mégaquake » et d’un « séisme de magnitude 9 Cascadia » qui frappe Seattle au cours des 50 prochaines années, mais ne mentionnent pas une chance d’une autre éruption importante.

Répétez les instructions à la fin

Les modèles peuvent être sensibles à un biais de récurrence, ce qui, dans ce contexte, signifie que les informations à la fin de l’invite peuvent avoir une influence plus significative sur la sortie que sur les informations au début de l’invite. Par conséquent, il est utile de répéter les instructions à la fin de l’invite et d’évaluer l’impact sur la réponse générée.

Préparer la sortie

Cela fait référence à l’inclusion de quelques mots ou expressions à la fin de l’invite pour obtenir une réponse de modèle qui suit le formulaire souhaité. Par exemple, l'utilisation d'un indicateur tel que “Here’s a bulleted list of key points:\n- ” peut vous aider à vérifier que la sortie est mise en forme en liste à puces.

Message système Utilisateur Assistant
Vous êtes un assistant IA qui aide les personnes à trouver des informations. Répondez dans le plus petit nombre de mots possibles. John Smith est marié à Lucy Smith. Ils ont cinq enfants, et il travaille en tant qu’ingénieur logiciel à Microsoft. Quelles requêtes de recherche dois-je faire pour vérifier cela ? ## Une requête de recherche possible est : « John Smith est marié à Lucy Smith, ils ont cinq enfants, ingénieur logiciel chez Microsoft »

Dans l’invite ci-dessus, le texte Une requête de recherche possible est : prime le modèle pour produire une seule sortie. Sans ce repère, le modèle produit plusieurs requêtes de recherche en tant que sortie.

Ajouter une syntaxe claire

Utilisez une syntaxe claire pour votre commande afin de communiquer l’intention et faciliter l’analyse des résultats.

Dans l’exemple ci-dessous, les séparateurs (--- dans ce cas) ont été ajoutés entre différentes sources d’informations ou d’étapes. Cela permet d'utiliser --- comme condition d'arrêt pour la génération. En outre, les en-têtes de section ou les variables spéciales sont présentés en majuscules pour les différencier.

Message système Utilisateur Assistant
Vous êtes un assistant IA qui aide les personnes à trouver des informations. Vous allez lire un paragraphe, puis émettre des requêtes sur un moteur de recherche afin de le vérifier en fait. Expliquez également les requêtes.
---
PARAGRAPHE
John Smith est marié à Lucy Smith. Ils ont cinq enfants, et il travaille en tant qu’ingénieur logiciel à Microsoft. Quelles requêtes de recherche dois-je faire pour vérifier cela ?
---
REQUÊTES
1. « John Smith Microsoft » - Pour vérifier si John Smith est effectivement employé à Microsoft.
2. « John Smith Lucy Smith » - Pour vérifier si John Smith est marié à Lucy Smith.
3. « Enfants John Smith » - Pour vérifier si John Smith a cinq enfants.

Si vous ne savez pas quelle syntaxe utiliser, envisagez d’utiliser Markdown ou XML. Les modèles ont été formés sur un contenu web volumineux en XML et Markdown, ce qui peut fournir de meilleurs résultats.

Décomposer la tâche

Les modèles de langage volumineux (LLMs) fonctionnent souvent mieux si la tâche est divisée en étapes plus petites. Par exemple, dans l’invite de requête de recherche référencée précédemment, l’invite peut être restructurée afin que le modèle soit d’abord invité à extraire des faits pertinents, puis à générer des requêtes de recherche qui peuvent être utilisées pour vérifier ces faits.

Message système Utilisateur Assistant
Vous êtes un assistant IA qui aide les personnes à trouver des informations. Vous allez lire un paragraphe, puis émettre des requêtes sur un moteur de recherche afin de le vérifier en fait.
---
PARAGRAPHE
John Smith est marié à Lucy Smith. Ils ont cinq enfants, et il travaille en tant qu’ingénieur logiciel à Microsoft. Quelles requêtes de recherche dois-je faire pour vérifier cela ?
---
Vous allez maintenant extraire des revendications factuelles et émettre des requêtes pour les vérifier. Lors de l’émission d’une requête, utilisez la fonction SEARCH(« query »)

REVENDICATIONS FACTUELLES
1. John Smith est marié à Lucy Smith
2. Ils ont cinq enfants
3. Il travaille en tant qu’ingénieur logiciel à Microsoft

REQUÊTES
SEARCH(« John Smith marié Lucy Smith »)
SEARCH(« taille de la famille de John Smith »)
SEARCH(« John Smith Microsoft ingénieur logiciel »)

Notez l’utilisation de la syntaxe claire pour différencier les sections et primer la sortie. Dans cet exemple simple, la rupture de la tâche d’une à deux étapes n’est pas très dramatique, mais lorsque vous essayez de le faire pour une plus grande partie du texte avec de nombreuses revendications factuelles, la décomposition de la tâche peut faire une différence significative.

Utilisation des affordances

Parfois, nous pouvons obtenir que le modèle utilise une affordance au lieu de s’appuyer sur ses propres paramètres pour obtenir des informations et des réponses. La recherche, par exemple, peut être un outil pour aider à atténuer les réponses fabriquées et à obtenir des informations à jour.

Une façon simple d’utiliser une affordance consiste à arrêter la génération une fois que les appels d’affordance sont générés par le modèle, puis à coller les résultats dans l’invite. Voici un exemple de ce que l’appel de suivi peut être après avoir effectué les appels SEARCH ci-dessus. Notez comment nous avons collé les résultats de la recherche dans l’invite et remplacé les appels RECHERCHE précédents.

Message système Utilisateur Assistant
Vous êtes un assistant IA qui aide les personnes à trouver des informations. Vous allez lire un paragraphe, extraire des revendications factuelles, puis utiliser les résultats du moteur de recherche pour les vérifier.
---
PARAGRAPHE
John Smith est marié à Lucy Smith. Ils ont cinq enfants, et il travaille en tant qu’ingénieur logiciel à Microsoft. Quelles requêtes de recherche dois-je faire pour vérifier cela ?
---
REVENDICATIONS FACTUELLES
- John Smith est marié à Lucy Smith
- John et Lucy ont cinq enfants
- John travaille en tant qu’ingénieur logiciel à Microsoft
---
Voici différentes requêtes de recherche émises pour rechercher les revendications ci-dessus :
REQUÊTES DE RECHERCHE
- John Smith marié à Lucy Smith
- Nombre d’enfants de John Smith
- Ingénieur logiciel John Smith Microsoft
---
Voici des extraits de code des résultats de la recherche :
EXTRAITS:
[1] … Le mariage de John Smith était le 25 septembre 2012 ...
[2] … John Smith a été accompagné par sa femme Lucy à une fête
[3]John a été accompagné du match de football par ses deux filles et trois fils
[4] … Après avoir passé 10 ans chez Microsoft, Smith a fondé son entreprise, Tailspin Toys.
John M est le smith de la ville, et il a épousé Fiona. Ils ont une fille nommée Lucy
---
Étant donné les extraits de code, vérifiez chacun des revendications factuelles ci-dessus :
- John Smith est marié à Lucy Smith : Confirmé. Extrait de code [1] et [2] mentionnent la femme de John Smith comme Lucy.

- John et Lucy ont cinq enfants : Confirmé. Extrait de code [3] mentionne que John a été accompagné par ses deux filles et trois fils.

- John travaille en tant qu’ingénieur logiciel à Microsoft : Partiellement confirmé. L'extrait de code [4] mentionne que John a passé 10 ans à Microsoft, mais il n'indique pas explicitement qu'il y travaille actuellement. D’autres recherches pourraient être nécessaires pour confirmer son statut actuel d’emploi.

Chaîne de stimulation des pensées

Important

Cette technique n'est applicable qu'aux modèles non logiques. La tentative d’extraction du raisonnement du modèle par le biais de méthodes autres que le paramètre de résumé du raisonnement n’est pas prise en charge, peut violer la stratégie d’utilisation acceptable et peut entraîner une limitation ou une suspension lorsqu’elle est détectée.

Il s'agit d'une variante de la technique consistant à décomposer la tâche. Au lieu de fractionner une tâche en étapes plus petites, dans cette approche, la réponse du modèle est chargée de procéder pas à pas et de présenter toutes les étapes impliquées. Cela réduit la possibilité d’inexactitude des résultats et facilite l’évaluation de la réponse du modèle.

Message système Utilisateur Assistant
Vous êtes un assistant IA qui aide les personnes à trouver des informations. Qui a été le plus décoré (médailles maximales) athlète individuel dans les jeux olympiques qui ont eu lieu à Sydney ? Prenez une approche pas à pas dans votre réponse, citez des sources et donnez un raisonnement avant de partager la réponse finale au format ci-dessous : ANSWER est : <name> Étape 1 : Déterminer l’année des Jeux olympiques de Sydney. Les Jeux olympiques de Sydney ont eu lieu en 2000.

Étape 2 : Trouver la liste des athlètes individuels qui ont remporté plusieurs médailles aux Jeux olympiques de Sydney en 2000.

Selon le site officiel des Jeux olympiques, plusieurs athlètes individuels ont remporté plusieurs médailles aux Jeux olympiques de Sydney en 2000. Voici quelques-uns des noms notables :
• Ian Thorpe (Australie) - 3 or, 2 argent, 0 bronze
• Pieter van den Hoogenband (Pays-Bas) - 2 or, 0 argent, 2 bronze
• Lenny Krayzelburg (États-Unis) - 3 or, 0 argent, 0 bronze
• Inge de Bruijn (Pays-Bas) - 3 or, 1 argent, 0 bronze

Étape 3 : Déterminer l’athlète ayant le plus de médailles. Après avoir examiné la liste des athlètes individuels qui ont remporté plusieurs médailles aux Jeux olympiques de Sydney en 2000, nous pouvons voir que l’athlète ayant le plus de médailles est Ian Thorpe de l’Australie, qui a remporté un total de 5 médailles (3 or et 2 argent).

Par conséquent, la RÉPONSE est : Ian Thorpe.

Spécification de la structure de sortie

L’utilisation de vos commandes pour spécifier la structure de la sortie peut avoir un effet significatif sur la nature et la qualité des résultats. Parfois, les entrées de message système comme « écrivent uniquement des faits vrais » ou « ne fabriquent pas d’informations » peuvent ne pas être des atténuations adéquates. Au lieu de cela, demander la réponse du modèle pour inclure également des citations peut aider à réduire la prévalence des réponses incorrectes.

Si vous demandez au modèle de citer le matériel source lorsqu’il effectue des déclarations, ces instructions sont beaucoup plus susceptibles d’être ancrées. Demander des citations le fait de sorte que le modèle doit effectuer deux erreurs chaque fois qu’il génère une réponse : la première erreur est la réponse fabriquée, et la seconde est la citation incorrecte. Notez que plus la citation est proche du texte qu'elle soutient, plus la distance que le modèle doit prévoir pour anticiper la citation est courte, ce qui suggère que les citations intégrées constituent de meilleures mesures pour mitiger la génération de faux contenus que celles placées à la fin du contenu.

De même, si vous demandez au modèle d’extraire des énoncés factuels d’un paragraphe, il peut extraire des instructions composées telles que « X fait Y AND Z » (ce qui peut être plus difficile à vérifier). Cela peut être évité en spécifiant une structure de sortie telle que (entity1, relation, entity2).

Cet exemple montre l’utilisation de citations et la mise en place de la réponse du modèle pour qu’elle corresponde à une structure définie.

Message système Utilisateur Assistant
Vous êtes un assistant IA qui aide les personnes à trouver des informations Répertoriez les différents comportements présentés par l’agent de support client dans la conversation suivante.
---
bonjour merci d’avoir appelé la pharmacie contoso à qui ai-je le plaisir de parler je comprends votre frustration mary pouvez-vous me dire ce que vous voulez exactement d’accord je vérifierai ça pour vous avec plaisir un moment s’il vous plaît je vois ici que vous utilisiez une forme générique de lipitor c’est bien ça d’accord donc je vois que votre médecin a arrêté de vous prescrire ce médicament en 2021 d’accord oui je serais heureux de vérifier ça pour vous parce que parfois il y a un écart dans le système et ce n’est pas signalé alors laissez-moi jeter un coup d’œil juste un moment alors je vois ici que votre médecin vous a prescrit ces médicaments de 2012 à 2021 d’accord oui d’après les derniers dossiers fournis par le cabinet du médecin vous prenez maintenant un autre médicament metformine si vous souhaitez nous pouvons vous renouveler cette prescription et vous pouvez venir chercher votre metformine 500 mg avec plaisir mary y a-t-il autre chose que je puisse faire pour vous aider aujourd’hui.
---
Comment a-t-il répondu à l’agent de support technique ?
Classifier et répertorier leurs différents comportements et citer la raison de la classification, à l’aide du format BEHAVIOR(« reason »)
1. Comportement poli du message d’accueil(« Agent démarre la conversation avec un message d’accueil poli et demande le nom de l’appelant »)
2. Comportement empathique(« Agent reconnaît la frustration de Mary et tente de comprendre son inquiétude »)
3. Comportement attentif(« Agent écoute le problème du client et demande plus de détails »)
4. Comportement proactif (« L'agent propose d'examiner le problème pour le client »)
5. COMPORTEMENT informatif(« Agent fournit les informations pertinentes sur l’historique des prescriptions du client »)
6. Comportement complet (« Agent vérifie les lacunes possibles dans le système et fournit une réponse complète »)
7. Comportement de confirmation(« Agent confirme le médicament actuel avec le client »)
8. COMPORTEMENT orienté solution (« L'agent propose de remplir la nouvelle prescription du client »)
9. Comportement courtois(« Agent remercie le client et offre une assistance supplémentaire si nécessaire »)
Message système Utilisateur Assistant
Vous êtes un assistant IA qui aide les personnes à trouver des informations. Regrouper les titres d’actualités suivants dans les catégories de rubriques en fonction des modèles affichés dans le texte. Mentionnez également le raisonnement derrière la façon dont ces catégories ont été définies.
Format de sortie :
{
« TOPIC_NAME » : «  »,
« TITRES » : []
« RAISONNEMENT » : «  »
}

Titres des actualités d’entrée :
1. « Des livres aux présentations en quelques secondes avec AR + ML »
2. « Démonstration de 1993 de Yann LeCun âgé de 32 ans, présentant le premier réseau de neurones convolutionnel au monde pour la reconnaissance de texte »
3. « First Order Motion Model appliqué pour animer des peintures »
4. « Robinhood et autres courtiers bloquent littéralement l’achat de $GME, $NOK, $BB, $AMC ; autoriser les ventes »
5. « L'action United Airlines en baisse de plus de 5 % lors de la négociation avant ouverture »
Sortie:

{
« ARTIFICIAL_INTELLIGENCE » : {
« TITRES » : [
« Des livres aux présentations en 10 secondes avec AR + ML »
« Démonstration de 1993 de Yann LeCun, âgé de 32 ans, montrant le premier réseau neuronal convolutif mondial pour la reconnaissance de texte »
« First Order Motion Model appliqué pour animer des peintures »
],
« RAISONNEMENT » : « Ces titres sont liés à l’intelligence artificielle, au Machine Learning et à leurs applications dans différents domaines. »
},
« FINANCIAL_MARKETS » : {
« TITRES » : [
« Robinhood et d’autres courtiers bloquent littéralement l’achat de $GME, $NOK, $BB, $AMC ; ils autorisent les ventes, »
« L'action de United Airlines est en baisse de plus de 5 % dans la négociation avant marché »
« Bitcoin était près de 20 000 $ il y a un an aujourd’hui »
],
« RAISONNEMENT » : « Ces titres sont liés aux marchés financiers, aux actions, aux crypto-monnaies et aux plateformes de négociation. »
}
}

Paramètres de température et de Top_p

La modification du paramètre de température modifie la sortie du modèle. Le paramètre de température peut être défini entre 0 et 2. Une valeur plus élevée, par exemple 0,7, rend la sortie plus aléatoire et produit des réponses plus divergentes, tandis qu’une valeur inférieure, comme. 0.2, rend la sortie plus ciblée et plus concrète. Une histoire fictive peut être générée à l’aide d’une température plus élevée. Alors que pour générer un document juridique, il est recommandé d’utiliser une température beaucoup plus faible. Top_probability est un autre paramètre et est similaire à Temperature en ce sens qu’il contrôle également le caractère aléatoire de la réponse du modèle, mais il le fait de manière différente. La recommandation générale est de modifier l’un de ces deux paramètres à la fois, et non les deux.

Fournir un contexte de base

Une des méthodes les plus efficaces pour fournir des réponses fiables consiste à donner au modèle des données de référence pour formuler ses réponses. Si votre cas d’usage repose sur des informations fiables et à jour et n’est pas un scénario purement créatif, nous vous recommandons vivement de fournir des données de référence. En général, plus vous pouvez rapprocher votre matériel source de la forme finale de la réponse souhaitée, moins le modèle doit travailler, ce qui signifie qu’il y a moins de possibilités d'erreur. Voici un exemple où le système reçoit un blog décrivant le lancement de GPT-4 dans Azure OpenAI dans Microsoft Foundry Models et se voit demander de nommer certains de ses premiers clients.

Message système Utilisateur Assistant
Vous êtes un assistant IA qui aide les personnes à trouver des informations. Vous fournirez des réponses exclusivement à partir du texte ci-dessous et répondez en 100 mots ou moins :
« À Microsoft, nous découvrons constamment de nouvelles façons de libérer de la créativité, de déverrouiller la productivité et des compétences de niveau supérieur afin que plus de personnes puissent tirer parti de l'ia. Cela permet à nos clients de ...

… réduisant ainsi la probabilité que le modèle génère une réponse dangereuse. 1

Répondez en 100 mots ou moins. Utilisez des listes de puces dans la mesure du possible.
Quels sont les premiers clients des modèles OpenAI GPT-4 Azure ? Voici quelques-uns des premiers clients des modèles OpenAI GPT-4 Azure :
- Epic Healthcare : ils prévoient d’utiliser GPT-4 pour aider les médecins et les infirmières à consacrer moins de temps à l’entrée et à l’examen des données.
- Coursera : Ils utilisent Azure OpenAI avec GPT-4 pour créer une expérience d'apprentissage basée sur l'IA sur leur plateforme.
- Coca-Cola : Ils utilisent Azure OpenAI pour créer un hub de connaissances et planifier l'utilisation des capacités modales de GPT-4 pour le marketing, la publicité, les relations publiques et les relations client.
- D’autres entreprises de toutes tailles utilisent Azure IA pour améliorer l’expérience client, synthétiser le contenu de longue forme, écrire des logiciels et réduire les risques en prédisant les données fiscales appropriées.

1 Texte du blog de lancement d'Azure OpenAI GPT-4.

Meilleures pratiques

  • Soyez spécifique. Laissez aussi peu d’interprétation que possible. Limitez l’espace opérationnel.
  • Soyez descriptif. Utilisez des analogies.
  • Miser davantage. Parfois, vous devrez peut-être vous répéter auprès du modèle. Donnez des instructions avant et après votre contenu principal, utilisez une instruction et un indicateur, etc.
  • L'ordre est important. L’ordre dans lequel vous présentez des informations au modèle peut avoir un impact sur la sortie. Que vous ayez mis des instructions avant votre contenu (« résumer les éléments suivants... ») ou après (« résumer les éléments ci-dessus... ») peut faire une différence dans la sortie. Même l’ordre des exemples en quelques coups peut avoir de l’importance. C’est ce qu’on appelle un biais de récurrence.
  • Donnez au modèle un « out ». Il peut parfois être utile de donner au modèle un autre chemin d’accès s’il n’est pas en mesure d’effectuer la tâche affectée. Par exemple, lorsque vous posez une question sur un morceau de texte, vous pouvez inclure quelque chose comme « répondre avec « introuvable » si la réponse n’est pas présente. Cela peut aider le modèle à éviter de générer de fausses réponses.

Efficacité de l’espace

Bien que la taille d’entrée augmente avec chaque nouvelle génération de modèles GPT, il continue d’être des scénarios qui fournissent plus de données que le modèle peut gérer. Les modèles GPT décomposent les mots en « jetons ». Bien que les mots multiples communs soient souvent un seul jeton, les mots moins courants sont rompus en syllabes. Les jetons peuvent parfois être contre-intuitifs, comme le démontrent l’exemple ci-dessous qui illustre les frontières des jetons pour différents formats de date. Dans ce cas, écrire le mois en toutes lettres est plus économe en espace qu’une date entièrement numérique.

Capture d’écran d’une chaîne de texte avec des couleurs en surbrillance délimitant les limites des jetons.

Étant donné cet espace limité, il est important de l’utiliser aussi efficacement que possible.

  • Tableaux : comme illustré dans les exemples de la section précédente, les modèles GPT peuvent comprendre facilement les données mises en forme tabulaires. Il peut s’agir d’un moyen efficace d’inclure des données, plutôt que de précéder chaque champ portant un nom (par exemple, JSON).
  • Espace blanc : les espaces blancs consécutifs sont traités comme des jetons distincts, ce qui peut être un moyen simple de gaspiller de l’espace. Les espaces qui précèdent un mot, d’autre part, sont généralement traités comme faisant partie du même jeton que le mot. Surveillez attentivement votre utilisation de l’espace et n’utilisez pas de ponctuation quand un espace seul suffira.