エージェント評価 CLI リファレンス (プレビュー)

この記事では、@microsoft/m365-copilot-eval パッケージの一部である runevals コマンドの完全なコマンド ライン リファレンスを提供します。

注:

エージェント評価 CLI は現在プレビュー段階です。 機能と機能は変更される可能性があります。

概要

runevals [options]
runevals cache-info
runevals cache-clear
runevals cache-dir

説明

runevals コマンドは、テスト プロンプトを送信し、Azure AI + 機械学習評価メトリックを使用して応答をスコア付けすることで、Microsoft 365 Copilot エージェントを評価します。 このツールでは、JSON ファイル、インライン プロンプト、対話型テストからのバッチ評価がサポートされています。

オプション

-V, --version

CLI ツールのバージョン番号を出力します。

例:

runevals --version

出力:

1.3.0-preview.1

--log-level [level]

ログ記録の詳細レベルを設定します。 使用可能なレベル: debuginfowarningerror

  • 既定値: 値を指定せずに フラグを使用すると、既定値は infoになります。
  • debug: API ペイロードを含む詳細なデバッグ情報。
  • info: 評価の進行状況に関する一般的な情報。
  • warning: 警告メッセージのみ。
  • error: エラー メッセージのみ。

例:

# Info level (default when flag is present)
runevals --log-level

# Debug level
runevals --log-level debug

# Error level only
runevals --log-level error

警告

debug レベルには、コンソール出力に生の API ペイロードと応答データが含まれる場合があります。 Redaction はパターン ベースであり、すべての PII または資格情報をキャッチしない場合があります。 手動レビューなしでデバッグ出力をパブリックに共有しないでください。

--prompts <prompts...>

ファイルを作成せずに迅速なテストを行う場合は、コマンド ラインで 1 つ以上のプロンプトを直接指定します。

例:

# Single prompt
runevals --prompts "What is Microsoft 365?"

# Multiple prompts
runevals --prompts "What is Teams?" "What is SharePoint?" "What is OneDrive?"

--expected <responses...>

--promptsで指定されたプロンプトに付随する応答を指定します。 応答の数は、プロンプトの数と一致する必要があります。

例:

runevals --prompts "What is Microsoft Graph?" \
  --expected "Microsoft Graph is the API gateway to Microsoft 365 data and intelligence."

複数のプロンプトと応答:

runevals --prompts "What is Teams?" "What is SharePoint?" \
  --expected "Teams is a collaboration platform" "SharePoint is a content management system"

--prompts-file <file>

テスト プロンプトを含むカスタム JSON ファイルを指定します。 このファイルは自動検出をオーバーライドします。

例:

runevals --prompts-file ./tests/my-custom-tests.json

ファイル形式:

[
  {
    "prompt": "Test question",
    "expected_response": "Expected answer"
  }
]

完全なデータセット スキーマについては、「 データセット スキーマとテスト デザイン」を参照してください。

-o, --output <file>

出力ファイルのパスと形式を指定します。 形式は、ファイル拡張子によって決まります。

サポートされている形式:

  • .html - HTML レポート (既定では、ブラウザーで自動開く)
  • .json - JSON の結果
  • .csv - CSV スプレッドシート

例:

# HTML output
runevals --output ./reports/results.html

# JSON output
runevals --output ./results/eval-results.json

# CSV output
runevals --output ./data/scores.csv

既定の動作:

--outputしない場合、コマンドは結果を./.evals/YYYY-MM-DD_HH-MM-SS.htmlに保存します。

-i, --interactive

手動プロンプト入力とテスト用の対話型モードに入ります。

例:

runevals --interactive

対話型モードでは、一度に 1 つずつプロンプトを入力するように求められます。そのため、探索的なテストを実行できます。

--m365-agent-id <id>

エージェント ID をオーバーライドして、特定のエージェントを評価します。 このパラメーターは、複数のエージェントをテストする場合、またはエージェント ID を自動検出できない場合に便利です。

例:

runevals --m365-agent-id "U_0dc4a8a2-b95f-edac-91c8-d802023ec2d4"

エージェント ID の形式:

  • ユーザー スコープ: U_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
  • テナントスコープ: T_agent-name.declarativeAgent

--env <environment>

読み込む環境構成を指定します。 このパラメーターは、 env/.env.<environment>を読み込みます。

既定値: dev (読み込み env/.env.dev)

例:

# Load env/.env.dev (default)
runevals --env dev

# Load env/.env.prod
runevals --env prod

# Load env/.env.staging
runevals --env staging

環境ファイルの優先順位:

  1. .env.local (エージェント ツールキット プロジェクトの自動検出)
  2. .env.local.user (シークレット、存在する場合は自動読み込み)
  3. env/.env.<environment> ( --envで指定)
  4. システム環境変数

