# Comment écrire un bon prompt pour GPT-3?

Date: 2020-08-03 · Author: Robert Scales · https://guidetoartificialintelligence.com/fr/apprendre/bien-ecrire-un-prompt-pour-gpt-3/

**Answer:** Un bon prompt pour GPT-3 installe une structure claire que le modèle n’a qu’à prolonger : une courte description de la tâche, quelques exemples résolus dans un format constant et un espace libre là où la réponse doit aller. GPT-3 ne fait que prédire la suite du texte; le prompt doit donc faire de la bonne suite la plus probable.

Depuis qu’OpenAI a ouvert la version bêta privée de son API en juin, les développeurs et les chercheurs admis jusqu’ici découvrent GPT-3, et une leçon s’impose vite : la formulation du prompt compte énormément. Deux prompts qui se ressemblent aux yeux d’une personne peuvent donner des résultats très différents. La bonne nouvelle, c’est que quelques habitudes rendent les prompts beaucoup plus fiables, et elles découlent toutes d’un seul fait sur le fonctionnement du modèle.

GPT-3 est un modèle de langage. Il a été entraîné à prédire le prochain morceau de texte, rien de plus. Il ne reçoit pas d’ordres comme une personne; il lit votre prompt comme le début d’un document et écrit ce qui viendrait le plus vraisemblablement ensuite. Écrire un prompt, c’est donc moins donner un ordre que commencer une page qui ne peut raisonnablement finir que d’une seule façon.

## Pensez « document », pas « question »

Imaginez où un texte comme le vôtre apparaîtrait sur le Web. Une question toute nue comme « Meilleure façon d’apprendre l’espagnol? » pourrait être le début d’un fil de forum, d’une liste d’autres questions ou d’une publicité, et GPT-3 peut la prolonger de n’importe laquelle de ces façons. Si vous la présentez comme une page où une réponse vient clairement ensuite, le modèle a beaucoup moins de place pour s’égarer.

```prompt
Voici la réponse d’une enseignante de langues d’expérience à la question d’un élève.

Élève : Quelle est la meilleure façon de commencer à apprendre l’espagnol à l’âge adulte?
Enseignante :
```

La première ligne dit de quel genre de texte il s’agit. Les étiquettes « Élève : » et « Enseignante : » montrent qui parle. L’espace vide après « Enseignante : » indique au modèle exactement où écrire.

## Les quatre parties d’un prompt fiable

La plupart des prompts solides contiennent les mêmes éléments de base :

| Partie | Ce qu’elle fait | Exemple |
|---|---|---|
| Consigne | Nomme la tâche en mots simples | « Classe chaque avis comme positif ou négatif. » |
| Exemples | Montrent le format exact de l’entrée et de la sortie | Deux ou trois avis résolus |
| Étiquettes constantes | Marquent où commencent les entrées et les sorties | « Avis : » et « Sentiment : » |
| Espace libre | Laisse la place à une seule réponse | « Sentiment : » sans rien après |

La constance est ici l’héroïne discrète. Si un exemple dit « Positif » et un autre « pos. », le modèle doit deviner quel style vous voulez. Utilisez chaque fois les mêmes étiquettes, la même ponctuation et les mêmes espacements.

## Problèmes courants et solutions simples

- **Le modèle continue de parler après la réponse.** Votre format n’indique peut-être pas où une réponse se termine. Gardez la réponse de chaque exemple courte et faites-la suivre d’une ligne vide, pour que le modèle apprenne cette structure.
- **Le modèle invente des choses.** GPT-3 écrit ce qui semble probable, pas ce qui est vérifié. L’article sur GPT-3 note que les longues sorties peuvent dériver ou se contredire. Demandez des réponses courtes et vérifiez les faits vous-même.
- **Les réponses varient en ton ou en qualité.** Vos exemples sont probablement disparates. Choisissez des exemples qui ressemblent aux entrées que vous attendez réellement.
- **Il ne fait tout simplement pas la tâche.** Rendez la tâche plus facile à reconnaître : ajoutez un exemple de plus, ou divisez un gros travail en deux prompts plus petits.

L’annonce d’OpenAI dit elle-même que le succès dépend de la complexité de la tâche; commencez donc par quelque chose d’étroit avant de tenter quoi que ce soit d’ambitieux.

> **À essayer :** prenez un prompt qui vous a donné un mauvais résultat. Réécrivez-le avec une consigne, deux exemples constants et un espace libre, puis comparez les deux sorties côte à côte. Notez quel changement a fait la plus grande différence.

## Pourquoi les exemples dans le prompt aident-ils autant?

Les exemples aident parce qu’ils éliminent les devinettes. Une description de la tâche en mots peut se lire de plusieurs façons; un exemple n’en montre qu’une. L’article sur GPT-3 illustre ce point avec un cas simple : si on lui demande de « faire un tableau des records du monde du 200 m » sans exemple, même une personne pourrait ne pas savoir quelles colonnes ou quel format utiliser. Une seule démonstration règle la question.

L’article le vérifie directement dans trois situations. En *zero-shot*, le modèle ne reçoit qu’une consigne. En *one-shot*, il voit aussi un exemple résolu. En *few-shot*, il en voit plusieurs, habituellement de 10 à 100, autant qu’il en tient dans sa fenêtre de 2 048 jetons (un jeton est un mot ou une partie de mot). Sur de nombreuses tâches, l’exactitude augmente à mesure qu’on ajoute des exemples, et c’est le plus grand modèle qui en profite le plus. Rien de cela ne modifie le modèle lui-même; il lit simplement les exemples et prolonge la structure.

Voici l’idée appliquée à une petite tâche de classement :

```prompt
Classe chaque avis comme Positif ou Négatif.

Avis : Les pages sont arrivées pliées et la couverture était déchirée.
Sentiment : Négatif

Avis : Ma fille l’a déjà lu trois fois.
Sentiment : Positif

Avis : Des explications claires, mais les caractères sont beaucoup trop petits.
Sentiment :
```

Le dernier avis est mitigé exprès. Sans exemples, le modèle pourrait écrire un paragraphe à son sujet. Avec eux, il sait qu’il doit répondre par un seul mot tiré d’une courte liste, et la seule question qui reste est de savoir lequel.

Il y a une limite, bien sûr. Les exemples prennent de la place, et 2 048 jetons se remplissent vite. Une règle pratique : commencez avec deux ou trois exemples courts et variés, mesurez les résultats sur une douzaine de cas d’essai, et n’en ajoutez que lorsque les chiffres montrent que vous en avez besoin.

## Sources

- Language Models are Few-Shot Learners: https://arxiv.org/abs/2005.14165
- OpenAI API: https://openai.com/index/openai-api/
