Prhub

THUDM/slime

slime is an LLM post-training framework for RL Scaling.

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

PR 列表

更多筛选
2026-08-24

#2318 [ci] move fanout_test_helpers to tests/

原始 PR · 作者 zhuzilin · 合并时间 2026-08-24 16:03

重构 重要性 4.62 洞察度 4.00

将 fanout 测试辅助模块迁至 tests/ 并改用 PYTHONPATH 注入

值得花两三分钟快速阅读,作为测试基础设施组织的样例,不建议精读。核心关注点是两点:一是 importlib.import_module 无法解析文件名带点的模块路径,导致测试辅助代码被迫寻找「无点模块名 + 可导入」的位置;二是通过 extra_env_vars 注入 PYTHONPATH 让 Ray driver 与 worker 都能看到 tests/ 目录的做法,这是 slime 仓库 E2E 测试中一个可复用的模式。该 PR 展示了作者在包边界上的审慎:避免测试代码渗入运行库。

#2316 Remove megatron_patch for memory optimization

原始 PR · 作者 zhuzilin · 合并时间 2026-08-24 15:07

重构 重要性 7.73 洞察度 4.00

删除 megatron_patch 梯度合并补丁,简化 Megatron 适配层。

值得快速精读,重点在于理解 Slime 如何通过移除运行时 monkeypatch 来收敛对上游框架的侵入。合并前建议确认目标 Megatron 版本已具备等效的分块梯度同步机制,并在大模型 TP 场景做一次 OOM 回归验证;若无法确认,可先保留补丁并仅注释导入以避免直接行为回退。

#2312 docs: remove stale delta NCCL recommendation

原始 PR · 作者 liuhao-labs · 合并时间 2026-08-24 11:20

文档 重要性 2.03 洞察度 2.00

删除过时 delta+NCCL 建议,明确 delta 仅支持 disk

PR 改动很小,不需要精读。值得留意的设计决策是:当代码功能被移除(#2089)而文档未同步时,决策表会继续推荐一条不存在的路径;本次通过“明确说明当前契约 + 声明不修复历史问题”的方式完成对齐。若关注 external rollout engine 的权重同步演进(#1806 引入 → #2089 移除 → #2209 报告 NaN → #2312 清理文档),可以顺着这条链路做复盘。

2026-08-21

#2298 [NFC] Add observability subfolder

原始 PR · 作者 zhuzilin · 合并时间 2026-08-21 17:14

重构 重要性 9.00 洞察度 4.00

新增 observability 子模块并迁移日志指标工具

值得作为大型 Python 项目做 NFC 结构整理的参考案例浏览。重点关注三点:一是新建子包时如何通过 rename 保留 git 历史;二是跨模块搬移后如何通过 import 集中更新与测试迁移保证行为不变;三是 rollouts_metrics 与 train_metric_utils 的职责划分(rollout 侧指标 vs 训练侧归约)可复用到其他 RL 训练框架。对功能理解而言本 PR 无新逻辑,不必深入精读每个函数。

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

参数解析阶段拒绝非正 rollout 温度,拦截非法 RL 采样配置

值得快速浏览。改动虽小,但体现了“非法配置在参数解析阶段拒绝,而不是在训练逻辑里隐式兜底”的工程决策,PR body 对 greedy 温度为什么不是合法 RL 策略的解释清晰;配合 #2236、#2276 可看到 slime 在参数校验层持续加固的趋势。

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

修复 OPD 教师温度硬编码为 0 的问题

该 PR 不建议精读,但其讨论过程值得关注,特别是关于 SGLang 温度对 input logprob 影响的澄清,以及最终引导至 PR#2325 的正确修复。

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

修复 PPO 原地修改 KL 张量导致日志指标失真

值得精读。这是一个典型的「Python 原地修改导致别名污染」bug:表面只改了几行,但根因是共享引用被隐式写入。建议关注两点:一是 out-of-place 修复如何在保持训练语义不变的前提下修正日志数据契约;二是回归测试用 `sys.modules` monkeypatch 构造 megatron 桩的手法,可用于同类依赖重型后端的单测场景。

参与讨论