Stratégies de conception des invites

La conception de requêtes est le processus de création de requêtes, ou de demandes en langage naturel, qui permettent d'obtenir des réponses précises et de haute qualité à partir d'un modèle de langage.

Cette page présente des concepts, des stratégies et des bonnes pratiques de base pour vous aider à concevoir des requêtes afin de tirer le meilleur parti des modèles d'IA Gemini.

Guides sur les requêtes spécifiques à un sujet

Vous recherchez des stratégies d'invite plus spécifiques ? Consultez nos autres guides sur les requêtes:

Google AI Studio héberge également une galerie de requêtes destinée à présenter de manière interactive de nombreux concepts abordés dans ce guide.

Instructions claires et spécifiques

Un moyen efficace et efficient de personnaliser le comportement du modèle consiste à lui fournir des instructions claires et spécifiques. Les instructions peuvent prendre la forme d'une question, de tâches par étapes ou être aussi complexes que de définir l'expérience et l'état d'esprit d'un utilisateur.

Entrée

L'entrée est le texte obligatoire de la requête pour laquelle le modèle doit fournir une réponse. Les entrées peuvent être des questions auxquelles le modèle répond (entrée de question), une tâche effectuée par le modèle (entrée de tâche), une entité sur laquelle le modèle travaille (entrée d'entité) ou une entrée partielle que le modèle doit terminer ou continuer (entrée de saisie semi-automatique).

Type d'entrée Prompt (Invite) Résultat généré
Question

    What's a good name for a flower shop that specializes in selling bouquets of
    dried flowers? Create a list of 5 options with just the names.

    Here are 10 names for a flower shop specializing in dried flowers:

    1. Everlasting Blooms
    2. Dried & Delightful
    3. The Petal Preserve
    4. Whispers of Wildflowers
    5. Forever Blooms
    
Tâche
    Give me a simple list of just the things that I must bring on a camping trip. The list should have 5 items.
    1. **Tent:** Your shelter from the elements.
    2. **Sleeping Bag:** Stay warm and comfortable.
    3. **Sleeping Pad:** Insulation and cushioning for a good night's sleep.
    4. **Headlamp or Flashlight:** Light for nighttime activities.
    5. **First Aid Kit:** Be prepared for minor injuries.
Entité

    Classify the following items as [large, small]:
Elephant
Mouse
Snail

Here's the classification:

* **Elephant:** Large
* **Mouse:** Small
* **Snail:** Small
    

Saisie partielle terminée

Les modèles de langage génératif fonctionnent comme un outil de saisie semi-automatique avancé. Lorsque vous fournissez un contenu partiel, le modèle peut fournir le reste du contenu ou ce qu'il considère comme une suite de ce contenu en tant que réponse. Ainsi, si vous incluez des exemples ou du contexte, le modèle peut prendre en compte ces exemples ou éléments de contexte.

L'exemple suivant fournit une requête avec une instruction et une entrée d'entité :

For the given order, return a JSON object that has the fields cheeseburger, hamburger, fries, or
drink, with the value being the quantity.

Order: A burger and a drink.
  
{
  "cheeseburger": 0,
  "hamburger": 1,
  "fries": 0,
  "drink": 1
}
  

Bien que le modèle ait respecté l'invite, il peut parfois être difficile d'écrire les instructions en langage naturel et cela laisse une marge d'interprétation au modèle. Par exemple, le menu d'un restaurant peut contenir de nombreux éléments. Pour réduire la taille de la réponse JSON, vous souhaitez probablement omettre les articles qui n'ont pas été commandés. Dans ce cas, vous pouvez fournir un exemple et un préfixe de réponse, puis laisser le modèle le terminer:

Valid fields are cheeseburger, hamburger, fries, and drink.
Order: Give me a cheeseburger and fries
Output:
```
{
  "cheeseburger": 1,
  "fries": 1
}
```
Order: I want two burgers, a drink, and fries.
Output:
  
```
{
  "hamburger": 2,
  "drink": 1,
  "fries": 1
}
```
  

