この記事では、@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]
ログ記録の詳細レベルを設定します。 使用可能なレベル: debug、 info、 warning、 error。
-
既定値: 値を指定せずに フラグを使用すると、既定値は
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
環境ファイルの優先順位:
-
.env.local(エージェント ツールキット プロジェクトの自動検出) -
.env.local.user(シークレット、存在する場合は自動読み込み) -
env/.env.<environment>(--envで指定) - システム環境変数
--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 環境のセットアップエラー |
トラブルシューティング
インストール、認証、ランタイム エラー、キャッシュの問題、プロキシのセットアップに関する一般的な問題については、トラブルシューティングに関 する記事を 参照してください。