il n’est pas si évident de faire un prompt qui nous donnera totalement satisfaction si nous omettons de donner à Chat GPT les précisions dont il a besoin pour nous soumettre un résultat conforme à nos attente. Il y a des points à ne pas oublié, plus la demande est claire, complète et précise et plus le résultat le sera aussi. Il est important de savoir que l’AI ne lit pas encore dans votre esprit. Si vous lui laissez trop de liberté, il y a de forte chance pour que le résultat ne soit pas celui que vous attendez.
- Demande Claire : Formulez votre question ou votre demande de manière précise et directe.
- Clarifier le Contexte : Fournissez des informations de fond ou des détails contextuels pour aider le modèle à comprendre la situation.
- Utiliser des Questions Directes : Posez des questions directes si vous attendez des réponses spécifiques.
- Définir un Personnage : Si nécessaire, spécifiez un personnage ou un rôle pour contextualiser la réponse.
- Préciser le Format de Réponse : Indiquez si vous attendez une réponse sous forme de liste, de paragraphe, de dialogue, etc.
- Inclure des Mots-Clés : Utilisez des mots-clés pertinents pour guider le modèle vers le sujet souhaité.
- Définir le Ton et le Style : Précisez le ton (formel, informel) et le style (descriptif, narratif) souhaités pour la réponse.
- Utiliser les Triple Guillemets : Encadrez les textes longs ou les exemples spécifiques avec des triple guillemets pour une clarté maximale.
- Fournir des Exemples : Incluez des exemples concrets pour guider le modèle sur le type de réponse attendu.
- Indiquer l’Objectif : Précisez l’objectif de votre requête, comme informer, persuader, divertir, etc.
- Contrôler la Longueur : Indiquez si vous préférez une réponse courte et concise ou une explication détaillée.
- Décortiquer les Tâches : Décomposez votre demande en tâches ou en étapes spécifiques si elle est complexe.
- Demander des Raisonnements ou Explications : Si vous cherchez à comprendre le « pourquoi » ou le « comment », demandez explicitement des raisonnements ou des explications.
- Inclure des Contraintes Spécifiques : Mentionnez toute contrainte particulière, comme l’évitement de certains sujets ou l’utilisation de terminologie spécifique.
- Ajouter des Références : Fournissez des références telles que des PDF, des images ou des liens vers des sites internet pour enrichir le contexte.
- Inclure des Instructions de Formatage : Donnez des instructions claires sur le formatage, comme l’utilisation de bullet points, de numérotation, etc.
- Éviter les Ambiguïtés : Soyez précis pour éviter toute ambiguïté dans votre demande.
- Préciser le Niveau de Détail : Indiquez si vous souhaitez une vue d’ensemble ou une analyse en profondeur.
- Définir des Limites Temporelles : Si nécessaire, indiquez une période ou une échéance pour la réponse.
- Vérifier la Pertinence : Assurez-vous que votre demande est pertinente et réalisable pour un modèle de langage AI.
Exemple de prompts complets :
Exemple 1
« Bonjour ChatGPT, en tant qu’expert en SEO et SEM, (Définir un Personnage) je te demande de m’aider à rédiger un discours de 5 minutes pour un colloque professionnel sur les tendances SEO-SEM pour 2024. (Demande Claire) Le public cible est constitué de professionnels et d’experts en référencement. (Clarifier le Contexte)
Le discours doit inclure une introduction sur l’évolution du SEO et du SEM, suivie de trois parties principales : les nouvelles pratiques en SEO, les innovations en SEM, et les stratégies intégrées SEO-SEM pour 2024. (Décortiquer les Tâches) Chaque partie doit être concise et contenir des informations clés et des prédictions basées sur les tendances actuelles. (Contrôler la Longueur)
Le ton doit être professionnel et informatif, adapté à un public d’experts. (Définir le Ton et le Style) Merci de fournir des exemples concrets et des données récentes pour illustrer chaque tendance. (Fournir des Exemples)
Assure-toi que les informations sont à jour et reflètent les dernières évolutions du domaine. (Vérifier la Pertinence) Si possible, inclue des références à des études ou des rapports récents pour étayer les tendances mentionnées. (Ajouter des Références)
Enfin, termine le discours par une conclusion qui souligne l’importance de l’adaptation aux nouvelles tendances pour rester compétitif dans le domaine du SEO et du SEM. (Préciser le Format de Réponse) Le discours doit être structuré de manière à engager et à informer efficacement les professionnels du référencement. (Inclure des Instructions de Formatage) »
Exemple 2
« Bonjour ChatGPT, en tant qu’historien spécialiste de la Première Guerre mondiale, (Définir un Personnage) je te demande de m’aider à rédiger un discours de 5 minutes pour un colloque sur ce sujet. Le public cible est constitué d’étudiants en histoire de niveau licence. Le discours doit être basé sur la citation de Winston Churchill : « « « La guerre de 1914-1918 doit être abordée avec respect, en raison non seulement de sa taille mais aussi de ses résultats. » » »(Utiliser les Triple Guillemets)
Je souhaite que le discours inclue une introduction qui contextualise la citation, suivie de trois parties principales : les causes de la guerre, son déroulement, et ses conséquences. (Décortiquer les Tâches) Chaque partie doit être concise et contenir des informations clés adaptées à un public universitaire. (Contrôler la Longueur)
Le ton doit être informatif mais accessible, avec un langage approprié pour des étudiants en licence. (Définir le Ton et le Style) Merci de fournir des exemples concrets pour illustrer chaque partie du discours. (Fournir des Exemples)
Assure-toi que les informations sont précises et basées sur des faits historiques vérifiables. (Vérifier la Pertinence) Si possible, inclue des références à des sources fiables pour permettre aux étudiants de poursuivre leurs recherches. (Ajouter des Références)
Enfin, termine le discours par une conclusion qui résume les points clés et reflète sur l’importance de la Première Guerre mondiale dans l’histoire contemporaine. (Préciser le Format de Réponse) Le discours doit être structuré de manière à faciliter la compréhension et l’engagement des étudiants. (Inclure des Instructions de Formatage) »
Le prompt engineering pour GPT selon Open AI
Voici, de manière plus synthétique et plus « simple » les points donnés par Open AI pour un prompting optimal. A noter que certains points concernent la réalisation de GPT’s.
1 – Des instructions claires
Moins le modèle doit deviner ce que vous voulez, plus vous aurez de chances de l’obtenir.
Méthodes :
- Inclure des détails dans votre demande pour obtenir des réponses plus pertinentes
- Demander au modèle d’adopter un personnage
- Utiliser des délimiteurs pour indiquer clairement des parties distinctes de l’entrée (triple guillemets)
- Préciser les étapes nécessaires pour mener à bien une tâche
- Donner des exemples
- Préciser la longueur souhaitée de la sortie
2 – Fournir le texte de référence
Les modèles de langage comme celui-ci peuvent parfois créer des réponses inexactes, surtout sur des sujets complexes ou spécifiques, mais avoir des textes de référence peut aider à obtenir des réponses plus précises.
Méthodes :
- Demander à l’AI de baser ses réponses sur les informations contenues dans un texte spécifique
- Demander au modèle de répondre avec des citations d’un texte de référence
3 – Diviser des tâches complexes en sous-taches plus simples
Tout comme c’est une bonne pratique en ingénierie logicielle pour décomposer un système complexe en un ensemble de composants modulaires, il en va de même pour les tâches soumises à un modèle de langage. Les tâches complexes ont tendance à avoir des taux d’erreur plus élevés que les tâches plus simples.
- La classification d’intention identifie et répond spécifiquement à l’objectif principal de la question de l’utilisateur.
- Utilisateur : « Comment puis-je acheter des bitcoins et les stocker en sécurité ? »
Dans cet exemple, l’intention de l’utilisateur est claire : il souhaite obtenir des informations sur deux aspects spécifiques des bitcoins – l’achat et le stockage sécurisé. Le modèle de langage, en reconnaissant cette intention, peut fournir une réponse détaillée couvrant les étapes pour acheter des bitcoins (comme choisir une plateforme d’échange fiable) et les méthodes pour les stocker en sécurité (comme l’utilisation de portefeuilles numériques sécurisés).
- Dans les longues conversations, résumer ou filtrer les échanges précédents aide à rester concentré sur les éléments clés et à éviter les détails superflus.
- Utilisateur : « J’ai entendu parler des risques liés à l’investissement dans les bitcoins, mais je suis aussi intéressé par les avantages. Peux-tu me donner un résumé équilibré ? »
Dans cette demande, l’utilisateur cherche un aperçu concis des avantages et des risques liés aux bitcoins. Dans une longue conversation où de nombreux détails pourraient avoir été discutés, le modèle devrait filtrer et résumer ces informations pour fournir une réponse qui équilibre les deux aspects (risques et avantages) de manière concise et informative.
- Pour de longs documents, les résumer en sections puis assembler ces résumés pour créer une vue d’ensemble complète permet une gestion plus efficace de l’information.
- Utilisateur : « Je veux comprendre le livre blanc de Bitcoin, mais il est trop technique et long pour moi. Peux-tu me donner un résumé de ses points clés ? »
Dans cet exemple, l’utilisateur demande un résumé d’un document complexe et technique (le livre blanc de Bitcoin). La meilleure approche serait de diviser le livre blanc en sections clés (par exemple, l’origine de Bitcoin, son fonctionnement, la sécurité, et les implications économiques), de résumer chaque section, puis de combiner ces résumés pour fournir une vue d’ensemble concise et compréhensible du livre blanc dans son ensemble.
4 – Donnez au modèle le temps de « penser »
Demander au modèle de détailler une « chaîne de pensée » (faire étape par étape un processus de réflexion avant de donner une réponse finale) permet aux modèles de langage de réfléchir et d’élaborer leur réponse, réduisant ainsi les erreurs, à l’instar de la manière dont une personne prend le temps de calculer une multiplication complexe.
-
-
-
Informer le modèle de déterminer sa propre solution avant de se précipiter vers une conclusion
-
-
Parfois, pour obtenir de meilleurs résultats, il est utile de demander au modèle de résoudre un problème étape par étape avant de comparer sa solution à celle proposée par l’utilisateur. Cela aide à identifier les erreurs plus efficacement.
Exemple 1 : Demande Directe
- Utilisateur : « J’ai calculé que pour peindre une pièce de 50 mètres carrés, j’aurai besoin de 5 litres de peinture. Est-ce correct ? »
- Réponse Directe du Modèle : « Oui, c’est correct. »Dans cet exemple, le modèle accepte directement la réponse de l’utilisateur sans vérification.
Exemple 2 : Raisonnement Étape par Étape
- Utilisateur : « J’ai calculé que pour peindre une pièce de 50 mètres carrés, j’aurai besoin de 5 litres de peinture. Est-ce correct ? Explique ton raisonnement et tes sources »
- Réponse du Modèle après Raisonnement :
- « Calculons d’abord. En général, 1 litre de peinture couvre environ 10 mètres carrés.
- Pour 50 mètres carrés, vous aurez besoin de 50 / 10 = 5 litres.
- Donc, votre calcul est correct. »
Ici, le modèle calcule d’abord la réponse, ce qui confirme de manière fiable la réponse de l’utilisateur.
Conclusion : En demandant au modèle de résoudre d’abord le problème, on obtient une vérification plus précise de la réponse de l’utilisateur. Cela est particulièrement utile pour des questions nécessitant des calculs ou un raisonnement logique.
-
-
-
Utiliser un monologue intérieur ou une séquence de requêtes pour cacher le processus de raisonnement du modèle (dans le cas d’un tutorat, d’apprentissage …)
-
-
Cette tactique consiste à utiliser un « monologue intérieur » ou une séquence de requêtes pour cacher le processus de raisonnement du modèle. Cela est utile dans des situations où il est préférable de ne pas révéler toute la réflexion du modèle à l’utilisateur, comme dans l’enseignement.
Exemple 1 : Un utilisateur (étudiant) demande de l’aide pour résoudre un problème mathématique.
Étapes du Système :
- Résolution Interne : Le modèle résout d’abord le problème en interne, sans montrer cette étape à l’utilisateur.
- Comparaison des Solutions : Ensuite, le modèle compare sa solution à celle de l’étudiant en interne.
- Fournir un Indice : Si l’étudiant a fait une erreur, le modèle propose un indice pour aider l’étudiant, sans donner directement la réponse.
Application Pratique :
- Utilisateur : « Comment résoudre cette équation : 2x + 3 = 7 ? »
- Réponse du Modèle : « Essayons de simplifier l’équation étape par étape. Que se passe-t-il si tu soustrais 3 des deux côtés de l’équation ? »
Dans cet exemple, le modèle a déjà résolu l’équation en interne (2x = 4, donc x = 2) mais ne révèle pas directement la réponse. Au lieu de cela, il guide l’utilisateur vers la solution en posant des questions ou en donnant des indices, ce qui est une méthode d’enseignement efficace.
-
-
-
Demandez au modèle s’il a manqué quelque chose sur tout ce qu’il avait à dire sur le sujet
-
-
Cette tactique consiste à demander au modèle s’il a manqué des informations importantes lors de ses premières tentatives de réponse. Cela est particulièrement utile lorsqu’on utilise le modèle pour extraire des extraits pertinents d’un document volumineux. Après avoir listé certains extraits, on demande au modèle s’il y en a d’autres qu’il n’a pas encore mentionnés.
Exemple :
Contexte : Utilisation du modèle pour extraire des extraits pertinents d’un document sur l’histoire de l’intelligence artificielle.
- Première Demande :
- Utilisateur : « Extrais les passages importants du document suivant qui traitent des changements de paradigme significatifs dans l’histoire de l’intelligence artificielle. »
- Réponse du Modèle : [Le modèle liste plusieurs extraits pertinents du document.]
- Vérification des Omissions :
- Utilisateur : « Y a-t-il d’autres extraits pertinents ? Fais attention à ne pas répéter les extraits déjà mentionnés. »
- Réponse du Modèle : [Le modèle examine à nouveau le document et ajoute d’autres extraits pertinents qu’il avait initialement manqués.]
Dans cet exemple, la deuxième demande de l’utilisateur aide le modèle à reconsidérer le document et à trouver des informations qu’il aurait pu omettre lors de sa première réponse. Cela garantit une extraction plus complète et précise des informations pertinentes du document.
5 – utiliser des outils externes
Utiliser l’Exécution de Code pour des Calculs Précis et l’Appel d’APIs Externes
Les modèles de langage ne sont pas fiables pour effectuer des calculs arithmétiques ou complexes. Pour obtenir des résultats précis, on peut demander au modèle de générer du code (comme du code Python), qui peut ensuite être exécuté pour réaliser ces calculs. De plus, le modèle peut écrire du code pour appeler des APIs externes, fournissant ainsi des fonctionnalités supplémentaires.
Accorder au Modèle l’Accès à des Fonctions Spécifiques
La Chat Completions API d’OpenAI permet d’intégrer des descriptions de fonctions dans les requêtes. Cela autorise le modèle à générer des arguments pour ces fonctions selon les schémas fournis. Les arguments générés sont retournés au format JSON et peuvent être utilisés pour exécuter des appels de fonction. Les résultats de ces appels peuvent ensuite être réintégrés dans le modèle pour des requêtes ultérieures, bouclant ainsi le processus. C’est la méthode recommandée pour utiliser les modèles OpenAI afin d’appeler des fonctions externes.
Exemple Concret :
Utilisation : Un utilisateur souhaite obtenir des prévisions météorologiques pour une ville spécifique.
Prompt : L’utilisateur demande au modèle de générer un appel de fonction pour obtenir la météo.
Réponse du Modèle : Le modèle génère un appel de fonction avec les arguments nécessaires (par exemple, le nom de la ville).
Exécution : L’appel de fonction est exécuté (par exemple, via une API météo), et les résultats sont retournés.
Utilisation des Résultats : Les résultats peuvent être utilisés dans une requête suivante pour fournir des informations météorologiques précises à l’utilisateur.
6 – Tester Systématiquement les Changements pour Optimiser les Systèmes
Tester Systématiquement les Changements pour Optimiser les Systèmes
Tester les changement avec des procédures d’évaluation (ou « evals ») est crucial pour déterminer si une nouvelle instruction ou un nouveau design améliore ou détériore votre système.
Évaluer les Réponses du Modèle par Rapport à des Réponses Standards
Cette tactique consiste à comparer les réponses du modèle à des réponses standard (gold-standard) pour évaluer leur exactitude. Si une réponse doit inclure des faits spécifiques, le modèle peut être interrogé pour vérifier si ces faits sont présents dans sa réponse. Cela aide à évaluer la précision des informations fournies par le modèle et à ajuster les prompts pour des réponses plus précises.
Exemple Concret :
- Contexte : Un utilisateur demande des informations sur Neil Armstrong et la mission Apollo 11.
- Prompt : Le modèle est invité à vérifier si sa réponse contient deux faits spécifiques : « Neil Armstrong était le premier homme à marcher sur la lune » et « Neil Armstrong a marché sur la lune le 21 juillet 1969 ».
- Réponse du Modèle :
- Si le modèle répond « Neil Armstrong est célèbre pour avoir été le premier homme à marcher sur la Lune lors de la mission Apollo 11 le 21 juillet 1969 », alors les deux points sont satisfaits.
- Si le modèle répond seulement « Neil Armstrong a fait l’histoire en marchant sur la Lune », alors seul le premier point est satisfait.
En utilisant cette méthode, l’utilisateur peut s’assurer que les réponses du modèle sont complètes et précises, et ajuster ses prompts en conséquence pour obtenir des informations plus détaillées ou spécifiques.