AIエージェントの型とは?

AI

AIエージェントの代表的な型

1. ReAct型(Reason + Act)

  • LLM が「考える → ツール呼び出し」を交互に行う
  • いちばん古典的で、LangChain で普及
  • 途中で暴走しやすいが、柔軟

例:ChatGPT Tool Calling / LangChain Agent

2. Plan-and-Execute型

  • 最初に「計画(Plan)」を作る
  • 次に順番に「実行(Execute)」
  • 安定性が高く、ミスが少なめ

例:LangGraph Planner-Executor、近年のOpenAI Agentsの一部

3. モノリシック(One-shot)型

  • 1回の呼び出しでまとめて処理
  • Agent というより「タスク指示」として使われる
  • 検証が楽だが複雑処理は苦手

例:1ショットのGPT呼び出し

4. Loop(自己改善)型 / AutoGPT系

  • 自分で「目標 → 反省 → 次のステップ」を繰り返す
  • 自律性が高いが、不安定になりがち

例:AutoGPT・BabyAGI・Voyager系

5. Tool-specialized型(ツール専用エージェント)

  • 特定のAPI(Google、Slack、Shopify)を使う前提
  • LLMがツールの引数を埋めて実行する
  • 企業が一番使いやすい

例:AgentKit(OpenAI) / LangChain Tools

6. Workflow / Graph型(状態遷移ベース)

  • 全体を「ノード(State)」と「遷移(Edges)」で管理
  • 長い業務フローでも安全&再現性が高い
  • 最近の主流はここ

例:LangGraph、OpenAI agents (実装内部に近い)

7. Multi-Agent(複数エージェントの分業)型

  • Planner、Researcher、Writer、Reviewer など
  • チームみたいに役割を分けて協力する
  • 制御が難しいが、大規模タスクに強い

例:ChatDev、MetaGPT

8. Embedded Agent(アプリに埋め込み型)

  • チャットではなく「機能の一部として動く」
  • Realtime API や UI組込みで使う
  • 音声アシスタント・アプリ内ガイドなど

例:ChatGPT Realtime API / ChatKit

型の進化の方向性は?

型には向き不向きがある一方、同時に1つの型に収束しつつある

1. 型は用途によって向き不向きがある(今も)

→ Webブラウジングは ReAct が強い
→ API統合は Plan-and-Execute が安定
→ 音声アシスタントは Embedded/Realtime 型
→ 長期タスクは Workflow/Graph 型

万能型はまだ存在しない。

2. ただし、最終的には 1つの方向に進化している

それは、Workflow/Graph + Plan-and-Execute のハイブリッド型

理由:

  • 安全性が最も高い
  • 複雑な業務に強い
  • 再現性がある(デバッグしやすい)
  • ツール/API統合が前提のアーキテクチャ
  • OpenAI も Realtime API も LangGraph もこの方向

つまり、
未来の主流は「計画 → 実行 → 状態遷移」で動くエージェント。

どう進化してきたか

  • ReAct(2019〜):考えながらツールを叩く
  • Plan-and-Execute(2023〜):大枠の計画 → 実行
  • Workflow/Graph(2024〜):状態遷移で全体を管理
  • Realtime(2024〜):音声・状況ベースで応答
  • Multi-Agent(随時):役割分担

この全部が混ざっていって、
Graph の中で Plan-and-Execute を行うスタイルが勝ち筋。

現在、どう対応するべきか?

✔ 用途に合わせて今は使い分けるべき

(まだ ReAct も強い場面はある)

✔ ただし、将来の中心は明確に決まっている

(企業・本番運用では Workflow/Graph がほぼ必須)

エージェントを開発するにあたって

1. エージェントは育てるもの

→ 最初はできることが少ない「赤ちゃんエージェント」。
→ Tool(能力)を追加していくと、段階的にできることが増える。

これは「Capability Incremental Development(能力の段階的育成)」と呼べる概念で、
最新の AgentKit / LangGraph / OpenAI Agent Builder の思想と完全一致。

2. Tool calling は、許可した関数しか使えない

→ LLM は「知らない API」を勝手に使えない。
→ あなたが与えた関数の中からしか選べない。

つまり エージェントの世界=あなたが設計した“能力空間”

3. よく頼むタスクが得意になるのは当たり前

→ エージェントは、その世界・ツールセット・データ構造に“慣れる”。

「慣れる」=トレースが溜まり、
コンテキスト(過去の試行錯誤)が残り、
プロンプト設計が進んで安定する。

4. 初めて頼むタスクは失敗しやすい

→ 理由は2つ:

  1. 必要なツールがない
  2. 必要なプランニング能力が未定義

だから、失敗しながらエージェントは完成していく。

これが「RAG を後付け」「ツールを後付け」「プロンプトを後付け」で強化していく開発パターン。

5. 失敗して足りないものをあとから与えるとできるようになる

→ これはまさに エージェント開発の王道

プロのエージェント開発者でも同じ流れ:

  1. 最初の実装で失敗 → 何が必要かわかる
  2. ツールを追加 → パラメータ改善 → 再構築
  3. 状態管理(メモリ/Graph)を補強
  4. 安定度が上がり、汎用性が広がる

これを繰り返す。

つまり、エージェントは後付け強化型のソフトウェア

まとめ

エージェントは固定機能のソフトウェアではなく、
必要な能力(Tool)を与えていくことで成長する生態系のような存在。
LLM はツールを“勝手には使わない”ため、
許可された API だけで世界が作られる。
だから、新しい仕事は最初は失敗し、
不足していた能力を後付けすることでできるようになる。

関連記事

カテゴリー

アーカイブ

Lang »