Consigner l'utilisation des jetons, les requêtes et les réponses pour les API de modèle de langage.

Dans cet article, vous allez apprendre à configurer Azure Monitor journalisation pour les demandes et réponses d’API de modèle de langage dans Gestion des API Azure.

L'administrateur de la gestion des API peut utiliser les journaux de demande et de réponse du modèle linguistique, ainsi que les journaux de la passerelle de gestion des API pour des scénarios tels que :

  • Calculez l’utilisation pour la facturation. Calculez les métriques d’utilisation pour la facturation en fonction du nombre de jetons consommés par chaque application ou consommateur d’API (par exemple, segmentés par ID d’abonnement ou adresse IP).

  • Inspectez les messages. Inspectez et analysez les invites et les achèvements pour faciliter le débogage, l’audit et l’évaluation du modèle.

Pour en savoir plus :

Prerequisites

  • Instance gestion des API Azure.
  • Une API de complétions de chat avec un modèle de langage géré, intégrée à Gestion des API Azure. Par exemple, importez une API Microsoft Foundry.
  • Accès à un espace de travail Azure Log Analytics.
  • Autorisations appropriées pour configurer les paramètres de diagnostic et les journaux d’accès dans Gestion des API.

Activer le paramètre de diagnostic pour les journaux d’API du modèle de langage

Activez un paramètre de diagnostic pour consigner les demandes que la passerelle traite pour les API REST de modèle de langage volumineux. Pour chaque demande, Azure Monitor reçoit :

  • Données sur l’utilisation des jetons, telles que les jetons d’invite, les jetons d’achèvement et le nombre total de jetons

  • Nom du modèle utilisé

  • Si vous le souhaitez, les messages de requête et de réponse : proposition et achèvement

    Azure Monitor fractionne les demandes et réponses volumineuses en plusieurs entrées de journal avec des numéros de séquence pour la reconstruction ultérieure, si nécessaire.

Suivez ces étapes pour activer un paramètre de diagnostic qui dirige les journaux d’API du modèle de langage vers un espace de travail Log Analytics. Pour plus d’informations, consultez Activer le paramétrage de diagnostic pour les journaux de Azure Monitor.

  1. Dans le portail Azure, accédez à votre instance Gestion des API Azure.

  2. Dans le menu de gauche, sous Surveillance, sélectionnez Paramètres>de diagnostic+ Ajouter un paramètre de diagnostic.

  3. Configurer le paramètre pour envoyer les journaux de la passerelle IA vers un espace de travail Log Analytics.

    • Sous Journaux, sélectionnez Journaux liés à la passerelle IA générative.
    • Sous Détails de destination, sélectionnez Envoyer à l’espace de travail Log Analytics.
  4. Passez en revue ou configurez d’autres paramètres et apportez des modifications si nécessaire.

  5. Cliquez sur Enregistrer.

Capture d’écran du paramètre de diagnostic pour les journaux de passerelle AI dans le portail.

Activer la journalisation des requêtes ou des réponses pour l’API du modèle de langage

Vous pouvez activer les paramètres de diagnostic pour toutes les API ou personnaliser la journalisation pour des API spécifiques. Suivez ces étapes pour journaliser les demandes de modèle de langage et les messages de réponse pour une API. Pour plus d’informations, consultez Modifier les paramètres de journalisation des API.

  1. Dans le menu de gauche de votre instance Gestion des API, sélectionnez les>API API , puis sélectionnez le nom de l’API.
  2. Sélectionnez Paramètres dans la barre supérieure.
  3. Faites défiler jusqu’à la section Diagnostic Logs et sélectionnez Azure Monitor.
  4. Dans Enregistrer les messages LLM, sélectionnez Activé.
  5. Sélectionnez Consignes de journal et entrez une taille en octets, par exemple 32768.
  6. Sélectionnez journal des complétions et entrez une taille en octets, par exemple 32768.
  7. Passez en revue d’autres paramètres et apportez des modifications si nécessaire. Cliquez sur Enregistrer.

