LayerX エンジニアブログ

LayerX の エンジニアブログです。

OpenClaw-RLで学ぶAgentic RLの報酬設計

はじめに

こんにちは!LayerXのバクラク事業部で機械学習エンジニアをしている宇都(@kuto_bopro)です。最近エージェントに関する論文を読んでいると「Self-Evolving」というキーワードを持つ論文をよく目にします。Self-Evolvingは自己進化・自己改善を意味しており、自動で性能が上がっていくAIエージェントの文脈で使われます。

A Survey of Self-Evolving Agents, Figure3より引用

arxiv.org

上記のサーベイ論文で、 Self-Evolving Agentに関して整理されており、エージェントの進化対象(What)はコンテキスト、モデル、ツール、エージェントアーキテクチャと多岐に渡っています。

従来の機械学習では更新対象はモデルパラメータのみでしたが、LLMに対してはそれ以外の選択肢があるのが特徴的です。特にコンテキストに関してはコーディングエージェントを使用する際にAGENTS.mdやSkillsを作成・更新することでAIエージェントの性能を改善することが可能であるため多くの方が馴染み深いのではないかと思います。

一方、Fine Tuningによってモデル自体を更新するアプローチは、実施コストの大きさから現状では選択肢として上がりにくいのが実情です。しかしFine Tuningには、数理的なプロセスを通じてデータから直接学習できること、またコンテキストの肥大化を抑えられることといった利点もあります。

こういった背景も踏まえ、本記事ではAIエージェントのモデルを強化学習で改善するAgentic RLというアプローチについて、OpenClaw-RLというプロジェクトを題材に紹介します。

github.com

Agentic RLとは

Agentic RL(エージェント型強化学習)とは、AIエージェントが環境と対話しながら、強化学習によって自身の性能を継続的に向上させる手法です。強化学習は、エージェントが環境と試行錯誤を繰り返しながら、得られる報酬が最大になるよう行動を学習していく機械学習の手法であり、近年のLLMの推論能力やエージェント性能の向上を支える中心的な技術となっています。

AIエージェントの振る舞いを強化学習の枠組みで整理すると、次のように定義できます。

  • 状態: コンテキスト(過去の行動・観測の履歴)
  • 行動: エージェントの応答(テキスト生成、ツール利用など)
  • 観測: ユーザーの応答や環境からのフィードバック(エラー情報など)
  • 報酬: 各行動に対するスコアリング

OpenClaw-RLのコンセプト

コーディングエージェントやパーソナライズエージェントを利用する際、対話中に発生するユーザ応答や環境フィードバックは、個人利用の観点では(メモリ保存を除いて)多くの場合改善には利用されずに捨てられます。

この課題に対してOpenClaw-RLは、対話ログから学習信号を得て、非同期のAgentic RLを実行することで「対話するだけでモデルが賢くなる」という仕組みを設計しています。

なお、名前にある通りAIエージェントとしてOpenClawを動かす想定で設計されたものになっています。OpenClawについては以下を参照ください。

openclaw.ai

OpenClaw-RLの概要を表したのがこちらの図です。

OpenClaw-RLの概略図

  • OpenClawのようなAIエージェントの推論を個人環境やクラウド環境で動かす想定
  • AIエージェントとの対話を行うと、そのログをリアルタイムに強化学習サーバに連携し非同期で強化学習を行う
  • 更新されたモデルパラメータを学習サーバからAIエージェントが実際に動作する推論環境に連携する

対話ログからどう学習信号を得るか

OpenClaw-RLの論文では非同期強化学習や汎用エージェントなどいくつか面白いトピックはありますが、今回はパーソナライズエージェント向けに実際の対話ログからどのように学習信号を取得するかをテーマに紹介します。

事後学習との違い

現在私たちの身の回りで利用されるAIエージェントの多くは事後学習の段階でAgentic RLが行われています。この時よく利用されるのが、正解がある数学タスクやテストやコンパイラによる検証が可能なコーティングタスクに対して強化学習を行うというものです。これはRLVR(Reinforcement Learning with Verifiable Rewards)と呼ばれています。

こういった事後学習で使われるデータセットは、あらかじめ検証環境や報酬が整備されたものです。一方、今回対象とするのはユーザとのインタラクティブなやり取りが含まれる実際の対話ログです。このようなリアルタイムの対話データを用いる場合、ルールベースで明確な正解を定義するのが難しいケースも多く、報酬をどう設計するかが重要なポイントとなります。

OpenClaw-RLの報酬設計

OpenClaw-RLでは2つの学習信号を利用しています。               

①Binary報酬

