AIエージェント」には、普遍的に合意された定義はありません。以前からある意味では、環境を認識し、その環境内で行動するAIシステム全般を指します。現在のソフトウェア製品では通常、モデルがワークフローの少なくとも一部を指示するシステムを意味します。このページでは、現代的でより狭い意味を用います。

最も簡単な捉え方

エージェントには、すべての手順ではなく、達成したい結果を伝えます。

通常の自動化に請求書を処理させる場合、開発者はすでに処理経路を記述しています。つまり、これらの項目を読み取り、これらのルールを適用し、このシステムを更新する、といった具合です。一方、エージェントに請求書の問題を解決させる場合、モデルは請求書を調べ、発注書を参照し、不一致に気づき、不足している証拠を求め、その後、記録を更新するかエスカレーションするかを選べます。

違いは、エージェントが好き勝手に何でもできることではありません。違いは、次に何が起こるかについて、制限された範囲で制御できることです。

役立つ判定方法は次のとおりです。

システムが結果を受け取った後、次のステップを選ぶのは誰か?

常に固定コードが選ぶなら、そのシステムは主にワークフローです。結果に基づいてモデルが別の行動を選べるなら、そのシステムにはエージェント的な制御があります。実際の製品では両方を組み合わせることもあります。固定コードが承認や支払いを処理する一方で、モデルが例外の調査方法を決める、といった構成です。

AIエージェントの仕組み

現在のソフトウェアエージェントの多くは、AIモデルAIハーネスを組み合わせています。モデルは状況を解釈し、何をすべきかを提案します。ハーネスはコンテキストを提供し、許可されたツールを公開し、承認済みの行動を実行し、状態を記録し、制限を適用します。

基本的なループは次のようになります。

Goal, context, and limits
           |
           v
 Model chooses a next step <------------------+
           |                                  |
           v                                  |
 Harness checks and executes the action       |
           |                                  |
           v                                  |
 Environment returns an observation ----------+
           |
           v
 Finish, ask for help, or stop at a limit

1. エージェントが目標を受け取る

目標は望ましい結果を示します。指示には、何を変更してよいか、何に承認が必要か、何をもって完了とするかといった制約を加えます。「何度でも試し続ける」は安全でも有用でもないため、明確な停止条件が重要です。

2. モデルが次のステップを選ぶ

モデルは目標と現在の状態を受け取ります。回答したり、質問したり、ツールを選択したり、続行できないと判断したりします。計画を立てたり修正したりすることもできますが、すべてのエージェントに詳細な計画が必要なわけではありません。

3. ハーネスが行動を処理する

ツールとは、システムが情報を取得したり、モデルの外部にある何かを変更したりするために使えるインターフェースです。記録の検索、コードの実行、カレンダーの読み取り、更新の送信などを行えます。

通常、モデルはツール名と入力値を提案します。ハーネスはその要求を検証し、権限を確認し、必要に応じて承認を求め、基盤となるコードを実行します。この分離により、生成された指示が自動的に承認済みの行動へ変わることを防げます。

4. 環境が証拠を返す

ツールの結果は観察結果になります。検索結果、エラー、テストレポート、確認番号、その他モデルの外部から得られる証拠などです。モデルはその観察結果を使って、もう一度選択します。

このフィードバックによってループが閉じます。これがなければ、実際に何かが起きたかを知らないまま、成功したらしい説明を生成してしまう可能性があります。

5. ループが停止する

エージェントは、完了条件に達したとき、続行できなくなったとき、人間の判断が必要になったとき、または制限に達したときに終了します。制限には、許可された行動、経過時間、ステップ数、リソース使用量などがあります。安全に停止できるエージェントのほうが、単に行動し続けるエージェントよりも適切に設計されています。

具体例

配送エージェントに次のように依頼するとします。

火曜日の食料品の配送を、私が在宅している時間帯に変更してください。商品は変更しないでください。

エージェントは、考えられるすべてのカレンダーや配送状態について、ハードコードされたスクリプトを必要としません。

  1. 現在の予約を取得し、依頼された注文が火曜日に予定されていることを確認します。
  2. ハーネスが使用を許可したツールを通じて、あなたのカレンダーを読み取ります。
  3. 観察結果から、現在の配送時間帯が予定と重なっていることが分かります。
  4. 配送サービスで利用可能な火曜日の時間帯を確認します。
  5. その結果をカレンダーと照合し、予定と重ならない選択肢を選びます。
  6. 再スケジュールによって外部の記録が変更されることをハーネスが検知し、あなたの承認を得るために一時停止します。
  7. 承認後、ハーネスが変更を送信します。
  8. 配送サービスから確認が返ると、エージェントは曜日、時間帯、商品リストが元の依頼を満たしていることを確認し、停止します。