Notez que le "cheeseburger" a été exclu du résultat, car il ne faisait pas partie de la commande.

Contraintes

Spécifiez les contraintes liées à la lecture de l'invite ou à la génération d'une réponse. Vous pouvez indiquer au modèle ce qu'il doit faire et ne pas faire. Par exemple, vous pouvez spécifier une contrainte dans la requête concernant la durée du résumé:

Summarize this text in one sentence:
Text: A quantum computer exploits quantum mechanical phenomena to perform calculations exponentially
faster than any modern traditional computer. At very tiny scales, physical matter acts as both
particles and as waves, and quantum computing uses specialized hardware to leverage this behavior.
The operating principles of quantum devices is beyond the scope of classical physics. When deployed
at scale, quantum computers could be used in a wide variety of applications such as: in
cybersecurity to break existing encryption methods while helping researchers create new ones, in
meteorology to develop better weather forecasting etc. However, the current state of the art quantum
computers are still largely experimental and impractical.
    

      Exploiting quantum mechanical phenomena, quantum computers can perform calculations exponentially faster than traditional computers for potential applications like cybersecurity and meteorology, although they are currently largely experimental and impractical.
    

Format de réponse

Vous pouvez donner des instructions qui spécifient le format de la réponse. Par exemple, vous pouvez demander que la réponse soit mise en forme sous forme de tableau, de liste à puces, d'argumentaire éclair, de mots clés, de phrase ou de paragraphe. L'instruction système suivante indique au modèle d'être plus conversationnel dans sa réponse:

    All questions should be answered comprehensively with details, unless the user requests a concise response specifically.
  
    What is a smart way to make a business that sells DVD's in 2025?
  
Starting a business selling DVDs in 2025 presents significant challenges due to the overwhelming dominance of digital streaming and on-demand services; a "smart" approach would therefore require a highly specialized niche, a strong value proposition beyond just the disc, and likely a focus on community or collector markets rather than mainstream consumption.

Here's a breakdown of what a smart DVD business in 2025 would likely entail:

1. Extreme Niche Specialization: You cannot compete with streaming libraries. Your business must focus on what digital doesn't offer easily or at all. This could include:

    * Out-of-Print & Rare Titles: Sourcing films or TV shows that have never been released digitally or are currently unavailable on major streaming platforms.
    ....
  

Formater les réponses avec la stratégie de finalisation

La stratégie de finalisation peut également vous aider à formater la réponse. L'exemple suivant demande au modèle de créer un plan de dissertation:

Create an outline for an essay about hummingbirds.
  
Here is a possible outline for an essay about hummingbirds:

I. Introduction
A. Hook: Start with a captivating fact or description about hummingbirds (e.g., their speed, iridescent colors, or tiny size).
B. Background: Briefly introduce hummingbirds – where they are found (Americas), their reputation as unique birds.
C. Thesis Statement: State the main point of the essay, which could be about the remarkable adaptations, behaviors, and ecological importance of hummingbirds.

II. Appearance and Identification
.....
  

La requête ne mentionnait pas de format pour le plan et le modèle a choisi un format pour vous. Pour que le modèle renvoie un plan dans un format spécifique, vous pouvez ajouter du texte représentant le début du plan et laisser le modèle le terminer en fonction du schéma que vous avez initié.

Create an outline for an essay about hummingbirds.
I. Introduction
   *
  
Okay, here is an outline for an essay about hummingbirds, starting from the introduction you provided:

I. Introduction
* Hook: Start with a captivating fact or description about hummingbirds (e.g., their speed, iridescent colors, or tiny size).
* Background: Briefly introduce hummingbirds – where they are found (Americas), their reputation as unique birds, and their general characteristics.
* Thesis Statement: State the main point of the essay, focusing on the remarkable adaptations, behaviors, and ecological significance that make hummingbirds extraordinary.
.....
  

Requêtes zero-shot et requêtes few-shot

