ChatGPT: Le guide des bonnes pratiques

Table of Contents

Six stratégies pour obtenir de meilleurs résultats

Rédigez des instructions claires

ChatGPT ne peut pas lire dans vos pensées. Si les réponses sont trop longues, demandez des réponses brèves. Si les résultats sont trop simples, demandez une rédaction de niveau expert. Si vous n’aimez pas le format, montrez le format que vous aimeriez voir. Moins ChatGPT doit deviner ce que vous voulez, plus vous aurez de chances de l’obtenir.

Tactiques:

  • Incluez des détails dans votre requête pour obtenir des réponses plus pertinentes
  • Demander au modèle d’adopter un personnage
  • Utilisez des délimiteurs (ex: ### ) pour indiquer clairement les parties distinctes du prompt
  • Spécifier les étapes requises pour terminer une tâche
  • Donnez des exemples
  • Spécifiez la longueur souhaitée de la sortie

Fournir un texte de référence

ChatGPT peut inventer en toute confiance de fausses réponses, en particulier lorsqu’ils sont interrogés sur des sujets ésotériques ou sur des citations et des URL. De la même manière qu’une feuille de notes peut aider un étudiant à mieux réussir un test, fournir un texte de référence aux GPT peut aider à répondre avec moins de fabrications.

Tactiques:

  • Demandez au modèle de répondre à l’aide d’un texte de référence
  • Demandez au modèle de répondre avec des citations d’un texte de référence

Divisez les tâches complexes en sous-tâches plus simples

Les tâches complexes ont tendance à avoir des taux d’erreur plus élevés que les tâches plus simples. De plus, les tâches complexes peuvent souvent être redéfinies comme un flux de tâches plus simples dans lequel les sorties des tâches précédentes sont utilisées pour construire les entrées des tâches ultérieures.

Tactiques:

  • Utiliser la classification d’intention pour identifier les instructions les plus pertinentes pour une requête utilisateur
  • Pour les applications de dialogue qui nécessitent de très longues conversations, résumez ou filtrez le dialogue précédent
  • Résumez de longs documents par morceaux et construisez un résumé complet de manière récursive

Donnez à ChatGPT le temps de “réfléchir”

Si on vous demande de multiplier 17 par 28, vous ne le saurez peut-être pas instantanément, mais vous pourrez toujours le résoudre avec le temps. De même, ChatGPT fait plus d’erreurs de raisonnement lorsqu’il essaie de répondre tout de suite, plutôt que de prendre du temps pour élaborer une réponse. Demander une chaîne de raisonnement avant une réponse peut aider les GPT à se frayer un chemin vers des réponses correctes de manière plus fiable.

Tactiques:

  • Demandez au modèle de trouver sa propre solution avant de se précipiter vers une conclusion
  • Utilisez un monologue intérieur ou une séquence de requêtes pour masquer le processus de raisonnement du modèle
  • Demandez au modèle s’il a manqué quelque chose lors des passes précédentes

Utiliser des outils externes

Compenser les faiblesses de ChatGPT en l’alimentant des sorties d’autres outils. Par exemple, un système de récupération de texte peut indiquer à ChatGPT les documents pertinents. Un moteur d’exécution de code peut aider ChatGPT à faire des calculs et à exécuter du code. Si une tâche peut être effectuée de manière plus fiable ou efficace par un outil plutôt que par ChatGPT, déchargez-la pour tirer le meilleur parti des deux.

Tactiques:

  • Utiliser la recherche basée sur les intégrations pour mettre en œuvre une récupération de connaissances efficace
  • Utiliser l’exécution de code pour effectuer des calculs plus précis ou appeler des API externes

Tester systématiquement les changements

Améliorer les performances est plus facile si vous pouvez les mesurer. Dans certains cas, une modification d’un prompt permet d’obtenir de meilleures performances sur quelques exemples isolés, mais entraîne une dégradation des performances globales sur un ensemble d’exemples plus représentatif. Par conséquent, pour être sûr qu’un changement est net positif pour les performances, il peut être nécessaire de définir une suite de tests complète (également appelée « eval »).

Tactiques:

  • Évaluer les sorties du modèle en se référant aux réponses de référence

Détail des tactiques

Chacune des stratégies énumérées ci-dessus peut être utilisée avec des tactiques spécifiques. Ces tactiques sont destinées à fournir des idées de choses à essayer. N’hésitez pas à tester d’autres tactiques, car il est tout simplement impossible de toute les lister: à chaque prompt ses subtilités !

Stratégie : Rédigez des instructions claires


Tactique : incluez des détails dans votre requête pour obtenir des réponses plus pertinentes


Afin d’obtenir une réponse très pertinente, assurez-vous que les demandes fournissent tous les détails ou le contexte importants. Sinon, vous laissez au modèle le soin de deviner ce que vous voulez dire.

Pire promptMeilleur prompt
Comment ajouter des nombres dans Excel ?Comment ajouter une ligne de montants en dollars dans Excel ? Je veux le faire automatiquement pour une feuille entière de lignes avec tous les totaux se terminant à droite dans une colonne appelée “Total”.
Qui est président ?Qui était le président du Mexique en 2021 et à quelle fréquence les élections ont-elles lieu ?
Écrire du code pour calculer la suite de Fibonacci.Écrivez une fonction TypeScript pour calculer efficacement la suite de Fibonacci. Commentez généreusement le code pour expliquer ce que fait chaque élément et pourquoi il est écrit de cette façon.
Résumez les notes de réunion.Résumez les notes de réunion en un seul paragraphe. Ensuite, rédigez une liste des conférenciers et de chacun de leurs points clés. Enfin, dressez la liste des prochaines étapes ou actions suggérées par les intervenants, le cas échéant.

Tactique : demander au modèle d’adopter un personnage

Le “message système”, accessible aux utilisateurs de l’API, peut être utilisé pour spécifier le persona utilisé par le modèle dans ses réponses.

SystèmeLorsque je demande de l’aide pour écrire quelque chose, vous répondez avec un document qui contient au moins une blague ou un commentaire ludique dans chaque paragraphe.
UtilisateurÉcrivez une note de remerciement à mon fournisseur de boulons en acier pour avoir livré la livraison à temps et dans un court délai. Cela nous a permis de livrer une commande importante.

Tactique : utilisez des délimiteurs pour indiquer clairement des parties distinctes de l’entrée

Les délimiteurs tels que les guillemets triples, les balises XML, les titres de section, etc. peuvent aider à délimiter les sections de texte à traiter différemment.

UTILISATEURRésumez le texte délimité par des triples guillemets avec un haïku. “””insérer du texte ici”””
Prompt avec les triple guillemets
SYSTÈMEVous recevrez une paire d’articles (délimités par des balises XML) sur le même sujet. Résumez d’abord les arguments de chaque article. Ensuite, indiquez lequel d’entre eux présente un meilleur argument et expliquez pourquoi.
UTILISATEUR<article> insérer le premier article ici </article> <article> insérer le deuxième article ici </article>
Prompt avec une balise <article> créée pour l’occasion
SYSTÈMEVous recevrez un résumé de thèse et un titre suggéré pour celui-ci. Le titre de la thèse doit donner au lecteur une bonne idée du sujet de la thèse, mais doit également être accrocheur. Si le titre ne répond pas à ces critères, proposez 5 alternatives.
UTILISATEURRésumé : insérer le résumé ici Titre : insérer le titre ici
Exemple de prompt avec 2 délimiteurs: “résumé :” et “titre :”

Pour des tâches simples telles que celles-ci, l’utilisation de délimiteurs peut ne pas faire de différence dans la qualité de sortie. Cependant, plus une tâche est complexe, plus il est important de désambiguïser les détails de la tâche. 

Tactique : Spécifiez les étapes requises pour accomplir une tâche

Certaines tâches sont mieux spécifiées comme une séquence d’étapes. L’écriture explicite des étapes peut faciliter leur suivi par le modèle.

SYSTÈMEUtilisez les instructions étape par étape suivantes pour répondre aux entrées de l’utilisateur. Étape 1 – L’utilisateur vous fournira du texte entre guillemets triples. Résumez ce texte en une phrase avec un préfixe indiquant “Résumé :”. Étape 2 – Traduisez le résumé de l’étape 1 en espagnol, avec un préfixe indiquant “Traduction : “.
UTILISATEUR“””insérer du texte ici”””
Prompt avec guillemet triple comme séparateur et 2 étapes

Tactique : fournir des exemples

Fournir des instructions générales qui s’appliquent à tous les exemples est généralement plus efficace que de démontrer toutes les permutations d’une tâche par exemple, mais dans certains cas, fournir des exemples peut être plus facile. Par exemple, si vous souhaitez que le modèle copie un style particulier de réponse aux requêtes des utilisateurs qui est difficile à décrire explicitement. Ceci est connu sous le nom de prompt “few-shot”.

L’exemple ci-dessous fait appel à 3 “personnes”: Le Système, l’Utilisateur et l’Assistant. Il faut impérativement passer par l’API ou le playground pour ce prompt “tripartite”:

SYSTÈMERépondez dans un style cohérent.
UTILISATEURApprends-moi la patience.
ASSISTANTLa rivière qui creuse la vallée la plus profonde coule d’une modeste source ; la symphonie la plus grandiose naît d’une seule note ; la tapisserie la plus complexe commence par un fil solitaire.
UTILISATEURParlez-moi de l’océan.
Exemple de réponse, qui tient compte du style donné par l’assistantL’océan est une vaste étendue d’eau salée qui couvre plus de 70 % de la surface de la Terre. Sa profondeur et son étendue recèlent d’innombrables mystères et merveilles, de la vie grouillante qui remplit ses eaux aux puissants courants qui façonnent le climat de notre planète. La beauté de l’océan est à la fois tranquille et féroce, invitant les explorateurs à plonger dans ses profondeurs tout en nous rappelant la puissance impressionnante de la nature. Autant qu’il est un terrain de jeu et une ressource pour les humains, l’océan est aussi un écosystème délicat qui doit être nourri et protégé au profit de toute vie sur Terre.
Prompt tripartite guidé à l’aide d’un exemple. A utiliser en mode API ou sur le Playground.

Tactique : Spécifiez la longueur souhaitée de la sortie

Vous pouvez demander au modèle de produire des sorties d’une longueur cible donnée. La longueur de sortie ciblée peut être spécifiée en termes de nombre de mots, de phrases, de paragraphes, de puces, etc. Notez cependant que demander au modèle de générer un nombre spécifique de mots ne fonctionne pas avec une grande précision. Le modèle peut générer de manière plus fiable des sorties avec un nombre spécifique de paragraphes ou de puces.

UTILISATEURRésumez le texte délimité par des triples guillemets en 50 mots environ. “””insérer du texte ici”””
UTILISATEURRésumez le texte délimité par des triples guillemets en 2 paragraphes. “””insérer du texte ici”””
UTILISATEURRésumez le texte délimité par des triples guillemets en 3 puces. “””insérer du texte ici”””

Stratégie : fournir un texte de référence

Tactique : demander au modèle de répondre à l’aide d’un texte de référence

Si nous pouvons fournir à un modèle des informations fiables et pertinentes dans le prompt, nous pouvons demander au modèle d’utiliser les informations fournies pour composer sa réponse.

SYSTÈMEUtilisez les articles fournis délimités par des triples guillemets pour répondre aux questions. Si la réponse ne se trouve pas dans les articles, écrivez « Je n’ai pas trouvé de réponse ».
UTILISATEUR<insérer les articles, chacun délimité par des triples guillemets> Question : <insérer la question ici>

Étant donné que ChatGPT a des fenêtres de contexte limitées (il est limité en nombre de token à analyser), pour appliquer cette tactique, nous avons besoin d’un moyen de rechercher dynamiquement des informations pertinentes pour la question posée. Les intégrations (embeddings en anglais) peuvent être utilisées pour implémenter une récupération de connaissances efficace. Voir la tactique “Utiliser la recherche basée sur les intégrations pour implémenter une récupération de connaissances efficace” pour plus de détails sur la façon de l’implémenter.

Tactique : demander au modèle de répondre avec des citations d’un texte de référence

Si l’entrée a été complétée par des connaissances pertinentes, il est simple de demander au modèle d’ajouter des citations à ses réponses en référençant des passages des documents fournis. Notez que les citations dans la sortie peuvent ensuite être vérifiées par programme en faisant correspondre les chaînes dans le document fourni.

SYSTÈMEVous recevrez un document délimité par des triples guillemets et une question. Votre tâche est de répondre à la question en utilisant uniquement le document fourni et de citer le(s) passage(s) du document utilisé pour répondre à la question. Si le document ne contient pas les informations nécessaires pour répondre à cette question, écrivez simplement : “Informations insuffisantes”. Si une réponse à la question est fournie, elle doit être annotée avec une citation. Utilisez le format suivant pour citer les passages pertinents ({“citation”: …}).
UTILISATEUR“””<insérer le document ici>””” <insérer la question ici>
Prompt qui demande de répondre uniquement si la réponse est dans le document fourni.

Exemple:

Stratégie : diviser les tâches complexes en sous-tâches plus simples

Tactique : Utiliser la classification des intentions pour identifier les instructions les plus pertinentes pour une requête utilisateur

Pour les tâches dans lesquelles de nombreux ensembles d’instructions indépendants sont nécessaires pour gérer différents cas, il peut être avantageux de commencer par classer le type de requête et d’utiliser cette classification pour déterminer les instructions nécessaires. Ceci peut être réalisé en définissant des catégories fixes et des instructions de codage en dur pertinentes pour la gestion des tâches dans une catégorie donnée. Ce processus peut également être appliqué de manière récursive pour décomposer une tâche en une séquence d’étapes. L’avantage de cette approche est que chaque requête ne contiendra que les instructions nécessaires pour effectuer l’étape suivante d’une tâche, ce qui peut entraîner des taux d’erreur inférieurs par rapport à l’utilisation d’une seule requête pour effectuer l’ensemble de la tâche. Cela peut également entraîner une réduction des coûts, car les invites plus volumineuses coûtent plus cher à exécuter ( voir les informations de tarification ).

Supposons par exemple que pour une application de service client, les requêtes puissent être utilement classées comme suit :

SYSTÈMEVous recevrez des requêtes de service à la clientèle. Classez chaque requête en une catégorie principale et une catégorie secondaire. Fournissez votre sortie au format json avec les clés : primaire et secondaire.
Catégories principales : facturation, support technique, gestion de compte ou demande générale.
Catégories secondaires de facturation :
– Désabonnement ou mise à niveau
– Ajouter un mode de paiement
– Explication des frais
– Contester des frais

Catégories secondaires du support technique :
– Dépannage
– Compatibilité des appareils
– Mises à jour logicielles

Catégories secondaires de gestion du compte :
– Réinitialisation du mot de passe
– Mettre à jour les informations personnelles
– Fermer le compte
– Sécurité du compte

Catégories secondaires d’enquête générale :
– Informations sur le produit
– Prix
– Commentaires
– Parler à un humain
UTILISATEURJe dois remettre mon internet en marche.

Exemple:

En fonction de la classification de la requête du client, un ensemble d’instructions plus spécifiques peut être fourni à un modèle GPT pour gérer les étapes suivantes. Par exemple, supposons que le client ait besoin d’aide pour le “dépannage”.

SYSTÈMEVous recevrez des demandes de service client qui nécessitent un dépannage dans un contexte de support technique. Aidez l’utilisateur en :
– Lui demandant de vérifier que tous les câbles vers/depuis le routeur sont connectés. Notez qu’il est courant que les câbles se détachent avec le temps.
– Si tous les câbles sont connectés et que le problème persiste, demandez-lui quel modèle de routeur il utilise
– Vous allez maintenant lui indiquer comment redémarrer son appareil :
— Si le numéro de modèle est MTD-327J, conseillez-lui d’appuyer sur le bouton rouge et maintenez-le enfoncé pendant 5 secondes, puis attendez 5 minutes avant de tester la connexion.
— Si le numéro de modèle est MTD-327S, conseillez-leur de le débrancher et de le rebrancher, puis attendez 5 minutes avant de tester la connexion.
– Si le problème du client persiste après avoir redémarré l’appareil et attendu 5 minutes, connectez-le à l’assistance informatique en affichant {« Assistance informatique demandée »}.
– Si l’utilisateur commence à poser des questions sans rapport avec ce sujet, confirmez s’il souhaite mettre fin au chat en cours sur le dépannage et classez sa demande selon le schéma suivant :

< insérer le schéma de classification primaire/secondaire ci-dessus >
UTILISATEURJe dois remettre mon internet en marche.

Exemple:

Notez que le modèle a été chargé d’émettre des chaînes spéciales pour indiquer quand l’état de la conversation change. Cela nous permet de transformer notre système en une machine à états où l’état détermine quelles instructions sont injectées. En gardant une trace de l’état, des instructions pertinentes à cet état, et éventuellement des transitions d’état autorisées à partir de cet état, nous pouvons mettre des garde-fous autour de l’expérience utilisateur qui seraient difficiles à atteindre avec une approche moins structurée.

Tactique : pour les applications de dialogue qui nécessitent de très longues conversations, résumez ou filtrez le dialogue précédent

ChatGPT ayant une longueur de contexte fixe, le dialogue entre un utilisateur et un assistant dans lequel toute la conversation est incluse dans la fenêtre de contexte ne peut pas se poursuivre indéfiniment.

Il existe diverses solutions de contournement à ce problème, dont l’une consiste à résumer les tours précédents de la conversation. Une fois que la taille de l’entrée atteint une longueur de seuil prédéterminée, cela peut déclencher une requête qui résume une partie de la conversation et le résumé de la conversation précédente peut être inclus dans le message système. Alternativement, la conversation précédente pourrait être résumée de manière asynchrone en arrière-plan tout au long de la conversation entière.

Une solution alternative consiste à sélectionner dynamiquement les parties précédentes de la conversation qui sont les plus pertinentes pour la requête en cours. Voir la tactique “Utiliser la recherche basée sur les incorporations pour implémenter une récupération de connaissances efficace” .

Tactique : Résumez les documents longs par morceaux et construisez un résumé complet de manière récursive

Étant donné que ChatGPT a une longueur de contexte fixe, ils ne peuvent pas être utilisés pour résumer un texte plus long que la longueur du contexte moins la longueur du résumé généré dans une seule requête. En d’autres termes, si vous demandez à ChatGPT de résumer un texte très long, il ne peut pas le faire en une seule fois si le texte est plus long que ce qu’il peut se rappeler. De plus, il doit aussi garder de l’espace pour le résumé qu’il va créer. Donc, si le texte est trop long, il ne pourra pas tout résumer en une seule demande.

Pour résumer un document très long tel qu’un livre, nous pouvons utiliser une séquence de requêtes pour résumer chaque section du document. Les résumés de section peuvent être concaténés et résumés en produisant des résumés de résumés. Ce processus peut se poursuivre de manière récursive jusqu’à ce qu’un document entier soit résumé. S’il est nécessaire d’utiliser des informations sur les sections précédentes afin de donner un sens aux sections ultérieures, une autre astuce qui peut être utile consiste à inclure un résumé du texte qui précède un point donné du livre tout en résumant le contenu à ce point. L’efficacité de cette procédure pour résumer des livres a été étudiée dans des recherches antérieures d’OpenAI utilisant des variantes de GPT-3.

Stratégie : donner à ChatGPT le temps de “réfléchir”

Tactique : demandez au modèle de trouver sa propre solution avant de se précipiter vers une conclusion

Parfois, nous obtenons de meilleurs résultats lorsque nous demandons explicitement au modèle de raisonner à partir des premiers principes avant d’arriver à une conclusion. Supposons, par exemple, que nous souhaitions qu’un modèle évalue la solution d’un élève à un problème mathématique. La façon la plus évidente d’aborder cela est de simplement demander au modèle si la solution de l’élève est correcte ou non.

SYSTÈMEDéterminez si la solution de l’élève est correcte ou non.
UTILISATEURÉnoncé du problème : Je construis une installation d’énergie solaire et j’ai besoin d’aide pour établir les finances.
– Le terrain coûte 100€/m2
– Je peux acheter des panneaux solaires pour 250€/m2
– J’ai négocié un contrat d’entretien qui me coûtera 100k€ par an, et un supplément de 10€/m2

Quel est le coût total pour le première année d’exploitation en fonction du nombre de m2.

Solution de l’étudiant :
Soit x la taille de l’installation en m2.
1. Coût du terrain : 100x
2. Coût du panneau solaire : 250x
3. Coût de maintenance : 100 000 + 100x

Coût total : 100x + 250x + 100 000 + 100x = 450x + 100 000
ASSISTANTLa solution de l’élève est correcte.

Mais la solution de l’élève n’est en fait pas correcte ! Nous pouvons faire en sorte que le modèle le remarque avec succès en invitant le modèle à générer d’abord sa propre solution.

SYSTÈMETrouvez d’abord votre propre solution au problème. Comparez ensuite votre solution à la solution de l’élève et évaluez si la solution de l’élève est correcte ou non. Ne décidez pas si la solution de l’élève est correcte tant que vous n’avez pas résolu le problème vous-même.
UTILISATEURÉnoncé du problème : Je construis une installation d’énergie solaire et j’ai besoin d’aide pour établir les finances.
– Le terrain coûte 100€/m2
– Je peux acheter des panneaux solaires pour 250€/m2
– J’ai négocié un contrat d’entretien qui me coûtera 100k€ par an, et un supplément de 10€/m2

Quel est le coût total pour le première année d’exploitation en fonction du nombre de m2.

Solution de l’étudiant :
Soit x la taille de l’installation en m2.
1. Coût du terrain : 100x
2. Coût du panneau solaire : 250x
3. Coût de maintenance : 100 000 + 100x

Coût total : 100x + 250x + 100 000 + 100x = 450x + 100 000
ASSISTANTSoit x la taille de l’installation en pieds carrés.
1. Coût du terrain : 100x
2. Coût du panneau solaire : 250x
3. Coût d’entretien : 100 000 + 10x
Coût total : 100x + 250x + 100 000 + 10x = 360x + 100 000

La solution de l’élève est incorrecte.
Il a fait une erreur dans le calcul du coût de maintenance, en utilisant 100x au lieu de 10x.
Le coût total correct pour la première année d’exploitation est de 360x + 100 000.



Tactique : Utiliser un monologue intérieur ou une séquence de requêtes pour masquer le processus de raisonnement du modèle

La tactique précédente démontre qu’il est parfois important pour le modèle de raisonner en détail sur un problème avant de répondre à une question précise. Pour certaines applications, le processus de raisonnement utilisé par un modèle pour arriver à une réponse finale serait inapproprié à partager avec l’utilisateur. Par exemple, dans les applications de tutorat, nous pouvons souhaiter encourager les étudiants à trouver leurs propres réponses, mais le processus de raisonnement d’un modèle sur la solution de l’étudiant pourrait révéler la réponse à l’étudiant.

Le monologue intérieur est une tactique qui peut être utilisée pour atténuer cela. L’idée du monologue intérieur est de demander au modèle de placer des parties de la sortie qui sont censées être cachées à l’utilisateur dans un format structuré qui facilite leur analyse. Ensuite, avant de présenter la sortie à l’utilisateur, la sortie est analysée et seule une partie de la sortie est rendue visible.

SYSTÈMESuivez ces étapes pour répondre aux questions des utilisateurs.

Étape 1 – Trouvez d’abord votre propre solution au problème. Ne vous fiez pas à la solution de l’élève car elle peut être incorrecte. Placez tout votre travail pour cette étape entre triples guillemets (“””).

Étape 2 – Comparez votre solution à la solution de l’élève et évaluez si la solution de l’élève est correcte ou non. Joignez tout votre travail pour cette étape entre triples guillemets (“” “).

Étape 3 – Si l’élève a fait une erreur, déterminez quel indice vous pourriez lui donner sans donner la réponse. Placez tout votre travail pour cette étape entre triples guillemets (“””).

Étape 4 – Si l’élève a fait une erreur, donnez l’indice de l’étape précédente à l’élève (en dehors des triples guillemets). Au lieu d’écrire “Étape 4 – …” écrivez “Astuce :”.
UTILISATEURÉnoncé du problème : < insérer l’énoncé du problème >

Solution de l’élève : < insérer la solution de l’élève >



Alternativement, cela peut être réalisé avec une séquence de requêtes dans lesquelles toutes sauf la dernière ont leur sortie masquée à l’utilisateur final.
Premièrement, nous pouvons demander au modèle de résoudre le problème par lui-même. Étant donné que cette requête initiale ne nécessite pas la solution de l’élève, elle peut être omise. Cela offre l’avantage supplémentaire qu’il n’y a aucune chance que la solution du modèle soit biaisée par la solution tentée par l’élève.

UTILISATEUR< insérer l’énoncé du problème >

-Ensuite, nous pouvons demander au modèle d’utiliser toutes les informations disponibles pour évaluer l’exactitude de la solution de l’élève.

SYSTÈMEComparez votre solution à la solution de l’élève et évaluez si la solution de l’élève est correcte ou non.
UTILISATEURÉnoncé du problème : “””< insérer l’énoncé du problème > “””

Votre solution : “”” < insérer la solution générée par le modèle >”””

Solution de l’élève : “”” < insérer la solution de l’élève > “””

Enfin, nous pouvons laisser le modèle utiliser sa propre analyse pour construire une réponse sous la forme d’un tuteur utile.

SYSTÈMEVous êtes professeur de mathématiques. Si l’élève a fait une erreur, offrez un indice à l’élève d’une manière qui ne révèle pas la réponse. Si l’élève n’a pas fait d’erreur, offrez-lui simplement un commentaire encourageant.
UTILISATEURÉnoncé du problème : “””< insérer l’énoncé du problème > “””

Votre solution : “”” < insérer la solution générée par le modèle >”””

Solution de l’élève : “”” < insérer la solution de l’élève > “””

Analyse: “””< insérer analyse générée par le modèle à partir de l’étape précédente >”””



Tactique : demander au modèle s’il a manqué quelque chose lors des passes précédentes

Supposons que nous utilisions un modèle pour répertorier des extraits d’une source qui sont pertinents pour une question particulière. Après avoir listé chaque extrait, le modèle doit déterminer s’il doit commencer à en écrire un autre ou s’il doit s’arrêter. Si le document source est volumineux, il est courant qu’un modèle s’arrête trop tôt et ne répertorie pas tous les extraits pertinents. Dans ce cas, de meilleures performances peuvent souvent être obtenues en demandant au modèle des requêtes de suivi pour trouver les extraits qu’il a manqués lors des passes précédentes.

SYSTÈMEVous recevrez un document délimité par des triples guillemets. Votre tâche consiste à sélectionner des extraits qui se rapportent à la question suivante : “Quels changements de paradigme significatifs se sont produits dans l’histoire de l’intelligence artificielle ?”.

Assurez-vous que les extraits contiennent tout le contexte pertinent nécessaire pour les interpréter – en d’autres termes, n’extrayez pas de petits extraits qui manquent de contexte important. Fournissez une sortie au format JSON comme suit :

[{“excerpt”: “…”},

{“excerpt”: “…”}]
UTILISATEUR“””< insérer le document ici >”””
ASSISTANT[{“excerpt”: “le modèle écrit un extrait ici”},

{“excerpt”: “le modèle écrit un autre extrait ici”}]
UTILISATEURExiste-t-il des extraits plus pertinents ? Veillez à ne pas répéter des extraits. Assurez-vous également que les extraits contiennent tout le contexte pertinent nécessaire pour les interpréter – en d’autres termes, n’extrayez pas de petits extraits qui manquent de contexte important.

chevron_left
chevron_right

Leave a comment

Your email address will not be published. Required fields are marked *

Comment
Name
Email
Website