
【免费下载链接】agentic-rl-labReproducing and studying RL algorithms for LLM agents, including GRPO, GSPO, DAPO, OPD, Search-R1, ReTool, ALFWorld and beyond.项目地址https://gitcode.com/gh_mirrors/ag/agentic-rl-lab点击查看免费下载agentic-rl-lab是一个面向 LLM 的 Agentic RLAgent 强化学习实验仓库本文聚焦其中最具挑战性的第 8 篇——用ALFWorld文字家务模拟器训练一个真正的家务 Agent。实验基于GRPO 的 group-relative advantage思想 PPO 更新 LoRA让 Qwen3.5-4B 在12K tokens 长轨迹中连续与环境交互最多 50 步学会找东西、开门、加热、清洗、放东西等真实家务操作。80 步训练后总体成功率从 52.92% 提升到 56.93%未见房间场景提升近 6 个百分点。 ALFWorld一间用文字搭建的厨房ALFWorld 来自 ICLR 2021 论文它把两套原本距离很远的世界对齐在一起TextWorldAgent 通过纯文字 observation 和文字 action 完成任务底层用 PDDL 精确维护环境状态AI2-THORAgent 在 3D 房间中接收视觉输入、导航并操作物体。左侧是本文使用的 TextWorld 文字交互右侧是 AI2-THOR 中的具身厨房本文只用text-only 模式——模型看不到厨房图片但面对的依然是一个真正维护状态、会检查动作前置条件、能判断任务是否完成的交互环境。六类家务任务任务类型模型需要做什么pick_and_place_simple拿起物体并放入指定容器look_at_obj_in_light拿起物体并在灯光下查看pick_clean_then_place_in_recep清洗物体后放入指定容器pick_heat_then_place_in_recep加热物体后放入指定容器pick_cool_then_place_in_recep冷却物体后放入指定容器pick_two_obj_and_place找到两个同类物体并放入指定容器数据按08-alfworld/data.py的筛选规则只保留solvabletrue且属于上述六类的game.tw-pddl游戏数据 Split游戏数含义train3,553训练集valid_seen140房间见过任务不同valid_unseen134房间没见考验泛化 把做家务变成一次工具调用整个实验只给模型一个工具alfworld_step(action: str)模型只需说出一句 ALFWorld 文字命令比如go to countertop 1 open fridge 1 take apple 1 from countertop 1 heat apple 1 with microwave 1 move apple 1 to fridge 1这里的apple 1、fridge 1是环境里的完整实例名数字后缀用于区分同一场景中的多个同类物品模型必须原样复制。ALFWorld 文字工具交互流程模型每轮只调用一次工具环境返回新的 observation 可执行动作 终止信号完整多轮上下文是关键做家务是强状态依赖任务模型需要记得自己开过哪个柜门、苹果现在拿在手里还是已经放进微波炉。因此下一轮 prompt 保留从任务开始到当前时刻的完整记录——如果一条轨迹交互了 30 次第 31 次生成时模型仍能看到前 30 次完整的工具调用和环境反馈。08-alfworld/protocol.py中的build_next_prompt()直接在上一轮真实 prompt token 和 sampler 返回的 completion token 后追加 tool observation不重新 tokenize 历史 assistant 文本从而保证下一轮 prompt 是上一轮真实 token 序列的严格前缀扩展rollout old logprob 与训练时的 assistant token 始终一一对齐。 三步跑通安装 → 数据 → 训练⚠️成本提示正式配置每个 update 采样 64 条 12K 长轨迹80 步实验的 PyTRIO 账单为¥1613.71。建议先运行 1-step 验证再启动完整训练。第 1 步安装依赖git clone https://gitcode.com/gh_mirrors/ag/agentic-rl-lab.git cd agentic-rl-lab uv sync --extra alfworld trio login swanlab loginALFWorld 通过可选依赖--extra alfworld安装不影响仓库中其他子项目。第 2 步下载 ALFWorld 数据uv run --extra alfworld alfworld-download \ --data-dir $PWD/08-alfworld/datasets/alfworld第 3 步先跑 1-step 验证uv run --extra alfworld python 08-alfworld/train.py \ --max-steps 1 \ --games-per-batch 1 \ --group-size 8 \ --max-episode-steps 10 \ --save-every 0 \ --swanlab-mode disabled确认数据、环境、采样、reward、PPO 和 checkpoint 链路都通了再启动正式训练uv run --extra alfworld python 08-alfworld/train.py \ --base-model Qwen/Qwen3.5-4B \ --max-steps 80 \ --games-per-batch 8 \ --group-size 8 \ --max-episode-steps 50 \ --max-trajectory-tokens 12000 \ --max-assistant-tokens 2048 \ --temperature 1.0 \ --learning-rate 1e-6 \ --save-every 20 \ --swanlab-mode online每 20 步保存一次 state 和 sampler weights后者供eval.py加载评测。完整启动指南见08-alfworld/start.md。 GRPO 思想如何注入长轨迹训练GRPO 最有价值的思想对同一个问题采样一组回答用组内相对 reward 计算 advantage。ALFWorld 没有同一道数学题的 8 个答案所以分组单位换成了同一个游戏、同一个初始状态下的 8 条独立环境轨迹。ALFWorld × PyTRIO 训练闭环同一个游戏创建 8 个独立 TextWorld 环境8 条轨迹独立完成后在组内计算 relative advantage1. 每条轨迹只算一个 episode returnreward (1 if won else 0) - 0.1 × invalid_action_count成功 2 次非法动作 →0.8失败 3 次非法动作 →-0.3。不计算 step-level reward。2. 同游戏组内只减均值advantage[i] reward[i] - mean(reward_of_same_game)高于组均值的轨迹得到正 advantage低于均值得到负。8 条 reward 全相同时整组 advantage 为 0跳过远端 backward。3. Advantage 只分给模型生成的 token一条训练序列里混合了 system/user prompt、assistant reasoning tool call、tool observation 等四类内容。真正参与优化的只有 assistant 自己生成的 completion tokentool observation 留在上下文中提供环境反馈但不作为训练目标。4. PPO 更新 LoRA每条完整轨迹构造成一个 PyTRIODatum保留 rollout 时的 old logprob调用 PPO lossclip0.8 / 1.2更新 LoRA 权重。准确描述GRPO-style 同游戏 group rollout group-relative advantage PPO loss 更新 Qwen3.5-4B 的 LoRA。 80 步训练后的评测效果Base、Step 40、Step 80 使用完全相同的评测设置274 个游戏、temperature 0.01、seed 42。模型Valid SeenValid Unseen总成功率平均非法动作Base52.86%52.99%52.92%5.41Step 4057.14%52.24%54.74%5.24Step 8055.00%58.96%56.93%4.81左图比较 valid_seen / valid_unseen 成功率右图展示总体成功率与平均非法动作数三个值得注意的现象提升主要来自valid_unseen未见房间场景进步近 6 个百分点说明训练信号确实影响了对环境交互策略的泛化Step 40 的valid_seen最好Step 80 的valid_unseen和总体成功率最好——训练收益没有沿所有维度单调增长非法动作数持续下降模型除了提高完成率也开始减少格式错误和环境不可执行的动作。ALFWorld 六类任务成功率对比六类任务提升分布不均匀valid_unseen中 Heat then place 提升 26.1 ppClean then place 提升 9.7 ppPick two place 则下降 11.8 pp训练过程中 reward 曲线如下图所示在线 rollout 的任务类型和难度会随 batch 变化因此有明显波动最终能力变化仍需放到固定评测中判断。 12K 长轨迹为什么这么贵这次 PyTRIO 会话账单¥1613.71token 构成非常说明问题prefilling: 843.51M train: 62.24M sample: 14.28Mprefilling 远高于 train 和 sample。原因藏在 Agent 循环里每执行一次工具下一轮采样都要带上更长的任务描述、历史 tool call 和环境 observation。一条轨迹走到二三十步时同一段早期上下文已经参与了很多轮 prefix 计算。这也是长上下文 Agentic RL 最真实的成本之一——训练 token 只是账单的一部分反复读取不断增长的环境历史同样消耗大量算力。 代码架构速览整套实现共8 个 Python 文件训练链路可以概括为发现并选择游戏 → 为每个游戏创建 8 个独立环境 → 并发采样完整工具轨迹 → 计算 episode reward → 同游戏组内计算 advantage → 构造带 token mask 的 PyTRIO Datum → PPO backward optimizer → 保存 checkpoint 与 SwanLab 指标文件职责08-alfworld/data.py发现、过滤、打乱并循环读取 ALFWorld 游戏08-alfworld/protocol.py单工具协议、完整消息历史、工具调用解析与 token 前缀扩展08-alfworld/environment.py同游戏 K 环境、状态推进、TextWorld 兼容与资源清理08-alfworld/rollout.py异步采样、环境交互、轨迹状态、reward 与 JSONL 记录08-alfworld/advantages.py同游戏组内的轨迹级 relative advantage08-alfworld/train.pyDatum、token mask、PPO、优化器、SwanLab 与 checkpoint08-alfworld/eval.pyBase/checkpoint 评测、指标聚合和逐轨迹 JSONL08-alfworld/analysis.py读取评测 summary 并绘制 checkpoint 对比图其中environment.py用同一个game.tw-pddl创建 K 个独立 TextWorld 实例reset()会检查 K 条分支的初始 observation 完全一致确保 group advantage 比较的确实是同一个任务。rollout.py在第一轮中同游戏 K 条轨迹共享相同 prompt只提交一个num_samplesK的采样请求第一步之后环境状态开始分叉每条未结束轨迹各提交一个候选并发推进。 总结这是 agentic-rl-lab 系列中轨迹最长、工具调用最多、环境状态最复杂的一次 Agentic RL 实验。核心思路让 Qwen3.5-4B 在同一个 ALFWorld 游戏中采样 8 条独立轨迹用终局成功与非法动作次数计算 episode reward通过同游戏组内的 relative advantage 和 PPO 更新 LoRA。模型需要在最多 50 次环境交互、12K 完整上下文中持续记住自己做过什么并让最终 PDDL 状态真正满足任务条件。这次实验证明了GRPO-style group rollout 可以迁移到连续多轮、真实改变环境状态的 Agent 决策场景也为后续把 Agentic RL 推向更长轨迹、更多工具和更复杂环境留下了清晰的起点。赞分享【免费下载链接】agentic-rl-labReproducing and studying RL algorithms for LLM agents, including GRPO, GSPO, DAPO, OPD, Search-R1, ReTool, ALFWorld and beyond.项目地址https://gitcode.com/gh_mirrors/ag/agentic-rl-lab点击查看免费下载相关推荐slime × Tau-Bench 实战Agentic 多轮工具调用环境下的 RL 训练指南slime × Tau Bench 实战Agentic 多轮工具调用环境下的 RL 训练指南 本文围绕 slime 开源仓库中 examples/tau be人工智能大模型强化学习RLHF分布式训练Agentic RL训练实战Hello-Agents带你从SFT到GRPO全流程Agentic RL训练实战Hello Agents带你从SFT到GRPO全流程 想要掌握AI智能体强化学习的核心技能吗Hello Agents项目为你提供教程人工智能大模型AI Agent多智能体强化学习微调使用 torchforge 进行 PyTorch 原生 Agentic RL 训练Monarch TorchTitan vLLM 架构实践指南使用 torchforge 进行 PyTorch 原生 Agentic RL 训练Monarch TorchTitan vLLM 架构实践指南 本指南人工智能AI 技能AI 插件大模型机器学习深度学习上一篇如何用7-Zip轻松解决文件存储和传输难题下一篇5分钟快速掌握Locale RemulatorWindows系统区域语言模拟终极解决方案创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考