Résoudre les problèmes d’évaluation et d’observabilité

Cet article fournit des informations pour vous aider à résoudre les problèmes courants que vous pouvez rencontrer lorsque vous utilisez des fonctionnalités d’évaluation et d’observabilité dans Microsoft Foundry. Certains problèmes concernent la configuration du compte de stockage, le contrôle d’accès en fonction du rôle (RBAC) ou les paramètres réseau du projet Foundry. D’autres problèmes se produisent lors de l’exécution d’une évaluation, comme les échecs d’authentification, la capacité du modèle ou les limites de quota, les problèmes de format de données ou les scores manquants.

Compte de stockage non lié au projet Foundry

Les fonctionnalités d’évaluation nécessitent un compte de stockage lié à votre projet Foundry via une connexion. Si le compte de stockage n’est pas connecté, les évaluations échouent, car le service ne peut pas lire ou écrire des données d’évaluation.

Symptômes:

  • Les évaluations échouent avec des erreurs liées à l’accès au stockage ou à la configuration de stockage manquante.
  • Le service d’évaluation ne peut pas charger les résultats d’évaluation ni télécharger les jeux de données.

Connecter un compte de stockage au projet Foundry

Connectez votre compte de stockage au projet Foundry en créant une connexion Stockage Blob Azure. Pour obtenir des instructions pas à pas, consultez Ajouter une nouvelle connexion à votre projet.

Vous pouvez authentifier la connexion à l’aide d’une clé account ou Microsoft Entra ID (recommandé). Si vous utilisez Entra ID, consultez Configurer l'assignation de rôle RBAC manquante pour l'authentification Entra ID pour configurer les autorisations requises.

Pour plus d’informations sur l’apport de votre propre stockage pour les évaluations, consultez limites de débit, prise en charge régionale et fonctionnalités d’entreprise pour l’évaluation.

Affectation de rôle RBAC manquante pour l’authentification Microsoft Entra ID

Si vous connectez votre compte de stockage à l'aide de l'authentification Microsoft Entra ID, l'identité managée du projet Foundry doit avoir le rôle Contributeur aux données blobStorage sur le compte de stockage. Sans ce rôle, le service ne peut pas lire ou écrire des données d’objet blob, sinon les évaluations échouent.

Symptômes:

  • Les évaluations échouent avec des erreurs 403 Forbidden ou AuthorizationPermissionMismatch.
  • Vous voyez des erreurs indiquant des autorisations insuffisantes pour accéder au compte de stockage.
  • Les opérations de stockage expirent ou sont refusées.

Vérifier l’attribution de rôle d’identité managée

Utilisez les commandes Azure CLI suivantes pour vérifier si le rôle RBAC approprié est affecté à l'identité managée du projet Foundry sur le compte de stockage.

Tout d’abord, récupérez l’ID du principal d’identité managée pour votre projet Foundry :

az resource show \
  --resource-group <your-resource-group> \
  --name <your-foundry-account-name> \
  --resource-type "Microsoft.CognitiveServices/accounts" \
  --query "identity.principalId" \
  --output tsv

Ensuite, énumérez les attributions de rôles sur le compte de stockage et filtrez pour l’identité managée :

az role assignment list \
  --scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>" \
  --assignee <principal-id> \
  --output table

Vérifiez que la sortie inclut une attribution de rôle avec RoleDefinitionName la valeur Contributeur aux données Blob de stockage (ou Propriétaire des données Blob de stockage).

Attribuer le rôle Contributeur aux données Blob du stockage

Si l’attribution de rôle est manquante, attribuez le rôle Contributeur aux données blob du stockage à l’identité managée du projet Foundry :

az role assignment create \
  --assignee <principal-id> \
  --role "Storage Blob Data Contributor" \
  --scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>"

Note

Les attributions de rôle peuvent prendre jusqu’à 10 minutes pour se propager. Patientez quelques minutes après l’attribution du rôle avant de réessayer l’évaluation.

Restrictions d’accès réseau du compte de stockage

Lorsque vous utilisez l’authentification Microsoft Entra ID, le compte de stockage doit avoir un accès réseau public activé. Si l’accès réseau est restreint, le service d’évaluation Foundry peut ne pas être en mesure d’atteindre le compte de stockage.

Symptômes:

  • Les évaluations échouent en raison d'erreurs liées au réseau ou de délais d’expiration.
  • Vous observez 403 Forbidden des erreurs apparaître même si les rôles RBAC sont correctement attribués.
  • Les connexions au compte de stockage sont refusées.

Vérifier la configuration réseau du compte de stockage

Utilisez la commande Azure CLI suivante pour vérifier les paramètres d’accès réseau de votre compte de stockage :