Vous pouvez inclure des exemples dans la requête afin de montrer au modèle à quoi ressemble une réponse correcte. Le modèle tente d'identifier des schémas et des relations à partir des exemples, et les applique lors de la génération d'une réponse. Les requêtes contenant quelques exemples sont appelées des requêtes few-shot, tandis que les requêtes qui ne fournissent aucun exemple sont appelées des requêtes zero-shot. Les requêtes few-shot sont souvent utilisées pour réguler la mise en forme, la formulation, le champ d'application ou la mise en forme générale des réponses du modèle. Utilisez des exemples spécifiques et variés pour aider le modèle à affiner son champ d'action et à générer des résultats plus précis.

Nous vous recommandons de toujours inclure des exemples few-shot dans vos invites. Les requêtes sans exemples few-shot sont susceptibles d'être moins efficaces. En fait, vous pouvez supprimer des instructions de votre requête si vos exemples sont suffisamment clairs pour montrer la tâche à accomplir.

La requête zero-shot suivante demande au modèle de choisir la meilleure explication.

Please choose the best explanation to the question:

Question: How is snow formed?
Explanation1: Snow is formed when water vapor in the air freezes into ice
crystals in the atmosphere, which can combine and grow into snowflakes as they
fall through the atmosphere and accumulate on the ground.
Explanation2: Water vapor freezes into ice crystals forming snow.
Answer:
  
Explanation1 is the better explanation because it provides more detail on the
process, including how ice crystals combine and grow into snowflakes as they
fall through the atmosphere.
  

Si votre cas d'utilisation nécessite que le modèle produise des réponses concises, vous pouvez inclure dans la requête des exemples qui privilégient les réponses concises.

La requête suivante fournit deux exemples qui indiquent une préférence pour les explications plus courtes. Dans la réponse, vous pouvez constater que les exemples ont poussé le modèle à choisir l'explication la plus courte (Explanation2), par opposition à la plus longue (Explanation1).

Below are some examples showing a question, explanation, and answer format:

Question: Why is the sky blue?
Explanation1: The sky appears blue because of Rayleigh scattering, which causes
shorter blue wavelengths of light to be scattered more easily than longer red
wavelengths, making the sky look blue.
Explanation2: Due to Rayleigh scattering effect.
Answer: Explanation2

Question: What is the cause of earthquakes?
Explanation1: Sudden release of energy in the Earth's crust.
Explanation2: Earthquakes happen when tectonic plates suddenly slip or break
apart, causing a release of energy that creates seismic waves that can shake the
ground and cause damage.
Answer: Explanation1

Now, Answer the following question given the example formats above:

Question: How is snow formed?
Explanation1: Snow is formed when water vapor in the air freezes into ice
crystals in the atmosphere, which can combine and grow into snowflakes as they
fall through the atmosphere and accumulate on the ground.
Explanation2: Water vapor freezes into ice crystals forming snow.
Answer:
  
Answer: Explanation2
  

Nombre optimal d'exemples

Des modèles tels que Gemini peuvent souvent détecter des schémas avec seulement quelques exemples, mais vous devrez peut-être tester le nombre d'exemples à fournir dans la requête pour obtenir les meilleurs résultats. Cependant, si vous incluez trop d'exemples, le modèle peut manifester un surapprentissage qui biaise les réponses obtenues.

Modèles et antimodèles

L'utilisation d'exemples pour montrer au modèle un schéma à respecter est plus efficace que l'utilisation d'exemples pour montrer au modèle un schéma à éviter.

Schéma négatif :

Don't end haikus with a question:
Haiku are fun
A short and simple poem
Don't you enjoy them?
  

��� Schéma positif :

Always end haikus with an assertion:
Haiku are fun
A short and simple poem
A joy to write
  

Toujours le même format

Assurez-vous que la structure et la mise en forme des exemples few-shot sont les mêmes pour éviter les réponses aux formats indésirables. L'un des principaux objectifs de l'ajout d'exemples à quelques reprises dans les requêtes est de montrer au modèle le format de réponse. Il est donc essentiel de garantir un format cohérent pour tous les exemples, en particulier en prêtant attention aux balises XML, aux espaces blancs, aux lignes de nouvelle ligne et aux séparateurs d'exemples.

