新闻详情

新闻详情

首页 / 资讯中心 / 详情

slime 框架技术总览:面向 RL Scaling 的 Megatron + SGLang 后训练架构解析

发布时间:2026/9/16 15:03:51来源:尧图网络
slime 框架技术总览:面向 RL Scaling 的 Megatron + SGLang 后训练架构解析
slime 框架技术总览面向 RL Scaling 的 Megatron SGLang 后训练架构解析【免费下载链接】slimeslime is an LLM post-training framework for RL Scaling.项目地址: https://gitcode.com/GitHub_Trending/slime12/slimeslime 是一个面向RL Scaling强化学习规模化的 LLM 后训练post-training框架其文档首页docs/en/index.rst将框架定位为两大核心能力的统一体高性能训练连接 Megatron 与 SGLang支持多种模式下的高效训练与灵活数据生成通过自定义数据生成接口与基于服务器的引擎实现任意训练数据生成流程。阅读本文后你将完整理解 slime 的设计理念、单条 training / rollout / Data Buffer 数据通路、参数透传机制、生产验证情况以及如何按使用场景索引其全部文档与源码。两大核心能力与统一设计目标slime 提供的两大核心能力是高性能训练High-Performance Training通过将 Megatron 训练引擎与 SGLang 推理引擎连接支持多种模式下的高效训练灵活数据生成Flexible Data Generation通过自定义数据生成接口与基于服务器的引擎实现任意训练数据生成流程。框架的设计目标是让这两大能力彼此强化而不是把系统变成一堆割裂的 trainer、rollout service 和 agent framework 的沉重堆叠。在 slime 中Megatron trainingMegatron 训练、SGLang rolloutSGLang 数据采样、custom data generation自定义数据生成、reward computation奖励计算、verifier feedback验证器反馈和 environment interaction环境交互全部流经同一条 training / rollout / Data Buffer 路径。这个设计让 slime 保持了足够轻量、清晰、易扩展同时又在 SOTA 级模型发布的完整训练闭环中得到验证。README 中给出的代码阅读路径可以直观印证这一条单一路径的设计train.py: train ├─ slime/ray/placement_group.py Ray 资源与 worker 初始化 ├─ slime/ray/rollout.py RolloutManager.generate: rollout 编排 │ └─ slime/rollout/sglang_rollout.py 样本生成与奖励计算 └─ slime/ray/actor_group.py RayTrainGroup.async_train: 训练分发 └─ slime/backends/megatron_utils/actor.py ├─ model.py Megatron 模型执行 └─ loss.py RL 损失与优势计算在入口文件 train.py 中可以看到这个闭环的实际调度create_rollout_manager创建包含 SGLang 引擎的 rollout 管理器create_training_models创建 actor/critic 训练模型随后主循环反复执行rollout_manager.generate.remote(rollout_id)采样数据、actor_model.async_train(...)训练、actor_model.update_weights()将权重同步回推理引擎形成数据采样 → 权重更新的迭代。为什么这个设计重要六条核心设计原则文档首页用六个要点阐述了该设计理念的工程价值1. 经过 frontier model 训练验证Battle-testedslime 是 GLM-5.2、GLM-5.1、GLM-5、GLM-4.7、GLM-4.6、GLM-4.5 等系列模型发布背后的 RL 训练框架。这验证的是完整的后训练闭环而不仅仅是孤立的示例。README 进一步补充了 Correctness-first infrastructure 原则RL 的 bug 往往是静默的silent因此 slime 保持数据流显式化提供独立的 rollout-only 与 train-only 调试路径并把可复现性、容错、trace、profiling 和 CI 作为一等工程关注点。2. 从设计开始就是 nativeNative by designslime直接透传 Megatron 参数并通过--sglang-前缀暴露当前安装版本 SGLang 支持的全部参数。这意味着上游训练与 serving 的新优化可以直接使用无需在 slime 内再加一层 wrapper 抽象。例如 SGLang 的--mem-fraction-static在 slime 中写作--sglang-mem-fraction-static。这一机制在 slime/utils/arguments.py 的parse_args中有清晰的实现两阶段解析——阶段一用独立的 parser 调用sglang_parse_args()解析全部--sglang-*参数阶段二用megatron_parse_args()解析 Megatron slime 参数通过ignore_unknown_args静默忽略 sglang 前缀参数最后将两部分的 namespace 合并。因此已安装 SGLang 支持的每个参数加上前缀即可使用是字面意义的透传。3. 专注 SGLang rolloutSGLang-focused rolloutslime有意选择单一的 rollout 后端。多后端框架往往被迫把多个推理引擎抽象成 lowest-common-denominator最低公共分母的能力子集从而隐藏各后端最强特性。slime 只做 Megatron SGLang 一条路径因此 RL 负载可以直接使用 SGLang-specific 的 serving、routing、caching、disaggregation 和 weight-sync 行为。README 强调这是 Lightweight and opinionated只深入打磨大规模 RL 所用的 Megatron SGLang 路径。4. Agentic workflow 就是数据生成tool use工具调用、sandbox interaction沙箱交互、verifier reward验证器奖励、environment feedback环境反馈、multi-agent loop多智能体循环和 long-horizon agentic workflow长视野智能体工作流都接入同一条 training / rollout / Data Buffer 路径而不是 fork 训练内核。仓库 examples 目录下的多智能体examples/multi_agent、搜索型 RAGexamples/search-r1、全异步examples/fully_async、SWE 编码智能体examples/coding_agent_rl等示例均通过--custom-generate-function-path插入标准 rollout 循环而非独立框架。5. BF16 训练 FP8 rollout大规模 MoE recipe 使用 MegatronBF16 training state搭配 SGLangFP8 rollout/inferencelong-context rollout 还可以通过--sglang-kv-cache-dtype fp8_e4m3提升有效 KV cache 容量。此能力已在 docs/en/get_started/quick_start.md 的 bf16 Training fp8 Inference 一节给出完整操作步骤只需把--hf-checkpoint指向 FP8 权重如Qwen/Qwen3-4B-FP8Megatron 侧 checkpoint 仍使用 bf16 HF 权重转换而来。详细的精度与量化讨论见 docs/en/advanced/low-precision.md。6. 作为 RL 基础设施来测试Tested as RL infrastructureCPU correctness tests默认运行每个 PR、每次 push 到 main 以及手动workflow_dispatch都会触发GPU e2e tests在自托管 GPU runner 上覆盖真实 Megatron SGLang training/rollout 路径包括 dense/MoE recipe、async rollout、SGLang config、checkpoint、precision 和 debug replay。分层设计是有意为之多数不变量应在不等待 GPU 队列的情况下快速验证而完整训练/rollout 行为仍由 GPU e2e 任务兜底。详见 docs/en/developer_guide/ci.md。生产验证与模型支持矩阵文档首页明确列出除 GLM 系列之外slime 还支持Qwen 系列Qwen3.6、Qwen3.5、Qwen3Next、Qwen3MoE、Qwen3、Qwen2.5DeepSeek V3 系列DeepSeek V3、V3.1、DeepSeek R1Llama 3。这些模型在仓库中有对应的配置与启动脚本佐证scripts/models 目录下提供各模型的 Megatron 参数配置如 qwen3-30B-A3B.sh、qwen3-next-80B-A3B.sh、deepseek-v3.sh、glm5.2-744B-A40B.sh 等docs/en/examples 提供端到端训练案例。文档首页据此将示例按Denseqwen3-4B、glm4-9B与MoEglm4.7-30B-A3B、qwen3-30B-A3B、glm5.2-744B-A40B、glm4.7-355B-A32B、deepseek-r1分类组织。按使用场景开始的文档导航文档首页提供了一套按使用场景开始的入口是读者定位所需内容的最快路径场景推荐入口第一次使用 slimedocs/en/get_started/quick_start.md配置 training 和 rollout 参数docs/en/get_started/usage.md添加 custom generation、reward 或 rollout functiondocs/en/get_started/customization.md构建 agentic RL workflowdocs/en/get_started/agent.md配置生产级 SGLang rollout topologydocs/en/advanced/sglang-config.md接入 external rollout enginesdocs/en/advanced/external-rollout-engines.md以字节级 delta 同步权重docs/en/advanced/delta-weight-sync.md使用 PD disaggregationdocs/en/advanced/pd-disaggregation.md使用 BF16 训练 FP8 rollout 或 FP8 KV cachedocs/en/advanced/low-precision.md了解 CI 和可靠性覆盖docs/en/developer_guide/ci.md调试、trace、profiling 长时间任务docs/en/developer_guide/debug.md、docs/en/developer_guide/trace.md、docs/en/developer_guide/profiling.md文档体系中的其他导航分组除上述场景入口外文档首页的 toctree 还按主题组织了完整的文档地图供深度阅读Get Startedquick_start、usage、customization、agent、qadocs/en/get_startedDense 示例qwen3-4B、glm4-9BMoE 示例glm4.7-30B-A3B、qwen3-30B-A3B、glm5.2-744B-A40B、glm4.7-355B-A32B、deepseek-r1Advanced Featureson-policy-distillation、speculative-decoding、low-precision、reproducibility、fault-tolerance、observability、pd-disaggregation、external-rollout-engines、delta-weight-sync、sglang-config、megatron-config、arch-support-beyond-megatrondocs/en/advancedOther Usageqwen3-4b-base-openhermes 以及 examples/search-r1/README.md、examples/fully_async/README.md、examples/retool/README.md、examples/multi_agent/README.md、examples/coding_agent_rl/README.md 等仓库示例Developer Guideci、debug、trace、profilingHardware PlatformsAMD 使用教程Blogsv0.1.0 发布说明、slime 设计理念博客。三大参数体系的源码印证文档首页强调的 native by design 在参数层面体现为三类参数与 README.md 的 Arguments Walkthrough 章节一致Megatron 参数slime 直接读取。通过from megatron.training.arguments import parse_args复用当前环境PYTHONPATH中 Megatron 的全部参数如--tensor-model-parallel-size 2、--sequence-parallel、--context-parallel-size、--expert-model-parallel-size等并行配置SGLang 参数通过--sglang-前缀透传如--mem-fraction-static→--sglang-mem-fraction-static、--ep-size→--sglang-ep-size、--enable-dp-attention→--sglang-enable-dp-attention。sgl-router 的参数则加router前缀如--router-balance-abs-thresholdslime 专属参数完整定义在 slime/utils/arguments.py覆盖集群资源分配--actor-num-nodes、--actor-num-gpus-per-node、--rollout-num-gpus、--rollout-num-gpus-per-engine、--colocate、rollout 采样--rollout-batch-size、--n-samples-per-prompt、--dynamic-sampling-filter-path、--partial-rollout、算法--advantage-estimator支持 grpo/gspo/cispo/reinforce_plus_plus/ppo、奖励模型--rm-type、--custom-rm-path、权重同步--update-weight-mode、--update-weight-transport以及可观测性wandb/tensorboard等。其中关键的训练/采样预算约束在设计上保持显式每轮产出与消耗必须相等即rollout-batch-size × n-samples-per-prompt global-batch-size × num-steps-per-rollout。参数解析中对--num-steps-per-rollout的设置会自动推导或校验--global-batch-size见 slime/utils/arguments.py 中--global-batch-size、--num-steps-per-rollout的定义与注释。架构模块与数据通路README 的 Architecture Overview 与文档首页的统一路径表述相互印证slime 由三个模块构成trainingMegatron负责主训练进程从 Data Buffer 读取数据训练后把参数同步到 rollout 模块。支持 TP/PP/EP/CP 全并行docs/en/get_started/usage.md 的 How to Use Megatron 一节有各并行策略的配置说明rolloutSGLang router生成新数据含 reward/verifier 输出并存入 Data Buffer。自定义 generate 函数可在此基础上封装多轮循环、工具调用、环境/沙箱交互和基于验证器的奖励。slime 使用 sgl-router 管理多个 SGLang server所有 server 通过/add_worker注册到 router生成时只需向 router 发送 HTTP 请求router 负责负载均衡与转发且支持 OpenAI 兼容 APIdata buffer桥接模块管理 prompt 初始化、自定义数据与 rollout 生成方法包括通过同一接口产出样本的 agentic workflow。可靠性作为 RL 基础设施的 CI 体系文档首页明确指出 slime 是作为 RL 基础设施来测试的docs/en/developer_guide/ci.md 给出了两层 CI 结构CPU correctness tests常开在 GitHub 托管 runner 上运行覆盖 Megatron 参数与 HF 配置校验、DP/CP 调度与 CP loss 不变性、指标上报与分布式聚合、math/GPQA/F1/DeepScaler/DAPO 类奖励模型、Sample行为与 agent 轨迹合并、HF checkpoint saver、定制化钩子契约等GPU e2e testslabel 门控在自托管 GPU runner 上运行通过tests/ci/gpu_lock_exec.py获取 GPU覆盖 dense/MoE recipe、async rollout、OPD、PPO 风格路径、PD/Mooncake、debug rollout-then-train 重放、精度一致性与 checkpoint 保存/加载。仓库 tests 目录下的测试文件与 CI 描述一一对应例如test_megatron_argument_validation.py、test_loss_cp_invariance.py、test_rm_math.py、test_plugin_generate_contracts.py、test_qwen3_4B_ppo.py、test_qwen2.5_0.5B_fully_async_short.py等可作为理解框架正确性边界的直接源码证据。快速上手路径文档首页将 docs/en/get_started/quick_start.md 作为第一次使用 slime 的入口其完整流程包括环境准备推荐使用预装全部依赖的 Docker 镜像docker pull slimerl/slime:latest支持 B200 与 H100/H200 系列不方便使用 Docker 时可参考根目录 build_conda.sh模型与数据下载通过hf download获取模型权重如 GLM-Z1-9B、训练集如 dapo-math-17k与评测集如 aime-2024权重转换使用tools/convert_hf_to_torch_dist.py将 HF 格式转为 Megatrontorch_dist格式训练后可用tools/convert_torch_dist_to_hf.py转回启动训练bash scripts/run-glm4-9B.sh其中 MODEL_ARGS/CKPT_ARGS/ROLLOUT_ARGS/EVAL_ARGS/PERF_ARGS/GRPO_ARGS/OPTIMIZER_ARGS/SGLANG_ARGS 各参数组的含义在 quick start 文档中有逐项讲解。总结从 docs/en/index.rst 可以看出slime 的架构哲学可以概括为一句话用一条统一的 training / rollout / Data Buffer 数据通路同时承载高性能 RL 训练与任意复杂度的数据生成。它通过 Megatron 与 SGLang 的原生参数透传保持与上游引擎同步演进的能力通过单一 SGLang 后端避免多引擎抽象带来的能力损失通过把 agentic 工作流降维为可插拔的数据生成函数避免框架分化并以分层 CI 体系保证作为 RL 基础设施的正确性与稳定性。无论你是第一次接触 slime还是需要配置生产级 rollout 拓扑、接入外部引擎、优化低精度训练都可以从本文的导航索引出发按需进入对应文档与源码深入阅读。【免费下载链接】slimeslime is an LLM post-training framework for RL Scaling.项目地址: https://gitcode.com/GitHub_Trending/slime12/slime创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

