flowchart LR
B["② 考える"] --> C["③ **道具を使う**"]
C --> D["④ 結果を確認する"]
D --> E{"⑤ 判断する"}
E -- "繰り返す" --> B
E -- "終了" --> F["結果を返す"]
style C fill:#fff3cd,stroke:#ffc107,stroke-width:2px
第3章 AIに道具を持たせる
3.1 導入:未知の金属片を見分ける
実験台の上に3つの金属片がある。見た目はどれも銀色で、大きさもほぼ同じである。これらが鉄・アルミニウム・チタンのいずれであるかを判別したい。
目で見るだけでは区別がつかない。しかし道具を使えば話は変わる。
- 磁石を近づける。1つだけ引きつけられた。これは鉄である。
- 残り2つの密度を測る。体積をメスシリンダーで、質量をはかりで測る。密度が約 2.7 g/cm³ のものはアルミニウム、約 4.5 g/cm³ のものはチタンである。
3つの金属片はすべて同定された。ここで確認したいのは、金属片そのものが変わったのではなく、使える道具が変わったことで得られる情報が変わったという点である。
AI にも同じことが起きる。第2章で導入したエージェントループは、「考える → 道具を使う → 結果を見る → 判断する」の繰り返しであった。ループの構造はそのままに、持たせる道具を変えれば、AI が扱える仕事の範囲が変わる。本章では、この「道具」の設計原理を学ぶ。
3.2 道具を使うAIは何が違うか
第2章のエージェントループを再掲する。
道具を持たない AI は、②の「考える」だけで応答を返す。学習済みの知識だけが頼りであり、外の世界に手を伸ばせない。
道具を持つ AI は、③のステップで外部に作用する。ファイルの中身を読む。Web を検索する。数値を計算する。テキストを書き込む。道具の結果が④で AI に戻り、それを踏まえて②で再び考える。
この仕組みを道具使用(tool use)と呼ぶ。具体的には、次の3段階で動作する。
- AI が道具の使用を要求する:「このファイルを読みたい」「この計算をしてほしい」
- ハーネスが道具を実行する:AI 自身がファイルシステムや計算機に直接触るのではなく、外側の仕組み(ハーネス)が実行を代行する
- 結果が AI に返される:ファイルの内容、計算結果、検索の要約などが AI の文脈に追加される
ここで重要なのは、AI が道具を直接操作しているわけではないという点である。AI は「この道具を使いたい」と宣言するだけであり、実際の実行はハーネスの側が行う。第2章の演習で「AI 役」が道具の使用を口頭で宣言し、「道具係」が実行したのと同じ構造である。
3.3 ループは変えず、道具を足す
ここで、エージェント設計における重要な原則を導入する。
本書で扱う範囲では、能力を拡張したいとき、まずループの構造を変えずに道具を足す発想で十分である。
第2章で定義した5ステップのループは、道具が3つでも10でも変わらない。変わるのは③のステップで選べる道具の種類だけである。(なお、高度な設計では評価器や計画器を組み込んでループ自体を改変する場合もあるが、本書の範囲では扱わない。)
この分離が設計上なぜ重要かを、物理の測定装置に喩えて説明する。
実験室で新しい物理量を測りたくなったとき、実験の進め方の手順(仮説 → 測定 → 記録 → 考察 → 次の測定)を変えるだろうか。変えない。新しい測定器を導入するだけである。手順は同じまま、測定器を取り替えることで測れる対象が広がる。
エージェント設計もこれと同じ思想に立つ。ループは実験の手順にあたり、道具は測定器にあたる。新しいことをさせたければ、新しい道具を定義してループに渡せばよい。ループ自体に手を加える必要はない。
この分離には、もう一つの利点がある。道具を減らすことで、AI の能力を意図的に制限できる。ファイルを読む道具だけを渡して書き込む道具を渡さなければ、AI は情報を閲覧するだけで改変はできない。道具の追加と削除が、能力と安全性の設計に直結する。この点は3.6節で改めて論じる。
3.4 道具の5分類
AI に持たせる道具は多種多様だが、目的で整理すると5つの種類に分けられる。
| 分類 | 目的 | 具体例(AI の場合) | 物理実験での対応 |
|---|---|---|---|
| 観測 | 情報を取得する | ファイルを読む、Web を検索する | 電圧計で測る、温度を読む |
| 記録 | 情報を書き残す | ファイルに書き込む、メモを残す | 実験ノートに記録する |
| 計算 | データを変換・集約する | 数値計算、統計処理 | 回帰分析、単位変換 |
| 検証 | 結果の正しさを確かめる | テストを実行する、構文をチェックする | 再測定、別手法での確認 |
| 操作 | 外部に変更を加える | コマンドを実行する、メッセージを送る | 実験条件を変える、装置を調整する |
この5分類は、3.1節の金属片判別にも当てはめられる。磁石を近づけるのは「観測」、密度を測るのも「観測」、結果を表に書くのは「記録」、得られた密度を文献値と比較するのは「検証」、実験台を片付けるのは「操作」にあたる。
分類が重要なのは、道具の種類によってリスクが異なるからである。観測の道具はおおむね安全であるが、操作の道具は外部の状態を不可逆に変えうる。この違いを意識しておくことが、3.6節の議論の土台になる。
3.5 良い道具の4条件
道具は何でもよいわけではない。エージェントに持たせる道具が満たすべき条件がある。
条件1:役割が明確であること
1つの道具が1つの仕事をする。「何でもできる万能道具」は、AI が何のために使うかを判断しにくい。物理実験で、電圧も電流も抵抗も全部測れる計測器があったとしても、いまどの物理量を測っているのかを実験者が自覚できなければ、記録が混乱する。
条件2:入力と出力が明確であること
道具に何を渡し、何が返ってくるかが定義されている。「ファイルを読む」道具であれば、入力はファイルのパス、出力はファイルの内容である。この対応が不明確な道具は、AI にとっても人間にとっても使いにくい。
条件3:操作範囲が制限されていること
道具がアクセスできる範囲に制限がある。たとえば「ファイルを読む」道具が、あらゆるファイルを無制限に読めるとしたら、見てはいけない情報にもアクセスできてしまう。物理実験で喩えるなら、実験に使う薬品の保管庫には必要なものだけを入れ、関係のない薬品は別の場所に置くのと同じ発想である。
条件4:結果が読み取れること
道具の出力を AI が解釈できる形式で返す。巨大なバイナリデータをそのまま返しても、AI は中身を理解できない。実験で高感度計測器の生データをそのまま見ても何も読み取れないのと同じである。結果は、AI が次の判断に使える形——テキスト、数値、構造化されたデータ——で返す必要がある。
| 条件 | 問い | 良い例 | 悪い例 |
|---|---|---|---|
| 役割が明確 | 何のための道具か | 「指定パスのファイルを読む」 | 「ファイル操作全般」 |
| 入出力が明確 | 何を渡し何が返るか | パス → テキスト内容 | 不定 → 不定 |
| 範囲が制限 | どこまで触れるか | 作業フォルダ内のみ | ディスク全体 |
| 結果が可読 | AI は出力を理解できるか | テキスト形式で返す | バイナリをそのまま返す |
この4条件は、道具を設計する際のチェックリストとして使える。道具を新しく作るとき、この表を1行ずつ確認すれば、設計の漏れに気づきやすい。
3.6 道具のリスク
道具は AI の能力を拡張する。しかし同時に、道具が強力であるほどリスクも大きくなる。
このリスクは4つのパターンに分けられる。
リスク1:見てはいけない情報を見る
観測の道具に範囲制限がなければ、個人情報や機密データを AI が読み取る可能性がある。
リスク2:消してはいけないものを消す
操作の道具がファイル削除を含んでいれば、AI が判断を誤ったとき、重要なファイルが失われる。取り消しが効かない操作は特に危険である。
リスク3:意図しない外部への発信
メッセージ送信やコマンド実行の道具を持たせた場合、AI が予期しないタイミングで外部に作用する可能性がある。
リスク4:道具の連鎖による増幅
1つ1つの道具は安全に見えても、ループの中で連鎖的に使われることでリスクが増幅する場合がある。「ファイルを読む → 内容に基づいて別のファイルを書き換える → 書き換えた結果に基づいてコマンドを実行する」のように、観測が操作を誘発し、操作がさらなる操作を呼ぶ。
1つの道具で何でもできるようにするより、単機能で範囲を限定した道具を複数用意するほうが安全である。物理実験で「すべての操作ができるボタン」を1つ作るより、操作ごとにスイッチを分けるほうが事故が少ないのと同じ原理である。
3.4節の分類に戻って、リスクの大きさを見積もると次のようになる。
| 分類 | リスクの大きさ | 理由 |
|---|---|---|
| 観測 | 低〜中 | 読むだけで変更はしないが、見てはいけない情報へのアクセスは危険 |
| 記録 | 中 | ファイルを上書きすると元に戻せない場合がある |
| 計算 | 低 | データを変換するだけで、外部状態を変えない |
| 検証 | 低 | 確認するだけで、外部状態を変えない |
| 操作 | 高 | 外部の状態を不可逆に変えうる |
ここから導かれる設計原則は明快である。まず観測と検証の道具を揃え、操作の道具は慎重に追加する。リスクの低い道具で情報を集め、十分に判断したうえで、必要な操作だけを実行する。この順序は、物理実験で「まず計測してからでないと装置をいじらない」という原則と同根である。
第2章で学んだ停止条件の設計と合わせて考えると、エージェントの安全設計は2つの軸を持つ。
- ループの停止条件:いつ止めるか(第2章)
- 道具の範囲制限:何を触らせるか(本章)
この2つの軸は、第12章の安全と権限の設計でさらに体系的に扱う。
3.7 第4章への橋渡し
本章では、ループの中で AI に持たせる道具の設計原理を学んだ。道具が揃えば、AI は外の世界を観測し、記録し、計算し、検証し、操作できる。
しかし、道具があっても無計画に使えば遠回りになる。3.1節の金属片判別で、密度を測る前にまず磁石を試したのは、効率のよい順序があったからである。鉄かどうかを先に切り分ければ、密度の測定は残り2つだけで済む。
AI に大きな仕事を任せるとき、この「効率のよい順序」を設計する仕組みが要る。仕事を小さな単位に分解し、順序をつけ、進捗を管理する——これが計画の設計であり、第4章の主題である。
演習:AI実験助手に持たせる道具を選ぶ
形式:3〜4人グループ、25分
設定:あなたのグループは、研究室に「AI 実験助手」を導入する担当になった。以下のミッションカードから1つを選ぶ。
ミッションカード(いずれか1つ):
- A. 化学実験の在庫管理:薬品の在庫を確認し、発注リストを作成する
- B. 物理実験レポートの下書き支援:学生の測定データを受け取り、グラフと考察の下書きを作る
- C. 実験室の安全点検:チェックリストに沿って実験室の状態を記録し、異常があれば報告する
進め方:
- ミッションに必要な道具を3.4節の5分類で洗い出す。各道具は「道具カード」として名前・入力・出力・範囲を書く
- 3.5節の4条件を使って、各道具の設計を点検する
- 3.6節のリスク表を使って、各道具のリスクを評価する
- 「この道具は持たせない」と判断したものがあれば、理由を記録する
成果物:道具カード一覧(各カードに名前・分類・入出力・範囲・リスク評価を記載)
振り返りの問い:
- 操作の道具をいくつ含めたか。それは本当に必要か
- 「持たせない」と判断した道具はあったか。その理由は何か
- 道具を1つ減らすとしたらどれを外すか。そのとき何ができなくなるか
章末課題
課題:AI アシスタントの道具仕様書を作成する
第2章の章末課題で設計した「最小エージェント」に対して、道具の仕様書を作成せよ。
必須項目:
道具リスト(3〜5個):各道具について以下の4項目を記載する
項目 内容 道具の名前 短く、役割がわかる名前 分類 観測・記録・計算・検証・操作のいずれか 入力と出力 何を渡し、何が返るか 範囲制限 どこまでアクセスできるか リスク評価(各道具1行):3.6節の4パターンのいずれに該当しうるかを記載する
不採用リスト(1つ以上):検討したが持たせないと決めた道具を挙げ、理由を書く
設計の説明(300〜500字):道具の選定方針を論じる。特に「なぜこの道具の組み合わせで十分か」を述べよ
提出形式:A4 1〜2枚
評価観点:
- 3.5節の4条件を満たしているか
- 5分類が偏っていないか(操作ばかり、観測ばかりになっていないか)
- リスク評価が具体的で、分類に対応しているか
- 不採用の道具に理由があるか(「何を持たせないか」の設計ができているか)
- 第2章の課題(ループ設計)と整合しているか
第3章のまとめ
本章では、エージェントループの中で AI に持たせる道具の設計原理を学んだ。
要点を整理する。
- AI に道具を持たせるとは、賢さを足すことではなく、外部への観測手段と作業手段を足すことである
- ループの構造は変えなくてよい。道具を足すだけで能力は拡張できる
- 道具は目的によって5つに分類できる:観測・記録・計算・検証・操作
- 良い道具には4つの条件がある:役割明確・入出力明確・範囲制限・結果可読
- 道具が強力であるほどリスクは大きい。特に操作の道具は慎重に設計する
- 「何を持たせるか」と同じくらい「何を持たせないか」の設計が重要である
次の第4章では、道具を持ったエージェントが計画なしに動くとどうなるかを考える。大きな仕事を小さな単位に分解し、順序をつけ、進捗を管理する仕組みが、なぜ必要になるのかを論じる。