本論文は、エンタープライズソフトウェアの機能を公開する REST API は通常 LLM エージェントを念頭に置いて設計されていないこと、そして Berkeley Function Calling Leaderboard、τ-bench、ToolACE といった既存のツール利用ベンチマークは、ツール選択と引数の正しさは評価するものの、そもそも特定の API がツールとして実際に使えるかどうか、すなわち「エージェント対応(agent-ready)」であるかどうかは評価しないことを論じる。著者らが提示するフレームワークは、API の OpenAPI 仕様を Python(LangChain)のツールとしてラップし、LLM でテストケースを生成し、それをエージェントが受け取るような自然言語の発話に変換し、その発話を ReAct エージェントの中で実行して、エージェントがツールを正しく呼び出し、その応答を解釈できるかどうかを確認する。
この手法はいくつかの段階を組み合わせている。OpenAPI 仕様からのツール作成、必須パラメータのみ、全パラメータ、必須パラメータと任意パラメータの一部という各シナリオにわたる LLM ベースのテストケース生成、生成される入力をツール間の実際のデータ依存関係に基づかせる データアウェアテスト、プロンプトを与えた LLM と LoRA でファインチューニングした小型モデルの両方で試みた自然言語の発話生成、そしてテスト実行である。テスト実行では、Python のツールを直接呼び出した結果(正解として扱われる)と、同じテストケースを自然言語の発話を通じてエージェントに実行させた結果とを比較する。
このフレームワークは、ツール構築者向けの IBM の製品である IBM Watsonx Orchestrate Agent Development Kit のアルファリリースの一部としてデプロイされている。執筆時点までに、これを使うツール構築者は IT、人事、財務、調達、営業にまたがる 600 を超える API をツールとしてラップしており、本論文は、この自動化とフレームワークによる実行可能な推奨事項とを組み合わせることで、従来の手作業のプロセスと比べてツール構築の工数が約 30%(ツール 1 つあたりおよそ 2 日)削減され、これまでに合計で 1,200 人日以上が節約されたと報告している。
要点
- このフレームワークは、6 つのアプリケーション(DnB、Salesloft、ServiceNow、Jira、Kubernetes、Salesforce)にまたがる 189 のエンタープライズツールについて 2,400 を超える自然言語のテストケースを生成し、そのうち正確で自然さの高い 2,411 件を保持して、LangGraph 上に構築した ReAct エージェントを介し、2 つのエージェント LLM(Granite-3.3-8B-Instruct と Llama-3.3-70B-Instruct)で実行した。
- 本論文のエラー分類法は、ツール利用の失敗を 4 つのカテゴリーに分類する。入力仕様のエラー(パラメータの不一致、パラメータの型の不一致、パラメータの値の不一致)、出力処理のエラー(出力の不一致、空の出力、不正な形式の出力、LLM のトークン上限を超えるツール出力)、ツール呼び出しのエラー(ツールが特定されない、誤ったツールの選択、ツールの繰り返し呼び出し)、そしてツール実行のエラー(アクセスエラー、サーバーエラー)である。
- 2 つのエージェント LLM を通じて、エラーなしで実行されたテストケースはおよそ 26〜30% であった。最も多い失敗はパラメータの型と値の不一致であり、本論文は、テストケースの 13〜19% のエラーを、特に正しい入力ペイロード(パラメータの型と値)を生成する際の問題に帰している。
- 人間のツール構築者がツール依存グラフを承認した 705 件のテストケースに限定すると、LLM が考案した入力の代わりにデータを考慮したテスト入力を用いることで、データを考慮した入力なしで生成した同じテストケースと比べて、空の出力と出力の不一致のエラー率がそれぞれ約 10 ポイント低下し、エラーなしで実行されるテストケースの割合が増加した。
- 生成された自然言語の発話を LLM-as-a-Judge で評価したところ(テストセットの 15% について人間の判断と照合して検証し、一致率は正確性で 89%、自然さで 93%)、発話の 96.4% が正確であり(不正確なのはわずか 1.7%)、87.4% が正確かつ自然さで 5 点満点中 3 点を超えていた。
- ツールごとのテストケース合格率を分析すると、ツールの 34% は合格率 0〜25% の範囲にあって大幅な反復を要し、30% は 25〜75% の範囲にあって中程度の反復を要し、36% はすでに合格率 75〜100% に達していた。
補足
このフレームワークは、先行するスタンドアロンの REST API テストツール(RESTler、EvoMaster、RESTest、RestTestGen)と、先行する LLM のツール利用ベンチマークおよび評価フレームワーク(本論文は Berkeley Function Calling Leaderboard、τ-bench、ToolACE、T-Eval、EasyTool、Gorilla、ToolQA を引用している)の上に構築されており、自らの貢献を、ツール選択の正確性だけではなく、とりわけ API の「エージェント対応度(agent-readiness)」、すなわちエージェントが実際にそれを呼び出し、その応答を利用できるかどうかを評価することとして位置づけている。本論文は、ツール呼び出しに至る会話をシミュレートするマルチターンの発話へと研究を拡張すること、そして逐次的で多段階のツール呼び出しのためのエラー分類法を探求することを今後の計画として述べている。