
slime 用一条数据流串起训练与推理轻量跑通 LLM 强化学习后训练【免费下载链接】slimeslime is an LLM post-training framework for RL Scaling.项目地址: https://gitcode.com/GitHub_Trending/slime12/slime再给一个 SFT 好的大模型做强化学习时你最先头疼的往往不是调参而是三套系统串不起来训练靠 Megatron分布式大模型训练框架出样本靠 SGLang高吞吐 LLM 推理引擎训练数据还得自己造。slime 这个 LLM 后训练框架就是冲这个痛点来的——它把训练、rollout让模型自己生成一批新样本和数据生成压进同一条数据流里少了一层层对接的胶水代码。对做 RL 的人说句实在话这套流程里最麻烦的不是单点而是数据从哪来、权重往哪同步。slime 的答案是固定成一条路你只需要关注我这一轮想怎么造数据。一段话说清 slime 是什么、凭什么不同slime 的定位是一句话RL scaling 的 LLM 后训练框架核心就两个能力——高性能训练、灵活的数据生成。它把 Megatron负责训练和 SGLang负责 rollout接在同一条 training / rollout / Data Buffer 路径上两边共享同一份数据流。它轻不是形容词有据可查它是GLM-5.3 到 GLM-4.5 共 7 个版本背后的 RL 训练框架跑过的是完整后训练闭环不是孤立 demo入口只有一个train.pyrollout 后端只认 SGLang——单一后端意味着它可以直接用 SGLang 的路由、缓存、权重同步能力不用把多个推理引擎抽象成最低公分母参数走透传Megatron 参数原样传SGLang 参数加--sglang-前缀就能用上游引擎的优化不用等它重新封装。slime 在 v0.1.0 就带上的三项工程优化决定了它在 MoE 大模型上的 rollout 吞吐与显存表现。原理速览把后训练想象成一条后厨流水线把 slime 想成一条后厨流水线Data Buffer 是传菜口SGLang 是厨师按菜谱出菜生成样本并算 rewardMegatron 是后厨主厨尝完味调配方用样本更新权重调完再把新配方发回传菜口。菜不会堆在案板上——每一轮的数据在内存里流过去就清空所以上下文和并发压力都不算大。这条主循环在train.py里只有几行骨架data rollout_manager.generate(rollout_id) # SGLang 生成样本 算 reward actor_model.async_train(rollout_id, data) # Megatron 读这批数据做参数更新 actor_model.update_weights() # 把新权重同步回 SGLang一轮下来训练、采样、权重同步三件事在同一进程组里转完不需要你额外搭消息队列。slime 的架构Data Buffer 居中调度Megatron 与 SGLang 通过权重同步闭合这条数据流。从读脚本到自托管三条递进的上手路径看懂原理就该动手了。slime 的门槛分三级你可以按需停在任何一级。第一级读懂一个训练脚本不用 GPU先不跑先把scripts/run-glm4-9B.sh打开读一遍。脚本用MODEL_ARGS / ROLLOUT_ARGS / GRPO_ARGS / PERF_ARGS / SGLANG_ARGS分组对应模型、数据采样、算法、并行、推理五件事。读懂分组你就知道每个旋钮管什么。数据采样闭环见 快速开始指南各模型的并行配置在 scripts/models/ 下按模型名存放。第二级一条命令跑通单机 8 卡环境就绪后官方镜像已预装依赖一条命令就能起 GLM-4.7-Flash 的 GRPO 训练bash scripts/run-glm4-9B.sh # 单机 8 卡跑通 GRPO 训练脚本里--actor-num-gpus-per-node 4 --rollout-num-gpus 4是训推分离4 张卡训练、4 张卡推理并行跑。想训推共卡加--colocate即可。第三级自托管到多机集群最简单的一种自托管方式是拉官方镜像它已装好 Megatron、SGLang 和全部依赖git clone https://gitcode.com/GitHub_Trending/slime12/slime cd slime # 获取源码 docker pull slimerl/slime:latest # 拉取官方镜像 docker run --rm --gpus all --ipchost --shm-size16g \ --ulimit memlock-1 --ulimit stack67108864 -it slimerl/slime:latest /bin/bash # 进入容器要扩到多机例如 128×H100 跑 DeepSeek-R1在每台机器起 Ray 节点、指向同一个MASTER_ADDR再把--actor-num-nodes改成节点数就行细节见 快速开始指南 的多机部分。slime 的 SGLang 部署可拆成多个服务器组分别放 prefill / decode / 常规 server适配多轮场景。能力盘点文本、文件、会话、流媒体各能干啥能跑起来之后看看这条数据流实际覆盖哪些活儿。文本单轮推理 RL最经典的一档给数学/代码/推理题做单轮 GRPO。slime 内置deepscaler、math、gpqa等一批 reward 函数也支持--custom-rm-path挂自己的打分逻辑。geo3k 视觉推理任务的 rollout 奖励曲线对照 Megatron 与 FSDP 两条路径直观展示 slime 的强化学习效果。文件权重转换与同步大模型训练绕不开权重文件。Hugging Face 格式要先转成 Megatron 的torch_dist格式才能训slime 提供现成工具PYTHONPATH/root/Megatron-LM python tools/convert_hf_to_torch_dist.py \ --hf-checkpoint /root/GLM-Z1-9B-0414 --save /root/GLM-Z1-9B-0414_torch_dist # HF 权重转 torch_dist训完还能转回 HF 格式跨机场景可用 Delta Weight Sync 只把变化的字节经共享文件系统送过去大模型更新更快。会话多轮与 Agent要支持工具调用、多轮对话、sandbox 交互就重写 rollout 的生成逻辑而不是另起一套框架。slime 用--custom-generate-function-path把自定义生成函数插进标准闭环。examples/search-r1搜索/检索多轮examples/coding_agent_rlSWE 编码 agent沙箱里改代码、跑测试打分examples/multi_agent多 agent 协作。接口怎么选见 自定义指南。流媒体异步流式 rollout样本生成时长差异很大有的几步、有的几百步slime 支持 fully-async rollout 和 partial rollout让长尾样本异步流出、不阻塞短样本。见 examples/fully_async。高频疑问与避坑权重和数据会落盘吗按--save-interval把 checkpoint 存到--save指定的路径rollout 的中间样本默认在内存里流转、用完即弃。跨机同步权重走共享文件系统可只传增量Delta Weight Sync。需要什么硬件和端口官方镜像slimerl/slime:latest预装依赖H 系H100/H200有完整 CI 保护B200 同流程但暂无 CI。多机需要 Ray 集群且各节点能访问同一个MASTER_ADDR脚本默认用到 Ray 的6379集群和8265dashboard端口。参数到底怎么加分三类Megatron 参数原样传如--tensor-model-parallel-size 2SGLang 参数加--sglang-前缀如--sglang-mem-fraction-static 0.7slime 自有参数见 slime/utils/arguments.py。更多问题看 QA。生态延伸与下一步slime 自己不做引擎它站在三个轮子上Megatron-LM 负责训练SGLang 负责 rolloutRay 负责分布式调度数据生成侧则由你的自定义函数接管。这也是它轻的原因——复杂度集中在 RL 闭环、数据流、权重同步和正确性检查上。想立刻跑起来最短路径就两步拉slimerl/slime:latest进容器然后bash scripts/run-glm4-9B.sh。没有 GPU 的话先把 快速开始指南 通读一遍对照scripts/run-glm4-9B.sh把五个参数分组读懂——下一轮你要改的就是这份脚本。【免费下载链接】slimeslime is an LLM post-training framework for RL Scaling.项目地址: https://gitcode.com/GitHub_Trending/slime12/slime创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考