--init-only

Python 環境を初期化し、評価を実行せずに依存関係をダウンロードします。 このオプションは、次の場合に役立ちます。

  • CI/CD パイプラインでのキャッシュの事前警告
  • インストールに関する問題のトラブルシューティング
  • テストを実行する前にセットアップを確認する

例:

runevals --init-only

トラブルシューティングを行うには、次のオプションを --log-level debugと組み合わせてください。

runevals --init-only --log-level debug

-h, --help

使用可能なコマンドとオプションに関するヘルプ情報を表示します。

例:

runevals --help

キャッシュ コマンド

評価ツールは、Python ランタイムと依存関係にローカル キャッシュを使用します。 これらのコマンドは、キャッシュの管理に役立ちます。

cache-info

サイズ、場所、インストールされているパッケージなど、キャッシュされた Python 環境に関する統計情報を表示します。

例:

runevals cache-info

出力:

Cache Information

Location: C:\Users\YourName\.m365-copilot-eval\cache
Size: 245 MB
Python Version: 3.11.5
Packages: 42 installed

Last updated: 2026-04-10 14:23:15

cache-clear

キャッシュされた Python 環境とダウンロードされたすべての依存関係を削除します。 インストールの問題のトラブルシューティングやディスク領域の解放を行う場合は、このコマンドを使用します。

例:

runevals cache-clear

フォロー アップ:

キャッシュをクリアした後、再初期化します。

runevals --init-only

cache-dir

キャッシュ ディレクトリへの絶対パスを出力します。 この機能は、スクリプトや手動検査に役立ちます。

例:

runevals cache-dir

出力:

C:\Users\YourName\.m365-copilot-eval\cache

スクリプトでの使用法:

# Check cache directory permissions (Unix/macOS)
chmod -R u+w $(runevals cache-dir)

# View cache contents
ls -lah $(runevals cache-dir)

環境変数

このツールは、環境ファイルとシステム変数から構成を読み取ります。 これらの値を取得する手順については、「 必須環境変数」を参照してください。

必須変数

変数 説明
TENANT_ID テナント ID のMicrosoft Entra xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
AZURE_AI_OPENAI_ENDPOINT Foundry Models エンドポイント URL で OpenAI をAzureする https://your-resource.openai.azure.com/
AZURE_AI_API_KEY OpenAI API キーをAzureする your-api-key-here

省略可能な変数

変数 説明 既定値
M365_AGENT_ID 評価するエージェント ID 自動検出元 M365_TITLE_ID
M365_TITLE_ID エージェント タイトル ID (エージェント ツールキット) なし
AZURE_AI_API_VERSION OpenAI API バージョンをAzureする 2024-12-01-preview
AZURE_AI_MODEL_NAME 評価のモデル gpt-4o-mini

基本的な使用法

自動検出されたデータセット ファイルを使用して評価します。

cd /path/to/your-agent-project
runevals

環境の指定

運用環境の構成を使用する:

runevals --env prod

カスタム データセット ファイル

特定のテスト ファイルを使用します。

runevals --prompts-file ./tests/regression-tests.json

インライン テスト

インライン プロンプトを使用したクイック テスト:

runevals --prompts "What is Microsoft 365?" \
  --expected "Microsoft 365 is a cloud-based productivity suite"

対話型モード

プロンプトを手動で入力します。

runevals --interactive

カスタム出力形式

JSON の結果を生成します。

runevals --output ./results/eval-$(date +%Y%m%d).json

デバッグ モード

詳細なログ記録を使用して実行します。

runevals --log-level debug --output ./debug-results.json

セットアップのみ

テストを実行せずに Python 環境を事前キャッシュする:

runevals --init-only --log-level info

オーバーライド エージェント ID

特定のエージェントをテストします。

runevals --m365-agent-id "U_0dc4a8a2-b95f-edac-91c8-d802023ec2d4"

組み合わせオプション

カスタム設定を使用した包括的な評価:

runevals \
  --env staging \
  --prompts-file ./evals/full-suite.json \
  --output ./reports/staging-eval-$(date +%Y%m%d).html \
  --log-level info \
  --m365-agent-id "T_my-agent.declarativeAgent"

終了コード

コード 意味
0 成功
1 一般的なエラー
2 無効な引数
3 環境構成エラー
4 エージェントが見つかりません
5 認証エラー
10 Python 環境のセットアップエラー

トラブルシューティング

インストール、認証、ランタイム エラー、キャッシュの問題、プロキシのセットアップに関する一般的な問題については、トラブルシューティングに関 する記事を 参照してください。