AIエージェント活用実践編 / 単一エージェント実装 — ReAct ループの基本
最小 QA エージェントの設計
無料公開レッスン / 読了目安 3 分
学習のねらい
これまでのレッスンで、ReAct ループの基本、Tool 定義、Context window 管理、そしてエラー回復処理について学びました。 いよいよ本レッスンでは、これらの知識を統合し、Wikipedia 検索と要約 を行う最小限の QA (Question Answering) エージェントを実装します。 このエージェントを通じて、ReAct ループが実際にどのように機能し、外部ツールと連携して質問に答えるのかを体験しましょう。
Wikipedia 検索 + 要約の小型エージェントの設計
今回実装する QA エージェントは、ユーザーからの質問に対して Wikipedia を検索し、その結果を要約して回答するというシンプルなものです。 ReAct ループの観点から、エージェントは以下のような流れで動作します。
- Thought: ユーザーの質問を理解し、Wikipedia 検索ツールが必要だと判断します。
- Action: Wikipedia 検索ツールを呼び出し、ユーザーの質問をクエリとして渡します。
- Observation: Wikipedia 検索ツールの実行結果 (検索された記事の内容) を受け取ります。
- Thought: 検索結果を読み込み、ユーザーの質問に対する回答を生成するために、その内容を要約する必要があると判断します。
- Action: 要約ツール (または LLM 自身に要約させるプロンプト) を呼び出し、検索結果を渡します。
- Observation: 要約された内容を受け取ります。
- Thought: 要約された内容がユーザーへの最終回答として適切であると判断します。
- Action: ユーザーに最終回答を提示します。
このエージェントは、search_wikipedia という外部ツールと、LLM の推論能力 (Thought) を組み合わせて動作します。