ReMe记忆检索完全指南:BM25+向量混合搜索实战教程 2026/9/16 15:43:10

ReMe记忆检索完全指南:BM25+向量混合搜索实战教程

ReMe记忆检索完全指南:BM25向量混合搜索实战教程 【免费下载链接】ReMe ReMe: Memory Management Kit for Agents - Remember Me, Refine Me. 项目地址: https://gitcode.com/GitHub_Trending/me/ReMe ReMe 是一款面向 AI Agent 的记忆管理工具包(Remember M…

阅读更多 →
Horizon J6m上YOLOv8s INT8精度崩塌的四层调优与ONNX手术 2026/9/16 15:43:10

Horizon J6m上YOLOv8s INT8精度崩塌的四层调优与ONNX手术

1. 为什么在 Horizon J6m 上跑 YOLOv8s INT8 会“看起来没毛病却测不出准”你把 YOLOv8s 的 ONNX 模型用 RKNN Toolkit2 量化成 INT8,导出 .rknn 文件,烧进 Horizon J6m 开发板,rknn.init_runtime()成功,rknn.inference()能跑通&a…

阅读更多 →
抖音自动点赞源码深度解析:无障碍服务、XXTEA加密与并发账本 2026/9/16 15:43:10

抖音自动点赞源码深度解析:无障碍服务、XXTEA加密与并发账本

