GLM Post-Training Open-Source Map
先给结论
截至 2026 年 8 月 6 日,按固定 commit 核验后的结论是:
- Reasoning RL 已有最完整的公开骨架。slime 给出了 GLM-5.2 744B-A40B 的 32 节点、256 张 H100 训练配方,包含 GRPO、DAPO-Math-17k、DSA/IndexShare、训练 BF16、rollout FP8 和 TIS;但它不是官方内部 Reasoning RL 全量数据、奖励和阶段配置的公开复刻。[^slime_glm52]
- Agentic RL 的框架与动作记录链路已经公开不少。slime 的 coding-agent 示例保存 exact token IDs、rollout log-prob 与 loss mask,
strands-sglang目录还提供了明确命名的 TITO 可运行示例;THUDM/AgentRL 则公开了异步 Agentic GRPO 框架。不过,GLM-5 报告中的 TITO、DIS、DP-aware routing 与内部环境没有以一份 GLM 同配置 recipe 整体发布。[^slime_agent][^slime_tito][^agentrl] - General RL 主要停留在报告级。GLM-5 公开了混合 reward 的方法,但没有找到对应阶段的数据混合、reward 服务、采样比例和 GLM recipe。[^glm5]
- IcePop 在 slime 中确实有函数,但公开 GLM-5.2 脚本没有显式选择它。当前脚本的
--use-tis默认走vanilla_tis_function的截断权重;icepop_function则把区间外 token 权重置零。不能因为两者都使用 TIS 就写成“公开 GLM-5.2 recipe 已启用 IcePop”。[^slime_loss] - TITO 已公开到可运行示例,DIS 仍主要是可组合积木。slime 的 Strands-SGLang 示例明确写出 TITO、native
input_idsin/out 和 no-retokenization,并给出 Qwen3-8B 启动流程;三策略 mismatch、TIS/MIS/RS 则提供了 DIS 所需对象,但固定提交中没有DIS同名 GLM recipe。[^slime_tito][^slime_mismatch] - DSA Indexer 是 NPU 侧最扎实的一项。slime 有 GLM-5/5.2 的 DSA/IndexShare 训练代码,MindSpeed-LLM 有昇腾 GLM-5/5.2 预训练与 DSA 实现;IndexCache 则公开了 GLM-5 推理侧的跨层索引复用补丁。训练、推理和缓存优化三个对象要分开。[^slime_dsa][^mindspeed_llm][^indexcache]
- slime 的 OPD 是通用实现,不是 Cross-Stage OPD 的完整公开配方。它支持 SGLang 或 Megatron teacher,并有 Qwen3-8B 学生、Qwen3-32B 教师示例;没有公开 GLM 各 RL 阶段 checkpoint、教师路由和最终整合 recipe。[^slime_opd]
- MOPD 不是 GLM 官方方法。MOPD 论文来自北京大学、小米 LLM Core 等机构;它与 GLM-5.2 “十多个专家并行 OPD”结构相近,但截至核验日期没有公开代码,也不能把两者直接画等号。[^mopd][^glm52]
- SAO 与 CompactionRL 是“论文公开、同名 recipe 未见”。两篇论文都说明方法用于 GLM-5.2 pipeline,CompactionRL 还明确提到使用 slime 训练;但公开 slime 中没有同名训练配置。slime 的公开 issue
#2212也在询问两者的开源计划,截至审计日仍为 open 且没有维护者答复。普通异步队列不等于 SAO,coding-agent 的 auto-compaction 分支也不等于 CompactionRL。[^sao][^compaction][^slime_issue_2212] - 昇腾已有模型、DSA、GRPO、异步和推理量化积木,但还没有公开的 GLM-5.x 后训练闭环。MindSpeed-LLM 可跑 GLM 预训练,MindSpeed-RL/verl 有通用 NPU RL;GLM-5 仓的 Ascend 文档与 vLLM-Ascend 主要覆盖部署。[^mindspeed_rl][^verl_npu][^glm5_ascend]
所以更准确的总判断是:
GLM 后训练公开生态已经覆盖“报告 + 部分 GPU 实现 + 若干可运行 recipe + 通用 NPU 积木”,但尚未公开一条与官方 GLM-5.2 同阶段、同数据、同奖励、同一致性控制的昇腾端到端复现链路。
怎样判定开源
“有没有开源”容易失真,是因为不同人默认的交付物不同。本文使用五层证据阶梯:
| 层级 | 最小交付物 | 能回答的问题 | 仍不能证明 |
|---|---|---|---|
| L1 论文/报告 | 方法、公式、实验与边界 | 原理是什么、作者报告了什么 | 代码可运行 |
| L2 源码模块 | loss、scheduler、trajectory 或 model patch | 某个实现对象确实存在 | 参数组合正确、结果可复现 |
| L3 可运行配方 | 模型、数据、脚本、配置和依赖 | 某个公开任务可以跑通 | 等价于 GLM 内部阶段 |
| L4 同阶段复现 | 对应 checkpoint、数据/奖励、阶段顺序和评测 | 可以重建声明的 pipeline | NPU 数值语义不变 |
| L5 NPU 闭环 | NPU actor/rollout/teacher/verifier/同步与验证 | 算法在昇腾上端到端成立 | 与内部生产系统完全相同 |
方法总表
下面的“slime 状态”区分同名实现与等价行为;“NPU 状态”区分通用算法积木与 GLM 专用 recipe。
| 方法 | 公开材料 | slime / THUDM | 昇腾 NPU | 当前判定 |
|---|---|---|---|---|
| Reasoning RL | GLM-5 报告 | GLM-5.2 大规模 GRPO recipe | 通用 GRPO 可用;无 GLM-5.x RL recipe | L3,NPU 未闭环 |
| Agentic RL | GLM-5 报告 | coding-agent RL、AgentRL、SCALE-CUA | 通用多轮/异步积木 | 框架公开,GLM 配方未见 |
| General RL | GLM-5 报告 | 未见同阶段 recipe | 未见 GLM recipe | L1 |
| IcePop | GLM-5 报告 | 有 icepop_function;GLM-5.2 脚本默认不是它 |
可移植数学积木,未见公开 NPU 验证 | L2 |
| TITO | GLM-5 报告 | 同名 Strands-SGLang 示例 + core 轨迹实现 | 可复用数据契约,未见 GLM recipe | 通用 L3 |
| DIS | GLM-5/SAO | 未同名;三策略/TIS/MIS/RS 积木存在 | verl 有 one-step off-policy;非 DIS 复刻 | 积木公开 |
| DSA Indexer | GLM/IndexShare 报告 | 训练实现;IndexCache 推理 patch | MindSpeed-LLM 有 GLM DSA 训练 | NPU 预训练已达 L3 |
| Cross-Stage OPD | GLM-5 报告 | 通用 OPD;无 GLM 跨阶段 recipe | 未见 OPD 闭环 | L2-L3 的通用实现 |
| MOPD | 独立论文 | 未见;不是 GLM 官方命名 | 未见 | L1 |
| SAO | 独立论文 | 未见同名 recipe | 有异步基础能力,未见 SAO | L1 |
| CompactionRL | 独立论文 | 未见同名 recipe | 未见 | L1 |
三类 RL
Reasoning RL
它是什么。GLM-5 的 Reasoning RL 面向数学、代码和科学推理,使用可验证奖励与 GRPO。组内多条回答的相对奖励提供 advantage,IcePop 再处理训练与 rollout 的概率不一致。[^glm5]
公开到哪里。slime 的 GLM-5.2 文档和脚本已经不是玩具示例:模型为 744B-A40B,训练使用 Megatron BF16,rollout 使用 SGLang FP8,公开配置是 32 节点、每节点 8 张 H100,并接入 DAPO-Math-17k、GRPO、DSA/IndexShare、PD disaggregation 与 TIS。[^slime_glm52]
这证明了三件事:
- slime 能承载 GLM-5.2 模型结构与大规模 RL 调度;
- 训练和 rollout 可以使用不同精度与不同执行引擎;
- 公开 recipe 已包含处理 train-infer mismatch 的入口。
但它没有公开内部 Reasoning RL 的完整 prompt 分布、verifier 组合、课程顺序与最终 checkpoint。因此它是强 L3 证据,不是 GLM-5.2 内部阶段的 L4 复现。
NPU 情况。MindSpeed-RL 与 verl 的 Ascend 路径已经公开 GRPO/DAPO、Megatron/FSDP、SGLang/vLLM 等组合,证明通用 NPU RL 可以运行;固定支持表中没有 GLM-5/5.2 行。[^mindspeed_rl][^verl_npu]
Agentic RL
它是什么。Agentic RL 的轨迹包含模型动作、工具调用和环境 observation。长短差异极大,因此 GLM-5 使用异步调度,并通过 TITO、DIS 与 policy version 约束动作错位和策略滞后。[^glm5]
slime 公开了什么。coding-agent 示例给出了很关键的 “string in, token out” 契约:每轮保留 prompt_ids、采样 output_ids 和逐 token rollout log-prob;模型新输出 loss_mask=1,模板与 observation 为 0;对话分叉与 auto-compaction 会变成独立的 root-to-leaf trajectory。[^slime_agent]
这已经覆盖 Agentic RL 最容易被忽略的训练事实:环境以字符串交互,不代表 trainer 可以重新 tokenize 字符串来猜动作。此外,另一个 strands-sglang 示例显式使用 TITO 名称,并给出 native token in/out 的 Qwen3-8B 训练流程。仍未公开的是 GLM-5 报告中的全部 Gateway 元数据、DP-aware routing 和内部环境配置。[^slime_tito]
其他 THUDM 仓。AgentRL 是独立的异步 Agentic GRPO 框架,包含 controller、worker、环境 loop、SGLang rollout 和 FSDP/CUDA 训练;其 loss 也直接消费 rollout log-prob 与 loss mask。SCALE-CUA 则进一步公开 GUI agent 的在线 RL 数据生成、环境、训练栈、GLM-4.6V checkpoint 与可执行奖励。[^agentrl][^scalecua]
这两个仓证明机构有能力开源“环境 + 训练框架 + checkpoint”的完整能力切片,但它们不是 GLM-5.2 文本 Agentic RL recipe,也没有 NPU 后端。
General RL
它是什么。General RL 面向更开放的通用任务,奖励不再只依赖精确规则,而是组合规则验证器、Outcome Reward Model 与生成式 judge。它的核心难点是 reward coverage、偏差与可攻击性。[^glm5]
公开到哪里。固定 slime 提交提供通用 reward 接口,但没有找到标为 GLM General RL 的数据配比、reward ensemble、judge prompt、采样参数与 stage checkpoint。因而不能把“框架可配置多 reward”写成“General RL 已开源”。当前只能判为 L1 方法公开 + 通用接口存在。
一致性机制
IcePop
它是什么。IcePop 比较同一组权重在训练引擎和 rollout 引擎上对同一个 sampled token 的概率;当比值超出可信区间时,该 token 不产生梯度。它隔离的是 kernel、精度、DSA、KV Cache 或并行归约导致的实现偏差,不是异步 policy lag。[^glm5]
slime 的关键细节。loss.py 同时定义:
vanilla_tis_function:把 TIS ratio 截断到上下界;icepop_function:区间内保留 ratio,区间外直接变为零;- loss 主路径:如果没有传入自定义
tis_function,默认使用vanilla_tis_function。[^slime_loss]
而公开 GLM-5.2 脚本只设置 --use-tis --tis-clip-low 0.5 --tis-clip 2.0,没有显式指定 icepop_function。所以准确表述应是:
slime 已开源 IcePop 风格的 token masking 函数;公开 GLM-5.2 recipe 默认启用的是 vanilla TIS clamp。
NPU 移植函数本身不难,难的是构造可靠对照:同 checkpoint、同 exact token、同 DSA index、同前缀、同 log-prob 精度。没有这组回归,ratio 异常无法归因。
TITO
它是什么。Token-In-Token-Out 把 token ID 视为 Agent RL 的动作事实。Gateway 可以接受字符串请求,但必须把实际采样 token、边界、log-prob 和策略版本原样交给 trainer,禁止经由 decode → string → encode 重建动作。[^glm5]
开源情况。固定 slime 提交已经直接使用 TITO 名称:examples/strands_sglang 对比了文本 Agent loop 与 SGLang native token API,代码把 rollout.token_ids、loss_mask 和 logprobs 直接写入 sample,并提供 Qwen3-8B、DAPO-Math-17k 的启动步骤。coding-agent adapter 与 TrajectoryManager 还覆盖 exact prompt_ids/output_ids、前缀漂移和分叉。[^slime_tito][^slime_agent]
因此 TITO 应判定为通用可运行示例已公开,GLM-5.x 专用 recipe 与 NPU 验证未见。NPU 端无需发明新算法,必须保证 vLLM-Ascend/SGLang-NPU 把采样 ID 和 log-prob 作为一等数据返回,且 trainer 不再重新分词。
DIS
它是什么。Direct Double-Sided Importance Sampling 直接比较当前训练策略与实际 rollout 行为策略的 token 概率,以双边阈值拒绝过旧或偏差过大的 token;再配合 policy version 丢弃整条过旧 trajectory。[^glm5][^sao]
slime 的真实状态。没有找到 DIS 同名实现,但 mismatch helper 已公开:
- bypass PPO:直接使用 current/rollout ratio;
- decoupled three-policy PPO:区分当前、旧训练和 rollout 策略;
- TIS、MIS 与 rejection sampling:既能加权,也能做 token mask。[^slime_mismatch]
这些积木足以组合出 DIS 风格路径,却不能证明 GLM 的阈值、版本门控和训练配方已经公开。verl Ascend 的 one-step off-policy 与 fully-async recipe同样只是邻近能力,不应改名为 DIS。[^verl_npu]
DSA Indexer
它是什么。DSA Indexer 为每个 query token 选择少量历史 key/value。对 RL 来说,token 动作相同还不够;如果 train 与 rollout 选中了不同历史位置,hidden state 和概率分布仍会不同。
公开情况分三条线:
- slime 训练线:GLM-5 插件包含 DSA indexer、index loss 与 IndexShare 相关实现,GLM-5.2 recipe 直接使用这些模型组件。[^slime_dsa]
- MindSpeed-LLM NPU 训练线:GLM-5 与 GLM-5.2 都有 Prototype 预训练入口,支持表记录 GLM-5 的 Ascend Pass 和 GLM-5.2 Test;源码与测试包含 DSA/IndexShare。[^mindspeed_llm]
- IndexCache 推理线:THUDM/IndexCache 为 SGLang/vLLM 提供 GLM-5/DeepSeek 的跨层 index reuse patch,目标是减少推理 indexer 开销;仓内是推理补丁,不是训练感知蒸馏 recipe。[^indexcache]
此外,sgl-kernel-npu 有 NPU lightning indexer 等推理 kernel;vLLM-Ascend 的 GLM-5.2 页面覆盖 DSA 与多种量化部署。它们证明 NPU 推理栈在补齐算子,但不替代 RL 的训推 index 一致性测试。[^sgl_kernel_npu][^vllm_ascend]
蒸馏与长程算法
Cross-Stage OPD
它是什么。GLM-5 先分别完成 Reasoning、Agentic 与 General RL,再让学生从自己的策略采样,调用前序阶段教师在同一 token 前缀上给密集 log-prob 信号,以减少能力覆盖与遗忘。[^glm5]
slime 公开了通用 OPD。它支持两种 teacher:
sglangteacher:独立推理服务返回教师 log-prob;megatronteacher:训练侧直接加载教师 checkpoint 计算 log-prob。
文档还给出 Qwen3-8B 学生、Qwen3-32B 教师和 OpenThoughts3 数据的可运行流程。[^slime_opd]
但公开材料没有提供 GLM 三个 RL 阶段的 checkpoint、prompt 混合、teacher route、每阶段权重和最终评测,因此结论只能是:通用 OPD 已达 L3,Cross-Stage GLM OPD 仍停在 L1-L2。MindSpeed-RL 与 verl NPU 固定文档中未找到 OPD teacher worker 或对应 recipe。
MOPD
先纠正归属。MOPD 全称 Multi-Teacher On-Policy Distillation,论文作者机构包括北京大学、小米 LLM Core、香港大学和中国人民大学,不是智谱或 THUDM 发布的 GLM 官方方法。固定论文也未给出公开代码链接。[^mopd]
它把 prompt 按领域硬路由到同源专家教师,再在学生自己访问的状态上做 reverse-KL 蒸馏。GLM-5.2 官方博客披露“十多个专家并行 OPD,约两天完成”,在结构上与 MOPD 相近;但官方没有使用 MOPD 名称,也没有公开相同的路由与 loss 配方。[^glm52]
因此本文只把 MOPD 当作理解 GLM 多专家并行 OPD 的参照系,不把论文实验当成 GLM 的开源证明。
SAO
它是什么。Single-Rollout Asynchronous Optimization 让每个 prompt 只生成一条 trajectory,完成即训练,从而消除 GRPO 同组等待;因为失去组内 baseline,它重新引入 Critic,并使用 value normalization、dual clipping 与 Skip-Observation GAE 稳定训练。[^sao]
开源情况。论文公开且说明用于 GLM-5.2 pipeline,但没有给出独立代码仓;固定 slime 提交也没有 SAO、Skip-Observation GAE 或对应单 rollout 配置。slime/AgentRL 的异步队列可以承载未来实现,却不能等同于 SAO。
公开 issue #2212 直接询问 slime 是否计划开源 SAO 与 CompactionRL,截至审计日没有关联分支、PR 或维护者回复。它是当前公开状态的旁证,不是“永远不会开源”的承诺。[^slime_issue_2212]
NPU 侧已有 fully-async 与 actor/critic 训练积木,意味着迁移不是从零开始;真正缺的是 Critic 生命周期、跨 observation GAE、当前/rollout ratio、版本门控和长程环境组成的同一 recipe。
CompactionRL
它是什么。CompactionRL 不把摘要当作外部不可训练预处理,而让同一个策略在上下文接近预算时生成 summary,再以最终任务奖励联合训练“摘要动作”和“任务动作”;token-level loss 与 cross-trajectory GAE 用于修正不等长分段带来的权重和信用偏置。[^compaction]
最容易误判的地方。CompactionRL 论文明确说训练使用 slime;同时 slime coding-agent 的 TrajectoryManager 能识别 auto-compaction 造成的 prompt 分叉。两条事实都成立,但仍不能推出公开 slime 已实现 CompactionRL:
- trajectory 分叉只是记录上下文变更;
- CompactionRL 还需要把 summary token 纳入 policy loss;
- 需要最终奖励跨段回传与 cross-trajectory GAE;
- 需要按全部有效 token,而不是按 segment 数量归一化。
固定提交未找到这些同名 loss/GAE/recipe,因此当前判为 论文 L1 + 框架邻近能力,NPU 侧未见公开实现。
slime 到底开了什么
把前面的零散结论合并,THUDM/slime@f655e13 对本课题最有价值的公开对象是:
| 层 | 已有对象 | 对部门的直接价值 |
|---|---|---|
| 模型 | GLM-5/5.2 Megatron 插件、DSA/IndexShare | 可定位模型前向与 indexer 接口 |
| 大规模 RL 配方 | GLM-5.2 744B-A40B、256×H100 | 可建立 GPU 参考行为与吞吐基线 |
| 概率一致性 | mismatch metrics、TIS/MIS/RS、IcePop 函数 | 可定义 NPU ratio 与 mask 回归 |
| Agent 轨迹 | TITO 示例、exact IDs、log-prob、loss mask、分叉 | 可直接复用 TITO 数据协议与通用 recipe |
| OPD | SGLang/Megatron teacher 两种模式 | 可拆出 teacher prefill 与 payload 接口 |
| 缺口 | Cross-Stage、SAO、CompactionRL 同名 recipe 未见 | 需要自研或等待上游公开 |
智谱与 THUDM 相关仓
除了 slime,公开组织中还有几类容易混在一起的仓库:
模型与部署
- **
zai-org/GLM-5**:模型家族入口,提供 BF16/FP8 权重、部署与微调链接;仓库本身不包含上述完整后训练 pipeline。Ascend 页面覆盖 vLLM-Ascend、SGLang、xLLM 和混合 W8A8 部署。[^glm5_repo][^glm5_ascend] - **
THUDM/IndexCache**:SGLang/vLLM 推理补丁,支持 GLM-5 的跨层索引复用;不是 RL 或 indexer 训练仓。[^indexcache]
Agentic RL
- **
THUDM/AgentRL**:异步 Agentic GRPO 基础设施,GPU/CUDA 路径完整,适合参考环境 worker、controller、trajectory 与 rollout/trainer 解耦。[^agentrl] - **
THUDM/SCALE-CUA**:公开 GUI agent 的 task generation、在线 RL、环境与 checkpoint,其中包含 GLM-4.6V;它说明相关团队确实会开源完整场景,但模型、环境和算法对象都不同于 GLM-5.2 文本 pipeline。[^scalecua] - **
THUDM/T1**:推理扩展工作,固定提交只有论文说明和 SFT 数据入口,README 仍写着模型权重与 RL 数据“即将发布”,不宜作为当前 RL 训练代码证据。[^t1]
没找到的同名仓
截至核验日期,对 THUDM 与 zai-org 的公开仓库枚举和固定提交检索中,未找到名为 SAO、CompactionRL 或 GLM Cross-Stage OPD 的独立仓库。这只是公开检索边界,不是对私有仓或未来开源的判断。
昇腾 NPU 到了哪里
NPU 支持需要拆成四层看,否则“模型能推理”很容易被误写成“算法能训练”。
模型训练层
MindSpeed-LLM@79afbee 已有 GLM-5 和 GLM-5.2 预训练入口,GLM-5.2 标为 Prototype;支持表记录 32×16 Ascend 规模,源码/测试覆盖 DSA 与 IndexShare。仓库也有通用 QAT engine,包括 w4a16-mxfp4、w4a4-mxfp4、w4a8-moe-only 等 scheme,但未见这些 scheme 与 GLM-5.2 后训练组合的公开 recipe。[^mindspeed_llm]
通用 RL 层
MindSpeed-RL@26c21e6 有 GRPO、DAPO、PPO、多轮 Agent RL、partial rollout、训练推理一体化与重分片等能力。项目 README 同时提示 2026 年 4 月后停止新增特性,并把后续昇腾实践引向 verl 生态。[^mindspeed_rl]
verl@87c68d2 的 Ascend 支持表已有 Qwen 系列 GRPO、one-step off-policy 与 fully-async 示例,但固定表中没有 GLM-5/5.2。[^verl_npu]
推理与量化层
GLM-5 仓、vLLM-Ascend 与 sgl-kernel-npu 已覆盖 GLM-5.2 部署、DSA、长上下文及 BF16/W8A8/W4A8C8 等推理能力。它们解决 rollout/serve 的一部分模型执行问题,不提供 actor optimizer、teacher、reward、policy version 与权重原子切换。[^glm5_ascend][^vllm_ascend][^sgl_kernel_npu]
端到端缺口
要把当前积木升级为“GLM-5.2 NPU 原生后训练”,还缺一份公开的统一合同:
- 模型合同:GLM-5.2 actor/reference/critic/teacher 的 checkpoint 与并行切分。
- 动作合同:exact token IDs、action/observation mask、tool trace 和 tokenizer 版本。
- 概率合同:rollout/current/old/train-engine log-prob 的定义、精度与阈值。
- 稀疏合同:DSA/IndexShare 在 train、rollout、teacher 上的 Top-k tie 与复现规则。
- 同步合同:训练分片转 rollout 分片、可选量化、发送、加载、原子版本切换和确认。
- 阶段合同:Reasoning/Agentic/General checkpoint 如何进入 Cross-Stage OPD,SAO/CompactionRL 在哪个阶段启用。
- 验证合同:同 checkpoint 的 token agreement、log-prob mismatch、trusted-token ratio、收敛与吞吐基线。
部门实施顺序
如果目标是“突破 GLM 的 NPU 原生训练”,不建议一开始同时复刻所有论文名词。更稳妥的顺序是:
- 先打通 GLM-5.2 GRPO 最小闭环。以 slime 的公开 H100 recipe 为 GPU 参考,在 NPU 上对齐模型 forward、DSA index、采样 token、reward、weight sync 与基础收敛。
- 再建立一致性观测面。先保存 exact token 与 rollout log-prob,再实现同 checkpoint train/infer mismatch;确认 vanilla TIS、IcePop mask 和 off-policy ratio 分别在处理什么偏差。
- 然后扩展 Agentic RL。加入工具/环境 observation mask、trajectory version、异步 ready queue 与 staleness gate。不要在 exact-token 链路未稳定时先追吞吐。
- 再移植通用 OPD。先跑单教师 NPU OPD,验证 sampled token 的师生 log-prob;随后才扩展到 Cross-Stage 或多教师路由。
- 最后验证 SAO 与 CompactionRL。二者都会改变样本组织、Critic/GAE 或长程信用分配,调试面明显大于 GRPO/OPD,不适合作为第一个 NPU 穿刺点。
优先级可以记成:
模型可跑 < 动作可重放 < 概率可比较 < 版本可追溯 < 阶段可复现。
总结
对这些技术的开源情况,可以压缩成六句话:
- Reasoning RL 在 slime 中已有公开 GLM-5.2 GPU 大规模配方,Agentic RL 有框架与 exact-token 链路,General RL 仍主要是报告级。
- IcePop 有源码函数,但公开 GLM-5.2 脚本默认 TIS 路径不是显式 IcePop;TITO 已有同名可运行通用示例,DIS 仍主要是组合积木。
- DSA Indexer 是昇腾支持最深入的组件:GLM 预训练实现、测试与推理 kernel 均有公开证据。
- Cross-Stage OPD 只有通用 OPD 代码,没有 GLM 跨阶段 checkpoint/teacher 配方;MOPD 来自小米 MiMo 等机构,不是 GLM 官方开源。
- SAO 与 CompactionRL 已论文公开并声明用于 GLM-5.2,但固定 slime 中未见同名训练 recipe;邻近异步或 compaction 代码不能替代算法实现。
- NPU 侧已有模型、RL、异步、DSA 与部署积木,缺的是把它们焊成同一个 GLM-5.x 后训练数值闭环。
参考资料
[^glm5]: GLM Team, GLM-5: from Vibe Coding to Agentic Engineering, 2026。
[^glm52]: Z.ai, GLM-5.2: Built for Long-Horizon Tasks, 2026-06-16。
[^slime_glm52]: THUDM, slime GLM-5.2 744B-A40B example 与 run script,固定提交 f655e13。
[^slime_loss]: THUDM, slime TIS and IcePop functions,固定提交 f655e13。
[^slime_agent]: THUDM, slime coding-agent token contract 与 TrajectoryManager,固定提交 f655e13。
[^slime_tito]: THUDM, slime x Strands-SGLang TITO example 与 token-preserving generate implementation,固定提交 f655e13。
[^slime_mismatch]: THUDM, slime train-inference mismatch helper,固定提交 f655e13。
[^slime_issue_2212]: THUDM/slime, Question: Do we support the SAO method used in the training of GLM-5.2? #2212,截至 2026-08-06 为 open,未关联分支或 PR。
[^slime_dsa]: THUDM, slime GLM-5 plugin 与 indexer implementation,固定提交 f655e13。
[^slime_opd]: THUDM, slime on-policy distillation documentation,固定提交 f655e13。
[^mopd]: Ma et al., MOPD: Multi-Teacher On-Policy Distillation for Capability Integration in LLM Post-Training, 2026。
[^sao]: Hou et al., Single-Rollout Asynchronous Optimization for Agentic Reinforcement Learning, 2026。
[^compaction]: Li et al., CompactionRL: Reinforcement Learning with Context Compaction for Long-Horizon Agents, 2026。
[^glm5_repo]: Z.ai, GLM-5 repository,固定提交 436efa0。
[^glm5_ascend]: Z.ai, Using Ascend NPU to Deploy GLM-5.2,固定提交 436efa0。
[^mindspeed_llm]: Ascend, MindSpeed-LLM,重点参见 GLM-5.2 example、supported models 与 QAT engine,固定提交 79afbee。
[^mindspeed_rl]: Ascend, MindSpeed-RL,固定提交 26c21e6。
[^verl_npu]: verl, Ascend model and algorithm support,固定提交 87c68d2。
[^indexcache]: THUDM, IndexCache,固定提交 08d22d6。
[^agentrl]: THUDM, AgentRL,固定提交 6a73409。
[^scalecua]: THUDM, SCALE-CUA,固定提交 3929e2f。
[^t1]: THUDM, T1,固定提交 5dfb8ff。
[^sgl_kernel_npu]: SGLang, sgl-kernel-npu。
[^vllm_ascend]: vLLM Ascend, GLM-5.2 deployment guide。
GLM Post-Training Open-Source Map