title: "Build a Reasoning Model (From Scratch):8 讲 / 11 小时的推理模型从零实现视频课" 分类: x-tips 来源 X 账号: rasbt(Sebastian Raschka) 作者: Jay 更新日期: 2026-10-26 原帖 URL: https://x.com/rasbt/status/2114325097653669940 官方文章 URL: https://magazine.sebastianraschka.com/p/building-reasoning-models 仓库: https://github.com/rasbt/reasoning-from-scratch


Build a Reasoning Model (From Scratch):8 讲 / 11 小时的推理模型从零实现视频课

这是什么

2026-10-25,Sebastian Raschka(@rasbt,《Build a Large Language Model (From Scratch)》作者)发推宣布:"reasoning-from-scratch" 完整视频系列已上线,并链接到他的长文《Build Your Own Reasoning Model: A Full Video Course》。原话同时说明他本人短暂休息,"11 月再回来做 LLM 模型与研究更新"。

这不是一条"技巧贴",而是一套完整的免费视频课程 + 官方代码仓库,共 8 个视频、约 11 小时内容。主线是:拿一个已预训练好的 Qwen3 0.6B,用 Python + PyTorch 自己实现推理能力相关的全部方法——评测、推理时扩展(inference-time scaling)、强化学习(RLVR/GRPO)、蒸馏。

配套书籍为 Build A Reasoning Model (From Scratch)(Manning, ISBN 9781633434677),仓库即该书的官方代码库。

作者对"推理模型 vs agent"的类比(原文 Figure 1):模型是引擎,agent harness 是围绕引擎的机械装置——harness 负责上下文管理与工具调用,推理模型负责解题能力。想理解现代 AI agent 的人,这套材料是引擎侧的教材。

核验来源

  • 原帖:https://x.com/rasbt/status/2114325097653669940 (证据文件记录经 twitter_oembed 验证,发布时间 2026-10-25)
  • 帖子内短链 https://t.co/5IOHLTCIGt 301 跳转至官方文章 https://magazine.sebastianraschka.com/p/building-reasoning-models
  • 官方代码仓库:https://github.com/rasbt/reasoning-from-scratch (README 自述为该书 official code repository)
  • 环境/命令出处:仓库 ch02/02_setup-tips/python-instructions.md、requirements.txt、pyproject.toml
  • 视频标题与逐条要点出处:官方文章正文的 8 个 "Watch video N" 段落

说明:本文所有视频标题、时长、依赖版本均取自上述官方文章与仓库文件;原帖正文仅两句,内容指向上述文章,未包含其他数字,故未从原帖嫁接任何数据。

八讲清单(官方文章原序)

# 视频 YouTube 配套代码 内容要点(官方 Topics covered 摘要)
1 环境搭建与总览 https://www.youtube.com/watch?v=Kh9mqTzjuEQ ch02/02_setup-tips 传统 LLM / 推理模型 / agent harness 三者关系;安装依赖;硬件选型与 CUDA、Apple Silicon 支持检查;用 VS Code 跑远程 GPU 及环境排错
2 加载基座模型、文本生成与 KV cache https://www.youtube.com/watch?v=BJua0yjO5dk ch02 文本编码/解码为 token;下载并加载 Qwen3 0.6B 权重;张量形状、logits、下一个 token 预测;贪心解码与流式生成;EOS 处理与生成速度测量;加 KV cache;KV cache + torch.compile 并做硬件性能对比
3 评测推理模型:数学答案验证器 https://www.youtube.com/watch?v=JQJ_8_jSAoY ch03 验证器在 LLM 评测中的位置;同一验证器在后续章节复用为 RLVR 的奖励信号;答案抽取 → 归一化 → 数学等价性判定;构建评分器与 MATH-500 评测循环;对比基座模型与推理模型
4 推理时扩展 https://www.youtube.com/watch?v=t5y-kS9nNxU ch04 训练期算力 vs 推理期算力;CoT 提示入门;温度缩放与多项式采样生成多样性答案;top-p 过滤;自洽性(self-consistency,多数投票);准确率与额外推理成本的权衡曲线
5 自精炼(self-refinement) https://www.youtube.com/watch?v=TVMyOJ_3Gxo ch05 用打分函数比较多个答案、打破自洽性平局;启发式评分器;token 概率与序列似然(后文 RL 章节复用);用 log probability 提升数值稳定性;自精炼循环(批判 + 修订)并在 MATH-500 上评测
6 用强化学习训练推理模型(RLVR + 简化版 GRPO) https://www.youtube.com/watch?v=237Hf7Q3lgg ch06 生成推理轨迹、答案长度与解题能力的关系;RLHF 与 RLVR 对比;验证器分数 → 奖励与相对优势;序列 log probability 与简化 GRPO 损失;拼装训练循环(日志 + checkpoint);评测 checkpoint、检查训练稳定性与显存需求
7 改进 GRPO https://www.youtube.com/watch?v=VxfUrUrrczs ch07 更长训练与日志解读;优势与熵跟踪;policy loss 裁剪及其影响;加入 KL loss 项、讨论 reward hacking 与简化 KL 的局限;格式奖励(format rewards)并与答案正确性关联;在 MATH-500 上比较 checkpoint
8 蒸馏推理模型 https://www.youtube.com/watch?v=msp69FR5NZs ch08 软/硬蒸馏、on-policy/off-policy 组合对比;用 DeepSeek R1 为 MATH 数据集生成教师答案;蒸馏数据集准备(tokenization、train/val/test 划分);答案 token 的 log probability 与交叉熵损失;监督训练与训练/验证损失跟踪;在 MATH-500 上评测并与 RL 结果对比