az storage account show \
  --resource-group <resource-group> \
  --name <storage-account-name> \
  --query "{publicNetworkAccess: publicNetworkAccess, defaultAction: networkRuleSet.defaultAction, virtualNetworkRules: networkRuleSet.virtualNetworkRules, ipRules: networkRuleSet.ipRules}" \
  --output json

Vérifiez la sortie pour les valeurs suivantes :

Propriété Valeur attendue Description
publicNetworkAccess Enabled L’accès au réseau public doit être activé.
defaultAction Allow La règle de réseau par défaut doit autoriser l’accès.

Si publicNetworkAccess est défini sur Disabled ou si defaultAction est défini sur Deny, le service d’évaluation ne peut pas atteindre le compte de stockage.

Note

Pour les configurations de l’agent basé sur un réseau virtuel (isolé du réseau) où les ressources sont censées fonctionner avec l’accès au réseau public désactivé et s’appuyer sur un réseau virtuel de connectivité de point de terminaison privé à la place, consultez Configurer la mise en réseau privée.

Activer l’accès au réseau public

Activez l’accès au réseau public sur le compte de stockage :

az storage account update \
  --resource-group <resource-group> \
  --name <storage-account-name> \
  --public-network-access Enabled

Si vous devez conserver le pare-feu activé mais autoriser l’accès, définissez l’action par défaut sur Autoriser :

az storage account update \
  --resource-group <resource-group> \
  --name <storage-account-name> \
  --default-action Allow

Important

L’activation de l’accès au réseau public ou la définition de l’action par défaut pour Autoriser rend le compte de stockage accessible à partir de tous les réseaux. Évaluez cette modification par rapport aux exigences de sécurité de votre organisation.

Liste de contrôle de résolution des problèmes

Utilisez cette liste de contrôle pour vérifier rapidement votre configuration d’évaluation :

  1. Connexion de stockage existe : Vérifiez qu’une connexion Stockage Blob Azure est configurée dans votre projet Foundry. Accédez à Build>Tools dans le portail Foundry pour vérifier.

  2. type d’authentification : identifiez si la connexion utilise une clé de compte ou une Microsoft Entra ID. Si Entra ID, effectuez les vérifications restantes.

  3. Rôle RBAC attribué : vérifiez que l’identité managée du projet Foundry a le rôle Contributeur aux données du Blob de stockage sur le compte de stockage.

    az role assignment list \
      --scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>" \
      --assignee <principal-id> \
      --query "[].{Role:roleDefinitionName, Principal:principalId}" \
      --output table
    
  4. Accès réseau : vérifiez que le compte de stockage dispose d’un accès réseau public activé.

    az storage account show \
      --resource-group <resource-group> \
      --name <storage-account-name> \
      --query "publicNetworkAccess" \
      --output tsv
    
  5. Délai de propagation : si vous avez récemment apporté des modifications RBAC ou réseau, attendez au moins 10 minutes avant de réessayer.

L’exécution de l’évaluation est lente, bloquée ou échoue en raison d’erreurs de capacité ou de quota

Une exécution d’évaluation peut rester dans l’état en cours d’exécution ou en attente pendant une longue période, s’exécuter lentement ou échouer avec des erreurs de quota. Cette condition se produit généralement lorsque le déploiement du modèle juge n’a pas suffisamment de capacité, de sorte que le service limite ou retente les demandes.

Symptômes:

  • L’exécution reste à l’état Running ou en attente beaucoup plus longtemps que prévu.
  • L’exécution échoue avec une 429 Too Many Requests erreur.
  • Vous voyez des erreurs qui mentionnent des limites de quota ou de taux.

Résolution :

  • Vérifiez que le déploiement du modèle juge dispose d’un quota suffisant. Le modèle de juge utilisé pour les évaluateurs assistés par l’IA compte par rapport à votre quota OpenAI Azure.
  • Augmentez le quota de jetons par minute (TPM) pour le déploiement du modèle dans le portail Azure, puis réexécutez l’évaluation.
  • Réduisez la taille de votre jeu de données ou fractionnez-le en lots plus petits. Pour les simulations, diminuez les tours maximum par conversation.
  • Utilisez un déploiement de modèle de juge plus petit ou moins coûteux pour des exécutions plus rapides et moins coûteuses.
  • Pour une exécution bloquée du Kit de développement logiciel (SDK), annulez-la avec client.evals.runs.cancel(run_id, eval_id=eval_id), augmentez la capacité, puis soumettez à nouveau.
  • En cas d’erreur 429, consultez l’en-tête retry-after pour connaître le délai d’attente recommandé, et utilisez une stratégie de temporisation exponentielle lors de la nouvelle tentative.

Erreurs d’authentification ou d’autorisation (401 ou 403)

