RRLforge
L3

上机

框架层:TRL 实跑 + slime/Miles 对照

手写脚本让你懂原理,框架让你能干活。这一阶段先用 TRL + vLLM 在 5090 上把同一个任务重跑一遍,再去读 slime 与 Miles 的设计,理解工业级框架在解决什么你刚刚亲手踩过的问题。

5 节课 · 约 3 小时已完成 0/5
  1. 1

    手写脚本会死在哪:框架解决的五个问题

    原理30 分钟

    你的 200 行脚本在单卡小模型上够用。这一节说清它在什么位置会撑不住,从而知道框架的每个模块是为什么存在的。

    • 列出手写脚本的五个硬伤,并对应到框架里的具体模块
    • 判断自己的下一个任务该继续手写还是上框架
    • 读框架文档时能把术语映射回自己写过的代码
  2. 2

    TRL GRPOTrainer:5090 单卡实跑

    实验50 分钟

    把手写脚本换成 TRL,跑同一个任务、比同一个分数。这是本站唯一在 5090 上被验证过的框架路径。

    • 用 GRPOTrainer 复现 L2 的实验,并对上分数
    • 把自己写的 reward 函数接进 TRL 的 reward_funcs
    • 把 TRL 的配置项逐个映射回你手写代码里的变量
  3. 3

    训推同卡:colocate 的显存怎么分

    实验40 分钟

    单卡上训练和推理抢同一块 32GB。这一节把 colocate 模式调稳,并知道它比多卡慢在哪。

    • 说清 colocate 与 server 两种模式的区别,以及单卡为什么只能用前者
    • 调出一组不 OOM 又不浪费的显存分配参数
    • 解释 sleep mode 在省什么,以及为什么 colocate 必然比 server 慢
  4. 4

    读 slime 与 Miles:工业级 RL 框架长什么样

    原理50 分钟

    这两个框架单卡跑不了,但正是最好的架构教材。带着你刚踩过的坑去读它们的设计文档。

    • 画出 slime 的 训练 / rollout / Data Buffer 三段结构,并说清数据怎么流
    • 解释 Miles 的 fully-async、TITO、R3、P2P weight transfer 各解决什么问题
    • 看懂一份 8×H100 的启动脚本,认出每个参数属于哪一层
  5. 5

    从 1 卡到 8 卡:哪些结论会变

    原理30 分钟仅大纲

    你在单卡上得到的所有直觉,哪些能带上多卡,哪些必须扔掉。为将来真有机器的那天做准备。

    • 说清 batch size、学习率、G 在扩到多卡时该怎么跟着变
    • 判断一个任务是被显存卡住还是被吞吐卡住
    • 看懂多卡启动脚本里 ray / torchrun 那一层在做什么