AIエージェントを強力に見せる最も簡単な方法は、過剰な権限を与えることだ。
すべてを読ませる。すべてに書かせる。APIを呼び出させ、メールを送信させ、CRMを更新させ、請求書を返金させ、その後で自信満々の段落で自己説明させる。
それはプロダクトではない。カレンダー招待を待っている権限インシデントだ。
エージェントの難しい部分はツールの使用ではない。難しいのは境界である。
エージェントは役職名ではない
「セールスエージェント」は仕様ではない。
「サポートエージェント」「リサーチエージェント」「オペレーションエージェント」も同様だ。これらのフレーズは空想上の従業員を表現しているのであって、ソフトウェアの境界ではない。
有用なエージェントの仕様は、実際のループを定義する:
- これらの入力を読み取る
- これらのアクションから選択する
- これらの条件下で承認を求める
- これらのシステムに書き込む
- これらの判断をログに記録する
- この条件で停止する
ループが小さければ小さいほど、エージェントは優れている。
エージェントは一つの判断面を担当すべきだ。ルーティング。ドラフト作成。抽出。チェック。照合。「運用全般」ではない。
目に見えるエージェントは表面にすぎない。耐久性のあるプロダクトはその周囲のシステム、すなわちポリシー、ツールの境界、承認ゲート、監査証跡である。
ツールは狭く、印象的であってはならない
ほとんどのエージェントデモは、トロフィーケースのようにツールリストを表示する。
より優れた本番パターンは退屈なものだ:
- 一つの検索ツール
- 一つの構造化読み取りツール
- 一つのドラフトツール
- 承認ゲート付きの一つの書き込みツール
- 一つのエスカレーションパス
各ツールは、モデルが望むよりも少ないことを行うべきだ。モデルは要求できる。システムが決定する。
ツールがデータを変更できる場合、プロンプトの外部に制約が必要だ。スキーマ検証。許可リスト。レート制限。冪等性キー。監査ログ。金銭、アクセス、または評判が関わる場合の人間による承認。
プロンプトは権限モデルではない。
人間は悪い設計のためのフォールバックではない
「ヒューマン・イン・ザ・ループ」は装飾的なフレーズとして使われている。
それは実際の制御点を意味するべきだ。人間は提案されたアクション、ソースとなる証拠、理由、リスク、正確な差分を見る。承認、編集、却下、または別の場所にルーティングできる。
レビュー画面が最終的な回答だけを表示する場合、レビューアはレビューをしていない。より良いタイポグラフィで推測しているだけだ。
優れた承認画面は以下を表示する:
- 何が変わったか
- なぜエージェントが変更すべきと考えるか
- どのソースを使用したか
- 何を検証できなかったか
- レビューアが承認した場合に何が起こるか
これがワークフローと手品の違いである。
通常のソフトウェアは依然として許容される
すべてのワークフローにエージェントが必要なわけではない。
決定木が安定しているなら、ソフトウェアを書け。出力が正確でなければならないなら、ソフトウェアを書け。入力が構造化されていてアクションが決定論的なら、ソフトウェアを書け。
言語、曖昧さ、判断が実際の問題である場合にエージェントを使用せよ。
それは通常、エージェントがシステムの端に位置し、乱雑な人間の入力を構造化された作業に変換することを意味する。システムを置き換えるのではなく、システムに供給するのである。
境界チェックリスト
エージェントを構築する前に、五つの文が必要だ:
- エージェントは___を決定することを許可されている。
- エージェントは___を決定することを許可されていない。
- エージェントはこれらのツールを呼び出せる:___。
- エージェントは___の前に人間に問い合わせなければならない。
- すべてのアクションは___にログ記録される。
これらの文を書くのが難しいなら、エージェントは構築の準備ができていない。
境界こそがプロダクトである。
