- エンジニアにとって身近なのは「GitHub Copilot」などPG開発をサポートするAIエージェント
- ザリガニマークのディスコードなどのチャットツールから「OpenClaw」
- CHATGPTについてるカレンダーなどの連携ができるエージェント機能
- エージェントに牛丼頼んでみたら2つ頼んでくれた技術記事
問題:AIエージェントの定義が曖昧
どういう使い方ができるんだろって観点だと、何者なのか分からなかった。
私個人も下記のような理解度の1人だった。
- ファイルの読み書きとか外とLLMがつながる機能?
- 便利なツール?
- 自動化ツール?
AIエージェントはただの関数呼び出しなのか?
GPT-4の時代になり、生成AIを触っていると「AIエージェント」という言葉をよく見かけるようになりました。
私も最初は、エージェントとは次のような仕組みだと思っていました。

つまり
LLMが関数を選択して呼び出す仕組み
です。
実際、Function Callingみててそう思いました。
しかし、ここで疑問が出てきます。
それって、ただの関数呼び出しでは?
もしそうなら、わざわざ「エージェント」という言葉を使う必要はないはずです。
最近のAIツールを見て気づいたこと
最近のAIツールを見ていると、少し違う動きをしていることに気づきました。
例えば
- ChatGPTで中間の思考が表示されることがある
- GitHub Copilotが参照ファイルを読み込めなかったときに再試行する
これらを見ると、単にツールを呼び出しているだけではなさそうです。
何か処理をして
失敗したら修正して
もう一度試している。
つまり処理が
一回で終わっていない。
エージェントはループしている
よく見ると、AIエージェントの動きは次のようになっています。
プロンプト生成
↓
コード生成
↓
プログラムを実行
↓
結果を評価
↓
エラーなら修正
↓
再生成
これは
ツール呼び出しではなくループ処理
です。
この構造に気づいてから、「エージェント」という言葉の意味が少し見えてきました。
状態遷移として考える
さらに理解が進んだのは、LangGraphの考え方を知ってからでした。
LangGraphでは、AIエージェントを状態遷移として設計します。
つまり
状態
↓
判断
↓
ツール
↓
状態更新
↓
次の判断
という流れです。これはどちらかというと
AIというより状態機械(State Machine)に近い考え方です。
結論
AIエージェントは
- ChatGPTの拡張
- 自動化ツール
といったものではありません。
整理すると
AIエージェントとは LLMを使った意思決定を制御する仕組み
だと理解すると、かなりしっくりきます。
ツールを呼び出すだけではなく、状況を見て判断し、失敗したら修正し、次の行動を決める。
そうした意思決定のループを管理する仕組みこそが、AIエージェントの本質なのだと思います。