Comment tracer votre application avec le Kit de développement logiciel (SDK) d’inférence d’Azure AI
Important
Les éléments marqués (préversion) dans cet article sont actuellement en préversion publique. Cette préversion est fournie sans contrat de niveau de service, nous la déconseillons dans des charges de travail de production. Certaines fonctionnalités peuvent être limitées ou non prises en charge. Pour plus d’informations, consultez Conditions d’Utilisation Supplémentaires relatives aux Évaluations Microsoft Azure.
Dans cet article, vous allez apprendre à suivre votre application avec le Kit de développement logiciel (SDK) d’inférence d’Azure AI en choisissant entre Python, JavaScript ou C#. La bibliothèque de client d’inférence Azure AI prend en charge le suivi avec OpenTelemetry.
Activer le traçage dans votre application
Prérequis
- Un abonnement Azure.
- Un projet Azure AI, voir Créer un projet dans le portail Azure AI Foundry.
- Un modèle IA prenant en charge l’API Inférence de modèle Azure AI déployée via Azure AI Foundry.
- Si vous utilisez Python, vous avez besoin de Python 3.8 ou version ultérieure, y compris pip.
- Si vous utilisez JavaScript, les environnements pris en charge sont des versions LTS de Node.js.
Installation
Installez le package azure-ai-inference
à l’aide de votre gestionnaire de package, par exemple pip :
pip install azure-ai-inference[opentelemetry]
Installez le plug-in Azure Core OpenTelemetry Tracing, OpenTelemetry et l’exportateur OTLP pour envoyer des données de télémétrie à votre back-end d’observabilité. Pour installer les packages nécessaires pour Python, utilisez les commandes pip suivantes :
pip install opentelemetry
pip install opentelemetry-exporter-otlp
Pour en savoir plus sur le Kit de développement logiciel (SDK) d’inférence d’Azure AI pour Python et l’observabilité, consultez Suivi via le Kit de développement logiciel (SDK) d’inférence pour Python.
Pour en savoir plus, consultez la Référence du Kit de développement logiciel (SDK) d’inférence.
Configuration
Vous devez ajouter les paramètres de configuration suivants en fonction de votre cas d’usage :
Pour capturer le contenu de l’invite et de la saisie semi-automatique, définissez la variable d’environnement
AZURE_TRACING_GEN_AI_CONTENT_RECORDING_ENABLED
sur true (sans respect de la casse). Par défaut, les invites, les saisies semi-automatiques, les noms de fonction, les paramètres ou les sorties ne sont pas enregistrées.Pour activer le suivi du Kit de développement logiciel (SDK) d’Azure, définissez la variable d’environnement
AZURE_SDK_TRACING_IMPLEMENTATION
sur opentelemetry. Vous pouvez également le configurer dans le code avec l’extrait de code suivant :from azure.core.settings import settings settings.tracing_implementation = "opentelemetry"
Pour plus d’informations, consultez la bibliothèque cliente OpenTelemetry de suivi Azure Core pour Python.
Activer l'instrumentation
La dernière étape consiste à activer l’instrumentation d’inférence Azure AI avec l’extrait de code suivant :
from azure.ai.inference.tracing import AIInferenceInstrumentor
# Instrument AI Inference API
AIInferenceInstrumentor().instrument()
Il est également possible de désinstrumenter l’API d’inférence Azure AI à l’aide de l’appel d’intrus. Après cet appel, les traces ne seront plus émises par l’API d’inférence Azure AI jusqu’à ce que l’instrument soit appelé à nouveau :
AIInferenceInstrumentor().uninstrument()
Apportez vos propres fonctions
Pour suivre vos propres fonctions personnalisées, vous pouvez tirer parti d’OpenTelemetry, vous devez instrumenter votre code avec le Kit de développement logiciel (SDK) d’OpenTelemetry. Cela implique la configuration d’un fournisseur de suivi et la création d’étendues autour du code que vous souhaitez tracer. Chaque étendue représente une unité de travail et peut être imbriquée pour former une arborescence de trace. Vous pouvez ajouter des attributs à des étendues pour enrichir les données de trace avec un contexte supplémentaire. Une fois instrumenté, configurez un exportateur pour envoyer les données de trace à un back-end pour l’analyse et la visualisation. Pour obtenir des instructions détaillées et une utilisation avancée, reportez-vous à la documentation OpenTelemetry. Cela vous aidera à surveiller les performances de vos fonctions personnalisées et à obtenir des insights sur leur exécution.
Joindre les commentaires de l’utilisateur aux traces
Pour joindre des commentaires utilisateur aux traces et les visualiser dans le portail Azure AI Foundry en utilisant les conventions sémantiques d’OpenTelemetry, vous pouvez instrumenter votre application pour activer le traçage et la journalisation des commentaires des utilisateurs. En mettant en corrélation les traces de commentaires avec leurs traces de requête de conversation respectives en utilisant l’ID de réponse, vous pouvez utiliser, visualiser et gérer ces traces dans le portail Azure AI Foundry. La spécification d’OpenTelemetry permet des données de trace standardisées et enrichies, qui peuvent être analysées dans le portail Azure AI Foundry pour obtenir des insights sur l’optimisation des performances et l’expérience utilisateur. Cette approche vous aide à utiliser la puissance totale d’OpenTelemetry pour améliorer l’observabilité dans vos applications.
Contenu connexe
- Exemples Python contenant du code Python entièrement exécutable pour le suivi à l’aide de clients synchrones et asynchrones.
- Exemples JavaScript contenant du code JavaScript entièrement exécutable pour le suivi à l’aide de clients synchrones et asynchrones.
- Exemples C# contenant du code C# entièrement exécutable pour effectuer une inférence à l’aide de méthodes synchrones et asynchrones.