Si une évaluation échoue avec une 401 Unauthorized erreur ou 403 Forbidden une erreur qui n’est pas liée au stockage, la cause est généralement l’authentification du projet ou une attribution de rôle manquante.

Note

Si l’erreur 403 mentionne les blobs ou l’accès au stockage, consultez plutôt Absence d’attribution de rôle RBAC pour l’authentification Entra ID.

Résolution :

  • Vérifiez que DefaultAzureCredential est correctement configuré. Si vous utilisez le Azure CLI, exécutez az login. Si vous utilisez l’interface CLI Azure développeur, exécutez azd auth login.
  • Vérifiez que votre compte a le rôle Utilisateur Foundry sur le projet Foundry.
  • Vérifiez que l’URL du point de terminaison du projet est correcte et inclut les noms de compte et de projet.

Important

Les rôles Foundry RBAC ont été récemment renommés. Foundry User, Foundry Owner, Propriétaire du compteFoundry et Foundry Project Manager ont été précédemment nommés Azure utilisateur IA, Azure propriétaire d’IA, propriétaire Azure compte IA et Azure gestionnaire Project IA. Il se peut que vous voyiez encore les anciens noms à certains endroits pendant le déploiement de ce changement de nom. Les ID de rôle et les autorisations de base ne sont pas modifiés par ce changement de nom.

Erreurs de mappage de données ou de format de champ

Si une évaluation échoue avec un schéma, un mappage de données ou une erreur de mappage de champ, les données de test ne correspondent pas à ce que les évaluateurs attendent.

Résolution :

  • Vérifiez que votre fichier JSONL a exactement un objet JSON valide par ligne.
  • Vérifiez que les noms de champs de votre mappage de données correspondent exactement aux noms de champs de votre jeu de données. Les noms de champs respectent la casse.
  • Vérifiez que le schéma que vous définissez, tel que item_schema dans le Kit de développement logiciel (SDK), correspond aux champs de votre jeu de données.
  • Pour les évaluations du portail, vérifiez que votre jeu de données contient les colonnes requises pour l’étendue d’évaluation. Pour les évaluations de conversation, vérifiez que la colonne des messages contient des messages de conversation correctement mis en forme.
  • Si vous évaluez à l’échelle de la conversation, supprimez les évaluateurs limités au niveau du tour ou passez à une évaluation au niveau du tour. Un évaluateur limité au tour utilisé avec une évaluation au niveau de la conversation entraîne une erreur d’incompatibilité de niveau d’évaluation.

Scores d’évaluateur manquants ou nuls

Une fois l’exécution terminée, certains scores de l’évaluateur peuvent manquer ou être nuls de manière inattendue.

Symptôme Cause potentielle Action
La métrique d’un évaluateur est manquante L’évaluateur n’a pas été sélectionné lors de la création de l’évaluation Réexécutez l’évaluation et sélectionnez les évaluateurs requis.
Toutes les métriques de sécurité sont égales à zéro La catégorie de sécurité est désactivée ou le modèle ne prend pas en charge l’évaluateur Vérifiez la prise en charge du modèle et de l’évaluateur dans Évaluateurs de risque et de sécurité.
Le niveau d’ancrage est étonnamment faible Le contexte de récupération est incomplet Vérifiez comment le contexte est construit et vérifiez la latence de récupération.
De nombreuses lignes affichent des erreurs ou des scores faibles Erreurs de réponse de l’agent ou de l’évaluateur lors de l’exécution Ouvrez le rapport d’exécution, passez en revue les lignes erronées, corrigez les erreurs sous-jacentes, puis réexécutez.

Erreurs de l’outil évaluateur d’agent

Si un évaluateur d’agent retourne une erreur pour des outils non supportés :

  • Vérifiez les outils pris en charge pour les évaluateurs d’agent.
  • Pour contourner ce problème, encapsulez les outils non pris en charge en tant qu’outils de fonction définis par l’utilisateur afin que l’évaluateur puisse les évaluer.

Problèmes d’évaluation d’Azure Developer CLI (azd)

Ces problèmes s’appliquent lorsque vous exécutez des évaluations d’agent avec les azd ai agent eval commandes.

Problème Solution
azd ai agent eval commande introuvable ou échoue Lancez azd ext list et vérifiez que l’extension azd ai agent est en version 0.1.40-preview ou ultérieure. Passez à la version supérieure avec azd ext upgrade azure.ai.agents.
Cible d’évaluation introuvable ou agent non invocable Vérifiez que l’agent est déployé et invoquable avec azd ai agent show. Redéployer avec azd deploy si nécessaire.
Déploiement du modèle Eval introuvable Vérifiez que le nom du déploiement de complétion de conversation existe dans votre projet sous Build>Déploiements.

