
ReActとは?AIエージェントの基礎フレームワークを図解【LangChainの原点】
AIサマリー
ReAct(リアクト)とは、AIに「考える→行動する→観察する」のループを実行させるフレームワークです。LangChainやAutoGPTの設計図となった重要論文。本記事では、ReActの仕組み・従来手法との違い・実装例を初心者向けに図解で解説します。
2022年夏、Princeton大学の研究室。
一人の博士課程学生が、イヤホンでEminemの「Lose Yourself」を聴きながらコードを書いていた。Shunyu Yao(姚顺宇)、当時26歳。彼は清華大学でラップクラブを創設していた異色の研究者だった。
その日、彼が投稿したarXiv論文は、AI業界の常識を覆すことになる。
わずか2個の例を見せただけで、10万個のデータで訓練された従来手法を34%上回る——そんな常識外れの結果を示していた。
彼が生み出した「ReAct」は、その後LangChain、AutoGPT、そして無数のAIエージェントの設計図となった。「AIはデータ量で勝負する」という常識を、彼は**「パターンで勝負する」**へと塗り替えた。
関連記事: 本記事は「AIエージェント論文おすすめ9選」の詳細解説記事です。他の論文も合わせてご覧ください。
本記事の表記について
- 金額の日本円換算は1ドル=150円で計算しています
- 下線付きの用語にカーソルを合わせると解説が表示されます
本記事では、ICLR 2023で**Notable Top 5%**に選出され、5,250件以上の引用を獲得したReAct論文を解説します。
この記事でわかること
- ReActの仕組み: 推論(Reasoning)と行動(Acting)を交互に実行するループ構造
- 実験結果: HotPotQAで+6%、ALFWorldで+34%の性能向上を達成した具体的データ
- 実践検証: Claude Codeで構築したReActエージェントの検証結果と実用性評価
基本情報
| 項目 | 内容 |
|---|---|
| トピック | ReAct(Reasoning + Acting) |
| カテゴリ | 論文解説 |
| 難易度 | 中級 |
| 発表 | ICLR 2023 |
| arXiv | 2210.03629 |
💡 この先の展開
一体どんな「魔法」を使ったのか?実は、そのアイデアは驚くほどシンプルだった——「考えながら行動する」、ただそれだけ。
「常識の逆転」が起きた瞬間
Shunyu Yaoが挑んだのは、当時のAI研究が抱えていた2つの陣営の対立だった。
実験1: 「考えるだけ」のAI(Chain-of-Thought)
2022年、Chain-of-Thought(CoT) という手法が流行していた。LLMに「段階的に考えさせる」だけで、複雑な数学問題を解ける——しかし、致命的な弱点があった。
ハルシネーション(幻覚)。AIが外部情報を確認せず、内部知識だけで自信満々に嘘をつくのだ。
実験2: 「動くだけ」のAI(Action-only)
一方、強化学習などの「行動だけ」に特化した手法もあった。試行錯誤でタスクをこなすが、「なぜその行動を取ったか」説明できない。計画性が欠如し、場当たり的な行動で非効率だった。
| 手法 | 性能(ALFWorld) | 訓練データ量 | 弱点 |
|---|---|---|---|
| Chain-of-Thought(考えるだけ) | 低 | ゼロ | ハルシネーション |
| Action-only(動くだけ) | 37% | 105,000エピソード | 計画性不足、説明不可能 |
| ReAct(考えながら動く) | 71% | 2個の例のみ | 推論と行動を統合 |
常識の逆転: 「統合」が鍵だった
Yaoは気づいた——「考える」と「動く」を分けること自体が間違いだと。
人間は問題を解くとき、頭の中で考えるだけでなく、Googleで調べたり、計算機を使ったりする。思考と行動を往復するのだ。
この「当たり前」をAIに実装したのがReActだった。
ReActの仕組みを図解で理解
ReActの核心は、Thought-Action-Observationの3ステップを繰り返すループ構造です。
ReActのThought-Action-ObservationループThought(推論):次に何をすべきか考える
LLM(大規模言語モデル) が現在の状況を分析し、次のアクションを決定します。従来のCoT(Chain-of-Thought:段階的思考) と同様の推論プロセスですが、ReActでは行動を前提とした推論を行う点が異なります。
[Thought] ユーザーは消費税込み価格から税抜き価格を求めている。
計算ツールを使って 1000 / 1.1 を計算する必要がある。
Action(行動):外部ツールを呼び出す
推論結果に基づいて、適切なツールを選択・実行します。
[Action] calculator(1000 / 1.1)
Observation(観察):結果を受け取る
ツールの実行結果を受け取り、次のThoughtに活用します。
[Observation] 計算結果: 1000 / 1.1 = 909.09
このループを繰り返すことで、複雑なタスクを段階的に解決していきます。
💡 この先の展開
では、このシンプルなアイデアがどれほどの効果を発揮したのか?論文の実験結果を見てみよう。
実験結果:どれくらい性能が上がるのか
論文では、3つのベンチマークで検証が行われました。
| ベンチマーク | タスク内容 | 性能向上 |
|---|---|---|
| HotPotQA | 複数文書からの質問応答 | +6% |
| ALFWorld | テキストベースのゲーム | +34% |
| WebShop | Web操作によるショッピング | +10% |
特に**ALFWorldでの+34%**は驚異的です。これは、推論だけでなく「行動して結果を確認する」ことの重要性を示しています。
実装方法:LangChain/LangGraphでReActエージェントを作る
LangChain(エージェント開発フレームワーク) とLangGraph(ワークフロー構築ライブラリ) を使えば、数十行のコードでReActエージェントを構築できます。
📖 このセクションについて
実装の詳細コードを含みます。技術的な実装に興味がない方は次のセクションまで読み飛ばしてOKです。
基本的なコード構造
やっていること: AIに「ツールを定義→エージェント作成→実行」の3ステップで「考えながら行動する」能力を与える
<details> <summary>💻 実装コードを見る(スキップ可・技術者向け)</summary>from langchain_openai import ChatOpenAI
from langchain_core.tools import tool
from langgraph.prebuilt import create_react_agent
# ツールの定義
@tool
def calculator(expression: str) -> str:
"""数学的な計算を行う"""
result = eval(expression)
return f"{expression} = {result}"
@tool
def search_knowledge(query: str) -> str:
"""情報を検索する"""
# 検索ロジック
return search_result
# エージェント作成
llm = ChatOpenAI(model="gpt-4o", temperature=0)
agent = create_react_agent(llm, [calculator, search_knowledge])
# 実行
result = agent.invoke({"messages": [("user", "100 × 5 を計算して")]})
ポイント
- ツールの説明文が重要: LLMはツールの説明文を読んで使用判断するため、明確な説明が必要
- temperature=0: temperature(ランダム性のパラメータ) を0に設定し、再現性を確保
- max_iterations: 無限ループ防止のため上限を設定(通常は10-20回)
💡 この先の展開
論文の数字だけでは実感が湧かない。実際にReActエージェントを構築して、ビジネスシナリオで検証してみた。
【実際に動かしてみた】ビジネスシナリオでの検証
実行環境: Claude Code + LangGraph + gpt-4o
シナリオ1: 競合価格調査エージェント
ユースケース: プライシング業務での競合SaaS価格調査
AIチャットボットSaaS(Intercom、Zendesk、Tidio、Drift)の価格を自動調査し、比較レポートを生成するエージェントを構築しました。
使用ツール:
- web_search: 競合サービスの価格情報をWeb検索
- calculator: 年額→月額変換、為替計算(1ドル=150円)
- generate_comparison_report: Markdown形式の比較表生成
実行結果:
[行動] web_search({'query': 'Intercom pricing 2025'}...)
[行動] web_search({'query': 'Zendesk pricing 2025'}...)
[観察] snippet: Intercom pricing starts at $39/month...
[行動] calculator({'expression': '468 / 12'}) # 年額→月額変換
[観察] 計算結果: 468 / 12 = 39.00
| 処理時間 | 成功 | 実用性評価 |
|---|---|---|
| 8.41秒 | ✓ | ★★★★☆ |
月額5万円以下のサービスとしてTidio、Driftを推奨する比較レポートを自動生成しました。
シナリオ2: 見積もり支援エージェント
ユースケース: DX支援案件の概算見積もり作成
ECサイトリニューアル案件(商品数500点、決済機能、会員機能、在庫連携)の見積もりを自動作成するエージェントです。
使用ツール:
- analyze_requirements: 要件を分析し開発項目を抽出
- calculate_man_hours: 各項目の工数を計算
- calculator: 工数合計・金額計算
- generate_estimate: 見積書ドラフト生成
実行結果:
[行動] analyze_requirements({'requirements': '商品数: 約500点, 決済機能...'})
[観察] 抽出された開発項目: フロントエンド開発、バックエンド開発、インフラ構築、テスト
[行動] calculate_man_hours({'item': 'フロントエンド開発', 'complexity': 'medium'})
[観察] 「フロントエンド開発」の想定工数: 40人日
[行動] calculator({'expression': '40 + 60 + 10 + 20'})
[観察] 計算結果: 40 + 60 + 10 + 20 = 130
[行動] generate_estimate({'project_name': '中小企業向けECサイトリニューアル', ...})
生成された見積書:
| 項目 | 数量 | 単価 | 金額 |
|---|---|---|---|
| 開発工数 | 130人日 | 50,000円 | 6,500,000円 |
| 消費税(10%) | - | - | 650,000円 |
| 合計 | - | - | 7,150,000円 |
| 処理時間 | 成功 | 実用性評価 |
|---|---|---|
| 8.15秒 | ✓ | ★★★★☆ |
シナリオ3: 技術リサーチエージェント
ユースケース: クライアントへの技術提案準備
AIエージェントフレームワーク(LangChain、LlamaIndex、CrewAI)を調査し、社内ナレッジと組み合わせて比較レポートを生成します。
使用ツール:
- web_search: 各フレームワークの最新情報を検索
- knowledge_db: 社内ナレッジベースから過去の評価を取得
- generate_comparison_table: 比較表テンプレート生成
実行結果:
[行動] web_search({'query': 'LangChain AI framework 2025 updates'})
[行動] knowledge_db({'topic': 'LangChain'})
[観察] 【LangChain 社内評価】導入実績: 5案件、評価: ★★★★☆
[行動] generate_comparison_table({'items': 'LangChain, LlamaIndex, CrewAI'})
生成された比較表:
| 観点 | LangChain | LlamaIndex | CrewAI |
|---|---|---|---|
| 主要機能 | エージェント開発、RAG構築 | 知識アシスタント、データ接続 | マルチエージェント協調 |
| 学習コスト | 高 | 中 | 低 |
| 社内実績 | 5案件 | 3案件 | 1案件(PoC) |
| 総合評価 | ★★★★☆ | ★★★★☆ | ★★★☆☆ |
推奨: 複雑なエージェント開発にはLangChainを推奨
| 処理時間 | 成功 | 実用性評価 |
|---|---|---|
| 18.66秒 | ✓ | ★★★★★ |
検証結果サマリー
| シナリオ | タスク | 成功 | 処理時間 | 実用性 |
|---|---|---|---|---|
| 競合価格調査 | SaaS価格比較 | ✓ | 8.41秒 | ★★★★☆ |
| 見積もり支援 | 開発見積もり作成 | ✓ | 8.15秒 | ★★★★☆ |
| 技術リサーチ | フレームワーク比較 | ✓ | 18.66秒 | ★★★★★ |
全シナリオ成功率: 3/3(100%)
コスト概算
| 項目 | 数値 |
|---|---|
| 使用モデル | gpt-4o |
| 平均処理時間 | 8〜19秒/タスク |
| 推定API費用 | 約$0.01〜0.05/タスク(約1.5〜7.5円) |
【ネクサフローでの活用視点】
上記の検証で示したように、ReActは実際のビジネスシナリオで高い実用性を発揮します。
DX支援での適用可能性
業務プロセス自動化(検証済み)
- 競合調査、見積もり作成、技術リサーチを自動化
- 「調べて → 計算して → レポート化する」の一連の流れを実現
データ収集・分析
- 外部APIを叩きながら情報を整理
- Web検索 + 社内データベースの統合(シナリオ3で実証)
社内ナレッジ活用
- 社内評価データと最新情報を組み合わせた意思決定支援
- 過去の案件実績を踏まえた提案資料の自動生成
プライシング業務での活用例(シナリオ1で実証)
競合価格リサーチの自動化
- 複数SaaSの価格情報を自動収集
- 為替換算・年額月額変換も自動処理
価格設定根拠の説明
- 「なぜこの価格か」を論理的に説明
- 推論過程の可視化で意思決定を支援
顧客からよくある質問との関連
「AIで業務を自動化したいが、単純な質問応答だけでは不十分」
ReActは「調べながら考える」ができるため、より複雑なタスクに対応可能です。
導入を検討する際のアドバイス
- 最初は単純なタスクから始める: 計算や検索などシンプルなツールから
- ツールの選定が重要: 信頼性の高いAPIを選ぶ
- 人間のレビューを挟む: 重要な意思決定は人間が最終確認
ReActの限界と発展
ReActの弱点
- 長いタスクでの精度低下: ステップが増えるとエラーが蓄積
- 推論コスト: 毎回LLMを呼び出すためAPI費用が増加
- ツール依存: 適切なツールがないと性能が発揮できない
後続研究
ReActの弱点を克服する手法も登場しています。
| 手法 | 特徴 |
|---|---|
| Reflexion | 失敗から学習して改善 |
| LATS | 木探索で複数の選択肢を評価 |
| Tree of Thoughts(思考の木) | 分岐する推論パス |
💡 この先の展開
技術の話はここまで。でも、この論文には「人間ドラマ」がある。若き研究者の波乱万丈なキャリアを見てみよう。
【驚きの事実】研究者Shunyu Yaoのその後
ReAct論文の主著者Shunyu Yaoのキャリアは、AIエージェント研究の激動を象徴している。
清華「姚班」出身のラッパー研究者
Shunyu Yaoは、中国の大学入試「高考」で704点を獲得し、Anhui省で3位として清華大学に入学した。しかし、彼が選んだのは普通のコンピュータサイエンス学科ではなかった。
清華大学「姚班(Yao Class)」——ノーベル賞級の科学者**Andrew Chi-Chih Yao(姚期智)**が創設した超エリート実験プログラム。情報学オリンピック金メダリストや天才プログラマーが集う場所だった。
しかし、Yaoには意外な一面があった。彼は清華大学でラップクラブ「Rap Club」を共同創設し、EminemやMC HotDogを愛聴していた。研究室で論文を書きながら、ヘッドフォンでラップを聴く——この「AI版freestyle」とも言える即興性が、後のReAct研究につながっていく。
| 経歴 | 内容 |
|---|---|
| 出身 | 清華大学「姚班(Yao Class)」(2019年卒業) |
| 特技 | ラップクラブの共同創設者(Eminem、MC HotDog、J. Cole愛聴) |
| 博士号 | Princeton大学(2024年)、指導教官: Karthik Narasimhan |
| 博士論文 | "Language Agents: From Next-Token Prediction to Digital Automation" |
| 受賞 | MIT Technology Review「35 Under 35」最年少選出(27歳) |
波乱万丈のキャリア: OpenAIからTencentへ
Yaoの博士号取得後のキャリアは、AI業界の激動そのものだった。
2024年8月: OpenAI入社
Princeton大学で博士号を取得した直後、YaoはOpenAIに入社した。当時、OpenAIはChatGPTの成功で世界的な注目を集めており、若き研究者にとって最高峰の舞台だった。
2024年後半: 突然の退職
しかし、わずか数ヶ月後、YaoはOpenAIを退職したとの報道が流れた。一時はAnthropicへの移籍が噂されたが、後に否定された。業界内では「Yaoは何か大きなことを準備している」と囁かれた。
2025年: Tencent Chief AI Scientist就任
そして2025年、驚きのニュースが飛び込んできた。TencentがYaoをChief AI Scientistとして招聘したのだ。
| 項目 | 内容 |
|---|---|
| 役職 | Chief AI Scientist |
| 配属 | CEO/President's Office |
| 担当 | AI Infra部門・LLM部門のトップを兼任 |
| 契約金 | $14M(約21億円) との報道(未確認) |
| 年齢 | 27歳 |
中国のテック業界では、Yaoの参加は**「Tencent AI 2.0時代の幕開け」**と評された。ByteDance(TikTok親会社)やBaiduとのAI競争が激化する中、Tencentは若き天才研究者に未来を託した。
ReActからTree of Thoughtsへ: 自らの発見を超える
Yaoは、ReActを発表した翌年、Tree of Thoughts(思考の木)(NeurIPS 2023)を発表した。
ReActの「1本道推論」には限界があった。間違った推論ステップを取ると、後戻りできずにエラーが蓄積する。
Tree of Thoughtsは、この問題を「木構造探索」で解決した。AIが複数の推論パスを並列に探索し、最適な解を見つけられるようにしたのだ。
| 手法 | 推論構造 | 特徴 |
|---|---|---|
| Chain-of-Thought | 1本道 | 推論のみ、外部情報なし |
| ReAct | 1本道 | 推論+行動、外部情報あり |
| Tree of Thoughts | 木構造 | 複数パスを探索、最適解を発見 |
27歳にして、自ら発見した技術を自ら進化させ続ける——Yaoは、AI研究界のスーパースターとなった。
「ラッパー研究者」が変えたAIの未来
Eminemの歌詞に「You only get one shot, do not miss your chance to blow」(チャンスは一度きり、逃すな)というフレーズがある。
Yaoは、そのチャンスを逃さなかった。Princeton研究室で「考えながら動く」というシンプルなアイデアを実装し、それをReActとして世界に示した。
そして、LangChain、AutoGPT、無数のAIエージェントがReActの「設計図」を引き継いだ。AI研究における「freestyle」の精神——即興性、柔軟性、適応性——は、今も生き続けている。
FAQ
Q1. ReActとCoTの違いは?
CoT(Chain-of-Thought:段階的思考) は推論のみで、外部ツールは使いません。一方、ReActは推論と行動を組み合わせ、ツールを使って外部情報を取得します。
ReActとCoTの比較Q2. どんなタスクに向いている?
- 複数ステップの調査・分析
- 外部情報の取得が必要なタスク
- 計算や検索を含む複合タスク
Q3. 商用利用は可能?
はい、可能です。論文自体はMITライセンスで公開されています。実装に使用するLangChain/LangGraphもMITライセンスで商用利用可能です。
Q4. ReActエージェントのデバッグ方法は?
Thought-Action-Observationの各ステップをログ出力することで、どこで問題が発生しているか特定できます。LangSmith(LangChainのトレーシングツール) などを併用すると効率的です。
Q5. ReActの処理時間を短縮するには?
以下の方法があります:
- ツールの応答速度を改善する: APIのキャッシュや最適化
- 不要なツール呼び出しを減らす: ツールの説明文を明確化
- max_iterationsを適切に設定: タスクに応じて調整
- 並列実行: 複数ツールを同時に呼び出す
まとめ
ReActは、LLMに「考えながら行動する」能力を与えた画期的なフレームワークです。
主要ポイント
- Thought-Action-Observationループ: 推論と行動を交互に実行することで複雑なタスクを解決
- 実用性の検証: 競合調査、見積もり、リサーチの3シナリオで成功率100%を達成
- 導入のしやすさ: LangChain/LangGraphで数十行のコードから始められる
人に話したくなるポイント
- わずか2個の例を見せただけで、10万個のデータで訓練された手法を34%上回る
- 主著者Shunyu Yaoは清華大学でラップクラブを創設していた(Eminem、MC HotDog愛聴)
- 高考(中国の大学入試)で704点・省3位、清華「姚班」(超エリートプログラム)出身
- ICLR 2023で**Notable Top 5%**に選出、5,250件以上の引用を獲得
- LangChain、AutoGPTなど現代のAIエージェントフレームワークの設計図になった
- 27歳でPrinceton PhD取得→OpenAI→Tencent Chief AI(契約金**$14M=約21億円**の報道)
- 翌年には自らTree of Thoughts(NeurIPS 2023)を発表し、ReActを超える進化を遂げた
- 「AIはデータ量で勝負」→「パターンで勝負」の常識転換を実現
次のステップ
- LangGraphでシンプルなReActエージェントを構築してみる
- 自社の定型業務(調査・計算・レポート作成)で効果を検証する
- Reflexionなど後続研究を学び、エラー耐性を向上させる
次に読むべき論文
参考リソース
本記事の検証はすべてClaude Codeで実施しました。
この記事の著者

中村 知良
代表取締役
早稲田大学卒業後、ソフトバンク株式会社にてAI活用やCEO直下案件のプロジェクトマネージャーに従事。その後、不動産スタートアップPit in株式会社の創業、他スタートアップでの業務改善・データ活用を経験後、2023年10月、株式会社ネクサフローを創業し代表取締役CEO就任。