简介:这是一套运营级抖音点赞辅助源码,面向短视频运营研究者、爬虫与自动化脚本学习者,包含自动点赞、自动机器人挂机、免审核到账及抽奖模块,适合用于分析平台交互逻辑与反爬策略,而非直接部署商用。压缩包共2015个文…

阅读更多 →
基于STM32的六足机器人毕业设计实现:三角步态与舵机控制 2026/9/16 15:43:10

基于STM32的六足机器人毕业设计实现:三角步态与舵机控制

简介:这套毕业设计资料包围绕“基于STM32的六足机器人”展开,适用于高校电子、嵌入式及自动化相关专业学生完成毕设或课程设计。资源整合了嵌入式编程、机械结构设计、控制系统理论与答辩汇报等完整环节,既能作为实战项目参考,也可…

阅读更多 →
Conv3D算子与CANN架构在视频处理中的优化实践 2026/9/16 15:43:10

Conv3D算子与CANN架构在视频处理中的优化实践

1. Conv3D算子与视频处理的深度关联在计算机视觉领域,3D卷积(Conv3D)正逐渐成为处理时序空间数据的核心工具。不同于传统2D卷积仅处理平面图像,Conv3D算子通过在时间维度上增加卷积核的深度,使其能够同时捕捉空间和时间…

阅读更多 →
COMSOL碳气驱模型建立与优化指南 2026/9/16 15:40:10

COMSOL碳气驱模型建立与优化指南

1. COMSOL与碳气驱模型概述COMSOL Multiphysics作为一款功能强大的多物理场仿真软件,在能源领域的应用越来越广泛。其中,碳气驱(Carbon Dioxide Flooding)作为一种提高原油采收率(EOR)的重要技术&#xff0…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