有効な時間帯がない場合、モデルは水曜日でもよいか尋ねるかもしれません。カレンダーツールが失敗した場合は、空いている時間を尋ねるかもしれません。予約品がすでに発送済みなら、成功した結果を捏造するのではなく、障害となっている理由を説明すべきです。

こうした分岐にエージェントの特徴が表れます。固定ワークフローでも同じ通常経路の手順は実行できますが、モデルが指示するシステムでは、それぞれの観察結果から新しい経路を選べます。

AIエージェントが重要な理由

エージェントは、目標は明確でも必要な手順が変化する場合に役立ちます。人が各ステップの後に新しい指示を出さなくても、不足している情報、ツールのエラー、変化する状況に対処できます。

その柔軟性には代償があります。モデルによる判断が増えるたびに、時間とリソースの使用量が増えます。また、初期の誤った行動が、その後のすべてのステップに影響する可能性もあります。システムに与えるツールが増えるほど、達成できることだけでなく、損害を与える可能性も増えます。

したがって実務上の問いは、「どれほど自律的にできるか」ではありません。「システムが安全に行える選択はどれで、どこから固定ルールや人間の承認に引き継ぐべきか」です。自由度の高い調査では、複数の自己指示によるステップを許容できる場合があります。一方、送金、データの削除、拘束力のある意思決定には、通常、より厳しい境界が必要です。

よくある誤解

「AIモデルを使うアプリはすべてエージェントである」

モデルは、1回の呼び出しで文書を要約したり、メッセージに回答したりできます。これはAIを活用した機能ですが、必ずしもエージェントではありません。より強い指標は、プロセスに対するモデル指示型の制御です。つまり、行動を選び、観察結果を受け取り、その後どうするかを決めることです。

「ツールを1回呼び出せばエージェントになる」

チャットボットが常に同じ天気関数を呼び出し、その結果を表示することはできます。その経路は通常の自動化かもしれません。ツールの結果によって、次にモデルが何をするかという判断が変わるとき、そのツールはエージェントのループの一部になります。

「エージェントは単に賢いモデルである」

モデルの能力は役立ちますが、エージェントはシステムです。モデルが自らデータベース認証情報を作成したり、自分のコードを実行したり、自分に権限を与えたりするわけではありません。ハーネスとツールのインターフェースによって、提案された行動のうち何が現実の行動になり得るかが決まります。

「自律的とは監督不要という意味である」

自律性はオンかオフかではなく、程度の問題です。エージェントは自律的に選択肢を調査し、重大な変更の前に停止し、証拠が不足しているときに制御を返すことができます。チェックポイントやエスカレーションは設計の一部であり、システムがエージェントでなくなった証拠ではありません。

「エージェントは常に経験から学習する」

実行をまたいで情報を保存するエージェントもあります。タスクが終わるとすべてを忘れるエージェントもあります。メモリと学習によってエージェントの動作範囲は広がりますが、目標指向の行動から、それらのいずれかが保証されるわけではありません。

「自信のある回答は仕事が完了したことを意味する」

言語モデルは、もっとも可能性の高い出力を生成します。完了は外部の事実です。信頼できるエージェントは、成功を報告する前に、領収書、ファイルの状態、テスト結果、その他の観察結果を確認します。

AIシステムにおけるエージェントの位置づけ

モデル、ハーネス、エージェントは関連していますが、置き換え可能なものではありません。

  • モデル」は、受け取ったコンテキストからテキストや構造化された選択肢を生成します。
  • ハーネス」は、モデルを指示、状態、ツール、権限、承認、ログに接続します。
  • エージェント」は、モデルがその仕組みを使い、フィードバックに基づいてプロセスを指示できるときに成立する、目標指向のシステムです。

チャットボットがエージェントへのインターフェースになることはありますが、会話だけでチャットボットがエージェント的になるわけではありません。エージェントは、チャット画面なしでバックグラウンドで実行することもできます。

この境界は、部分的には編集上のものです。ソフトウェアフレームワークによっては、設定済みのモデルコンポーネントを「エージェント」と呼ぶ一方、その言葉を実行中のループ全体に限定するものもあります。製品を評価するときは、ラベルを無視して動作を確認してください。どのような目標を受け取り、どのような行動を取れ、次のステップを選ぶのは誰で、どのような証拠を観察し、何によって停止するのかを確認します。

次に読むもの

選択を行うコンポーネントを理解するには、「AIモデルとは?」を読んでください。次に、ツール、状態、権限、実行を提供する周辺システムについては、「AIハーネスとは?」を読んでください。行動のループについては「LLMにおけるツール使用とは?」へ進むか、スタック全体を比較するには「AIモデル vs. チャットボット vs. ハーネス vs. エージェント」を利用してください。