この記事では、Microsoft Foundry で評価機能と可観測性機能を使用するときに発生する可能性のある一般的な問題の解決に役立つ情報を提供します。 一部の問題は、ストレージ アカウントの構成、ロールベースのアクセス制御 (RBAC)、または Foundry プロジェクトのネットワーク設定に関連しています。 その他の問題は、認証エラー、モデルの容量またはクォータの制限、データ形式の問題、スコアの不足など、評価の実行中に発生します。
Foundry プロジェクトにリンクされていないストレージ アカウント
評価機能には、接続を介して Foundry プロジェクトにリンクされたストレージ アカウントが必要です。 ストレージ アカウントが接続されていない場合、評価データの読み取りまたは書き込みができないため、評価は失敗します。
症状:
- 評価は、ストレージ アクセスまたは不足しているストレージ構成に関連するエラーで失敗します。
- 評価サービスでは、評価結果をアップロードしたり、データセットをダウンロードしたりすることはできません。
ストレージ アカウントを Foundry プロジェクトに接続する
Azure Blob Storage接続を作成して、ストレージ アカウントを Foundry プロジェクトに接続します。 詳細な手順については、「 新しい接続をプロジェクトに追加する」を参照してください。
接続を認証するには、account キーまたは Microsoft Entra ID (推奨) を使用します。 Entra IDを使用する場合は、Entra ID認証のためのRBACロール割り当ての欠落を参照して、必要なアクセス許可を設定します。
評価用に独自のストレージを使用する方法の詳細については、評価の レート制限、リージョンのサポート、エンタープライズ機能に関するページを参照してください。
Microsoft Entra ID認証に RBAC ロールの割り当てが不足しています
Microsoft Entra ID認証を使用してストレージ アカウントを接続する場合、Foundry プロジェクトのマネージド ID には、ストレージ アカウントの Storage BLOB データ共同作成者 ロールが必要です。 このロールがないと、サービスは BLOB データの読み取りまたは書き込みを行えず、評価は失敗します。
症状:
- 評価は、
403 ForbiddenエラーまたはAuthorizationPermissionMismatchエラーで失敗します。 - ストレージ アカウントにアクセスするためのアクセス許可が不十分であることを示すエラーが表示されます。
- ストレージ操作がタイムアウトになったり、拒否されたりします。
マネージド ID ロールの割り当てを確認する
次のAzure CLIコマンドを使用して、ストレージ アカウントの Foundry プロジェクトのマネージド ID に正しい RBAC ロールが割り当てられているかどうかを確認します。
まず、Foundry プロジェクトのマネージド ID プリンシパル ID を取得します。
az resource show \
--resource-group <your-resource-group> \
--name <your-foundry-account-name> \
--resource-type "Microsoft.CognitiveServices/accounts" \
--query "identity.principalId" \
--output tsv
次に、ストレージ アカウントのロールの割り当てを一覧表示し、マネージド ID をフィルター処理します。
az role assignment list \
--scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>" \
--assignee <principal-id> \
--output table
出力に、RoleDefinitionName (またはストレージ BLOB データ所有者) に設定されているロールの割り当てが含まれていることを確認します。
ストレージ BLOB データ共同作成者ロールを割り当てる
ロールの割り当てが見つからない場合は、 ストレージ BLOB データ共同作成者 ロールを Foundry プロジェクトのマネージド ID に割り当てます。
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>"
メモ
ロールの割り当てが反映されるまでに最大 10 分かかることがあります。 ロールを割り当ててから数分待ってから、評価を再試行してください。
ストレージ アカウントのネットワーク アクセス制限
Microsoft Entra ID認証を使用する場合、ストレージ アカウントでパブリック ネットワーク アクセスが有効になっている必要があります。 ネットワーク アクセスが制限されている場合、Foundry 評価サービスがストレージ アカウントに到達できない可能性があります。
症状:
- 評価は、ネットワーク関連のエラーまたはタイムアウトで失敗します。
- RBAC ロールが正しく割り当てられている場合でも、
403 Forbiddenエラーが表示されます。 - ストレージ アカウントへの接続は拒否されます。
ストレージ アカウントのネットワーク構成を確認する
次の Azure CLI コマンドを使用して、ストレージ アカウントのネットワーク アクセス設定を確認します。
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
出力で次の値を確認します。
| プロパティ | 予期される値 | 説明 |
|---|---|---|
publicNetworkAccess |
Enabled |
パブリック ネットワーク アクセスを有効にする必要があります。 |
defaultAction |
Allow |
既定のネットワーク規則では、アクセスが許可されます。 |
publicNetworkAccessが Disabled に設定されているか、defaultActionが Deny に設定されている場合、評価サービスはストレージ アカウントに到達できません。
メモ
リソースがパブリック ネットワーク アクセスを無効にして動作し、代わりにプライベート エンドポイント接続仮想ネットワークに依存することが予想される仮想ネットワーク ベース (ネットワーク分離) エージェントのセットアップについては、「 プライベート ネットワークのセットアップ」を参照してください。
パブリック ネットワーク アクセスを有効にする
ストレージ アカウントでパブリック ネットワーク アクセスを有効にします。
az storage account update \
--resource-group <resource-group> \
--name <storage-account-name> \
--public-network-access Enabled
ファイアウォールを有効にしたままアクセスを許可する必要がある場合は、既定のアクションを [許可] に設定します。
az storage account update \
--resource-group <resource-group> \
--name <storage-account-name> \
--default-action Allow
重要
パブリック ネットワーク アクセスを有効にするか、既定のアクションを [許可 ] に設定すると、すべてのネットワークからストレージ アカウントにアクセスできるようになります。 組織のセキュリティ要件に照らして、この変更を評価します。
トラブルシューティングチェックリスト
このチェックリストを使用して、評価のセットアップをすばやく確認します。
Storage 接続が存在します: Foundry プロジェクトでAzure Blob Storage接続が構成されていることを確認します。 Foundry ポータルで [Build>Tools ] に移動して確認します。
認証の種類: 接続でアカウント キーが使用されているか、Microsoft Entra IDを使用しているかを特定します。 Entra ID場合は、残りのチェックを完了します。
RBAC ロールが割り当てられている: Foundry プロジェクトのマネージド ID に 、ストレージ アカウントに対するストレージ BLOB データ共同作成者 ロールがあることを確認します。
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ネットワーク アクセス: ストレージ アカウントでパブリック ネットワーク アクセスが有効になっていることを確認します。
az storage account show \ --resource-group <resource-group> \ --name <storage-account-name> \ --query "publicNetworkAccess" \ --output tsv伝達の遅延: 最近 RBAC またはネットワークの変更を行った場合は、少なくとも 10 分待ってから再試行してください。
評価の実行が遅い、スタックしている、または容量またはクォータのエラーで失敗する
評価の実行は、 実行 状態または保留中の状態のまま長い時間、低速で実行される、またはクォータ エラーで失敗する可能性があります。 通常、この状態は、ジャッジ モデルのデプロイに十分な容量がないため、サービスが要求を調整または再試行する場合に発生します。
症状:
- 実行は、 実行中 または保留中の状態のままで、予想よりもはるかに長くなります。
- 実行は、
429 Too Many Requestsエラーで失敗します。 - クォータまたはレート制限に関するエラーが表示されます。
解決方法:
- ジャッジモデルのデプロイに必要な十分な割り当てがあることを確認してください。 AI 支援評価ツールで使用されるジャッジ モデルは、Azure OpenAI のクォータ消費の対象となります。
- Azure ポータルでモデルデプロイの 1 分あたりのトークン (TPM) クォータを増やし、評価をもう一度実行します。
- データセットのサイズを小さくするか、小さなバッチに分割します。 シミュレーションの場合は、会話ごとの最大ターン数を減らします。
- より高速で安価な実行を実現するために、より小規模または低コストのジャッジ モデルデプロイを使用します。
- スタックしている SDK の実行の場合は、
client.evals.runs.cancel(run_id, eval_id=eval_id)で取り消し、容量を増やしてから再送信します。 -
429エラーの場合は、retry-afterヘッダーで推奨される待機時間を確認し、再試行するときに指数バックオフを使用します。
認証または承認エラー (401 または 403)
ストレージに関連しない 401 Unauthorized または 403 Forbidden エラーで評価が失敗した場合、通常はプロジェクト認証またはロールの割り当てが不足しています。
メモ
403 エラーに blob またはストレージへのアクセスへの言及がある場合は、代わりに Entra ID 認証に必要な RBAC ロールの割り当てがありません を参照してください。
解決方法:
-
DefaultAzureCredentialが正しく構成されていることを確認します。 Azure CLIを使用する場合は、az loginを実行します。 Azure Developer CLI を使用する場合は、azd auth loginを実行します。 - アカウントに Foundry プロジェクトの Foundry ユーザー ロールがあることを確認します。
- プロジェクト エンドポイントの URL が正しく、アカウント名とプロジェクト名の両方が含まれていることを確認します。
重要
Foundry RBAC ロールの名前が最近変更されました。 Foundry User, Foundry Owner, Foundry Account Owner、および Foundry Project Manager は、以前は、AZURE AI ユーザー、Azure AI 所有者、Azure AI アカウント所有者、および AZURE AI Project Manager という名前でした。 名前の変更がロールアウトされている間、以前の名前が表示される場合があります。ロール ID とコア アクセス許可は、名前の変更によって変更されません。
データ形式またはフィールド マッピングエラー
スキーマ、データ マッピング、またはフィールド マッピング エラーで評価が失敗した場合、テスト データはエバリュエーターが期待する内容と一致しません。
解決方法:
- JSONL ファイルに 1 行に 1 つの有効な JSON オブジェクトがあることを確認します。
- データ マッピングのフィールド名がデータセット内のフィールド名と正確に一致することを確認します。 フィールド名は大文字と小文字が区別されます。
- SDK で
item_schemaなど、定義したスキーマがデータセット内のフィールドと一致することを確認します。 - ポータルの評価の場合は、データセットに評価スコープに必要な列が含まれていることを確認します。 会話の評価では、 メッセージ 列に適切に書式設定されたチャット メッセージが含まれていることを確認します。
- 会話レベルで評価する場合は、ターンのみのエバリュエーターを削除するか、ターンレベルの評価に切り替えます。 会話レベルの評価で使用されるターン専用エバリュエーターでは、互換性のない評価レベル エラーが発生します。
評価者スコアが見つからない、または0である
実行が完了すると、一部のエバリュエーター スコアが見つからないか、予期せず 0 になる可能性があります。
| 症状: | 考えられる原因 | アクション |
|---|---|---|
| エバリュエーターのメトリックがありません | 評価の作成時にエバリュエーターが選択されませんでした | 評価を再実行し、必要なエバリュエーターを選択します。 |
| すべての安全メトリックはゼロです | 安全カテゴリが無効になっているか、モデルがエバリュエーターをサポートしていない | リスクおよび安全エバリュエーターでモデル とエバリュエーターのサポートを確認します。 |
| 接地性が予期せず低い | 取得コンテキストが不完全です | コンテキストの構築方法を確認し、取得の待ち時間を確認します。 |
| 多くの行にエラーまたは低スコアが表示される | 実行中のエージェント応答またはエバリュエーター エラー | 実行レポートを開き、エラーが発生した行を確認し、基になるエラーを修正してから再実行します。 |
エージェント エバリュエーター ツールのエラー
サポートされていないツールのエラーがエージェント エバリュエーターから返された場合:
- エージェント エバリュエーターで サポートされているツール を確認します。
- 回避策として、エバリュエーターが評価できるように、サポートされていないツールをユーザー定義関数ツールとしてラップします。
Azure Developer CLI (azd) の評価に関する問題
これらの問題は、 azd ai agent eval コマンドを使用してエージェントの評価を実行するときに適用されます。
| Issue | ソリューション |
|---|---|
azd ai agent eval コマンドが見つからないか失敗する |
azd ext list実行し、azd ai agent拡張機能が 0.1.40-preview 以降であることを確認します。
azd ext upgrade azure.ai.agentsを使用してアップグレードします。 |
| 評価ターゲットが見つからないか、エージェントが呼び出し不可能 | エージェントがデプロイされ、 azd ai agent showで呼び出し可能であることを確認します。 必要に応じて、 azd deploy を使用して再デプロイします。 |
| Eval モデルのデプロイが見つかりません | プロジェクトの [Build>Deployments] の下にチャット完了配置名が存在するかどうかを確認します。 |
完全な azd 評価ワークフローについては、 azd CLI を使用したエージェント評価の実行に関する記事を参照してください。
評価の問題をトレースする
トレース評価 では、要求を再生するのではなく、Application Insights によって既にキャプチャされたエージェントの相互作用に対してエバリュエーターが実行されます。
プロジェクトのマネージド ID にトレースの読み取りアクセス許可がありません
Foundry プロジェクトのマネージド ID は、Application Insights からトレースを読み取ります。 適切なロールがないと、サービスはトレースに対してクエリを実行できず、トレース評価ではデータが返されず、失敗も発生しません。
症状:
- トレースの評価は、アクセス許可または承認エラーで失敗します。
- Application Insights にトレースが存在する場合でも、実行でトレースは検出されません。
解決方法:
Application Insights リソースとそのリンクされた Log Analytics ワークスペースの両方で、Log Analytics閲覧者ロールをプロジェクトのマネージド ID に割り当てます。 マネージド ID プリンシパル ID を見つけるには、「 マネージド ID ロールの割り当てを確認する」を参照してください。
az role assignment create \
--assignee <principal-id> \
--role "Log Analytics Reader" \
--scope "<application-insights-or-log-analytics-resource-id>"
コマンドを 2 回実行します。Application Insights リソースに対して 1 回、リンク先のLog Analytics ワークスペースに対して 1 回実行します。 ロールの割り当てが反映されるまでに最大 10 分かかることがあります。 セットアップの詳細については、「Microsoft Foundry でのトレースの設定」を参照してください。
メモ
トレースを格納するLog Analytics テーブルが保護されている (保護レベルが Protected に設定されている) 場合、Log Analytics閲覧者ロールはそれらを読み取ることはできません。 その場合は、保護されたトレース テーブルをトレース評価で読み取ることができるように、同じスコープのマネージド ID にも 特権監視データ閲覧者 ロールを割り当てます。
フェッチされたトレースに入力メッセージまたは出力メッセージがない
品質エバリュエーターは、各トレースからクエリと応答を読み取る。 フェッチされた invoke_agent スパンに gen_ai.input.messages 属性も gen_ai.output.messages 属性もない場合、エバリュエーターにはスコア付けする会話コンテンツがありません。
症状:
- 一貫性、流暢さ、関連性、意図の解決などの品質エバリュエーターは、
score=Noneを返します。 - 安全エバリュエーターは実行されますが、意味のある結果は得られません。
原因: エージェントは、 invoke_agent スパンで GenAI メッセージ属性を出力しないため、キャプチャされたトレースには会話コンテンツが含まれません。 評価サービスは、 gen_ai.operation.name が invoke_agentと等しいスパンのみを読み取ります。
解決方法:
エージェントが GenAI セマンティック規則に従う OpenTelemetry スパンを出力していることを確認します。これには、
gen_ai.input.messagesスパンのgen_ai.output.messages属性とinvoke_agent属性が含まれます。Azure AI Agent Server SDK を使用して構築されたPython エージェントの場合は、トレースを追加インストールして、スパンが自動的に出力されるようにします。
pip install "azure-ai-agentserver-core[tracing]"Application Insights で、評価を再実行する前に、
invoke_agentスパンにメッセージ属性が含まれているか確認します。
人間による評価
このセクションでは、Foundry エージェントの人間による評価機能に関する一般的な問題について説明します。
エージェントが応答した後に [フィードバック] ボタンが表示されない
原因: エージェントの評価テンプレートがアクティブとして設定されていません。
解像 度: [ ヒューマン評価 ] タブで、目的のテンプレートに対して [アクティブとして設定 ] を選択します。 一度にアクティブにできるテンプレートは 1 つだけです。 詳細については、「 エージェントの人間による評価を設定する」を参照してください。
[評価結果] セクションに結果が表示されない
原因: Application Insights がプロジェクト用に構成されていないか、データ インジェストの遅延 (評価が送信されてから最大 5 分後) があります。
解像 度: Application Insights がプロジェクトに接続されていることを確認します。 セットアップ手順については、 エージェント トレース用の Application Insights の構成に関する記事を参照してください。 Application Insights が既に構成されている場合は、数分待ってからページを更新します。
レビュー担当者がプレビュー Web アプリにアクセスできない
原因: レビュー担当者は Foundry プロジェクトに必要な役割を持っていません。
解像 度: Foundry プロジェクトのレビュー担当者に Foundry ユーザー ロールを割り当てます。 手順については、Microsoft Foundry の