Ajouter le contexte

Vous pouvez inclure dans une requête des instructions et des informations dont le modèle a besoin pour résoudre un problème, au lieu de supposer que le modèle dispose de toutes les informations requises. Ces informations contextuelles aident le modèle à comprendre les contraintes et les détails de ce que vous lui demandez de faire.

L'exemple suivant demande au modèle de fournir des conseils de dépannage pour un routeur :

What should I do to fix my disconnected wifi? The light on my Google
Wifi router is yellow and blinking slowly.
  
  A yellow blinking light on your Google Wifi router usually indicates a problem
  with the internet connection. Here are some steps to troubleshoot and fix the
  issue:
  1. Restart your router and modem:
    - Unplug your modem from the power outlet and wait for 30 seconds.
    - Plug your modem back in and wait for it to fully boot up.
    - Unplug your Google Wifi router and wait for 30 seconds.
    - Plug your Google Wifi router back in and wait for it to fully boot up.
.....
  

La réponse est semblable aux informations de dépannage génériques qui ne sont pas spécifiques au routeur ou à l'état des témoins LED.

Pour personnaliser la réponse en fonction du routeur spécifique, vous pouvez ajouter le guide de dépannage du routeur à la requête en tant que contexte auquel le modèle doit faire référence dans sa réponse.

Answer the question using the text below. Respond with only the text provided.
Question: What should I do to fix my disconnected wifi? The light on my Google Wifi router is yellow and blinking slowly.

Text:
Color: Slowly pulsing yellow
What it means: There is a network error.
What to do:
Check that the Ethernet cable is connected to both your router and your modem and both devices are turned on. You might need to unplug and plug in each device again.

Color: Fast blinking yellow
What it means: You are holding down the reset button and are factory resetting this device.
What to do:
If you keep holding down the reset button, after about 12 seconds, the light will turn solid yellow. Once it is solid yellow, let go of the factory reset button.

Color: Solid yellow
What it means: Router is factory resetting.
What to do:
This can take up to 10 minutes. When it's done, the device will reset itself and start pulsing white, letting you know it's ready for setup.

Color: Solid red
What it means: Something is wrong.
What to do:
Critical failure. Factory reset the router. If the light stays red, contact Wifi customer support.
  
Check that the Ethernet cable is connected to both your router and your modem and both devices are turned on. You might need to unplug and plug in each device again.
  

Ajouter des préfixes

Un préfixe est un mot ou une expression que vous ajoutez au contenu de la requête et qui peut servir plusieurs objectifs, en fonction de l'endroit où vous ajoutez le préfixe :

  • Préfixe d'entrée:l'ajout d'un préfixe à l'entrée signale au modèle les parties sémantiquement significatives de l'entrée. Par exemple, les préfixes "Anglais:" et "Français:" permettent de différencier deux langues différentes.
  • Préfixe de sortie:même si la sortie est générée par le modèle, vous pouvez ajouter un préfixe de sortie dans la requête. Le préfixe de sortie fournit aux modèles des informations sur les réponses attendues. Par exemple, le préfixe de sortie "JSON:" indique au modèle que la sortie doit être au format JSON.
  • Préfixe d'exemple:dans les requêtes few-shot, l'ajout de préfixes aux exemples fournit des libellés que le modèle peut utiliser lors de la génération du contenu de sortie afin d'en faciliter l'analyse.

Dans l'exemple suivant, "Texte:" est le préfixe d'entrée et "La réponse est:" est le préfixe de sortie.

Classify the text as one of the following categories.
- large
- small
Text: Rhino
The answer is: large
Text: Mouse
The answer is: small
Text: Snail
The answer is: small
Text: Elephant
The answer is:
  
The answer is: large
  

Décomposer les requêtes en composants

