Optimiser la sortie du modèle au moyen de l’ingénierie des requêtes

Effectué

La façon la plus accessible d’optimiser les performances d’un modèle consiste à utiliser l’ingénierie rapide. L’ingénierie des requêtes désigne le processus de conception et d’optimisation des requêtes afin d’améliorer la qualité, la précision et la pertinence des réponses produites par un modèle linguistique. Il ne nécessite pas d’infrastructure ou de données d’apprentissage supplémentaires, et vous pouvez commencer à expérimenter immédiatement.

Comprendre les composantes des requêtes

Lorsque vous interagissez avec un modèle de langage, la qualité de votre question influence directement la qualité de la réponse. Une invite bien construite aide le modèle à comprendre ce dont vous avez besoin et à générer une réponse plus utile.

Les instructions pour les modèles de complétion de conversation incluent généralement les composants suivants :

  • Message système : instructions qui définissent le comportement, le rôle et les contraintes du modèle.
  • Message de l’utilisateur : question ou entrée de l’utilisateur.
  • Message d’assistant : réponses de modèle précédentes, utilisées dans les conversations à plusieurs tours.
  • Exemples : Exemples de paires d’entrée/sortie qui illustrent le format de réponse attendu.

La façon dont vous structurez et combinez ces composants détermine la façon dont le modèle répond efficacement.

Concevoir des messages système efficaces

Un message système est un ensemble d’instructions que vous fournissez au modèle pour guider ses réponses. Les messages système apparaissent généralement en premier dans la conversation et jouent le rôle d’ensemble d’instructions de niveau supérieur. Vous les utilisez pour :

  • Définissez le rôle et les limites de l’assistant.
  • Définissez le ton et le style de communication.
  • Spécifiez des formats de sortie, tels que JSON ou des points de puce.
  • Ajoutez des contraintes de sécurité et de qualité pour votre scénario.

Un message système peut être aussi simple que :

You are a helpful AI assistant.

Il peut également inclure des règles détaillées et des exigences de mise en forme. Par exemple, l’application de conversation de l’agence de voyage peut utiliser :

You are a friendly travel advisor for Margie's Travel.
Answer only questions related to travel, hotels, and trip planning.
Use a warm, conversational tone.
If you don't have enough information to answer, ask a clarifying question.
Format hotel recommendations as a bulleted list with the hotel name, location, and price range.

Important

Un message système influence le modèle, mais ne garantit pas la conformité. Vous devez tester et itérer sur vos messages système, et les mettre en couche avec d’autres atténuations telles que le filtrage et l’évaluation du contenu.

Lors de la conception d’un message système, suivez cette liste de contrôle :

  1. Commencez par le rôle de l’Assistant : indiquez le rôle et le résultat attendu d’une requête classique.
  2. Définir des limites : répertorier les rubriques, les actions et les types de contenu que l’Assistant doit éviter.
  3. Spécifiez le format de sortie : si vous avez besoin d’un format spécifique, indiquez-le de manière simple et conservez-le cohérent.
  4. Ajoutez une stratégie « lorsqu'il n'est pas sûr » : indiquez au modèle quoi faire lorsque la demande de l'utilisateur est ambiguë, hors du champ d'application ou lorsque le modèle ne dispose pas d'informations.

Appliquer des modèles d’invite

Les invites efficaces utilisent des modèles qui aident le modèle à produire de meilleures réponses. Voici quelques modèles courants que vous pouvez utiliser :

Modèle de persona

Demandez au modèle de prendre une perspective ou un rôle spécifique. Par exemple, demander au modèle de répondre en tant que spécialiste expérimenté du marketing conduit à des résultats différents de ceux obtenus sans définition de persona.

Aucune personne Avec un persona
Message système Aucun Vous êtes un professionnel du marketing chevronné qui écrivez pour des clients techniques.
Requête Utilisateur Écrivez une description en une phrase d’un produit CRM. Écrivez une description en une phrase d’un produit CRM.
Réponse Un produit CRM est un outil logiciel conçu pour gérer les interactions d’une entreprise avec les clients. Découvrez une gestion transparente des relations client avec notre CRM, conçue pour simplifier les opérations et stimuler la croissance des ventes avec une analytique robuste.

Modèle de format

Fournissez un modèle ou une structure dans votre demande pour obtenir un résultat dans un format spécifique. Par exemple, si vous avez besoin d’une réponse structurée sur un hôtel :

Format the result to show:
- Hotel name
- Location
- Star rating
- Price range per night

Ce modèle garantit des réponses cohérentes et organisées qui sont faciles à analyser dans votre application.

