
ReAct(Reasoning + Acting)とは、推論の連鎖と外部ツールの操作を交互に生成させる手法です。定義とThought/Action/Observation の仕組み、注意点を解説します。
読み方:りあくと。ReAct(Reasoning + Acting)とは、大規模言語モデルに「考える過程」と「外部ツールへの操作」を交互に生成させる手法です。このページでは、定義、仕組み、実装時の注意点を解説します。
ReAct とは、推論(Reasoning)と行動(Acting)を1つの流れで交互に生成させ、モデルが外部の情報源や環境とやり取りしながら答えに到達できるようにする手法です。このページでは、基本的な仕組みと、導入時に押さえるべき注意点を整理します。
ReAct とは、言語モデルが「推論の連鎖(Thought)」と「タスク固有の操作(Action)」を交互に生成する手法です。推論の連鎖は行動計画を立て直したり例外に対応したりする働きを持ち、操作は知識ベースや環境といった外部の情報源から追加情報を取り込む働きを持ちます。2022年10月に公開された研究で提案されました。
推論と行動は、これまで別々の研究題目として扱われてきました。前者は思考連鎖プロンプティング、後者は行動計画の生成が代表例です。ReAct は両者を1つのループに統合する点に特徴があります。
ReAct の基本単位は3つの要素で構成されます。モデルはまず考えを書き(Thought)、次に行動を出し(Action)、その結果である観察(Observation)を受け取って、次の考えを書きます。この繰り返しが答えに到達するまで続きます。
| 要素 | 役割 |
|---|---|
| Thought(思考) | 現状を整理し、次に取る行動を決める。行動計画の更新や例外対応もここで行う |
| Action(行動) | 外部ツールや環境への操作を実行する。検索、データベース照会などが該当する |
| Observation(観察) | 行動の結果として返ってくる情報。次の思考の材料になる |
推論だけを行うと、モデルが知らない事実をその場で補おうとして誤りが混ざりやすくなります。行動を挟むと、外部から事実を取り込んで推論を修正できます。逆に行動だけを行うと、目的や前提が崩れたまま操作が続くことがあります。推論を挟むと、行動の計画と前提を都度立て直せます。
プロンプトの側で「Thought → Action → Observation」の形式を示し、行動のたびに指定されたツールを呼び出させるのが基本形です。近年のフレームワークでは、この流れがツール呼び出しの機能として組み込まれていることも多く、開発者はツールの定義と停止条件を用意するだけで同様のループを組めます。
検索ツールを持つエージェントに「〔会社名〕の本社所在地を調べて」と頼む場合の流れは次のようになります。
実際の実行では、モデルはこの形式に沿ってテキストを生成し、システム側が Action の部分を解釈してツールを実行し、その結果を Observation として差し込みます。
実際は:研究論文で提案された手法の名称で、一般名詞として設計パターンを指します。製品名ではありません。
実際は:外部ツールがない環境でも、思考と行動の形式を守って手順を組み立てるよう促す用途に使えます。ただし外部情報を取り込めないため、効果は限定的です。
実際は:根拠を外部から取り込む構造になるため誤りの構造は変わりますが、検索結果の解釈ミスなど新たな誤りの型も生じます。検証の手順は別に用意すべきです。
実際に ReAct の流れを手で回す手順は、ガイド:調べてから答える順番を組むとガイド:考える→動くを交互に回すで解説しています。用語一覧はAI用語辞典、ツール比較はAIツール一覧をご覧ください。
理解を定着させるためのプロンプト例です。コピーして〔 〕内を置き換えてご利用ください。
理解を深める質問
あなたは AI 教育の講師です。「ReAct」を、AI に詳しくない日本の社会人にも分かるように説明してください。Thought/Action/Observation の3つの要素を、日常業務の例に置き換えて説明してください。
整理・比較
「ReAct」と「思考連鎖プロンプティング」の違いを、①目的 ②外部情報の扱い ③得意な場面 ④注意点 の観点で表形式に整理してください。
実務への検討
〔業務内容〕で ReAct 型のエージェントを試す場合、どの作業を Action に割り当てるべきか、停止条件はどう設けるべきかを提案してください。前提となる事実があれば明示してください。
A. 言語モデルに「考える過程」と「外部ツールへの操作」を交互に生成させ、情報を取り込みながら答えに到達させる手法です。
A. 思考連鎖は推論の連鎖だけを生成します。ReAct はその間に外部ツールへの操作を挟み、観察の結果を次の推論に反映させる点が異なります。
A. 停止条件と実行回数の上限を先に決めること、ツールの返答の誤りを前提に検証の手順を別に用意することです。
出典:arXiv「ReAct:言語モデルにおける推論と行動の融合」(原題 ReAct: Synergizing Reasoning and Acting in Language Models、2022年10月6日提出)。
定義と仕組みの記述は上記論文の要旨に基づきます。本ページの解説部分と具体例は my-best.ai 編集部の執筆です。
そのまま使える依頼文はプロンプト集にまとめています。手を動かす順番はチュートリアルを参照してください。
ReAct とは、推論の連鎖と外部ツールへの操作を交互に生成させ、観察を次の推論に反映させる手法です。エージェント設計の基本パターンとして、現在の多くのツール連携機能の土台になっています。導入時は停止条件と検証手順を先に用意してください。
本記事にはアフィリエイトリンクを含む場合があります。経由での申し込み時に当サイトが報酬を受け取ることがありますが、掲載内容・評価は報酬の有無に左右されません。記載情報は公開時点のものであり、最新情報は各公式サイトをご確認ください。
編集部の評価方法論を見る →