←新闻详情

Ahead of AI更新于 10月25日 21:29

Sebastian Raschka 发布 11 小时推理模型从零构建视频课程

Building Reasoning Models from the Ground Up: A Video Course

AI 导读

Sebastian Raschka 发布 8 个推理模型从零构建的编程视频,共 11 小时,用 Python 和 PyTorch 从预训练的 Qwen3 0.6B 模型出发实现评测、推理时扩展、强化学习和蒸馏。课程先构建数学答案验证器并在 MATH-500 上评测,再实现温度采样、top-p 过滤与自一致性,随后用简化版 GRPO 做 RLVR 训练,最后用 DeepSeek R1 生成的答案蒸馏小模型。内容配套其《Build a Reasoning Model (From Scratch)》一书,早期文本生成与评测示例可在 CPU 上运行,后续训练实验建议使用 GPU。

推荐理由

AI 评分 60

作者把推理模型的评测、推理时扩展、强化学习与蒸馏拆成可跟做的 PyTorch 实现,适合想从代码层面理解训练流程的人。

主题

标签

正文 · AI 翻译

超过11小时的编程视频,涵盖评估、推理时扩展、强化学习和蒸馏,使用Python和PyTorch。Sebastian Raschka,博士,2026年10月24日

过去两年里,我在Ahead of AI上写了很多关于推理模型的内容,包括最近一篇关于当代LLM中控制推理努力程度机制的文章。推理模型依然和以往一样重要。事实上,如今几乎所有当前世代的LLM都是推理模型,或者提供推理模式。

对于那些对推理模型工作原理感兴趣的人——包括推理扩展、强化学习和蒸馏——我最近写了《从零构建推理模型》(Build Reasoning Model (From Scratch)),它在PyTorch中从头实现这些内容;根据我的经验,这仍然是理解和学习事物真正运作方式的最佳途径。

现在,在过去几个月里,我也坐下来录制了配套讲座,想与大家分享。因此,下面你将找到八个从零构建推理模型的编程视频(11小时内容)。

我们从一个预训练的LLM开始,用Python和PyTorch实现评估和改进它的方法。所以,如果你喜欢我去年推出的《从零开始编程LLM》课程,这基本上就是续集(但你也可以在没有先修课程的情况下观看)。

我目前正在短暂休息,下个月会带着更多激动人心的LLM研究综述回来。在此期间,希望你喜欢跟着一起编程!

LLM、推理模型和智能体如何关联并契合在一起

作为一个小旁注,也因为我经常被问到推理模型与当今AI智能体的关系,这里在开始视频之前先简短说明一下。

推理模型本质上是传统LLM的升级版,即通过带可验证奖励的强化学习(以及可选的推理扩展技术)增加更多后训练,使其更有能力解决更具挑战性的问题。传统上,推理模型是为数学和代码开发的,但这些能力也可以泛化到其他问题领域。

推理模型随后作为智能体框架内部的引擎发挥作用,而智能体框架是围绕LLM/推理模型的软件或工具框架,用于解决更具挑战性的问题(更大的编程任务、旅行预订以及各种其他个人助理任务)。该框架的任务是进行复杂的上下文管理,并让LLM能够访问工具。

图1:传统LLM、推理模型和智能体框架的引擎类比。图来自我的《编程智能体的组成部分》一文。

在上图描绘的类比中,模型是引擎,而智能体框架增加了机械装置,使我们能够将其用于各种用途(作为简单聊天机器人界面的升级)。智能体可以使用传统LLM或推理模型,但推理模型是更典型的选择,因为它们能力更强。(如上所述,大多数当前世代的LLM都是带有可变推理努力设置的推理模型。)

所以,底线是,推理模型作为“引擎”,仍然是理解现代LLM智能体的重要组成部分。

上述主题配套的资源包括:

《从零构建大语言模型》一书和视频

《从零构建推理模型》一书(以及下方视频)

Substack上的《编程智能体的组成部分》一文

下面的视频重点介绍开发能够为这样的系统提供支持的推理模型。

范围与先决条件

从零构建推理模型的视频聚焦于一个小型预训练Qwen3模型,我们在其中用Python和PyTorch自行实现推理方法。从预训练模型开始,让我们能够专注于有趣的部分:评估、推理时扩展、强化学习和蒸馏。

关于先决条件,我建议你熟悉Python和PyTorch。我把推理材料设计为独立内容,因此推荐但不严格要求先学习之前的《从零构建大语言模型》内容。

