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:
- Invite avec des fichiers multimédias
- Générer des requêtes de génération d'images
- Invite à générer une vidéo
- Conseils pour les requêtes de modèles de réflexion
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 |
|
|
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é |
|
|
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.
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.
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.
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 :
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.
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
ettopK
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.topK
:le paramètretopK
modifie la façon dont le modèle sélectionne les jetons pour la sortie. Une valeurtopK
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 valeurtopK
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 jetonstopK
ayant les probabilités les plus élevées sont échantillonnés. Les jetons sont ensuite filtrés en fonction dutopP
avec le jeton final sélectionné à l'aide de l'échantillonnage de température.topP
:le paramètretopP
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 valeurtopP
. Par exemple, si les jetons A, B et C ont une probabilité de 0,3, 0,2 et 0,1 et que la valeurtopP
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 detopP
est 0,95.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:
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?
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.
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
- Maintenant que vous avez une meilleure compréhension de la conception des requêtes, essayez d'écrire vos propres requêtes à l'aide de Google AI Studio.
- Pour en savoir plus sur les requêtes multimodales, consultez la section Requêtes avec des fichiers multimédias.
- Pour en savoir plus sur les requêtes de génération d'images, consultez le guide des requêtes Imagen.
- Pour en savoir plus sur les requêtes vidéo, consultez le guide des requêtes Veo.