Pour le flux de travail complet d’évaluation avec azd, consultez Exécuter des évaluations d’agent avec l’interface de ligne de commande azd.

Problèmes d’évaluation des traces

L’évaluation des traces exécute des évaluateurs sur la base des interactions de l’agent qu’Application Insights a déjà capturées, au lieu de rejouer les requêtes.

L’identité managée du projet ne dispose pas des autorisations de lecture des traces

L’identité gérée du projet Foundry consulte les traces d’Application Insights. En l’absence du rôle approprié, le service ne peut pas interroger les traces, et l’évaluation des traces ne renvoie aucune donnée ou échoue.

Symptômes:

  • L’évaluation de la trace échoue en raison d’une erreur de permission ou d’autorisation.
  • L’exécution ne trouve aucune trace même si les traces existent dans Application Insights.

Résolution :

Attribuez le rôle Lecteur Log Analytics à l’identité managée du projet sur les deux : la ressource Application Insights et l’espace de travail Log Analytics qui lui est associé. Pour trouver l’ID du principal de l’identité managée, consultez Vérifier l’attribution du rôle de l’identité managée.

az role assignment create \
  --assignee <principal-id> \
  --role "Log Analytics Reader" \
  --scope "<application-insights-or-log-analytics-resource-id>"

Exécutez la commande deux fois : une fois pour la ressource Application Insights et une fois pour l'espace de travail Log Analytics lié. Les attributions de rôle peuvent prendre jusqu’à 10 minutes pour se propager. Pour plus d’informations sur la configuration, consultez Configurer le suivi dans Microsoft Foundry.

Note

Si les tables Log Analytics qui stockent vos traces sont protégées (leur niveau de protection est défini sur Protégé), le rôle lecteur Log Analytics ne peut pas les lire. Dans ce cas, attribuez également le rôle Lecteur de données de surveillance privilégié à l’identité managée dans les mêmes étendues afin que l’évaluation de la trace puisse lire les tables de trace protégées.

Les traces extraites n’ont aucun message d’entrée ou de sortie

Les évaluateurs de qualité lisent la requête et la réponse associées à chaque trace. Si les segments extraits invoke_agent n’ont ni l’attribut gen_ai.input.messages ni l’attribut gen_ai.output.messages, les évaluateurs n’ont aucun contenu conversationnel à évaluer.

Symptômes:

  • Les évaluateurs de qualité, comme la cohérence, la fluidité, la pertinence et la résolution de l’intention, renvoient score=None.
  • Les évaluateurs de sécurité s’exécutent, mais ne produisent pas de résultats significatifs.

Cause : L’agent n’émet pas les attributs de message GenAI sur ses invoke_agent étendues, de sorte que les traces capturées ne contiennent pas le contenu de la conversation. Le service d’évaluation lit uniquement les segments où gen_ai.operation.name est égal à invoke_agent.

Résolution :

  • Assurez-vous que votre agent émet des spans OpenTelemetry conformes aux conventions sémantiques GenAI, y compris les attributs gen_ai.input.messages et gen_ai.output.messages sur les spans invoke_agent.

  • Pour les agents Python développés avec le SDK Azure AI Agent Server, installez l’extension de traçage afin que les spans soient émis automatiquement :

    pip install "azure-ai-agentserver-core[tracing]"
    
  • Dans Application Insights, vérifiez que les invoke_agent étendues incluent les attributs de message avant de réexécuter l’évaluation.

Évaluation humaine

Cette section traite des problèmes courants liés à la fonctionnalité d’évaluation humaine pour les agents Foundry.

Le bouton Commentaires n’apparaît pas après que l’agent répond

Cause : Aucun modèle d’évaluation n’est défini comme actif pour l’agent.

Résolution: Dans l’onglet Évaluation humaine , sélectionnez Définir comme actif pour le modèle souhaité. Un seul modèle peut être actif à la fois. Pour plus d’informations, consultez Configurer l’évaluation humaine pour vos agents.

Aucun résultat n’est visible dans la section Résultats de l’évaluation

Cause : Application Insights n’est pas configuré pour le projet, ou il existe un délai d’ingestion des données (jusqu’à 5 minutes après l’envoi d’une évaluation).

Résolution: Vérifiez que Application Insights est connecté à votre projet. Pour obtenir des instructions d’installation, consultez Configurer Application Insights pour le suivi d’agent. Si Application Insights est déjà configuré, patientez quelques minutes et actualisez la page.

Le réviseur ne peut pas accéder à l’application web en préversion

Cause : Le réviseur n’a pas le rôle requis sur le projet Foundry.

Résolution: Attribuez le rôle Utilisateur Foundry au réviseur sur le projet Foundry. Pour obtenir des instructions, consultez Contrôle d’accès basé sur les rôles dans Microsoft Foundry.