← 概念辨析に戻る

Concept Contrast Fable

ツール呼び出しとツールレジストリ

先に結論:一方はツールに手を伸ばす瞬間の動作であり、もう一方はツールを入れる戸棚そのものである。戸棚の中のツールがどれほど多く揃っていても、手を伸ばすこの一歩が詰まれば、機能は使えない。逆に、どれほど速く伸ばしても、戸棚の中のツールの説明が間違っていれば、取り戻すものも間違っている。

一方はツールに手を伸ばす瞬間の動作であり、もう一方はツールを入れる戸棚そのものである。戸棚の中のツールがどれほど多く揃っていても、手を伸ばすこの一歩が詰まれば、機能は使えない。逆に、どれほど速く伸ばしても、戸棚の中のツールの説明が間違っていれば、取り戻すものも間違っている。

寓話

取れる倉庫と取れない倉庫

老馬は木工工房を開き、特注家具の仕事を専門にしていた。工房には道具が揃っていた——鋸、鉋、鑿、差し金、墨壺。どの道具にも定位置があり、番号が振られ、工具壁一面に掛けられていた。老馬は三か月かけて壁を美しく整え、どの道具にもラベルを貼り、リベットガンに至っては三種類の型番を備え、壁に空きも重複もなかった。

工房に新しい見習いの小張が来た。小張は手先が器用だったが、初日に問題が起きた。客が木板を持ってきて、側面に溝を彫るよう求めた。小張は道具の壁の前に半分立ち、鑿を一本持って戻り、力任せに手で彫った。溝は彫れたが、歪んでいて、端の木も欠けた。老馬はそばで見ていたが何も言わなかった。

夜の作業が終わり、老馬は小張を工具壁の前に呼び、電動トリマーを指して言った:溝切りにはこれを使う。小張はうつむいてトリマーに貼られたラベルを見た——「木工トリマー設備B型」——彼は言った:親方、このラベルは見たことがありますが、溝切りとどう関係するのかわかりません。ラベルに書かれているのは設備の型番で、「溝切りにはこれを使う」ではありません。

老馬はあの夜、眠れなかった。道具の壁は彼が自ら整理し、番号は明確で位置も固定され、一つも欠けていない。だが小張がわからなかったのは道具ではない。小張がわからなかったのは、ラベルに書かれた名前と自分がやるべき仕事との関連だ。道具の壁は、道具があること、どこにあるか、どう調整するかを教える。どの仕事にどれを使うべきかは教えない。

翌日、老馬は工具壁のそばに新しい板を掛け、「仕事索引」と名付けた。そこには作業場面だけが書かれていた。「板の溝切り→トリマー」「パネル接合→ビスケットジョイナー」「角の丸め→面取り鉋」「ほぞ切り→テーブルソーとほぞ治具」。各行は「どんな状況に出会ったか」から始まり、最後の列が壁のその工具を指す。

老馬は新しい規則を定めた:新しいツールが入るたびに、必ず両方の壁にそれぞれ一条の記録を追加する。左の壁にはツール番号と保管場所を追加し、右の壁には二条以上の使用シーン記述と対応するポインタを追加する。両方の壁は同期して更新され、同期しないツールは壁に掛けられない。

一か月後、小張はもう一人で仕事を請けられるようになっていた。同業者が工房を見学に来て、二面の壁を見て老馬に何か謂れがあるのかと尋ねた。老馬は言った。左の壁は倉庫の帳簿——道具がどれだけあり、どこに置き、どんな規格か。右の壁は師匠の経験——どんな仕事にどの道具を使い、どれを先に取りどれを後に取るか。倉庫が整っているだけでは徒弟は仕事ができない。二面の壁がそろって初めて一人前だ。

後に同業者がこのやり方を学び取った。老馬は弟子に言った。覚えておけ、左の壁は「何があるか」を管理し、右の壁は「どう使うか」を管理する。前の壁に一つの道具が欠けているのは在庫の問題だ。後ろの壁に一つの場面が欠けているのは、道具があると知りながら取りに行くことを思いつかないということだ。二つの空きは、別々に勘定しなければならない。

ツール呼び出し (Function Calling)

モデルが対話や推論の過程で、文脈に基づいて外部ツールを呼び出す必要があるか判断し、適切なツールを選び、正しいパラメータを構築し、呼び出しを実行し、結果を現在のタスクに統合する動的なプロセス。

ツールレジストリ

利用可能なすべてのツールを含むカタログまたは設定セットで、各ツールの名前、インターフェースパラメータ、権限範囲、返却形式を定義する。これは静的なリソース一覧であり、「どのツールが利用可能か」と「各ツールがどんなものか」に答える役割を担う。

物語の対応

  • 道具の壁は整然としているが、弟子は間違った鑿を取って溝を彫った:倉庫が完全かどうかと正しく取れるかどうかは別々のことだ。
  • ラベルには「木工面取り設備B型」と書かれている。学徒はこれが溝切り用だとは知らない。登録説明を誰に向けて書くかで、呼び出しが発動するかどうかが決まる。
  • 活計索引板は「どんな状況に遭遇したか」から出発してツールを指し示す。呼び出しガイドに求められるのは情景化された記述であり、技術的な命名は必要ない。
  • 二面の壁を同期更新——同期しなければ壁に上げてはならない:登録と呼び出しは一つのリズムで維持する必要があり、一面が欠ければそれは缺口である。
  • 左の壁は「何があるか」、右の壁は「どう使うか」:リソースカタログと意思決定システム、二つの帳簿を分けて管理する。

プロジェクトに落とし込む

ツールを追加または変更するたびに、エンドツーエンドの呼び出しテストを一組実行する:実際のユーザーの質問でツール選択をトリガーし、モデルが正しいツールを選んだか、パラメータが正しいかを検証する。API の接続性テストだけを実行して合格にしてはならない。ツールレジストリの受け入れ基準とツール呼び出しの受け入れ基準は別々に書く。前者はインターフェースの完全性を確認し、後者はシナリオ適合度を確認する。

京ICP备2026014272号