Shikata Ga Nai

Private? There is no such things.

第55回:Reason + Act(ReAct)

Hello there, ('ω')ノ

~AIが「考えながら行動する」仕組みとは?~

これまでのAIの使い方は、「質問をしたら答えが返ってくる」という“受け身”のものでした。 しかし最近では、AIが自分で考え、行動し、結果を見てまた考えるという「エージェント型AI」が注目を集めています。

この仕組みを支えているのが、「ReAct(リザン・アンド・アクト)モデル」です。


🤖 ReActとは?

✅ 正式には:

Reason + Act(推論+行動) の略で、 AIが「考える(Reason)」→「行動する(Act)」→「結果を観察してまた考える」 というサイクルを繰り返すプロンプト設計・動作モデルのこと。

これは、人間が問題を解くときの流れに似ています:

  1. 問題を理解して推論する
  2. 手元のツールや情報を使って試してみる
  3. 結果を見て考えを修正する

🔄 ReActの思考サイクル(例)

問題:社内のマニュアルファイルから「出張申請の方法」を調べて答えるAI

  1. Reason(考える)  「まず、“出張申請”というキーワードが含まれる文書を検索してみよう。」

  2. Act(行動)  → 社内ナレッジ検索エンジンにクエリ送信  → 結果:「出張申請書はXXフォームに記入します」

  3. Observation(観察)  → 結果を受け取って再確認:「この情報を要約して回答に使える」

  4. 再Reason  「この内容を要約して、丁寧な回答を作ろう。」

  5. 回答出力  → 「出張申請は、XXフォームを使って人事部に提出してください。」

➡ まるで“人のように”思考と行動を行った結果です。


💡 なぜReActが注目されているのか?

理由 解説
🧠 単なる文章生成では限界がある 何かを「調べる」「呼び出す」「選ぶ」などの動作が必要
🔄 フィードバックループがある 一発回答ではなく、途中で修正・更新できる
🔗 外部ツールとの連携がしやすい 検索・計算・データ取得などをAIが自発的に行える
🤝 人と共に働くAIに近づく 会話だけでなく、目的をもって作業するAIへ進化

🛠 ReAct型AIの構成要素(ざっくり)

要素 説明
Thought(思考) いま何をするべきかを考える文章
Action(行動) 外部のAPI・ツール・関数などを呼び出す命令
Observation(観察) 実行した結果のログを受け取る
Final Answer(最終回答) ゴールとしての出力文

🔁 このプロセスを1つのプロンプト内で繰り返す


🧪 ReActのプロンプト例(簡略版)

Q: 東京出張に必要な社内手続きは?

Thought: 出張手続きに関する文書を探すべきだ。  
Action: search("東京 出張 申請")  
Observation: 「出張は出発1週間前にXXフォームを提出...」  
Thought: この情報をもとに回答を作成しよう。  
Final Answer: 東京出張の場合、出発1週間前にXXフォームの提出が必要です。

➡ このように、**「思考→行動→観察→思考→回答」**という流れを、プロンプトで再現します。


💼 ReActの活用シーン(実務向け)

業務場面 活用方法
社内ヘルプデスク 「まず検索」→「回答」→「改善」まで自律的に
契約文チェック 条文を読み、気になるポイントをツールで検出
データ収集+分析 外部データ取得→加工→要約までを自動で繰り返す
顧客対応チャット 判断→社内DB検索→回答といった複雑な応対

⚠ 注意点と導入のヒント

ポイント 内容
実装にはツール連携が必要 LLMと外部API(検索、DB、関数)をつなぐ必要あり
プロンプトが複雑化しやすい 思考・行動・観察のパターンを明確に分けて設計
エラーやループに注意 誤った判断を繰り返す可能性もあるため、安全設計が重要

✅ まとめ:「AIが自ら考えて動く」時代へ

  • ReActは、思考(Reason)+行動(Act)+観察→再思考のループ構造
  • 単なる対話ではなく、“目的達成型AI”に進化させる設計
  • 社内検索、意思決定補助、自律的タスク実行に最適
  • 将来的には、AIが自ら「試す→学ぶ→答える」をこなす世界の基盤となる技術です

Best regards, (^^ゞ