(第 8 讲的"用 DeepSeek R1 生成教师答案"来自官方文章 Topics covered 原文;仓库 ch08/02_generate_distillation_data 说明教师输出可通过 Ollama 或 OpenRouter 生成。)

上手步骤

1. 克隆仓库

git clone https://github.com/rasbt/reasoning-from-scratch.git
cd reasoning-from-scratch

2. 安装依赖(作者推荐 uv)

curl -LsSf https://astral.sh/uv/install.sh | sh   # macOS / Linux

Windows PowerShell:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

仓库没有 .python-version 文件,若想用 Python 3.13 可自行 pin:

uv python pin 3.13
uv sync

作者本人用的是 Python 3.12;仓库 requires-python = ">=3.10,<3.15"。官方文档指出:Appendix G 的聊天界面需用 Python 3.13,因为 Chainlit 目前不支持 Python 3.14。

3. 运行代码

uv run jupyter lab
uv run python script.py

4. 版本口径(官方)

  • 提交的 uv.lock 锁定 PyTorch 2.10.0,即书中原本使用的版本;pyproject.toml 允许 torch>=2.10,<3。
  • 想升级锁文件里的 PyTorch:
uv lock --upgrade-package torch

恢复仓库原版:

git restore uv.lock
uv sync
  • requirements.txt:reasoning-from-scratch >= 0.1.2、setuptools>=61.0、sympy>=1.14.0(ch03 验证器用)、torch >= 2.10, < 3、tokenizers >= 0.21.2。
  • pyproject.toml 另含 jupyterlab>=4.4.7、nbformat>=5.10.4、matplotlib>=3.10.7;可选 extras:datasets>=4.1.1(Appendix F MMLU)、chainlit>=2.8.3(Appendix G Chat UI,仅 Python < 3.14)。
  • 若用 pip 一把装:
pip install -r https://raw.githubusercontent.com/rasbt/reasoning-from-scratch/refs/heads/main/requirements.txt

5. 章节与代码对应

仓库每章一个目录,附带 main notebook 与 exercise solutions:

  • ch02 生成文本(预训练 LLM)|ch03 评测推理模型|ch04 推理时扩展|ch05 自精炼|ch06 强化学习训练|ch07 改进 GRPO|ch08 蒸馏
  • 附录:A 参考文献|B 习题答案|C Qwen3 源码(reasoning_from_scratch/qwen3.py,纯 PyTorch 复刻,与官方权重兼容)|D 使用更大的 LLM|E 批处理与吞吐|F LLM 评测方法(MMLU、榜单、LLM-as-a-judge)|G 聊天界面

6. 硬件建议(官方口径)

  • 主章节代码面向消费级硬件,无需专用服务器;有 GPU 会自动使用。
  • 第 2–4 章在 CPU 上也能跑得不错;第 5、6 章若要复现书中结果,建议用 GPU。
  • 详细的 Python/环境/云 GPU 建议见 ch02/02_setup-tips(含 python-instructions.md、gpu-instructions.md)。
  • 模型权重来自 Hugging Face 的 Qwen/Qwen3-0.6B(基座模型,非对话版;Qwen3 0.6B 分词器约 15.1 万词表)。

适用边界

适合 - 想从代码层面搞懂"推理模型到底怎么工作"的人:推理时扩展、RLVR/GRPO、蒸馏三条主线都手写一遍。 - 已熟悉 Python 与 PyTorch 的读者。作者原话:上一套 Coding LLMs from the Ground Up 是本课的前作,但本课程设计为独立内容,前作推荐但非必需。 - 概念速览可先看作者的 LinkedIn Learning "AI Reasoning Models" 课程(约 90 分钟,作者称通过该链接访问可免费 24 小时、届时无需 Premium)。推荐学习法:先读一章书 → 对着视频跑代码 → 再做习题。

不适合 / 注意 - 不是工程化的训练框架,目标是教学与可读性;模型规模很小(0.6B),结果不能外推到生产级推理模型。 - 作者明确表示:本仓库是纸质书的配套代码,暂不接受扩展主章节代码的 PR(会与实体书内容产生偏离),问题走 GitHub Discussions 或 Manning 论坛。 - 仓库主分支代码与书籍版本对应(reasoning-from-scratch >= 0.1.2),若想跑最新版 PyTorch 需要自己升级锁文件。 - 第 5、6 章在没有 GPU 的机器上不现实。 - pyproject.toml 的 [tool.uv] 段设置了 exclude-newer = "7 days",需要较新的 uv,解析失败时按提示执行 uv self update。 - Linux + aarch64 环境的 torch 走 pytorch-cu130 索引(pyproject.toml 中的 [tool.uv.sources])。

复现式核验备注

本文未在本地实际执行安装或训练(无 GPU 环境,且耗时超预算),所有命令与版本号均逐字取自官方仓库文件与官方文章;未做任何本地运行结果的断言。