minimind Agent RL 代码阅读 2026-04

minimind Agent RL 代码阅读

阅读 minimind 项目的 agent RL 训练实现(trainer/train_agent.py + trainer/rollout_engine.py),理解 GRPO 在 agent 多轮工具调用场景下的具体工程实现。

来源

  • 项目:minimind(教学级 LLM 项目)
  • 文件:trainer/train_agent.pytrainer/rollout_engine.py

核心概念覆盖

  • GRPO:基础算法,group 内相对优势
  • agentic-rollout:多轮 tool call 的 trajectory 生成与 mask 构造
  • reward-shaping-agent:两套评分体系引导模型学会正确调用工具
  • rollout-engine:训练-推理权重同步,磁盘中转 vs CUDA IPC

关键发现

  1. Mask 设计是 agent RL 的核心response_mask 对模型生成的 token 标 1,对 tool 返回的 token 标 0,确保只对模型决策计算梯度
  2. Reward shaping 拆成细粒度信号:格式分、tool 对齐分、GT 验证分各自独立,比单一 0/1 reward 学得更快
  3. 权重同步有三个层级:磁盘中转(minimind 用的)→ NCCL broadcast → CUDA IPC 零拷贝,教学项目选最简单的方案
  4. Rollout 是主要瓶颈:占训练时间 70-80%,多轮 trajectory 的串行 tool 执行无法并行化