Capture d’écran de l’activation de la journalisation du modèle de langage pour une API dans le portail.

Note

Si vous activez la collecte, les messages de demande ou de réponse du modèle de langage jusqu’à 32 Ko sont envoyés dans une seule entrée. Les messages de plus de 32 Ko sont fractionnés et enregistrés dans des blocs de 32 Ko avec des numéros de séquence pour la reconstruction ultérieure. Les messages de demande et les messages de réponse ne peuvent pas dépasser 2 Mo chacun.

Passer en revue le classeur d’analyse des API de modèles linguistiques

Le tableau de bord Azure Monitor basé sur Analytics fournit des insights sur l’utilisation de l’API du modèle de langage et la consommation de jetons à l’aide de données agrégées dans un espace de travail Log Analytics. Pour plus d’informations, consultez Obtenir les analyses d'API dans Gestion des API Azure.

  1. Dans le menu de gauche de votre instance Gestion des API, sélectionnez Monitoring>Analytics.
  2. Sélectionnez l’onglet Modèles linguistiques .
  3. Passez en revue les métriques et les visualisations pour la consommation des jetons d’API du modèle de langage et les requêtes dans une plage de temps sélectionnée.

Capture d’écran de l’analytique pour les API de modèle de langage dans le portail.

Consulter les journaux d’activité Azure Monitor pour les demandes et les réponses

Passez en revue le journal ApiManagementGatewayLlmLog pour plus d’informations sur les demandes et réponses du modèle de langage, notamment la consommation de jetons, le déploiement de modèle utilisé et d’autres détails sur des intervalles de temps spécifiques.

Les demandes et réponses, y compris les messages segmentés pour les requêtes et réponses volumineuses, apparaissent dans des entrées de journal distinctes que vous pouvez mettre en corrélation à l’aide du CorrelationId champ.

À des fins d’audit, utilisez une requête Kusto similaire à la requête suivante pour joindre chaque requête et réponse dans un seul enregistrement. Ajustez la requête pour inclure les champs que vous souhaitez suivre.

ApiManagementGatewayLlmLog
| extend RequestArray = parse_json(RequestMessages)
| extend ResponseArray = parse_json(ResponseMessages)
| mv-expand RequestArray
| mv-expand ResponseArray
| project
    CorrelationId,
    RequestContent = tostring(RequestArray.content),
    ResponseContent = tostring(ResponseArray.content)
| summarize
    Input = strcat_array(make_list(RequestContent), " . "),
    Output = strcat_array(make_list(ResponseContent), " . ")
    by CorrelationId
| where isnotempty(Input) and isnotempty(Output)

Capture d’écran des résultats de la requête pour les journaux de modèle linguistique dans le portail.

Charger des données dans Microsoft Foundry pour l’évaluation du modèle

Vous pouvez exporter des données de journalisation de modèle de langage en tant que jeu de données pour l’évaluation model dans Microsoft Foundry. Avec l’évaluation du modèle, vous pouvez évaluer les performances de vos modèles et applications d’IA génératives sur un modèle de test ou un jeu de données à l’aide de métriques d’évaluation intégrées ou personnalisées.

Pour utiliser les journaux de modèle de langage en tant que jeu de données pour l’évaluation du modèle :

  1. Joignez les messages de demande et de réponse du modèle de langage dans un enregistrement unique pour chaque interaction, comme indiqué dans la section précédente. Incluez les champs que vous souhaitez utiliser pour l’évaluation du modèle.
  2. Exportez le jeu de données au format CSV, qui est compatible avec Microsoft Foundry.
  3. Dans le portail Microsoft Foundry, créez une évaluation pour charger et évaluer le jeu de données.

Pour plus d’informations sur la création et l’exécution d’une évaluation de modèle dans Microsoft Foundry, consultez Exécuter les évaluations à partir du portail Microsoft Foundry.