AIエージェント
LLM が自ら計画し、 ツールを使い、 結果を見て次を決めるシステム。
目標 → [LLM が判断] → ツール実行 → 結果を観測 → 繰り返し → 完了ワークフローとの違い#
Anthropic の整理では、両者を区別している。
| ワークフロー | エージェント | |
|---|---|---|
| 制御の流れ | 人間が事前に決める | LLM が動的に決める |
| 予測可能性 | 高い | 低い |
| 柔軟性 | 低い | 高い |
| コスト | 予測できる | 予測しにくい |
まずワークフローで足りないかを検討すべきというのが実務的な指針。 エージェントは柔軟だが、コストとレイテンシが増え、 失敗の仕方も読みにくくなる。
主なパターン#
| パターン | 内容 |
|---|---|
| ReAct | 推論と行動を交互に行う |
| 計画実行型 | 先に計画を立ててから実行する |
| 自己反省 | 出力を自分で批評して改善する |
| マルチエージェント | 役割を分けて協調させる |
難所#
- 誤りが累積する。 1 ステップ 95% でも 20 ステップで 36%
- 停止条件の設計(いつ完了とみなすか)
- 文脈の管理
- 副作用のある操作の安全性
安全性#
自律的にツールを使うため、取り返しのつかない操作が問題になる。
- 削除、送信、決済は確認を挟む
- 権限を最小限にする
- 外部から取り込んだ内容に含まれる指示を実行しない (プロンプトインジェクション)
最後は本質的に難しい問題で、 「データとして読むべきもの」と「命令」を モデルが確実に区別する保証がない。
参考文献#
- Anthropic. Building Effective Agents. 2024. https://www.anthropic.com/engineering/building-effective-agents
- Shunyu Yao et al. ReAct: Synergizing Reasoning and Acting in Language Models. ICLR, 2023. https://arxiv.org/abs/2210.03629
- Kai Greshake et al. Not what you've signed up for: Compromising Real-World LLM-Integrated Applications with Indirect Prompt Injection. AISec, 2023. https://doi.org/10.1145/3605764.3623985