Agentic Loopをゼロから組んでみる
AI開発に携わるエンジニアなら、一度は「あの仕組みを自分でも作ってみたい」と思うはずだ。Claude CodeやGitHub Copilotのような『コーディングエージェント』は、ファイルを読んで書き換え、コマンドを実行し、必要に応じて検索をしながら、こちらの細かい指示がなくても次にやることを勝手に決めて処理を繰り返す。その内側で動いているのが『Agentic Loop』だ。
Agentic Loopの基本は意外にシンプルだ。ループは何度も繰り返される。モデルを呼び出す、Tool Callが返ってくる、その通りにツールを実行する、結果を受け取る、モデルにもう一度話しかける。これを繰り返して、最終回答が生成されるまで続く。しかし、単にこのループを回すだけなら簡単だが、実務化すると考えることが増える。
最初のポイントは『会話を覚えているのはモデルではない』という理解だ。LLMは入力されたメッセージ履歴の中でだけ判断する。セッションも会話の継続性も、アプリケーションが履歴を保持して毎回渡すことで初めて成立する。つまり『Session Store』には、ユーザーメッセージ、AIの返答、Tool Call、Tool Result、実行状態、最終回答——これら全部を保存しておく必要がある。
次に『Tool Callの実行は誰がするのか』という責務分離だ。LLMが返すのは「weather_search({'location': 'Tokyo'})」という要求であって、実際にAPIを叩いたりデータベースを操作したりするのはアプリケーション側だ。LLMが選んだツールと引数を、アプリケーションが実行する。コンテキストを毎回作り直し、失敗時の処理、長い会話での工夫、フロントエンドへの進行状況通知——プロダクション化にはオーケストレーション(調整と管理)の方が本体だ。概念は単純だが、実装は細かい。
※ 上記は配信元記事をもとにAIの鬼編集部が要約・再構成したものです。正確な内容は出典元をご確認ください。
このニュースの全文は、配信元でお読みいただけます。 Zenn AIで元記事を読む →

