Prompt engineering
ChatGPT & Advanced Prompt Engineering: Driving the AI Evolution

OpenAI a été instrumentale dans le développement d’outils révolutionnaires comme OpenAI Gym, conçu pour la formation d’algorithmes de renforcement, et les modèles GPT-n. Le projecteur est également sur DALL-E, un modèle d’IA qui crée des images à partir d’entrées textuelles. Un tel modèle qui a attiré une attention considérable est ChatGPT d’OpenAI, un exemple éblouissant dans le domaine des grands modèles de langage.
GPT-4 : Prompt Engineering
ChatGPT a transformé le paysage des chatbots, offrant des réponses similaires à celles des humains aux entrées des utilisateurs et en élargissant ses applications à travers les domaines – de la développement et de la test de logiciels à la communication commerciale, et même à la création de poésie.
Entre les mains des entreprises et des individus, GPT-4, par exemple, pourrait servir de réservoir inépuisable de connaissances, compétent dans des sujets allant des mathématiques et de la biologie aux études juridiques. De tels modèles d’IA sophistiqués et accessibles sont sur le point de redéfinir l’avenir du travail, de l’apprentissage et de la créativité.
Les modèles génératifs comme GPT-4 peuvent produire de nouvelles données sur la base d’entrées existantes. Cette caractéristique distinctive leur permet d’entreprendre diverses tâches, notamment la génération de texte, d’images, de musique et de vidéo.
Dans le contexte de ChatGPT et des modèles OpenAI, une invite est l’entrée que les utilisateurs fournissent aux modèles, généralement sous forme de texte. Les invites servent de principal moyen de contrôle de la sortie générée par ces modèles, les rendant cruciales pour des conversations réussies et pertinentes.
L’Impact de la Qualité de l’Invite
L’utilisation d’invites bien définies est la clé pour engager des conversations utiles et significatives avec les systèmes d’IA. Les invites mal définies peuvent entraîner une sortie qui n’est pas utile à l’utilisateur et peut même conduire à un contenu trompeur.
Pour démontrer l’impact de la qualité de l’invite, comparons deux invites différentes données à ChatGPT. La première invite, mal définie et supposant des connaissances préalables, génère une réponse potentiellement inutile pour l’utilisateur. D’un autre côté, la deuxième invite fournit plus de contexte et d’exemples, garantissant une réponse plus pertinente et compréhensible.
Invite 1 : “Parlez-moi des réseaux de neurones convolutionnels.”
Réponse 1 : “Les réseaux de neurones convolutionnels (CNN) sont des réseaux de perceptron multi-couches qui se composent de couches entièrement connectées et de couches de pooling. Ils sont couramment utilisés dans les tâches de reconnaissance d’images. Le processus implique l’application de filtres aux images d’entrée et la réduction de leur taille à l’aide de couches de pooling.”
Invite 2 : “Je veux apprendre sur les réseaux de neurones convolutionnels, mais je n’ai pas de connaissances préalables sur les réseaux de neurones artificiels. Pouvez-vous me fournir une explication conviviale pour les débutants et un exemple de la façon dont les CNN sont utilisés dans la reconnaissance d’images ?”
Réponse 2 : “Les réseaux de neurones convolutionnels (CNN) sont un type de réseau de neurones principalement utilisé pour les tâches de reconnaissance d’images. Contrairement aux autres réseaux de neurones, ils exploitent les couches convolutionnelles et les couches de pooling pour traiter les images. Imaginez que vous avez une image d’un chat. Les CNN peuvent identifier différentes caractéristiques de l’image, telles que les moustaches, les oreilles et la queue, en appliquant des filtres et en réduisant la taille de l’image à l’aide de couches de pooling. Ce processus rend les CNN très efficaces pour reconnaître les objets dans les images.”
En comparant les deux réponses, il est évident qu’une invite bien définie conduit à une réponse plus pertinente et conviviale. La conception et l’ingénierie d’invites sont des disciplines en pleine croissance qui visent à optimiser la qualité de sortie des modèles d’IA comme ChatGPT.
Dans les sections suivantes de cet article, nous allons nous plonger dans le domaine des méthodologies avancées visant à affiner les grands modèles de langage (LLM), telles que les techniques et les tactiques d’ingénierie d’invites, notamment l’apprentissage à quelques exemples, ReAct, la chaîne de pensée, RAG, et plus encore.
Techniques d’Ingénierie Avancées
Avant de procéder, il est important de comprendre un problème clé avec les LLM, appelé « hallucination ». Dans le contexte des LLM, « hallucination » signifie la tendance de ces modèles à générer des sorties qui pourraient sembler raisonnables mais ne sont pas ancrées dans la réalité factuelle ou le contexte d’entrée donné.
Ce problème a été mis en évidence de manière frappante dans un récent procès où un avocat de la défense a utilisé ChatGPT pour la recherche juridique. L’outil d’IA, en défaillance en raison de son problème d’hallucination, a cité des affaires juridiques inexistante. Cet incident a eu des conséquences importantes, provoquant la confusion et sapant la crédibilité pendant les débats. Cet incident nous rappelle avec force l’urgence de résoudre le problème d’« hallucination » dans les systèmes d’IA.
Notre exploration des techniques d’ingénierie d’invites vise à améliorer ces aspects des LLM. En améliorant leur efficacité et leur sécurité, nous ouvrons la voie à des applications innovantes telles que l’extraction d’informations. De plus, cela ouvre les portes à une intégration transparente des LLM avec des outils et des sources de données externes, élargissant ainsi la gamme de leurs utilisations potentielles.
Apprentissage à Zéro et à Quelques Exemples : Optimisation avec des Exemples
Les transformateurs génératifs pré-entraînés (GPT-3) ont marqué un tournant important dans le développement des modèles d’IA génératifs, car ils ont introduit le concept d’« apprentissage à quelques exemples ». Cette méthode a été un jeu-changer en raison de sa capacité à fonctionner efficacement sans avoir besoin d’un affinement complet. Le cadre GPT-3 est discuté dans le document “Les modèles de langage sont des apprentis à quelques exemples” où les auteurs démontrent comment le modèle excelle dans divers cas d’utilisation sans nécessiter de jeux de données ou de code personnalisés.
Contrairement à l’affinement, qui exige des efforts constants pour résoudre des cas d’utilisation variés, les modèles à quelques exemples démontrent une adaptabilité plus facile à une gamme plus large d’applications. Même si l’affinement peut fournir des solutions robustes dans certains cas, il peut être coûteux à grande échelle, ce qui rend l’utilisation de modèles à quelques exemples une approche plus pratique, surtout lorsqu’elle est intégrée à l’ingénierie d’invites.
Imaginez que vous essayez de traduire l’anglais en français. Dans l’apprentissage à quelques exemples, vous fourniriez à GPT-3 quelques exemples de traduction comme “otarie de mer -> loutre de mer”. GPT-3, étant le modèle avancé qu’il est, est alors capable de continuer à fournir des traductions précises. Dans l’apprentissage à zéro exemple, vous ne fourniriez aucun exemple, et GPT-3 serait toujours capable de traduire l’anglais en français de manière efficace.
Le terme « apprentissage à quelques exemples » vient de l’idée que le modèle est donné un nombre limité d’exemples pour « apprendre ». Il est important de noter que « apprendre » dans ce contexte ne signifie pas la mise à jour des paramètres ou des poids du modèle, mais plutôt l’influence de la performance du modèle.
L’apprentissage à zéro exemple va plus loin. Dans l’apprentissage à zéro exemple, aucun exemple de tâche n’est fourni au modèle. Le modèle est censé performer bien sur la base de sa formation initiale, ce qui rend cette méthodologie idéale pour les scénarios de question-réponse à domaine ouvert tels que ChatGPT.
Dans de nombreux cas, un modèle compétent en apprentissage à zéro exemple peut performer bien lorsqu’il est fourni avec des exemples à quelques exemples ou même un seul exemple. Cette capacité à basculer entre les scénarios d’apprentissage à zéro, à un seul exemple et à quelques exemples souligne l’adaptabilité des grands modèles, améliorant ainsi leurs applications potentielles à travers différents domaines.
Les méthodes d’apprentissage à zéro exemple sont de plus en plus répandues. Ces méthodes sont caractérisées par leur capacité à reconnaître des objets non vus pendant la formation. Voici un exemple pratique d’une invite à quelques exemples :
"Traduisez les phrases anglaises suivantes en français :
'otarie de mer' se traduit par 'loutre de mer'
'ciel' se traduit par 'ciel'
Qu'est-ce que 'nuage' se traduit en français ?"
En fournissant le modèle avec quelques exemples et en posant ensuite une question, nous pouvons efficacement guider le modèle pour générer la sortie désirée. Dans ce cas, GPT-3 traduirait probablement correctement « nuage » en « nuage » en français.
Nous allons nous plonger plus en profondeur dans les nuances de l’ingénierie d’invites et de son rôle essentiel dans l’optimisation des performances du modèle pendant l’inférence. Nous examinerons également comment il peut être utilisé efficacement pour créer des solutions rentables et évolutives à travers une large gamme de cas d’utilisation.
Alors que nous explorons davantage la complexité des techniques d’ingénierie d’invites dans les modèles GPT, il est important de souligner notre dernier article ‘Guide essentiel pour l’ingénierie d’invites dans ChatGPT‘. Ce guide fournit des insights sur les stratégies pour instruire les modèles d’IA de manière efficace à travers une myriade de cas d’utilisation.
Dans nos discussions précédentes, nous avons abordé les méthodes d’invites fondamentales pour les grands modèles de langage (LLM) tels que l’apprentissage à zéro exemple et à quelques exemples, ainsi que l’invocation d’instructions. Maîtriser ces techniques est crucial pour naviguer dans les défis plus complexes de l’ingénierie d’invites que nous allons explorer ici.
L’apprentissage à quelques exemples peut être limité en raison de la fenêtre de contexte restreinte de la plupart des LLM. De plus, sans les garanties appropriées, les LLM peuvent être induits en erreur pour fournir des sorties potentiellement nuisibles. De plus, de nombreux modèles luttent avec les tâches de raisonnement ou le suivi d’instructions à plusieurs étapes.
Compte tenu de ces contraintes, le défi réside dans l’utilisation des LLM pour résoudre des tâches complexes. Une solution évidente pourrait consister à développer des LLM plus avancés ou à affiner les modèles existants, mais cela pourrait nécessiter des efforts considérables. Alors, la question se pose : comment pouvons-nous optimiser les modèles actuels pour une meilleure résolution de problèmes ?
Également fascinant est l’exploration de la façon dont cette technique interface avec les applications créatives dans Unite AI’s ‘Maîtriser l’art de l’IA : Un guide concis pour Midjourney et l’ingénierie d’invites‘ qui décrit comment la fusion de l’art et de l’IA peut aboutir à un art à couper le souffle.
Invocation de Chaîne de Pensée
L’invocation de chaîne de pensée exploite les propriétés auto-régressives inhérentes aux grands modèles de langage (LLM), qui excellent à prédire le mot suivant dans une séquence donnée. En invitant un modèle à élucider son processus de pensée, il induit une génération d’idées plus approfondie et méthodique, qui tend à s’aligner étroitement sur des informations précises. Cet alignement découle de la tendance du modèle à traiter et à livrer des informations de manière réfléchie et ordonnée, similaire à un expert humain guidant un auditeur à travers un concept complexe. Une simple déclaration comme « expliquez-moi étape par étape comment… » est souvent suffisante pour déclencher cette sortie plus verbale et détaillée.
Invocation de Chaîne de Pensée à Zéro Exemple
Alors que l’invocation de chaîne de pensée conventionnelle nécessite une formation préalable avec des démonstrations, un domaine émergent est l’invocation de chaîne de pensée à zéro exemple. Cette approche, introduite par Kojima et al. (2022), ajoute de manière innovante la phrase « Réfléchissons étape par étape » à l’invite d’origine.
Créons une invite avancée où ChatGPT est chargé de résumer les points clés de documents de recherche en IA et en traitement automatique des langues.
Dans cette démonstration, nous allons utiliser la capacité du modèle à comprendre et à résumer des informations complexes à partir de textes académiques. En utilisant l’approche d’apprentissage à quelques exemples, enseignons à ChatGPT à résumer les résultats clés de documents de recherche en IA et en traitement automatique des langues :
1. Titre du document : "L'attention est tout ce dont vous avez besoin"
Résultat clé : A introduit le modèle de transformateur, mettant l'accent sur l'importance des mécanismes d'attention par rapport aux couches récurrentes pour les tâches de transduction de séquences.
2. Titre du document : "BERT : Pré-entraînement de transformateurs bidirectionnels profonds pour la compréhension du langage"
Résultat clé : A introduit BERT, démontrant l'efficacité du pré-entraînement de modèles bidirectionnels profonds, réalisant ainsi des résultats de pointe sur diverses tâches de traitement automatique des langues.
Maintenant, avec le contexte de ces exemples, résumez les résultats clés du document suivant :
Titre du document : "Ingénierie d'invites dans les grands modèles de langage : Un examen"
Cette invite non seulement maintient une chaîne de pensée claire mais utilise également l’approche d’apprentissage à quelques exemples pour guider le modèle. Elle relie nos mots clés en se concentrant sur les domaines de l’IA et du traitement automatique des langues, en chargeant spécifiquement ChatGPT d’effectuer une opération complexe liée à l’ingénierie d’invites : la synthèse de documents de recherche.
ReAct
ReAct, ou « Raisonnement et Action », a été introduit par Google dans le document “ReAct : Synergiser le raisonnement et l’action dans les modèles de langage“, et a révolutionné la façon dont les modèles de langage interagissent avec une tâche, en invitant le modèle à générer dynamiquement à la fois des traces de raisonnement verbales et des actions spécifiques à la tâche.














