Tool Use Examples は、Anthropic が Claude Developer Platform の機能に付けた名称である。この機能により、開発者はツール定義に、入力スキーマと並ぶ input_examples フィールドとしてツール呼び出しのサンプルを付けることができる。その前提は、JSON Schema は構造(型、必須フィールド、許容される値)を定義するが、使い方のパターンは表現できないという点にある。たとえば、日付フィールドがどの形式をとるべきか、識別子がどのような見た目か、ネストしたオブジェクトをいつ埋めるべきか、あるパラメータが別のパラメータとどう関係するか、といったことである。サンプルはそうしたパターンを具体的に示すので、モデルは推測するのではなくそれを推論でき、不正な形式のツール呼び出しや一貫しないパラメータの使い方を減らすことが狙いとされている。
用法
この機能は Claude Developer Platform における高度なツール利用の紹介 で、大規模なツールライブラリを扱うエージェント向けの 3 つのベータ機能の一つとして、Tool Search Tool(ツール検索)および プログラマティックツール呼び出し と並んで導入され、それらが扱うボトルネックのうち 3 つ目、すなわちパラメータの誤りと不正な形式の呼び出しに対する解決策として位置づけられている。発表では、サポートチケットのツールを例に説明している。そのツールの 3 つのサンプル(すべてが指定された重大なバグ、報告者はあるが連絡先やエスカレーションの詳細がない機能要望、タイトルしかないタスク)は、日付と ID の形式、ネストした reporter オブジェクトの組み立て方、そして優先度の各レベルでどの省略可能なパラメータが一緒に現れるかを教えることを意図している。
適用される場面
Anthropic は、サンプルが最も役立つ場面として、有効な JSON であることが正しい使い方を意味しない複雑なネスト構造、含めるかどうかが重要になる省略可能なパラメータを多く持つツール、スキーマに表れないドメイン固有の慣例を持つ API、そしてサンプルによって区別しやすくなる類似したツールを挙げている。一方、あまり役立たない場面としては、単純な単一パラメータのツール、URL やメールアドレスのようにモデルがすでに理解している標準的な形式、そして JSON Schema の制約のほうがうまく扱える検証を挙げている。サンプルはすべてのツール定義にトークンを追加するため、示されているトレードオフは、精度の向上がそのコストを上回るかどうかである。
サンプルの書き方に関する同社のガイダンスは、プレースホルダーの値ではなく現実的なデータを使うこと、最小限・部分的・完全な指定にわたって多様性を示すこと、1 つのツールにつきサンプルを 1〜5 個にとどめること、そしてスキーマから正しい使い方が明らかでない場合にのみサンプルを加えること、である。この機能の裏付けとなるエビデンスは Anthropic 自身のものであり、発表は、社内テストにおいて Tool Use Examples が複雑なパラメータ処理の精度を 72% から 90% に向上させたと報告している。