在计算资源方面,你可以在CPU上完成早期的文本生成和评估示例。对于后续实验,尤其是训练,GPU会让工作实用得多。第一个视频涵盖环境设置和一些更多建议;代码仓库还包括硬件和环境建议。

图2:所涵盖主题的概览。

配套书籍

这些视频配套我的书《从零构建推理模型》。如果你想更详细、按自己的节奏阅读讲解、完成练习等,我推荐把这本书作为配套材料。

为了获得最深入的学习体验,我的建议是阅读一章,结合对应视频完成其代码,然后尝试练习。

这本书可从Manning和Amazon购买,印刷版是彩色的!

图3:《从零构建推理模型》印刷书中的随机摘录。

感谢每一位购买本书或向朋友推荐本书的人。你们的支持帮助我继续创作这些材料。

视频

在进入下面正片之前,先做一个简短的附带说明:如果你想要一个更简短、更偏概念性的概览,我也推荐我在 LinkedIn Learning 上的 AI 推理模型课程(通过那里的链接访问时,它应该会在 24 小时内免费,而且应该不需要 LinkedIn Premium 订阅)。

这门课程大约 90 分钟,讲解推理模型如何工作,涵盖推理时扩展、强化学习和蒸馏背后的主要思想。如果你只想了解主要思想,而不想完整实现下面的内容,这是一个不错的可选预览。

进入本文的主要部分,以下是八个主要讲座视频。

1. 动机与代码设置

第一个视频首先解释传统 LLM、推理模型和智能体之间的关系。接下来,视频的主要主题是设置编程环境。这包括安装 Python 和 PyTorch 依赖项(使用 uv)等。我还讨论了硬件选择和常见设置问题。

涵盖的主题

传统 LLM、推理模型和智能体框架之间的关系

通过代码实现来学习的好处

本视频系列的范围

安装 Python 依赖项

选择硬件并检查 CUDA 或 Apple Silicon 支持

使用 VS Code 连接远程 GPU 并排查环境问题

观看视频 1 · 设置说明

2. 加载基础模型、文本生成和 KV 缓存

在接下来的视频中添加推理方法之前,我们需要一个可用的基础模型。与其从头训练它——那会是另一整本书的内容(参见《从零构建大语言模型》)——我们从预训练模型开始。

这里,我们加载 Qwen3 0.6B 模型的预训练权重。然后,我们通过流式文本生成器实现文本生成过程,并添加 KV 缓存和模型编译,使文本生成更高效。

这些实现为我们提供了基线以及基础组件,我们将在后续视频中对其进行评估和改进。

涵盖的主题

将文本编码为 token 并将其解码回文本

下载 Qwen3 权重并在所选计算设备上加载模型

讲解张量形状、logits 和下一 token 预测

实现贪心解码和流式文本生成

处理序列结束 token 并测量生成速度

添加 KV 缓存以复用注意力键和值

将 KV 缓存与 torch.compile 结合并比较硬件性能

观看视频 2 · 第 2 章代码

3. 构建用于评估和强化学习的验证器

在本讲中,我们逐步构建一个数学答案验证器,从答案提取到归一化,再到检查数学等价性。然后我们用它来在 MATH-500 上评估模型。

我们使用这个验证器来评估基础模型在 MATH-500 评估数据集上的性能。

然而,这个验证器在本系列后面还有第二项工作:为带可验证奖励的强化学习(RLVR)提供奖励信号。

涵盖的主题

验证器简介以及它们如何融入 LLM 评估方法(其他方法在本书附录中介绍)

将答案验证复用为 RLVR 的奖励信号(更多内容见第 6 章)

验证器流程,包括提取最终答案、归一化答案和检查数学等价性

为 MATH-500 构建答案评分器和评估循环

在 MATH-500 上比较基础模型和推理模型

观看视频 3 · 第 3 章代码

4. 推理时扩展:采样与自一致性

现在我们探索在保持模型权重不变的情况下改进答案的方法。但在实现具体的推理扩展技术之前,我们首先实现从同一提示生成多样化答案的方法(这是专有 LLM 聊天机器人如 ChatGPT 的标准做法)。

具体来说,我们实现温度缩放、多项采样和 top-p 过滤来生成多样化回复。然后我们通过自一致性将多个回复结合起来,对其最终答案使用多数投票。

我们还考察答案准确性与生成更多候选所需的额外计算之间的权衡。

涵盖的主题

比较额外计算在训练期间和推理期间对模型性能的益处

