Ce document décrit l'intérêt d'instrumenter vos applications d'IA générative. Il explique également comment instrumenter une application qui utilise les frameworks LangGraph ou Agent Development Kit (ADK). Les deux frameworks vous permettent de collecter et d'afficher des prompts et des réponses multimodaux.
À propos des agents d'IA générative
Les applications qui utilisent l'IA générative s'appuient sur des agents pour effectuer des tâches ou atteindre des objectifs. Les agents sont des applications qui effectuent des tâches ou poursuivent des objectifs au nom d'un utilisateur. Par exemple, un agent d'IA générative peut naviguer sur un site Web et émettre des commandes d'API. Ces commandes d'API peuvent récupérer des informations ou effectuer une action.
Les agents agissent de manière autonome et utilisent le raisonnement pour déterminer comment décomposer un objectif ou une tâche en sous-tâches, puis pour déterminer les outils à utiliser pour accomplir ces sous-tâches. Dans le contexte de l'IA générative, les outils déterminent comment l'agent peut interagir avec son environnement. Par exemple, un agent peut disposer d'un outil qui lui permet d'émettre des commandes d'API.
Pour en savoir plus sur les agents, consultez les ressources suivantes :
- Observabilité des agents IA : évolution des normes et des bonnes pratiques
- Qu'est-ce qu'un agent IA ?
Pourquoi instrumenter vos applications d'IA générative ?
L'instrumentation de vos applications d'IA générative est le seul moyen de comprendre le raisonnement utilisé par les agents autonomes. Ce processus de raisonnement n'est pas déterministe.
Lorsque vous instrumentez une application d'IA générative, les données de télémétrie incluent les décisions et les actions des agents. Vous pouvez utiliser ces données pour valider ou améliorer votre application.
Comment instrumenter vos applications d'IA générative ?
Pour instrumenter votre application, vous devez générer des données de télémétrie et les envoyer à l'emplacement où les données peuvent être stockées, interrogées et analysées. Par exemple, lorsque votre instrumentation envoie des données de télémétrie à votre Google Cloud projet, vous pouvez utiliser Google Cloud Observability pour afficher et analyser ces données.
Bonnes pratiques
Google vous recommande d'instrumenter votre application avec OpenTelemetry, un projet Open Source qui fournit un framework unifié pour l'instrumentation d'applications. Les exemples listés dans ce document s'appuient sur OpenTelemetry.
Google vous recommande également de stocker vos prompts et vos réponses dans un bucket Cloud Storage plutôt que dans une entrée de journal :
Vous disposez d'un contrôle précis sur le contenu du bucket Cloud Storage. Par exemple, vous pouvez supprimer des conversations individuelles stockées dans un bucket. Toutefois, vous ne pouvez pas supprimer des entrées de journal individuelles.
Les buckets Cloud Storage peuvent stocker des objets beaucoup plus volumineux que la taille maximale d'une entrée de journal, qui est limitée à 256 Kio. Cloud Logging répond avec une erreur
INVALID_ARGUMENTet ignore les données si les données reçues dépassent la taille maximale de l'entrée de journal. Si la commande se termine sans erreur, mais que des champs individuels dépassent leurs limites de taille, Cloud Logging tronque ces données.
Exemples d'instrumentation
Pour obtenir des informations sur l'instrumentation, consultez les documents suivants :
Collecter et afficher des prompts et des réponses multimodaux explique comment configurer un agent LangGraph ReAct ou un agent d'IA générative créé avec ADK pour collecter des prompts et des réponses multimodaux. Il explique également comment effectuer les opérations suivantes :
- Stocker des prompts et des réponses dans un bucket Cloud Storage.
- Afficher les prompts et les réponses sur la page Explorateur Trace.
- Analyser les prompts et les réponses avec BigQuery.
- Évaluer les prompts et les réponses avec le SDK Vertex AI pour Python.
Instrumenter un agent LangGraph ReAct avec OpenTelemetry explique comment utiliser OpenTelemetry pour instrumenter une application d'IA générative qui utilise le framework LangChain ou LangGraph. Il fournit également un lien vers un exemple d'application que vous pouvez télécharger et exécuter. L'exemple d'application collecte des prompts et des réponses textuels.
Instrumenter des applications ADK avec OpenTelemetry explique comment activer l'instrumentation intégrée qui collecte des données de télémétrie à partir des actions clés de l'agent. Les données de télémétrie incluent des prompts textuels et des réponses d'agent. Il fournit également un lien vers un exemple d'application que vous pouvez télécharger et exécuter. L'exemple d'application collecte des prompts et des réponses textuels.
Examiner les appels MCP à l'aide de Trace explique comment configurer votre application pour transmettre le contexte de trace aux serveurs MCP Google Cloud distants, ce qui permet à ces serveurs d'associer des segments à une trace.
Comment afficher vos prompts et vos réponses
Cloud Trace est configuré pour extraire les événements des segments écrits par les applications d'IA générative, à condition que les segments soient conformes aux conventions sémantiques OpenTelemetry pour les segments d'IA générative et incluent des attributs ou des événements qui suivent les conventions sémantiques pour les événements d'IA générative.
Cloud Trace peut également afficher des prompts et des réponses multimodaux. Dans ce scénario, vos prompts et vos réponses ne sont pas associés à vos données de trace. Au lieu de cela, ils sont stockés dans un bucket Cloud Storage. Pour en savoir plus sur cette configuration, consultez Collecter et afficher des prompts et des réponses multimodaux.