2026-08-24
删除 rollout_validation 模块,GPU 放置校验内联至 rollout.py
值得快速浏览,重点确认 slime/ray/rollout.py 内联后的行为等价性与测试移除的取舍。若团队重视该校验的回归保护,可考虑在后续 PR 中补充针对 ServerGroup.start_engines 的集成测试或参数化单元测试。
新增 create_weight_updater 工厂,精简 actor 初始化
值得快速浏览,重点学习两点:一是如何用函数级延迟导入 + monkeypatch sys.modules 注入假模块来零成本测试内部 import 分支;二是把散落在核心初始化函数里的分派逻辑收敛为工厂函数时,如何用断言保住配置约束。若后续需要扩展权重同步通道,此工厂是天然的挂载点。
清理死代码与未访问分支,精简 32 个文件
该 PR 可作为仓库清理死代码的范式,适合需要了解如何系统识别未访问分支的工程师阅读。不建议深入学习具体业务逻辑,但可以重点关注其删除策略:先搜索调用方,再合并分支,最后同步测试。同时提醒在删除公共 API 前确认是否存在插件或外部依赖。
将 fanout 测试辅助模块迁至 tests/ 并改用 PYTHONPATH 注入
值得花两三分钟快速阅读,作为测试基础设施组织的样例,不建议精读。核心关注点是两点:一是 importlib.import_module 无法解析文件名带点的模块路径,导致测试辅助代码被迫寻找「无点模块名 + 可导入」的位置;二是通过 extra_env_vars 注入 PYTHONPATH 让 Ray driver 与 worker 都能看到 tests/ 目录的做法,这是 slime 仓库 E2E 测试中一个可复用的模式。该 PR 展示了作者在包边界上的审慎:避免测试代码渗入运行库。
删除 megatron_patch 梯度合并补丁,简化 Megatron 适配层。
值得快速精读,重点在于理解 Slime 如何通过移除运行时 monkeypatch 来收敛对上游框架的侵入。合并前建议确认目标 Megatron 版本已具备等效的分块梯度同步机制,并在大模型 TP 场景做一次 OOM 回归验证;若无法确认,可先保留补丁并仅注释导入以避免直接行为回退。