通过思维链提示对推理扩展进行温和介绍

实现温度缩放和多项采样以生成多样化答案

添加 top-p 过滤以控制多样化答案的质量

通过自一致性结合候选答案,这是最流行的推理扩展技术之一

评估 MATH-500 准确性与额外推理计算成本的关系

观看视频 4 · 第 4 章代码

5. 推理时扩展:评分与自我改进

在上一个视频的基础上,我们实现评分函数来比较从同一提示生成的多个答案。我们还可以使用这些评分方法在自一致性中打破平局(上一讲已介绍)。

这里涵盖的评分方法包括计算 token 和序列对数概率(这在后面的强化学习章节中也会相关)。然后我们实现一个自我改进循环,其中模型对答案进行批判并尝试修订。

评估让我们检查这些额外步骤对模型有多大用处。

涵盖的主题

使用评分函数比较多个答案并打破平局

实现一个简单的启发式评分器

计算 token 概率和序列似然(也与后续讲座相关)

使用对数概率以提高数值稳定性

构建一个自我改进循环,用于生成批判和修订后的答案

在 MATH-500 上评估自我改进

观看视频 5 · 第 5 章代码

6. 强化学习:为 RLVR 实现 GRPO

在本讲中,我们转向实现一种名为“带可验证奖励的强化学习”(RLVR)的训练技术。我们首先实现一个简化版的组相对策略优化(GRPO),生成成组的回复,用我们的验证器对它们评分,并在训练期间使用它们的相对奖励来更新模型权重。

涵盖的主题

生成推理轨迹并理解答案长度与问题解决能力之间的关系

讨论并比较两种重要的 LLM 后训练方法:带人类反馈的强化学习(RLHF)和带可验证奖励的强化学习(RLVR)

将验证器分数转化为奖励和相对优势

计算序列对数概率和简化的 GRPO 损失

组装带有日志记录和检查点保存的训练循环

评估检查点并检查训练稳定性和内存需求

观看视频 6 · 第 6 章代码

7. 强化学习:跟踪、裁剪的策略比率和 KL 项

既然我们在上一讲中实现了训练循环,现在我们可以重新审视它,并更详细地分析训练运行。

具体来说,本视频增加了更多用于检查和分析的训练指标,包括熵和优势统计、裁剪的策略比率、KL 损失项值和格式化奖励。

然后我们回顾训练日志和评估结果,以理解这些新增内容的作用,以及裁剪的策略比率和 KL 损失项等新增内容是否有帮助。

涵盖的主题

运行更长的训练实验并解读其日志

跟踪优势和熵以理解训练行为

在策略损失中实现裁剪并分析其效果

添加 KL 损失项并讨论奖励黑客

理解简化 KL 公式的局限性

实现格式奖励并使其以答案正确性为条件

在 MATH-500 上比较检查点并探索进一步的 GRPO 研究

观看视频 7 · 第 7 章代码

8. 蒸馏一个推理模型

最后,我们探索另一种训练小型推理模型的方法,即从更强大(也更大)的教师模型生成的答案中学习。我们讨论不同形式的蒸馏,准备推理数据,并实现监督训练循环。

我们通过评估蒸馏模型在 MATH-500 上的表现并比较结果来结束本讲和本课程。这为整个系列画上句号,提供了通过强化学习开发推理能力的一种替代方案。

涵盖的主题

比较蒸馏的不同组合和方法,包括软蒸馏和硬蒸馏,以及同策略和异策略蒸馏

为 MATH 数据集创建并收集教师生成的答案(使用 DeepSeek R1)

准备蒸馏数据集,包括分词和训练/验证/测试划分

计算答案 token 对数概率并理解交叉熵损失

实现监督训练并跟踪训练与验证损失

在 MATH-500 上评估检查点并比较蒸馏结果

观看视频 8 · 第 8 章代码

结语

在观看这些讲座时,我鼓励你偶尔暂停一下,如果想到什么有趣的点子,就自己尝试做个小实验。

例如,你可以随意更改采样设置、检查几个失败的答案,或者尝试与练习中建议类似的不同想法的变体。

如果你想要配合视频的完整书面讲解、图表和练习,可以在 Manning 和 Amazon 上找到《Build a Reasoning Model (From Scratch)》。

感谢阅读并支持 Ahead of AI。我正短暂休息以恢复精力,期待下个月带着下一轮 LLM 研究文章回归。

在此期间,祝你观看愉快、动手愉快!

来源

Ahead of AI