Binary報酬の概略図
こちらはフィードバックをもとにエージェントの行動の良し悪しを判定する学習信号として機能します

  • エージェントの行動の次に得られた観測(ユーザ応答・環境フィードバック)を評価用LLMに渡す
  • 観測に対し評価用LLMで以下のいずれかを複数回出力させ多数決で報酬を決定
    • +1: 良い
    • 0: 何もなし
    • -1: 悪い

つまりAIエージェントの行動によって発生した観測に対してAIのフィードバックをもとに報酬を生成するというものです。このように検証可能でないタスクに対する報酬設計としてAIのフィードバックによる報酬生成は他の論文でも採用されており有力な手段の1つです。OpenClaw-RLの工夫点として1回のフィードバックだと報酬が不安定になることから多数決を取る方法が採用されています。一方で報酬が評価用LLMの性能に依存する、ユーザ応答のたびに評価用LLMの推論を裏で回す必要があり推論コストがかかるという課題はあります。

②蒸留報酬

蒸留報酬の概略図

こちらはフィードバック情報そのものを学習信号として利用します

  • エージェントの行動の次に得られた観測(ユーザ応答・環境フィードバック)を評価用LLMに渡す
  • 評価用LLMに観測がエージェントの行動を改善する上で有益かどうかを+1, -1の2値で判定させる※1
  • 有益と判定した場合に以下の2つのモデルを用意する
    • 教師モデル:コンテキストに観測を加えてエージェントの行動を出力
    • 生徒モデル:コンテキストに観測を加えずエージェントの行動を出力(元のエージェントの行動そのもの)
  • 生徒モデルの出力を教師モデルの出力に近づけるように報酬※2を決定

※1 Binary報酬はエージェントの行動をLLMで評価している一方、蒸留報酬はフィードバックの有益さをLLMで評価という違いがある
※2 厳密にはトークン単位のアドバンテージ

①のBinary報酬はエージェントの応答全体に対して離散的な報酬が与えられますが、蒸留報酬はトークン単位で教師モデルから確率分布の違いに応じたフィードバックが与えられます。そのため、観測に具体的な指示が含まれている場合に、その指示を踏まえた行動をモデルに直接学習させられるという意味で、より密なフィードバックといえます。

余談ですが、通常の蒸留は大きな教師モデルから小さな生徒モデルへ性能を引き継ぐ用途で使われることが多いです。今回の場合はモデル自体は同じで、コンテキストの有無によって教師と生徒を分けています。これは自己蒸留やコンテキスト蒸留と呼ばれる手法の1つで、別モデルを用意しなくて済む手軽さもあり、最近の論文でもよく見かける手法です。

学習時の注意点

ここまでOpenClaw-RLで利用されている報酬について説明しましたが実際にこれらの報酬を元に学習をする上での注意点もあります。その1つがGRPOアルゴリズムはそのまま利用できないという点です。

LLMに対する強化学習のアルゴリズムではGRPOがよく採用されています。GRPOは1つのプロンプトに対して複数の推論(rollout)を実行し相対評価を行うことで、従来主流だったPPOで必要とされていた価値評価モデルを不要にできるのが特徴です。 しかし実際の対話ログを使う場合、ある行動に対して得られるユーザ応答(観測)は1つだけです。LLMの推論自体は裏で複数回実施できるものの、その行動に対する観測は1つしか得られないため、学習に利用可能なrolloutも実質1つとなります。そのため複数のrolloutを前提とするGRPOはそのままでは使えません。OpenClaw-RLでは報酬をそのまま相対評価値として使う簡易的な方法を採用しており、この点については改善の余地がありそうです。


おわりに

OpenClaw-RLを通して、対話ログからAgentic RLをする場合の学習信号設計について紹介しました。今回は割愛したのですが、非同期の強化学習によるリアルタイムのモデル更新というコンセプトも面白いなと感じたので興味がある方は原論文も読んでみてください。

arxiv.org

今回はモデル更新を前提とした話題でしたが、多くの場合単純なパーソナライズや性能向上はコンテキスト・メモリ管理の方がシンプルで効果的な場面が多いというのが実情だと思います。ただし冒頭でも挙げた自己進化という方向性は今後のAIエージェント開発においてもますます重要になっていくと思いますし、その選択肢の1つとして今回紹介したAgentic RLも現実的な手段として注目されていくのではないでしょうか。

個人的にも興味のある領域なので引き続き動向をウォッチしていきたいと思います。


最後になりましたが、LayerXでは機械学習エンジニアを募集しております! ユーザ価値を第一に考えたML/AIエージェントの社会実装を高速に進めておりとても面白い環境です! 興味ある方はぜひこちらからご応募ください。

open.talentio.com