Pour les cas d'utilisation qui nécessitent des requêtes complexes, vous pouvez aider le modèle à gérer cette complexité en décomposant les éléments en composants plus simples.

  1. Décomposez les instructions:au lieu de regrouper plusieurs instructions dans une seule requête, créez une requête par instruction. Vous pouvez choisir l'invite à traiter en fonction de l'entrée de l'utilisateur.

  2. Chaînez les requêtes:pour les tâches complexes impliquant plusieurs étapes séquentielles, faites de chaque étape une requête et associez les requêtes dans une séquence. Dans cette chaîne de requêtes séquentielle, la sortie d'une requête de la séquence devient l'entrée de la requête suivante. Le résultat de la dernière requête de la séquence est le résultat final.

  3. Réponses agrégées:l'agrégation consiste à effectuer différentes tâches en parallèle sur différentes parties des données et à agréger les résultats pour produire le résultat final. Par exemple, vous pouvez demander au modèle d'effectuer une opération sur la première partie des données, d'effectuer une autre opération sur le reste des données et d'agréger les résultats.

Tester les paramètres du modèle

Chaque appel que vous envoyez à un modèle inclut des valeurs de paramètres qui contrôlent la manière dont le modèle génère sa réponse. Le modèle peut générer différents résultats pour différentes valeurs de paramètre. Testez différentes valeurs de paramètre pour obtenir les meilleures valeurs pour la tâche. Les paramètres disponibles pour les différents modèles peuvent différer. Les paramètres les plus courants sont les suivants :

  1. Nombre maximal de jetons de sortie:spécifie le nombre maximal de jetons pouvant être générés dans la réponse. Un jeton correspond environ à quatre caractères. 100 jetons correspondent à environ 60-80 mots.

  2. Température:la température contrôle le degré de hasard dans la sélection des jetons. La température est utilisée pour l'échantillonnage pendant la génération des réponses, qui se produit lorsque topP et topK sont appliqués. Les températures inférieures sont idéales pour les requêtes qui nécessitent une réponse plus déterministe ou moins ouverte, tandis que des températures plus élevées peuvent conduire à des résultats plus diversifiés ou créatifs. Une température de 0 est déterministe, ce qui signifie que la réponse dont la probabilité est la plus élevée est toujours sélectionnée.

  3. topK:le paramètre topK modifie la façon dont le modèle sélectionne les jetons pour la sortie. Une valeur topK de 1 signifie que le jeton sélectionné est le plus probable parmi tous les jetons du vocabulaire du modèle (également appelé décodage glouton), tandis qu'une valeur topK de 3 signifie que le jeton suivant est sélectionné parmi les trois jetons les plus probables à l'aide de la température. Pour chaque étape de sélection de jeton, les jetons topK ayant les probabilités les plus élevées sont échantillonnés. Les jetons sont ensuite filtrés en fonction du topP avec le jeton final sélectionné à l'aide de l'échantillonnage de température.

  4. topP:le paramètre topP modifie la façon dont le modèle sélectionne les jetons pour la sortie. Les jetons sont sélectionnés de la probabilité la plus élevée à la plus faible, jusqu'à ce que la somme de leurs probabilités soit égale à la valeur topP. Par exemple, si les jetons A, B et C ont une probabilité de 0,3, 0,2 et 0,1 et que la valeur topP est de 0,5, le modèle sélectionne A ou B comme jeton suivant à l'aide de la température et exclut le jeton C comme candidat. La valeur par défaut de topP est 0,95.

  5. stop_sequences:définissez une séquence d'arrêt pour indiquer au modèle d'arrêter de générer du contenu. Une séquence d'arrêt peut être n'importe quelle séquence de caractères. Essayez d'éviter d'utiliser une séquence de caractères qui peut apparaître dans le contenu généré.

Stratégies d'itération des invites

