AI Observability dans Snowflake Cortex¶
Utilisez AI Observability dans Snowflake Cortex pour évaluer et tracer vos applications d’AI générative. Avec AI Observability, vous pouvez rendre vos applications plus fiables et plus transparentes. Utilisez-la pour mesurer la performance de vos applications AI en effectuant des évaluations systématiques. Vous pouvez utiliser les informations issues des évaluations pour itérer sur les configurations de votre application et optimiser les performances. Vous pouvez également les utiliser pour consigner des traçages d’application à des fins de débogage.
Utilisez AI Observability pour comparer les performances, ce qui rend vos applications plus fiables et vous donne une plus grande confiance pour les déploiements en production.
AI Observability présente les fonctions suivantes :
Évaluations : Utilisez AI Observability pour évaluer systématiquement les performances de vos applications et agents d’AI générative à l’aide de la technique LLM-as-a-judge. Vous pouvez utiliser des métriques, telles que la précision, la latence, l’utilisation et le coût, pour itérer rapidement sur les configurations de votre application et optimiser les performances.
Comparaison : Comparez plusieurs évaluations côte à côte et évaluez la qualité et la précision des réponses. Vous pouvez analyser les réponses pour différentes configurations de LLMs, de prompts et d’inférences afin d’identifier la meilleure configuration pour les déploiements en production.
Traçage : Tracez chaque étape de l’exécution de l’application à travers les prompts d’entrée, le contexte récupéré, l’utilisation de l’outil et l’inférence LLM. Utilisez-la pour déboguer des enregistrements individuels et affiner l’application en termes de précision, de latence et de coût.
AI Observability peut être utilisée pour évaluer divers types de tâches, telles que la génération assistée par récupération (RAG) et le résumé. Par exemple, le score de pertinence du contexte peut vous aider à détecter la qualité de la récupération des résultats de recherche correspondant à une requête de l’utilisateur. Vous pouvez utiliser les scores de pertinence et d’ancrage de la réponse pour détecter la véracité et la pertinence de la réponse finale en fonction du contexte récupéré.
Pour le résumé, vous pouvez mesurer l’exactitude factuelle et l’exhaustivité des résumés générés par LLM sur la base de l’entrée originale et éviter les prompts et LLMs qui ont une fréquence d’hallucinations plus élevée dans vos applications d’AI générative.
Pour commencer, découvrez les Concepts clés, puis faites un rapide tour d’horizon avec le Tutoriel d’AI Observability. Vous pouvez ensuite utiliser les informations contenues dans Évaluer les applications AI pour une visite approfondie.
Pour examiner un concept spécifique, consultez Référence pour Snowflake AI Observability.
Contrôle d’accès et conditions préalables¶
Avant de commencer à utiliser AI Observability :
pour créer et exécuter des exécutions, votre rôle doit disposer des rôles ou privilèges suivants. pour plus d’informations, consultez Privilèges requis :
Rôle de la base de données CORTEX_USER
Privilège CREATE EXTERNAL AGENT sur le schéma.
Le privilège CREATE TASK sur le schéma.
Privilège EXECUTE TASK global.
Installez les paquets Trulens Python suivants dans votre projet Python :
trulens-coretrulens-connectors-snowflaketrulens-providers-cortex
The version of the package that you’re using in your Python project should be version 2.1.2 or later.
TruLens est la plateforme utilisée par Snowflake pour suivre vos applications. Pour plus d’informations, consultez la documentation TruLens.
Concepts clés¶
Applications¶
Une application est une application d’AI générative de bout en bout, conçue à l’aide de multiples composants tels que des LLMs, des outils (tels que des récupérateurs de recherche ou des APIs) et une logique personnalisée supplémentaire. Par exemple, une application peut contenir un pipeline RAG avec des récupérateurs, des reclasseurs et des LLMs chaînés ensemble. Vous pouvez activer AI Observability pour les applications qui peuvent s’exécuter dans n’importe quel environnement (tel que Snowflake, Cloud ou sur site).
Agent externe¶
Applications are represented in Snowflake as EXTERNAL AGENT objects. An EXTERNAL AGENT object is used to store application and evaluation metadata (such as the application name, version name, or run name). It does not store the application code, application definition, execution traces, or evaluation results. While the application can be hosted in any environment (such as Snowflake, cloud, or on-premises), the execution traces and evaluation results are stored in an event table in your Snowflake account. For more information, see Données d’observabilité.
Outre le stockage des métadonnées de l’application et de l’évaluation, l’objet EXTERNAL AGENT est également utilisé pour régir l’accès aux traçages et aux résultats de l’évaluation de l’application. Pour plus d’informations, voir Privilèges requis.
Versions¶
Les applications peuvent avoir plusieurs versions. Chaque version représente une mise en œuvre différente. Par exemple, ces versions peuvent représenter différents récupérateurs, prompts, LLMs ou configurations d’inférence.
Jeu de données¶
Un jeu de données représente un ensemble d’entrées. Vous pouvez le configurer pour qu’il représente également un ensemble de sorties attendues (la réalité de terrain) afin de tester l’application. À l’aide du jeu de données, vous pouvez appeler l’application pour effectuer les tâches suivantes :
Générer la sortie.
Capturer les traçages.
Calculer les métriques d’évaluation.
Vous pouvez utiliser un jeu de données contenant à la fois les entrées et les sorties générées pour calculer les métriques d’évaluation sans invoquer l’application. Pour obtenir la liste des champs pris en charge dans le jeu de données, voir Jeux de données et attributs.
Cycles¶
Un cycle est un travail d’évaluation. Il utilise le jeu de données et la version de l’application que vous avez spécifiés pour calculer les métriques d’évaluation.
A run has an invocation stage and a computation stage. The invocation stage triggers the application to generate the output and corresponding traces. The computation stage computes the evaluation metrics specified for the run. Multiple computations can be performed to add new metrics to an existing run. For the list of statuses associated with the execution of a run, see Cycles.
Métriques¶
Les métriques d’évaluation sont des scores que vous utilisez pour évaluer les performances de l’application d’AI générative sur la base de vos propres critères. Ces métriques utilisent les LLMs pour classer les sorties et fournir des informations détaillées sur la notation. Pour une liste complète des métriques et de leurs définitions, voir Mesures d’évaluation.
Traçages¶
Les traçages sont des enregistrements complets qui capturent les entrées, les sorties et les étapes intermédiaires des interactions avec une application LLM. Les traçages fournissent une vue détaillée de l’exécution de l’application. Utilisez les traçages pour analyser et comprendre le comportement du modèle à chaque zone de préparation. Vous pouvez comparer les traçages de différentes versions de l’application afin d’identifier les améliorations, de résoudre les problèmes et de vérifier les performances prévues. Pour obtenir des informations sur l’accès aux traçages associés à chaque enregistrement, voir Évaluer les applications AI.
Tarifs¶
AI Observability utilise les LLM pour calculer les métriques d’évaluation. Pour les évaluations côté serveur, les LLMs sur Cortex AI sont utilisés comme juges LLM. Les juges LLM sont invoqués via la fonction COMPLETE (SNOWFLAKE.CORTEX) pour effectuer des évaluations. Les appels de fonctions de Cortex Complete vous sont facturés. Le LLM utilisé pour effectuer les évaluations détermine le montant de votre facture. En outre, les frais suivants vous sont facturés :
Frais d’entrepôt pour les tâches utilisées pour gérer les exécutions d’évaluation
Frais d’entrepôt pour les requêtes utilisées pour calculer les métriques d’évaluation
Frais de stockage des résultats de l’évaluation
Frais d’entrepôt pour récupérer les résultats de l’évaluation à consulter dans Snowsight