インドの零售銀行の顧客対応をシミュレートしたエージェントベンチマーク:被評価モデルは銀行アシスタントとして、別のモデルは顧客として、カード紛失届、定期預金開設、早期解約見積もりなどのリクエストを提示します。アシスタントは記録を確認し、銀行のポリシーに従い、順序正しくツールを呼び出す必要があります。会話終了時のデータベース状態のみを評価するベンチマークとは異なり、本ベンチマークは規定された各ステップが実行されたか、また顧客が要求していない変更が行われていないかもチェックします。
いいね 8 · コードスター数 6
理由
- 一般的な評価の盲点を捉えている:著者によれば、最終的な記録のみを見る場合、各モデルで 6.5~12.0% のセッションが成功と判定されるが、実際には必須ステップのスキップや余分な変更が行われている。
- スケールとエンジニアリングが充実:1000 個のタスク、50 種類のシナリオ、33 個の銀行ツールと1つの人間対応転送ツール、944 人のシミュレーション顧客、24 件のナレッジベースドキュメント;採点に評価用モデルは不要で、時計は固定され、引用番号はシードにより決定されるため、バイト単位での再現が可能。
- READMEには6つのオープンソースモデルの参考成績(Qwen3.8-27B および Gemma 4 シリーズ、全 1000 問での pass@1)が記載されており、順序実行、境界ケース、ツール使用の最小化、対照の4カテゴリに分類されている。
- tau2 コマンドとして直接インストールでき、OpenAI互換エンドポイントやlitellmがサポートするマネージドAPIに接続可能;コードとデータはMITライセンスで、データはすべて合成データ。
使い方
- インストール:Python 3.12/3.13、pip install -r requirements.txt → python scripts/fetch_data.py(Hugging FaceのNPCI/tau-indian-bankingからデータを取得)→ pip install --no-deps -e .(uvもサポート)。
- 実行:tau2 run --domain indian_banking --agent-llm openai/<被評価モデル> --user-llm openai/<顧客シミュレーションモデル> --task-split-name base …;参考設定では温度 0、1ターンあたりの最大出力トークン数 8192、コンテキスト長は最低 32768。
- 採点:python scripts/score.py data/simulations/<run>/results.json;2回の比較には --compare を追加;tau2 view で会話履歴を閲覧。
- 費用を抑えて試す場合は lite(200 問)または --num-tasks 5 を使用。READMEでは、有料APIで全量を実行すると単一リクエストのコストより大幅に高くなることに注意を促している。
リスク
- スコアは「被評価モデル + 顧客シミュレーションモデル + データ分割」の組み合わせ全体の属性であり、顧客シミュレーションモデルを変更すると比較不能になる;READMEによれば、同一設定での再実行では約 15~25% のセッションで結果が反転し、平均値の変動は約 ±1~2 点。
- ドメインは架空のインド銀行と合成データであり、他の業界や実際の顧客対応への結論の一般化可能性は検証されていない。
- 参考成績はオープンソースモデルのみであり、すべて同一の顧客シミュレーションモデル(MiniMax-M2.7)を使用している。
開く · コード · Hugging Face論文ページ