La conception d'une requête peut parfois nécessiter plusieurs itérations avant d'obtenir de manière cohérente la réponse que vous recherchez. Cette section fournit des conseils sur les mesures que vous pouvez appliquer lors de l'itération de vos requêtes:

  1. Utilisez des formulations différentes:l'utilisation de formulations ou de mots différents dans vos requêtes permet d'obtenir des résultats différents avec un même modèle, même si les requêtes ont le même sens. Si vous n'obtenez pas les résultats attendus à partir de la requête, essayez de reformuler.

    Version 1:
    How do I bake a pie?
    
    Version 2:
    Suggest a recipe for a pie.
    
    Version 3:
    What's a good pie recipe?
      

  2. Passez à une tâche analogue:si vous ne parvenez pas à ce que le modèle suive vos instructions pour une tâche, essayez de lui donner des instructions pour une tâche analogue qui permet d'obtenir le même résultat.

    Cette requête demande au modèle de catégoriser un livre en utilisant des catégories prédéfinies:

    Which category does The Odyssey belong to:
    thriller
    sci-fi
    mythology
    biography
      
        The Odyssey belongs to the category of **mythology**. 
    
        Here's why:
    
        * **Mythology:** The Odyssey tells the story of Odysseus, a hero from Greek mythology, and his
        journey home after the Trojan War. It features gods, monsters, and supernatural events common to
        Greek mythology.
    .....
      

    La réponse est correcte, mais le modèle n'est pas resté dans les limites des options. Vous souhaitez également que le modèle réponde avec l'une des options plutôt qu'avec une phrase complète. Dans ce cas, vous pouvez reformuler les instructions sous la forme d'une question à choix multiples et demander au modèle de choisir une option.

    Multiple choice problem: Which of the following options describes the book The Odyssey?
    Options:

    • thriller
    • sci-fi
    • mythology
    • biography
    The correct answer is mythology. 
    

  3. Modifier l'ordre du contenu dans la requête:l'ordre du contenu dans la requête peut parfois affecter la réponse. Essayez de modifier l'ordre du contenu et vérifiez comment cela affecte la réponse.

    Version 1:
    [examples]
    [context]
    [input]
    
    Version 2:
    [input]
    [examples]
    [context]
    
    Version 3:
    [examples]
    [input]
    [context]
    

Réponses de remplacement

Une réponse de remplacement est une réponse renvoyée par le modèle lorsque la requête ou la réponse déclenche un filtre de sécurité. Voici un exemple de réponse de remplacement : "Je ne peux pas vous aider, car je ne suis qu'un modèle de langage".

Si le modèle renvoie une réponse de remplacement, essayez d'augmenter la température.

Ce qu'il faut éviter

  • Évitez de compter sur les modèles pour générer des informations factuelles.
  • Utilisez-les avec soin pour résoudre les problèmes mathématiques et logiques.

Fonctionnement des modèles génératifs

Cette section vise à répondre à la question suivante : Les réponses des modèles génératifs sont-elles aléatoires ou déterministes ?

La réponse courte est oui aux deux questions. Lorsque vous invitez un modèle génératif, une réponse textuelle est générée en deux étapes. Lors de la première étape, le modèle génératif traite la requête d'entrée et génère une distribution de probabilité sur les jetons (mots) susceptibles de suivre. Par exemple, si vous saisissez le texte d'invite "Le chien a sauté par-dessus le…", le modèle génératif produira un tableau de mots probables à suivre:

[("fence", 0.77), ("ledge", 0.12), ("blanket", 0.03), ...]

Ce processus est déterministe. Un modèle génératif produira cette même distribution chaque fois qu'il recevra le même texte d'invite.

Dans la deuxième étape, le modèle génératif convertit ces distributions en réponses textuelles réelles à l'aide de l'une des stratégies de décodage. Une stratégie de décodage simple peut sélectionner le jeton le plus probable à chaque étape. Ce processus serait toujours déterministe. Toutefois, vous pouvez choisir de générer une réponse en effectuant un échantillonnage aléatoire sur la distribution renvoyée par le modèle. Ce processus serait stochastique (aléatoire). Contrôlez le degré de hasard autorisé dans ce processus de décodage en définissant la température. Une température de 0 signifie que seuls les jetons les plus probables sont sélectionnés, et qu'il n'y a pas de hasard. À l'inverse, une température élevée injecte un degré de hasard élevé dans les jetons sélectionnés par le modèle, ce qui entraîne des réponses plus inattendues et surprenantes.

Étapes suivantes