OpenClaw-RL v1 深度解析:通过对话训练个性化 AI Agent

项目地址:https://github.com/Gen-Verse/OpenClaw-RL
博客:https://yinjjiew.github.io/projects/openclawrl
整理日期:2026-03-04(基于 v1 版本)


一句话定义

OpenClaw-RL 是一个完全异步的强化学习框架,将日常对话转化为个性化 AI Agent 的训练信号——只需与 Agent 对话,就能训练出专属于你的智能体


为什么需要 OpenClaw-RL?

传统 RL-for-LLM 的局限

大多数 RL 系统假设:

  • 集中式、批量模式训练
  • 需要预收集的数据集
  • 训练和使用是分离的

OpenClaw-RL 的新范式

根本不同的方法:将自托管模型包装为 OpenAI 兼容 API,拦截实时多轮对话,在后台持续优化策略——完全不中断你的使用

核心洞察:每一次与 Agent 的对话都是一次学习机会。用户的反馈(显式的 👍/👎 或隐式的环境成功/失败)都可以成为训练信号。


架构概览:完全异步的 4 组件设计

OpenClaw-RL 将系统解耦为四个独立的异步循环,互不阻塞

┌─────────────┐     ┌─────────────┐     ┌─────────────┐     ┌─────────────┐
│   Agent     │────▶│   Rollout   │────▶│    PRM      │────▶│   Policy    │
│   Serving   │     │  Collection │     │   Judging   │     │   Training  │
│  (模型服务)  │     │  (轨迹收集)  │     │  (过程奖励)  │     │  (策略训练)  │
└─────────────┘     └─────────────┘     └─────────────┘     └─────────────┘
       ▲                                                            │
       └────────────────────────────────────────────────────────────┘
                    (权重更新后恢复服务)
组件 职责 关键特性
Agent Serving 模型推理服务 持续响应用户请求,训练时不中断
Rollout Collection 收集对话轨迹 自动分类主线/支线回合,跟踪会话状态
PRM Judging 过程奖励评估 异步评估,多数投票稳健评分
Policy Training 策略优化 后台持续训练,优雅更新权重

从对话到梯度的全自动流水线

你不需要手动标注数据。系统自动完成:

Step 1: 消息分类

用户: "帮我写个 Python 脚本"
Agent: "好的,我来帮你..."  ← 主线回合(可训练)

用户: "等等,我之前让你做过类似的"  ← 支线回合(上下文引用,不参与训练)
Agent: "让我检查一下之前的对话..."

Step 2: 自然”下一状态”信号

用户的下一条消息或环境反馈自动成为 “next state”:

  • 👍 “完美,正是我想要的” → 正反馈
  • 👎 “不对,应该用递归” → 负反馈
  • 环境:测试通过/失败 → 成功/失败信号

Step 3: PRM 异步评估

过程奖励模型(Process Reward Model)基于 next-state 反馈评估每轮质量:

  • 多数投票(majority voting)确保评分稳健
  • 异步运行,不阻塞对话

Step 4: 样本提交训练

准备好的样本自动提交给训练器,在后台优化策略。


两种学习范式:Binary RL vs OPD

OpenClaw-RL 提供两种互补的训练方法:

方法一:Binary RL (GRPO)

信号类型:标量奖励 (+1 / -1 / 0)

工作原理

  1. PRM 从 next-state 反馈判断响应质量
  2. 多数投票产生标量奖励
  3. 使用 GRPO(Group Relative Policy Optimization)优势估计
  4. PPO 风格的裁剪替代损失

适用场景

  • 丰富的隐式反馈(点赞/点踩、环境成功/失败)
  • 需要简单二分类判断的任务

推荐:频繁提供反馈(👍/👎)帮助模型有效优化

# 启动 Binary RL
cd slime
bash ../openclaw-rl/run_qwen3_4b_openclaw_rl.sh

方法二:On-Policy Distillation (OPD)

信号类型:token 级方向性信号

工作原理

  1. 从 next-state 提取事后提示(hindsight hints)
  2. 构造”增强教师”(enhanced teacher)
  3. 教师与学生的 token 级 log-probability 差距成为方向性优势信号
  4. 比标量奖励更丰富的学习信号

示例

原始提示: "写个排序函数"
Agent 输出: [某种实现]
用户反馈: "你应该用快速排序而不是冒泡排序"

Hint 提取: "使用快速排序算法,时间复杂度 O(n log n)"
增强教师: 原始提示 + Hint → 更好的输出

训练信号: 教师 token 分布 vs 学生 token 分布的差异

适用场景

  • 丰富的文本反馈
  • 需要方向性改进(而不仅仅是好/坏判断)

推荐:提供具体反馈(如”你应该先检查文件”或”不要用那个库”)

# 启动 OPD
cd slime
bash ../openclaw-opd/run_qwen3_4b_openclaw_opd.sh

