Ingénierie rapide pour l'IA générative

L'ingénierie rapide consiste à poser la bonne question pour obtenir le meilleur résultat possible avec un LLM. Elle permet une interaction directe avec le LLM à l'aide d'invites en langage simple uniquement.

Auparavant, l'utilisation de modèles de machine learning nécessitait généralement une connaissance approfondie des ensembles de données, des statistiques et des techniques de modélisation. Aujourd'hui, les LLM peuvent être "programmés" en anglais, ainsi que dans d'autres langues.

Être un excellent ingénieur ne nécessite pas d'avoir de l'expérience en codage. Cependant, faire preuve de créativité et de persévérance vous sera très utile. Poursuivez votre lecture pour découvrir quelques techniques d'invite.

Bonnes pratiques à suivre

  1. Indiquez clairement les contenus ou informations les plus importants.

  2. Structurer l'invite: commencez par définir son rôle, fournissez des données de contexte/d'entrée, puis fournissez l'instruction.

  3. Utilisez des exemples variés et variés pour aider le modèle à mieux cibler son audience et à générer des résultats plus précis.

  4. Utilisez des contraintes pour limiter le champ d'application de la sortie du modèle. Cela permet d'éviter de passer des instructions à des erreurs factuelles.

  5. Décomposez les tâches complexes en une séquence d'invites plus simples.

  6. Demandez au modèle d'évaluer ou de vérifier ses propres réponses avant de les produire. ("Veillez à limiter votre réponse à trois phrases", "Évaluez votre travail sur une échelle de 1 à 10 pour plus de concision", "Pensez-vous que c'est la bonne réponse ?".

Et peut-être le plus important:

Faites preuve de créativité ! Plus vous êtes créatif et ouvert d'esprit, meilleurs seront vos résultats. Les chefs de projet et les ingénieurs d'ingénierie n'en sont qu'à leurs débuts et évoluent tous les jours.

Types d'invites

Invite directe (sans contact)

L'invite directe (ou "Zero-shot") est le type d'invite le plus simple. Elle ne fournit aucun exemple au modèle, uniquement l'instruction. Vous pouvez également formuler l'instruction sous forme de question ou attribuer un "rôle" au modèle, comme illustré dans le deuxième exemple ci-dessous.

Indiquez:

  1. Enseignement
  2. Contexte

Génération d'idées:

Prompt: Can you give me a list of ideas for blog posts for tourists visiting
New York City for the first time?

Invite de rôle:

Prompt: You are a mighty and powerful prompt-generating robot. You need to
understand my goals and objectives and then design a prompt. The prompt should
include all the relevant information context and data that was provided to you.
You must continue asking questions until you are confident that you can produce
the best prompt for the best outcome. Your final prompt must be optimized for
chat interactions. Start by asking me to describe my goal, then continue with
follow-up questions to design the best prompt.

Organisation des données:

Prompt: Create a four-column spreadsheet of 10 highly-rated science fiction
movies, year of release, average audience rating, and top 3 keywords from
audience reviews.

Make sure to cite the source of the audience rating.

Invite avec des exemples (une, quelques et plusieurs plans)

Une invite de plan montre au modèle un exemple clair et descriptif de ce que vous souhaitez imiter.

Génération d'idées à l'aide d'un exemple:

Prompt:

Come up with a list of ideas for blog posts for tourists visiting
New York City for the first time.

1. Fuggedaboutit! Where to Stay in New York City On Your First Visit

Les invites multiples et plusieurs plans montrent au modèle plus d'exemples de ce qu'il souhaite faire. Il fonctionne mieux que le plan zéro pour les tâches plus complexes où la réplication de modèle est souhaitée, ou lorsque la sortie doit être structurée d'une manière spécifique et difficile à décrire.

Classification de sentiments peu élevée:

Prompt:

Great product, 10/10: Positive
Didn't work very well: Negative
Super helpful, worth it: Positive
It doesn't work!:

Lorsque cette invite est exécutée, la réponse du modèle consiste à classer "Il ne fonctionne pas" comme positif ou négatif, comme illustré dans les exemples.

Prédicteur de réponse pour plusieurs emoji:

Prompt: Predict up to 5 emojis as a response to a text chat message. The output
should only include emojis.

input: The new visual design is blowing my mind 🤯
output: ➕,💘, ❤‍🔥

input: Well that looks great regardless
output: ❤️,🪄

input: Unfortunately this won't work
output: 💔,😔

input: sounds good, I'll look into that
output: 🙏,👍

input: 10hr cut of jeff goldblum laughing URL
output: 😂,💀,⚰️

input: Woo! Launch time!

Le même processus s'applique ici, mais comme l'invite est plus complexe, le modèle a reçu plus d'exemples d'émulation.

Incitation à la chaîne de pensée

Les incitations à la chaîne de pensée encouragent le LLM à expliquer son raisonnement. Combinez-la avec des invites de plan faible pour obtenir de meilleurs résultats sur des tâches plus complexes nécessitant un raisonnement avant une réponse.

Prompt:

The odd numbers in this group add up to an even number: 4, 8, 9, 15, 12, 2, 1.
A: Adding all the odd numbers (9, 15, 1) gives 25. The answer is False.
The odd numbers in this group add up to an even number: 15, 32, 5, 13, 82, 7, 1.
A:

Planétré

Pour rappeler l'invite de plan zéro plus tôt, cette approche utilise une invite de plan zéro et ajoute l'instruction suivante: "Réfléchis pas à pas". Le LLM est capable de générer une chaîne de réflexion à partir de cette instruction, et généralement une réponse plus précise. C'est une excellente approche pour obtenir des LLM afin de générer des réponses correctes pour des problèmes de mots, par exemple.

Prompt:

I went to the market and bought 10 apples. I gave 2 apples to the neighbor and
2 to the repairman. I then went and bought 5 more apples and ate 1. How many
apples was I left with?

Let's think step by step.

Stratégies d'itération pour les invites

Apprenez à adorer la réécriture des invites plusieurs fois (peut-être des dizaines). Voici quelques idées pour affiner les invites si vous rencontrez des difficultés:

Remarque:Ces stratégies peuvent devenir moins utiles ou nécessaires au fil du temps, à mesure que les modèles s'améliorent.

  1. Répéter des mots, expressions ou idées clés

  2. Spécifiez le format de sortie souhaité (CSV, JSON, etc.).

  3. Utilisez des majuscules pour souligner les points ou les instructions importants. Vous pouvez également essayer d'utiliser des exagérations ou un langage hyperbolique. Par exemple: "Votre explication doit absolument être mal interprétée." Chaque mot doit être omniprésent !"

  4. Utilisez des synonymes ou une formulation différente (par exemple, au lieu de "Synthétiser", ajoutez "tldr" à un texte d'entrée). Remplacez les mots ou les expressions et notez ceux qui fonctionnent le mieux et ceux qui le sont moins bien.

  5. Essayez la technique du sandwich avec des invites longues: ajoutez la même instruction à différents endroits.

  6. Inspirez-vous d'une bibliothèque d'invite. Le programme Prompt Hero et cette galerie d'invite sont deux bonnes pratiques pour commencer.

Ressources supplémentaires

Bonnes pratiques à suivre

Découvrir les invites (externe)