Présentation de Example Store

Example Store vous permet de stocker et de récupérer dynamiquement des exemples few-shot. Les exemples few-shot vous permettent de montrer les schémas de réponse attendus à un LLM pour améliorer la qualité, la justesse et la cohérence de ses réponses à des requêtes similaires.

Que sont les exemples few-shot ?

Un exemple à quelques exemples est une donnée libellée spécifique à votre cas d'utilisation du LLM. Il comprend une paire entrée/sortie illustrant la réponse attendue du modèle pour une requête de modèle. Vous pouvez utiliser des exemples pour illustrer le comportement ou le schéma de réponse attendu d'un LLM.

En n'utilisant que quelques exemples pertinents, vous pouvez couvrir un plus grand nombre de résultats possibles, de comportements prévus et d'entrées utilisateur sans augmenter la taille ni la complexité des invites. Pour ce faire, n'incluez que des exemples pertinents (en réduisant le nombre d'exemples) et "montrez plutôt que dites" le comportement attendu.

L'utilisation d'exemples few-shot est une forme d'apprentissage en contexte. Un exemple montre un schéma clair d'entrées et de sorties, sans expliquer comment le modèle génère le contenu. Vous pouvez couvrir plus de résultats ou de requêtes utilisateur possibles en utilisant relativement peu d'exemples, sans augmenter la taille de votre requête ni la complexité du code. L'utilisation d'exemples n'implique pas de mettre à jour les paramètres du modèle pré-entraîné, et n'a aucune incidence sur l'étendue des connaissances du LLM. Cela fait de l'apprentissage en contexte avec des exemples une approche relativement légère et concise pour personnaliser, corriger ou améliorer le raisonnement et la réponse d'un LLM à des requêtes inédites.

En collectant des exemples pertinents représentatifs de vos requêtes utilisateur, vous aidez le modèle à maintenir l'attention, à démontrer le modèle attendu et à corriger un comportement incorrect ou inattendu. Cela n'a aucune incidence sur les autres requêtes qui génèrent les réponses attendues.

Comme toutes les stratégies d'ingénierie des requêtes, l'utilisation d'exemples few-shot s'ajoute aux autres techniques d'optimisation des LLM, telles que l'affinage ou le RAG.

Utiliser Example Store

Pour utiliser Example Store, procédez comme suit:

  1. Créez ou réutilisez une ressource ExampleStore, également appelée "instance Example Store".

    • Pour chaque région et chaque projet, vous pouvez disposer de 50 instances Example Store au maximum.
  2. Écrivez et importez des exemples basés sur les réponses du LLM. Deux scénarios sont possibles:

    • Si le comportement et le schéma de réponse du LLM sont conformes aux attentes, écrivez des exemples basés sur ces réponses et importez-les dans l'instance Example Store.

    • Si le LLM présente un comportement ou des schémas de réponse inattendus, rédigez un exemple pour montrer comment corriger la réponse, puis importez-le dans l'instance Example Store.

  3. Les exemples importés sont immédiatement disponibles pour l'agent ou l'application LLM associée à l'instance Example Store.

    • Si un agent basé sur le kit de développement d'agent Vertex AI est associé à l'instance Example Store, il récupère automatiquement les exemples et les inclut dans la requête LLM.

    • Pour toutes les autres applications LLM, vous devez rechercher et récupérer les exemples, puis les inclure dans vos requêtes.

Vous pouvez continuer à ajouter des exemples de manière itérative à une instance Example Store chaque fois que vous observez des performances inattendues de la LLM ou que vous rencontrez des requêtes utilisateur malveillantes ou inattendues. Vous n'avez pas besoin de mettre à jour votre code ni de redéployer une nouvelle version de votre application LLM. Les exemples sont disponibles pour l'agent ou l'application dès que vous les importez dans l'instance de l'Example Store.

Vous pouvez également effectuer les opérations suivantes :

  • Récupérez des exemples en effectuant une recherche de similarité cosinus entre les clés de recherche des exemples stockés et celles de votre requête.

  • Filtrez les exemples par nom de fonction et affinez la liste des exemples candidats à ceux qui représentent les réponses possibles du LLM.

  • Améliorez de manière itérative votre agent ou votre application LLM.

  • Partager des exemples avec plusieurs agents ou applications LLM

Consignes pour créer des exemples few-shot

L'impact des exemples sur les performances du modèle dépend des types d'exemples inclus dans les invites et de la manière dont ils sont inclus.

Voici les bonnes pratiques généralement recommandées pour la création d'exemples:

  • Pertinence et similarité: les exemples doivent être étroitement liés à la tâche ou au domaine spécifiques. Cela aide le modèle à se concentrer sur les aspects les plus pertinents de ses connaissances, à réduire l'utilisation des jetons et à maintenir, voire à améliorer, les performances. Vous avez besoin de moins d'exemples s'ils sont pertinents pour la conversation. Le corpus des exemples disponibles doit être représentatif des requêtes utilisateur possibles. De plus, un exemple doit être pertinent pour une requête utilisateur donnée.

  • Complexité: pour améliorer les performances du LLM, utilisez des exemples de faible complexité pour illustrer le raisonnement attendu.

  • Représentatif des résultats possibles du modèle: les réponses attendues dans un exemple doivent être cohérentes avec le résultat possible. Cela permet à l'exemple de démontrer clairement un raisonnement cohérent avec le raisonnement attendu du LLM pour la requête.

  • Format: pour de meilleures performances, formatez les exemples à quelques exemples dans votre invite de manière cohérente avec les données d'entraînement du LLM et différenciée de l'historique des conversations. La mise en forme des exemples dans une invite peut avoir un impact considérable sur les performances du LLM.

Exemple de cas d'utilisation: Appel de fonction

Vous pouvez utiliser des exemples few-shot pour améliorer les performances des appels de fonction. Vous pouvez indiquer l'appel de fonction attendu pour une requête utilisateur selon un modèle cohérent. L'exemple peut modéliser la réponse attendue à la requête en incluant la fonction à appeler et les arguments à inclure dans l'appel de fonction. Prenons l'exemple d'un cas d'utilisation où la fonction get_store_location renvoie l'emplacement d'un magasin et sa description. Si une requête n'appelle pas cette fonction comme prévu ou affiche une sortie inattendue, vous pouvez utiliser des exemples à quelques images pour corriger ce comportement pour les requêtes suivantes.

Pour en savoir plus sur les appels de fonction, consultez la page Appel de fonction.

Pour en savoir plus, consultez Exemple de démarrage rapide de la boutique.

Étape suivante