生产级工程特性

1. 会话感知训练

  • 多轮对话按会话跟踪
  • 正确的回合顺序维护
  • 避免跨会话污染

2. 优雅权重更新

  • 模型更新期间暂停提交
  • 更新完成后自动恢复
  • 无数据损坏风险

3. At-least-one 保证 (Binary RL)

  • 每个会话至少贡献一个有效训练样本
  • 避免会话级信息丢失

4. Hint 质量过滤 (OPD)

  • 从 m 个投票中选择最长、信息最丰富的 hint
  • 丢弃琐碎 hints(如”好的”、”不对”)
  • 确保高质量监督信号

5. 教师 log-prob 优化 (OPD)

  • 仅计算 response-suffix 的 log-probs
  • 显著降低峰值内存占用

6. 完整记录与调试

  • 所有对话和 PRM 评估记录到 JSONL
  • 支持离线分析和调试
  • 可追溯每轮训练样本的来源

快速开始

硬件要求

  • GPU: 8× GPUs(默认可配置)
  • CUDA: 12.9
  • Python: 3.12
  • 基础框架: Slime (清华开源 RL 框架)

启动 RL Server

Step 1: 选择训练方法(见上文 Binary RL 或 OPD)

Step 2: 启动后,模型作为 OpenAI 兼容 API 服务:

http://<HOST_IP>:30000/v1

OpenClaw 配置

openclaw.json 中添加 provider:

{
  "models": {
    "providers": {
      "qwen": {
        "baseUrl": "http://<HOST_IP>:30000/v1",
        "apiKey": "apiKey",
        "api": "openai-completions",
        "models": [
          {
            "id": "qwen3-4b",
            "name": "Qwen3 4B",
            "reasoning": true,
            "input": ["text"],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 32768,
            "maxTokens": 8192
          }
        ]
      }
    }
  }
}

完成! 开始与 OpenClaw Agent 对话,RL Server 会自动收集轨迹、计算奖励、训练模型。你的 Agent 越用越聪明


关键配置参数

变量 默认 说明
NUM_GPUS 8 总 GPU 数
ACTOR_GPUS 4 训练 actor 分配
ROLLOUT_GPUS 2 rollout 生成分配
PRM_GPUS 2 PRM 分配
HF_CKPT - 基础模型路径
PRM_MODEL_PATH - 奖励模型路径
SAVE_CKPT - 保存路径
SGLANG_API_KEY - API 密钥
PORT 30000 服务端口号

最新动态 (2026/3/3)

🙌 与 SDFT 和 SDPO 论文作者合作,将他们的方法集成到 openclaw-opd

📺 社区教程视频

🔥 OpenClaw-RL v1 发布:完全异步的 RL 框架,支持从自然对话反馈训练个性化 AI Agent


路线图

Track 1 — 个人 Agent 优化(小规模但个性化)

  • v1 发布: 完全异步 OpenClaw-RL 框架(Binary RL + OPD)
  • ⬜ 更广泛的模型家族支持 & 更高效的 serving
  • ⬜ 通过大规模实验发现最佳配方
  • ⬜ 超越策略:扩展学习至技能和记忆

Track 2 — 通用 Agent 优化(可扩展基础设施)

  • 未来 2-3 周: 面向通用 Agent 的可扩展 agentic RL 基础设施(首先支持 computer-use)

核心优势总结

特性 OpenClaw-RL 传统 RL
训练方式 实时对话即训练 离线批量训练
反馈来源 自然对话反馈 预标注数据集
用户体验 零中断,边用边学 训练和使用分离
隐私 完全本地,数据不出境 通常依赖云端
API Keys 零外部 API 通常需要
个性化 持续个性化 一次性训练
范式 Binary RL + OPD 双范式 通常单一方法

引用

@misc{wang2026openclawrl,
  author       = {Wang, Yinjie and Wang, Mengdi and Yang, Ling},
  title        = {OpenClaw-RL},
  year         = {2026},
  organization = {GitHub},
  url          = {https://github.com/Gen-Verse/OpenClaw-RL},
}

@article{yu2025demystify,
  title={Demystifying Reinforcement Learning in Agentic Reasoning},
  author={Yu, Zhaochen and Yang, Ling and Zou, Jiaru and Yan, Shuicheng and Wang, Mengdi},
  journal={arXiv preprint arXiv:2510.11701},
  year={2025}
}

@article{wang2026rlanything,
  title={RLAnything: Forge Environment, Policy, and Reward Model in Completely Dynamic RL System},
  author={Wang, Yinjie and Xie, Tianbao and Shen, Ke and Wang, Mengdi and Yang, Ling},
  journal={arXiv preprint arXiv:2602.02488},
  year={2026}
}

项目基于 SlimeOpenClawOpen-AgentRL 构建。