Modèle de chaîne de pensée

Demandez au modèle d’expliquer son raisonnement pas à pas. Cette technique, appelée chaîne de pensée, réduit le risque de résultats incorrects et facilite la vérification de la logique du modèle.

Par exemple, au lieu de demander « Quel hôtel est le meilleur pour une famille de quatre ? », vous pouvez demander :

Which hotel is best for a family of four? Take a step-by-step approach: 
consider room size, amenities for children, location, and price.

Une technique associée consiste à décomposer la tâche en sous-étapes explicites avant que le modèle ne réponde, plutôt que de lui demander de raisonner tout en même temps. Par exemple, vous pouvez d’abord demander au modèle d’extraire les faits clés d’un passage, puis dans une invite de suivi, demandez-lui de répondre à une question basée sur ces faits. La décomposition du travail de cette façon réduit les erreurs sur les tâches complexes et multipartes.

Note

Le prompting en chaîne de pensée constitue une technique destinée aux modèles dépourvus de capacités de raisonnement explicite. Les modèles de raisonnement comme les modèles de série o gèrent la logique pas à pas en interne.

Modèle d'apprentissage avec peu d'exemples

Fournissez un ou plusieurs exemples de l’entrée et de la sortie souhaitées pour aider le modèle à identifier le modèle souhaité. Cette technique est appelée apprentissage à quelques coups (ou one-shot pour un seul exemple). Lorsqu’aucun exemple n’est fourni, on parle de zero-shot learning.

Par exemple, pour classifier les demandes des clients :

Classify the following customer messages:

Message: "I need to change my flight to Rome"
Category: Booking change

Message: "What's the weather like in Bali in March?"
Category: Travel information

Message: "Can I get a refund for my cancelled tour?"
Category:

Le modèle apprend le modèle de classification des exemples et termine correctement la dernière entrée.

Utiliser la syntaxe claire et les délimiteurs

Lorsque votre invite inclut plusieurs sections , telles que des instructions, du texte source et des exemples, utilisez des délimiteurs tels que ---des en-têtes Markdown ou des balises XML pour les séparer. Les limites claires aident le modèle à distinguer les instructions du contenu et à réduire le risque de mauvaise interprétation.

Conseil / Astuce

Les modèles peuvent être sensibles à un biais de récurrence, ce qui signifie que le texte à la fin d’une invite peut avoir plus d’influence que le texte au début. Si le modèle ne suit pas vos instructions de manière cohérente, essayez de répéter l’instruction clé à la fin de l’invite.

Configurer les paramètres du modèle

Au-delà du texte de vos invites, vous pouvez ajuster les paramètres de modèle qui contrôlent la façon dont le modèle génère des réponses :

  • Température : contrôle l’aléatoire de la sortie. Une valeur plus élevée (par exemple, 0,7) produit des réponses plus créatives et variées, tandis qu’une valeur inférieure (par exemple, 0,2) produit des réponses plus ciblées et déterministes. Utilisez des valeurs inférieures pour les tâches factuelles et les valeurs plus élevées pour les tâches créatives.
  • Top_p : contrôle également l’aléatoire, mais de manière différente. Il limite le modèle à un sous-ensemble des jetons suivants les plus probables. Par exemple, une top_p valeur de 0,9 signifie que le modèle considère uniquement les 90 premiers% de jetons probables.

Conseil / Astuce

La recommandation générale est d’ajuster la température ou top_p, pas les deux en même temps.

Pour le scénario de l’agence de voyage, vous pouvez utiliser une température basse (0,2) lors de la réponse à des questions factuelles sur les commodités de l’hôtel, mais une température plus élevée (0,7) lors de la génération de suggestions d’itinéraires de voyage créatifs.

Lorsque l’ingénierie des requêtes suffit

L’ingénierie prompte est le bon point de départ pour tout effort d’optimisation de modèle. Elle est efficace lorsque vous devez :

  • Guidez le ton, le format et le comportement du modèle.
  • Fournissez des instructions spécifiques pour une tâche.
  • Itérer rapidement sur les résultats sans modification de l’infrastructure.
  • Gardez les coûts bas, car aucune formation supplémentaire ni aucune storage de données n’est nécessaire.

Toutefois, l’ingénierie rapide a des limites. Si le modèle n'a pas access aux informations dont il a besoin (comme le catalogue d'hôtels de votre entreprise), ou s'il ne parvient pas à maintenir un comportement spécifique malgré des instructions détaillées, vous devez envisager des stratégies supplémentaires.