Prhub

radixark/miles

Miles is an enterprise-facing reinforcement learning framework for LLM and VLM post-training, forked from and co-evolving with slime.

监控状态:已开启 最近同步:2026-09-01 20:03 同步状态:空闲 下次计划:2026-09-01 21:03

PR 列表

更多筛选
2026-08-07
缺陷修复 重要性 7.61 洞察度 5.00

修复分布式日志 min/max 被平均聚合错误,改为按极值归约

值得精读。这是一个小文件但高信号度的修复:一、它纠正了分布式训练指标聚合中一个容易被忽视的语义错误(局部极值不能跨 rank 平均);二、评论区对"后缀推断 vs 显式白名单"的取舍是很好的 API 设计案例,最终选择显式策略以保证默认安全;三、merge commit 展示了与 #1927 可变 global batch size 引入的 `(sum, count)` tuple 语义如何共存。阅读时可重点关注 `reduce_gathered_log_dict` 的分支结构和测试对边界(空 gather、键不一致、未知策略名)的覆盖。

性能优化 重要性 9.18 洞察度 7.00

colocate 下从主权重重建 bf16 备份,省 129 GB 内存/节点

值得精读。设计上以“master cast + param all-gather 与 step end 逐位相同”作为理论依据,用 init-time 覆盖断言和 opt-in SHA256 校验兜底,是“用计算换内存”的安全范式。建议重点关注 _TensorBackuperMainCast 的 lifecycle 设计、_assert_rematerialize_coverage 的覆盖判据(DDP buffer membership 在 DP>1 下的正确性论证),以及 _validate_rematerialize_param_from_master_weight 中每条 assert 背后的配置组合心智模型。后续跟进 #1588 解除 critic-only fence 与异常安全/分布式失败标志的补强。

#1739 feat: add Verifiers rollout integration

原始 PR · 作者 willccbb · 合并时间 2026-08-07 06:44

功能 重要性 9.00 洞察度 7.00

新增 Verifiers 环境训练适配器,示例化接入分组奖励 rollout

值得精读。重点看四点:1) 所有权边界设计——Verifiers/Renderers/Miles 三方职责划分,以及"不支持即 400 显式失败"的 fail-fast 模式;2) `_train_client` 中本地 tokenizer 与 Renderers 注册身份的桥接技巧;3) "把集成收口到 examples/、核心零改动"的提交历史,以及 eval-interval workaround 的取舍过程;4) 依赖版本上限(Verifiers<0.2.1)的处理方式——错误信息直接指向 OpenAI pin 冲突,便于后续解锁。该 PR 对后续新增环境连接器有直接参考价值。

缺陷修复 重要性 5.43 洞察度 4.00

保存并恢复 routing-replay 状态,修复 critic 崩溃

值得精读:这是一个典型的进程级单例状态污染 bug,展示了隐式全局状态在 actor/critic 双角色下的陷阱。建议关注 `model_provider` 中状态括号的写法,并考虑后续补组合回归测试。

缺陷修复 重要性 6.46 洞察度 4.00

--critic-save 默认从 --save 推导,修复 PPO critic 检查点静默丢失

值得快速精读。改动集中在 miles/utils/arguments.py 的 miles_validate_args,属于"参数默认值推导"的经典案例:与既有 --critic-load / --critic-lr 回退保持一致的风格,以兄弟目录隔离 actor 与 critic 的状态文件,测试覆盖推导、尾斜杠、显式优先、无 --save 四种边界。对维护 CLI 参数校验的开发者有直接参考价值。

重构 重要性 4.01 洞察度 3.00

重命名 swe-agent 示例为 swe-agent-harbor-docker,明确沙箱后端

值得快速阅读,作为“目录重命名如何安全落地”的样板:git 重命名保留历史、受限替换代替全局 find-replace、静态路径审计作为无 CI 覆盖时的验证手段。不建议作为核心逻辑精读,因为不含任何行为级变更。

缺陷修复 重要性 5.15 洞察度 5.00

agent-server 调用超时改为可配置,默认 7200s 修复超时倒置

值得精读:虽然只是 2 个文件的示例级修复,但 PR body 对超时倒置的因果链分析(客户端先超时 → trial 记 aborted → 沙箱与并发槽位继续占用 → 整个 GRPO group 被过滤 → 梯度信号损失)非常清晰,是理解 agentic rollout 跨层故障代价的好材料。值得关注的设计决策:权威超时与兜底超时的分层、通过 --extra-env-vars 向 rollout actor 透传配置的通用手法。可结合 #919 与 #2233(同目录后续重命名)一起看示例线的演进。

功能 重要性 4.40 洞察度 5.00

新增 Daytona 云沙箱 SWE-Agent 示例到 experimental

值得精读。重点看两点:一是 '何时应该放弃自己的启动器而复用兄弟示例' 的决策过程——run.py 因单一参数被移除而整体删除,是一个避免重复维护的好案例;二是 README 中沉淀的实操知识(per-turn 响应上限、raw_reward 与 rewards 的区别、trial 目录 mtime 陷阱)对任何跑 agentic RL 长任务的人都有直接价值。

参与讨论