课程目录

第 8 周 · 进阶

第8周:大模型核心技术

深入LLM架构与RAG

周目标:深入理解LLM架构、训练流程、RAG检索增强生成

课程成果:CO3 CO8

已学习 0 / 7 天

本周 7 个学习日

Day 50

大模型架构

建议时长:75 分钟

本日 CO:CO3 CO8

本日概要

当前主流大语言模型多采用仅解码器的 Transformer 结构:把文本转成词元序列,用带因果掩码的自注意力保证每个位置只能看到自己和之前的内容,逐个预测下一个词元。不同模型之间的差异主要集中在几个可比较的维度——参数规模、层数与隐藏维度、上下文窗口长度、注意力的具体变体、位置编码方式、词表大小与训练数据规模。比较模型时必须先确认这些维度的口径一致,尤其要区分「参数量」与「实际激活的参数量」,混合专家结构中的这两个数字可以相差很大。

听书与视频

本日听书

6 分钟 · MP3 · 双主持人讲解

B 站讲解

【动画版】10分钟快速吃透Transformer架构详解!通俗易懂,带你拆解Transformer架构原理,全程干货!小白也能轻松学会!大模型/LLM

AI应用开发- · 已核验 2026-08-29

在 B 站打开

学习目标

  • 能画出仅解码器 Transformer 的一层结构,并说明因果掩码的作用
  • 能列出比较大模型时应统一的至少六个维度
  • 能区分总参数量与激活参数量,并说明混合专家结构下的差异
  • 能识别技术报告中不可直接横向比较的字段并说明原因

核心讲解

仅解码器结构与因果掩码

一个典型的解码器层包含带因果掩码的多头自注意力、前馈网络,以及残差连接与层归一化。因果掩码的作用是把每个位置对未来位置的注意力权重置为无效,从而保证训练时的预测目标不会泄漏——如果没有掩码,模型可以直接看到下一个词元,训练损失会迅速降到接近零而毫无用处。这个细节解释了为什么同一套结构既可用于生成也可用于理解,区别只在于掩码方式。

残差连接与层归一化的作用是让很深的网络仍能稳定训练:残差为梯度提供了一条直通路径,归一化把每层输入的分布约束在稳定范围内。原始论文中层归一化放在子层之后,后续实践中更常把它放在子层之前以改善深层训练的稳定性。这类看似细微的位置差异在几十层的模型中会明显影响收敛,读技术报告时值得留意。

怎样比较两个模型才算公平

把两个模型放在一起比较之前,必须先统一口径:参数规模指的是总参数还是推理时实际激活的参数;上下文窗口是训练时的长度还是经外推后声称支持的长度;词表大小与分词方式是否相同,因为这直接影响同一段文本占用多少词元;训练数据规模的统计口径是词元数还是原始文本体积。任何一项口径不同,直接比较得出的结论都不成立。

混合专家结构让这个问题更加突出:这类模型的总参数量可能是稠密模型的数倍,但每个词元只激活其中一小部分专家,实际计算量接近一个小得多的稠密模型。用总参数量与稠密模型比较能力,或用激活参数量比较显存占用,都是错误的口径搭配。正确做法是在对照表中同时列出两个数字,并注明该字段来自哪份技术报告的哪一节。

实践任务

选两个公开了技术报告的模型,按统一维度制作对照表,逐项标注来源与访问日期,并指出哪些字段无法同口径比较。

  • 选择两个公开技术报告的模型,建立包含参数规模、层数、隐藏维度、上下文窗口、注意力变体、位置编码、词表大小、训练词元数的对照表。
  • 为每个字段标注来源链接的具体位置与本人访问日期,找不到官方来源的字段留空并标为「未公开」,不得用推测填充。
  • 对同一段中文与英文文本,用两个模型的分词器分别统计词元数,说明词表差异如何影响上下文窗口的实际容量。
  • 在对照表末尾单列一节,写出哪些字段因口径不同而不可直接比较,并说明理由。

自测与答案

第 1 题

因果掩码在仅解码器结构中起什么作用?没有它会发生什么?

尚未检查本题。

查看答案与评价要点

参考答案:它把每个位置对未来位置的注意力权重置为无效,保证预测下一个词元时只能看到自身与之前的内容。没有掩码时模型可以直接看到目标词元,训练损失会迅速降到接近零,但模型没有学到任何预测能力,生成时完全无法使用。

评价要点:说明掩码屏蔽未来位置;指出没有掩码会造成目标泄漏;说明损失虚低而模型不可用

第 2 题

用总参数量比较一个混合专家模型与一个稠密模型的推理成本,为什么是错误的?

尚未检查本题。

查看答案与评价要点

参考答案:混合专家模型每个词元只激活其中一部分专家,实际参与计算的参数远少于总参数量,因此推理计算量接近一个小得多的稠密模型;但权重仍需驻留显存,显存占用又接近总参数量。正确做法是把总参数量与激活参数量分别列出,并明确每个数字用于回答哪个问题。

评价要点:指出每词元只激活部分专家;区分计算量与显存占用的不同依据;提出同时列出两个数字

尚未完成自测。

今日完成标准

  • 提交八个维度齐全的对照表,每个字段附来源位置与访问日期
  • 未公开字段明确标注为「未公开」,无推测填充
  • 单列出不可直接比较的字段清单并说明口径差异

常见错误与纠正提示

  • 用参数量单一数字给模型排名,忽略激活参数、上下文与数据规模
  • 把技术报告中的基准分数直接横向比较,不核对评测集与提示方式
  • 找不到官方数据时用第三方转述或推测值填表

分层任务

基础任务

在教师给出的对照表骨架上补齐四个字段并标注来源。

标准任务

独立完成八维度对照表与分词器词元数对比。

挑战任务

针对一个混合专家模型,分别用总参数量与激活参数量估算显存与计算需求,说明两个估算各自的适用问题。

关联知识点

延伸阅读

学习状态:未学习

Day 51

预训练

建议时长:75 分钟

本日 CO:CO3 CO8

本日概要

预训练的目标函数极其简单——预测下一个词元——但工程复杂度几乎全部集中在数据与规模上。文本先经分词器切成词元,子词分词让词表保持有限的同时避免大量未登录词;不同分词器对同一段文本产生的词元数可能差异很大,中文尤其明显,这直接影响上下文窗口的实际容量与调用成本。困惑度是常用的语言建模指标,但它只在同一分词器、同一评测集上可比,跨模型引用困惑度而不说明这两个前提是常见错误。理解「按词元计费、按词元限长」是后续所有成本估算的基础。

听书与视频

本日听书

5 分钟 · MP3 · 双主持人讲解

B 站讲解

手把手教你大模型训练与部署,从配置GPU到训练大模型【全网最详细教程】

日新月异max · 已核验 2026-08-29

在 B 站打开

学习目标

  • 能说明子词分词解决了什么问题,以及它对未登录词的处理方式
  • 能测量并解释同一文本在不同分词器下的词元数差异
  • 能说明困惑度的含义及其可比性的前提条件
  • 能用词元数估算上下文占用与调用成本,并指出估算中的不确定项

核心讲解

词元是模型的真实输入单位

模型并不直接处理字符或单词,而是处理词元。基于字符的切分会让序列过长,基于完整单词的切分会让词表膨胀并且无法处理未登录词。子词分词在两者之间取平衡:常见词保持完整,罕见词被拆成若干子词片段,这样有限的词表就能覆盖任意输入。理解这一点后,很多现象就有了解释——为什么模型有时会在生僻词上出错,为什么同样长度的中英文文本占用的窗口差别很大。

词元数的实际影响非常具体。上下文窗口以词元计,输入越占词元,能容纳的内容越少;按词元计费的服务,成本直接与词元数成正比。中文文本在很多以英文为主的词表下,一个汉字可能被切成一个甚至多个词元,实际占用比直觉高。因此任何关于「能放下多少文档」「一次调用大概多少成本」的估算,都必须先用目标模型的分词器实测,而不是按字符数换算。

困惑度与它的前提

困惑度衡量模型对一段文本的预测不确定性,可以理解为模型在每个位置平均在多少个候选之间犹豫,数值越低表示预测越确定。它是语言建模阶段最常用的内部指标,计算方式在官方文档中有明确定义,包括长文本需要用滑动窗口分段计算这一实现细节。

关键是它的可比性前提:困惑度依赖分词方式,同一段文本用不同分词器切分后词元数不同,平均到每个词元的不确定性自然不可比;它也依赖评测文本,换一个领域的语料数值会明显变化。因此「A 模型困惑度比 B 低所以更强」这类说法,只有在同一分词器、同一评测集的前提下才成立。更重要的是,困惑度低不等于在具体任务上有用,任务效果仍需用任务指标单独评估。

实践任务

用两种分词器统计同一批中英文文本的词元数,计算词元与字符的比例,并据此估算一次调用的上下文占用。

  • 准备三段文本:纯英文、纯中文、中英混合代码片段,各约五百字符,记录字符数。
  • 用两种不同的分词器分别切分,统计词元数,计算每种文本的字符与词元比例。
  • 根据一个具体的上下文窗口长度,估算三种文本各能放入多少字符,并写出估算中的不确定项。
  • 查阅困惑度的官方定义,写出它在本次实验条件下不可跨模型比较的两条理由。

自测与答案

第 1 题

为什么估算「一个上下文窗口能放下多少内容」不能按字符数换算?

尚未检查本题。

查看答案与评价要点

参考答案:窗口以词元计,而字符与词元的比例取决于分词器与文本语言:同一段中文在不同词表下可能被切成数量差别很大的词元,代码与英文的比例也不同。必须用目标模型的分词器对实际文本实测,才能得到可用的估算。

评价要点:指出窗口以词元为单位;说明字符词元比随分词器与语言变化;提出用目标分词器实测

第 2 题

在什么条件下比较两个模型的困惑度才有意义?困惑度低是否代表任务效果好?

尚未检查本题。

查看答案与评价要点

参考答案:必须在同一分词器与同一评测语料下比较,否则词元切分与文本领域的差异会使数值不可比。困惑度低只说明语言建模的预测不确定性小,不直接代表在具体任务上表现好,任务效果需要用对应的任务指标单独评估。

评价要点:指出同一分词器这一前提;指出同一评测语料这一前提;说明困惑度不等同于任务效果

尚未完成自测。

今日完成标准

  • 提交三类文本在两种分词器下的词元数与字符词元比例表
  • 给出基于实测比例的上下文容量估算及不确定项说明
  • 写出困惑度不可跨模型比较的两条理由,并附官方定义出处

常见错误与纠正提示

  • 按字符数或汉字数估算上下文占用与调用成本
  • 跨模型引用困惑度而不说明分词器与评测集
  • 用困惑度低直接论证模型在业务任务上更好用

分层任务

基础任务

使用教师提供的文本与脚本完成词元统计,并读出中英文比例差异。

标准任务

独立完成三类文本、两种分词器的完整对比与容量估算。

挑战任务

分析一份真实业务文档,找出词元占用异常高的片段(如表格、代码、长数字),并提出降低占用的预处理方案。

关联知识点

延伸阅读

学习状态:未学习

Day 52

对齐训练

建议时长:75 分钟

本日 CO:CO3 CO8

本日概要

预训练得到的是一个擅长续写的模型,而不是一个会听指令的助手。对齐通常分三步:先用人工编写的指令与回答做有监督微调,让模型学会指令跟随的形式;再收集人类对多个候选回答的偏好排序,训练一个奖励模型来近似人类偏好;最后用强化学习按奖励模型的信号进一步优化策略,同时用约束防止模型偏离原始分布太远。InstructGPT 论文完整描述了这一流程,并报告了一个重要发现:经过对齐的较小模型在人类评价上可以优于未对齐的更大模型——这说明「有用」与「能力强」不是同一件事。

听书与视频

本日听书

6 分钟 · MP3 · 双主持人讲解

B 站讲解

大模型后训练讲解

Wiki爱学习 · 已核验 2026-08-29

在 B 站打开

学习目标

  • 能画出有监督微调、奖励建模、强化学习三阶段的流程与数据流
  • 能说明奖励模型的训练数据是偏好排序而非绝对分数,并解释原因
  • 能指出奖励劫持与分布偏移两类风险及其缓解手段
  • 能解释为什么对齐后的小模型可能在人类评价上优于未对齐的大模型

核心讲解

三个阶段各自解决什么

第一阶段是有监督微调:用人工编写的「指令—回答」样本继续训练预训练模型,让它学会以助手的方式响应,而不是简单续写。这一步的数据量相对不大,但质量要求很高,因为它直接决定了模型输出的基本风格与格式。第二阶段是奖励建模:对同一指令采样多个回答,请标注者按质量排序,用这些排序训练一个能给回答打分的奖励模型。采用排序而非绝对分数,是因为人类在相对比较上远比在绝对打分上一致,标注噪声更小。

第三阶段用强化学习优化策略:模型生成回答,奖励模型给出分数,按分数更新策略参数。这里必须加入约束——通常是对与初始模型输出分布的偏离施加惩罚——否则模型会朝奖励模型的偏好过度漂移,产出在奖励模型上得分很高但实际质量下降的回答。理解这三步的分工,才能理解为什么对齐是一个持续过程而非一次性动作。

两类风险与一个反直觉结论

第一类风险是奖励劫持:奖励模型只是人类偏好的近似,策略在优化过程中可能找到「让奖励模型打高分但人类并不喜欢」的模式,例如输出冗长、堆砌免责声明或过度迎合。缓解手段包括限制与初始分布的偏离、定期用新的人工评估校准奖励模型、以及在评估中保留奖励模型未见过的测试指令。第二类风险是分布偏移:标注者群体、指令分布与真实用户的差异会被固化进模型,因此标注指南与标注者构成本身就是需要披露的信息。

论文中一个值得记住的结论是:在人类评价的有用性上,经过对齐的较小模型可以超过参数量大得多但未对齐的模型。这说明模型的「能力」与「对用户有用」是两个不同维度,也解释了为什么单看参数量或基准分数无法预测实际使用体验。在选型时,应当把对齐质量与任务贴合度作为独立维度来评估,而不是默认参数越大越好。

实践任务

阅读 InstructGPT 论文的方法部分,画出三阶段训练流程图,标注每阶段的数据来源、优化目标与已知风险。

  • 阅读论文方法部分,画出三阶段流程图,标注每阶段的输入数据、优化目标与产出。
  • 为每个阶段写出数据来源与标注要求,并指出该阶段最依赖的人工投入是什么。
  • 列出奖励劫持的三种可能表现形式,并为每种给出一个可观察的检测信号。
  • 写一段说明:为什么对齐后的小模型可能在人类评价上胜过未对齐的大模型,并指出这对模型选型的含义。

自测与答案

第 1 题

奖励模型为什么用偏好排序而不是让标注者直接打绝对分数?

尚未检查本题。

查看答案与评价要点

参考答案:人类在相对比较上的一致性远高于绝对打分:不同标注者对「这个回答值几分」的标准差异很大,而对「A 和 B 哪个更好」的判断更为一致。使用排序数据可以显著降低标注噪声,训练出的奖励模型也更稳定。

评价要点:指出绝对打分标准因人而异;指出相对比较一致性更高;把结论落到标注噪声与模型稳定性

第 2 题

什么是奖励劫持?如何在训练与评估中缓解它?

尚未检查本题。

查看答案与评价要点

参考答案:奖励模型只是人类偏好的近似,策略可能找到让奖励模型打高分但人类并不认可的模式,如输出冗长、堆砌免责声明或过度迎合。缓解手段包括:对与初始模型分布的偏离施加惩罚、定期用新的人工评估校准奖励模型、以及保留奖励模型未见过的测试指令用于独立评估。

评价要点:准确描述奖励劫持的机制;给出至少两种具体表现;给出至少两项缓解手段

尚未完成自测。

今日完成标准

  • 提交三阶段流程图,每阶段标注数据来源、优化目标与产出
  • 提交奖励劫持的三种表现与对应检测信号
  • 书面说明对齐质量作为独立选型维度的理由,并附论文出处

常见错误与纠正提示

  • 把对齐理解为一次性的微调,忽略它是持续校准的过程
  • 认为奖励模型分数越高质量一定越好,不设独立人工评估
  • 在选型时只看参数量与基准分数,不评估对齐质量与任务贴合度

分层任务

基础任务

在教师给出的流程图骨架上补齐三阶段的数据来源与产出。

标准任务

独立完成流程图、风险清单与选型含义说明。

挑战任务

为一个具体业务场景设计一份小规模偏好标注方案,包含标注指南要点、一致性检验方式与标注者构成的披露内容。

关联知识点

延伸阅读

学习状态:未学习

Day 53

推理优化:大模型精度与量化

建议时长:90 分钟

本日 CO:CO3 CO8

本日概要

先说人话:模型里的数不是只有一种精度。FP32、FP16、BF16、FP8、INT8、INT4用不同位数和编码方式保存数值,位数减少通常节省显存与带宽,也会改变范围、有效数字、硬件支持和模型质量。W8A8表示权重8位、激活8位;W8A16表示权重8位、激活16位;W4A16表示权重4位、激活16位。它们不自动规定KV Cache、累加器和敏感算子的精度,选型必须同时实测质量、显存和速度。

听书与视频

本日听书

8 分钟 · MP3 · 双主持人讲解

B 站讲解

大模型中的数值格式:FP32、FP16、BF16、FP8、INT8、INT4是什么?

向量隐修会 · 已核验 2026-08-31

在 B 站打开

学习目标

  • 能用位、字节、指数位和尾数位解释 FP32、TF32、FP16、BF16、FP8、INT8 与 INT4 的主要差异
  • 能读懂 W8A8、W8A16、W4A16 等记法,并区分权重、激活、累加器与 KV Cache 精度
  • 能区分混合精度、PTQ 与 QAT,并说明校准数据、缩放因子和离群值为何影响量化质量
  • 能比较 per-tensor、per-channel 与更细粒度缩放的成本和误差
  • 能用自身业务样本同时评估显存、速度与模型质量,而不是照搬他人的无损结论

核心讲解

先分清位数、范围和有效数字

FP32 每个数通常占 32 位(4 字节),范围和有效数字都较充足,常用于主权重、优化器状态或高精度累加,但显存和带宽开销大。FP16 与 BF16 都占 16 位(2 字节):FP16 给尾数更多位,局部精度较细,但指数范围较窄,训练时更容易上溢或下溢;BF16 保留与 FP32 相同数量的指数位,动态范围更大,但尾数更短。训练大模型时 BF16 往往更稳,是否更快则取决于硬件和内核。

TF32 是 NVIDIA Tensor Core 面向部分 FP32 矩阵运算的计算格式:保留接近 FP32 的指数范围,以较短尾数参与乘法,结果通常以更高精度累加。它不是把模型文件统一存成一种新的 19 位类型。FP8 仍是浮点格式,常见 E4M3 与 E5M2 在范围和有效数字之间取不同平衡;INT8/INT4 是整数表示,需要缩放因子把真实值映射到有限整数格点。8 位不等于同一种精度:FP8 与 INT8 的编码、范围和适用内核都不同。

W8A8 到底在说什么

W 是 Weight,A 是 Activation。W8A8 表示线性层矩阵乘法中的权重和激活都量化到 8 位,可能是 INT8 SmoothQuant,也可能在具体系统中指 FP8 权重与 FP8 激活;看到名称后还要确认数据类型、缩放粒度和硬件。W8A16 是 weight-only 量化:权重用 8 位保存,计算前按块或按通道反量化,激活仍为 FP16/BF16。W4A16 进一步把权重压到 4 位,常见 AWQ/GPTQ 路线以更强压缩换取更高的校准或质量风险。

这些记法不描述整个推理链路。矩阵乘法的乘积可能以 INT32、FP16、BF16 或 FP32 累加;LayerNorm、Softmax、路由器等敏感算子可能保留较高精度;词嵌入和输出头也可能不量化。KV Cache 是另一块长期驻留显存,可以单独选择 FP16、BF16、FP8 或 INT8。只有把权重、激活、计算、累加与缓存分别列出来,才能真正读懂一个模型的精度配置。

量化不是简单地把小数四舍五入

量化通常用 scale(以及某些方案中的 zero point)把浮点值映射到有限格点。对称量化让零点固定在零附近,计算简单;非对称量化允许零点偏移,更好利用偏斜分布,但实现更复杂。per-tensor 整个张量共用一组缩放参数,开销小却容易被极端值拖累;per-channel 为每个输出通道设置尺度,通常误差更小;per-group、per-token 或 block-wise 更细,但元数据、校准和内核要求也更高。

激活离群值是 W8A8 的核心难点:少数很大的值会把共享尺度拉宽,使大量普通值挤在很少的整数格点里。SmoothQuant 把一部分激活难度迁移到权重;LLM.int8() 把离群通道保留给更高精度路径;AWQ 依据激活统计保护重要权重。方法名称不是质量保证,校准样本若与真实请求不同,量化尺度就可能在上线后失效。

混合精度、PTQ 与 QAT

混合精度训练是在训练过程中让不同算子和状态使用不同浮点精度,例如前向与反向矩阵乘法用 FP16/BF16,关键累加或优化器状态保留 FP32。FP16 常需要梯度缩放避免小梯度下溢;BF16 动态范围更大,通常不依赖同样的缩放策略。混合精度主要解决训练速度与显存,并不等同于训练完成后把模型做 INT8/INT4 量化。

PTQ(训练后量化)不重新训练或只做少量校准,成本低,适合先建立部署基线;QAT(量化感知训练)在训练中模拟量化误差,让参数适应低精度,通常能改善更激进量化的质量,但需要训练数据、算力和更复杂的发布链路。选择顺序应是先用 FP16/BF16 建立质量基线,再试 PTQ;若关键任务损失不可接受且收益足够大,再考虑 QAT 或让敏感层回退到高精度。

显存估算与上线验收

只计算权重时,N 个参数以 b 位保存,理论体积约为 N×b÷8 字节:7B 模型的纯权重,FP32 约 28 GB,FP16/BF16 约 14 GB,INT8 约 7 GB,INT4 约 3.5 GB。真实显存还包括缩放参数、未量化层、运行时工作区、激活、KV Cache、框架开销和碎片,因此不能把理论值当作最低显卡容量。训练还要加梯度和优化器状态,远高于单份权重。

上线验收至少同时测五项:固定请求集上的任务质量、权重文件与峰值显存、首词元延迟、逐词元延迟/吞吐、不同上下文和并发下的稳定性。还要记录 GPU 型号、运行时版本、量化算法、W/A/KV/累加精度、校准集与缩放粒度。某个配置在一张卡上更省显存,并不保证在另一代硬件上更快;没有对应低精度内核时,反量化开销甚至可能抵消收益。

实践任务

为同一模型建立 FP16/BF16 基线,再比较 W8A16、W8A8 或 W4A16 中至少一种可用方案;记录权重体积、峰值显存、吞吐、首词元/逐词元延迟和业务评测质量。

  • 画一张精度拆解表,分别填写模型权重、激活、矩阵累加、敏感算子和 KV Cache 的数据类型,禁止只写一个“8位模型”。
  • 按参数量×位数÷8计算一个 7B 模型 FP32、FP16/BF16、INT8 与 INT4 的纯权重理论体积,再列出真实显存中未计入的项目。
  • 在本人授权环境中选一个较小开源模型,以 FP16/BF16 为基线,运行至少一种 W8A16、W8A8 或 W4A16 方案并记录版本、硬件和量化配置。
  • 用代表真实业务的固定样本比较任务质量、峰值显存、首词元延迟、逐词元延迟与吞吐;单独加入长上下文样本观察 KV Cache。
  • 检查错误样本和离群输入;若质量下降,依次尝试更细缩放、代表性校准集、敏感层回退或更高位宽,并写出最终选型边界。

自测与答案

第 1 题

W8A8 最准确的含义是什么?

尚未检查本题。

查看答案与评价要点

参考答案:权重和激活都采用 8 位表示

解析:W 指权重,A 指激活;它没有自动规定累加器、敏感算子或 KV Cache 的精度。

第 2 题

FP16 与 BF16 都是 16 位,为什么 BF16 在大模型训练中通常更不容易上溢或下溢?

尚未检查本题。

查看答案与评价要点

参考答案:BF16 的指数位更多、动态范围更接近 FP32

解析:BF16 用较多位保存指数、较少位保存尾数,因此范围大但局部有效数字少。

第 3 题

阅读一个量化模型配置时,除 W8A8 之外还应确认哪些精度?(多选)

尚未检查本题。

查看答案与评价要点

参考答案:矩阵累加器精度;LayerNorm/Softmax 等敏感算子精度;KV Cache 精度

解析:W/A 只描述矩阵计算两侧,不能代表完整推理链路。

第 4 题

PTQ 与 QAT 的主要区别是什么?

尚未检查本题。

查看答案与评价要点

参考答案:PTQ 主要在训练后量化,QAT 在训练中模拟量化误差

解析:PTQ 成本低;QAT 让模型适应量化误差,但需要额外训练流程。

第 5 题

哪些做法能降低低位量化的质量风险?(多选)

尚未检查本题。

查看答案与评价要点

参考答案:使用代表真实请求的校准集;采用 per-channel 或更细粒度缩放;分析并处理激活离群值

解析:量化质量取决于尺度、粒度、离群值与真实数据分布,不能只看压缩率。

尚未完成自测。

今日完成标准

  • 提交包含权重、激活、累加、敏感算子与 KV Cache 的精度拆解表
  • 提交 7B 模型不同位宽的理论权重体积计算,并说明真实显存额外组成
  • 提交基线与至少一种量化方案的质量、显存、TTFT、TPOT/吞吐对照
  • 写出校准数据、离群值、硬件内核和精度回退条件

常见错误与纠正提示

  • 把 FP8 与 INT8 当成同一种 8 位格式,忽略编码和硬件内核差异
  • 把 W8A8 理解为模型所有张量、算子、累加器和 KV Cache 都是 8 位
  • 只按参数量计算显存,漏掉缩放参数、运行时工作区、激活与 KV Cache
  • 使用与真实请求分布无关的校准集,然后宣称量化无损
  • 只看显存下降,不测任务质量、首词元延迟、逐词元速度和高并发稳定性

分层任务

基础任务

读懂 FP32/FP16/BF16/INT8/INT4 与 W8A8/W8A16/W4A16,并完成理论显存计算。

标准任务

完成一种 PTQ 配置与 FP16/BF16 基线的五项指标对照,解释校准和缩放粒度。

挑战任务

比较 weight-only 与 weight-activation 两种方案,加入长上下文 KV Cache 测试,并为质量下降设计回退策略。

关联知识点

延伸阅读

学习状态:未学习

Day 54

向量数据库与Embedding

建议时长:75 分钟

本日 CO:CO3 CO8

本日概要

向量检索把文本转成稠密向量,用向量间的距离近似语义相似度,从而能检索到用词不同但含义相近的内容。它不是关键词检索的替代品:精确的编号、型号、人名等场景,关键词匹配往往更可靠,实践中两者混合使用效果更好。几个关键决策必须显式做出并记录:选哪个嵌入模型(决定向量维度与语言适配)、用哪种距离度量(必须与模型训练时一致)、文档如何切块(块太大稀释语义、太小丢失上下文)、以及索引类型(精确检索保证召回、近似检索用少量召回损失换速度)。

听书与视频

本日听书

6 分钟 · MP3 · 双主持人讲解

B 站讲解

向量数据库原理:一次查询对上百万向量,AI怎么找到相似内容

bili_53397442823 · 已核验 2026-08-29

在 B 站打开

学习目标

  • 能说明向量检索相对关键词检索的优势与失效场景
  • 能解释距离度量必须与嵌入模型训练方式一致的原因
  • 能设计并比较不同的文档切块策略,说明块大小与重叠的取舍
  • 能区分精确检索与近似检索,并用召回率与延迟量化二者差异

核心讲解

嵌入、距离与切块

嵌入模型把一段文本映射为固定维度的向量,训练目标使语义相近的文本在向量空间中距离更近。选择嵌入模型时要看三点:是否支持目标语言(很多模型在中文上表现明显弱于英文)、向量维度(影响存储与检索成本)、以及最大输入长度(超出部分会被截断,导致长文档尾部信息完全丢失)。距离度量必须与模型训练时使用的一致——用余弦相似度训练的模型改用欧氏距离检索,排序结果会失真,这是配置阶段最容易埋下的隐患。

切块策略直接决定检索质量。块太大时,一个块内包含多个主题,向量是它们的平均,与任何单一查询的相似度都不高;块太小时,单个块缺少足够上下文,检索到了也无法支撑回答。常见做法是按语义边界(段落、小节)切分并保留一定重叠,使跨块的句子不会被切断。没有普适的最佳块大小,必须用自己的文档与真实查询做对比实验,并把实验结果作为配置依据记录下来。

索引类型与混合检索

精确检索遍历全部向量计算距离,保证找到真正最近的结果,但耗时随数据量线性增长。近似检索通过构建图或聚类结构大幅加快查询,代价是可能漏掉少量真正的最近邻。选择时要量化这个取舍:用一组已知答案的查询测出近似检索的召回率,同时记录延迟,然后判断在业务上这点召回损失是否可接受。数据量较小时,精确检索往往完全够用,过早引入近似索引只会增加复杂度。

向量检索有明确的失效场景:查询中包含精确的产品编号、订单号、人名或专有缩写时,语义相似度可能把一批「看起来相关」但编号不对的内容排在前面。关键词检索在这类查询上更可靠。因此生产系统普遍采用混合检索:同时执行向量检索与关键词检索,再把两路结果按某种规则合并排序。设计时应当明确记录合并规则,并用包含精确标识符的查询专门测试这条路径。

实践任务

为一批文档建立向量索引,比较两种切块策略与两种距离度量对检索结果的影响,并与关键词检索做对照。

  • 准备一批文档与至少十条带已知正确答案的查询,记录文档总量与平均长度。
  • 用两种切块策略(如按固定长度切分与按段落切分并保留重叠)分别建立索引,对同一组查询比较命中情况。
  • 在同一索引上改用与嵌入模型不匹配的距离度量重跑,记录排序结果的变化并解释原因。
  • 对包含精确编号的查询分别执行向量检索与关键词检索,对比结果;写出混合检索的合并规则草案。

自测与答案

第 1 题

为什么距离度量必须与嵌入模型的训练方式一致?

尚未检查本题。

查看答案与评价要点

参考答案:嵌入模型在训练时按特定的相似度定义优化向量分布,例如以余弦相似度为目标时,向量的方向承载语义而模长不重要。检索时改用其他度量(如欧氏距离)会把模长差异纳入排序,得到与模型语义空间不一致的结果,排序失真且难以察觉。

评价要点:指出训练目标定义了相似度含义;举例说明方向与模长的差异;指出不一致会导致排序失真

第 2 题

在什么查询场景下向量检索会失效?应如何补救?

尚未检查本题。

查看答案与评价要点

参考答案:查询包含精确的产品编号、订单号、人名或专有缩写时,语义相似度会把编号不同但内容相似的结果排在前面。补救方式是采用混合检索:同时执行关键词检索与向量检索并合并排序,并用包含精确标识符的查询专门测试这条路径是否生效。

评价要点:指出精确标识符类查询是失效场景;提出混合检索方案;要求为该场景设计专门测试

尚未完成自测。

今日完成标准

  • 提交两种切块策略在同一组查询上的命中对比与结论
  • 提交距离度量不匹配的对照实验记录与解释
  • 提交精确标识符查询下两种检索方式的对比与混合检索合并规则草案

常见错误与纠正提示

  • 沿用默认块大小而不做对比实验,检索质量差却归因于模型能力
  • 距离度量与嵌入模型不匹配,排序失真且长期未被发现
  • 数据量很小就引入近似索引,增加复杂度却没有可测量的收益

分层任务

基础任务

使用教师提供的文档集与脚本完成一组切块对比,并读出命中差异。

标准任务

独立完成两种切块、距离度量对照与关键词对比实验。

挑战任务

为近似检索测出召回率与延迟曲线,给出在本数据规模下是否值得启用的量化结论。

关联知识点

延伸阅读

学习状态:未学习

Day 55

RAG架构

建议时长:75 分钟

本日 CO:CO3 CO8

本日概要

检索增强生成把外部知识引入生成过程:先用查询检索相关片段,再把片段与问题一起交给模型作答。它解决的是模型知识陈旧、无法覆盖私有资料、以及答案难以追溯来源三个问题,代价是引入了检索这一新的失败面。一条完整的链路包含查询理解、检索、重排、上下文组装、生成与引用标注六个环节,任何一环失效都会表现为「回答质量差」,因此必须分环节评估而不是只看最终输出。最关键的工程要求是:每个结论都能指回具体来源片段,让使用者可以自行核对。

听书与视频

本日听书

6 分钟 · MP3 · 双主持人讲解

B 站讲解

【B站精选】吊打付费!16分钟彻底搞懂RAG!拆解RAG(检索增强生成)完整工作机制,从原理到流程分步讲解,小白也能看懂底层逻辑与核心运作思路!吃透AI大模型

AI-Agent搭建 · 已核验 2026-08-29

在 B 站打开

学习目标

  • 能画出检索增强生成的六个环节,并说明每一环可能的失败模式
  • 能设计分环节的评估方法,区分检索失败与生成失败
  • 能说明上下文组装中片段顺序、数量与去重的影响
  • 能实现可核对的引用标注,使每个结论都能指回原文片段

核心讲解

六个环节与各自的失败模式

查询理解负责把用户口语化的问题转成适合检索的形式,失败表现为检索词与文档用语不匹配;检索负责召回候选片段,失败表现为正确片段根本没被召回;重排负责把最相关的片段排到前面,失败表现为正确片段被召回但排在很后而被截断;上下文组装决定放入多少片段、以什么顺序放,失败表现为关键片段被挤出窗口;生成负责基于片段作答,失败表现为片段正确但回答错误或加入了片段中没有的内容;引用标注负责让结论可追溯,失败表现为引用与实际依据不符。

把这六个环节分开评估至关重要。只看最终答案时,所有问题都表现为「回答不好」,无法定位。正确做法是为每条测试问题记录中间结果:检索到了哪些片段、正确片段的排名是多少、最终进入上下文的是哪几段、生成的回答引用了哪一段。有了这份记录,就能算出「检索召回率」与「有正确片段时的回答准确率」两个独立指标,从而知道该改检索还是该改提示。

上下文组装与可核对的引用

上下文组装是最容易被忽视的一环。片段数量并非越多越好:无关片段会稀释注意力并占用窗口,还可能引入互相矛盾的信息;片段顺序也有影响,模型对上下文不同位置的信息利用程度并不均匀。此外还要处理重复——同一段内容因切块重叠被多次召回时,应当去重后再组装。这些都是可以用对照实验确定的参数,而不该凭默认值。

引用标注是检索增强相对纯生成的核心优势,必须做到可核对:每个引用要能定位到具体的文档与片段位置,使用者点开就能看到原文。做不到这一点时,引用反而会制造虚假的可信感。工程上还应加一道校验——检查回答中的关键陈述是否确实出现在被引用的片段中,不一致时降级为「未找到依据」而不是继续输出。这条规则比任何提示词技巧都更能提升系统的可信度。

实践任务

搭建一个最小可用的检索增强问答流程,分环节记录中间结果,并为十条测试问题标注每一环的成败。

  • 准备十条覆盖不同类型的测试问题(事实型、比较型、含精确编号型),为每条标注正确答案与应命中的文档片段。
  • 搭建最小链路并为每条问题记录中间结果:召回片段列表、正确片段排名、进入上下文的片段、最终回答与引用。
  • 分别计算检索召回率与「有正确片段时的回答准确率」,据此判断当前瓶颈在检索还是生成。
  • 做两组对照:改变进入上下文的片段数量、以及是否去重;再实现一次引用校验,对关键陈述未出现在引用片段中的回答标记为无依据。

自测与答案

第 1 题

为什么必须分环节评估检索增强系统,而不能只看最终答案质量?

尚未检查本题。

查看答案与评价要点

参考答案:检索、重排、上下文组装、生成任一环失败都表现为「回答不好」,只看最终输出无法定位问题。分环节记录中间结果后,可以分别计算检索召回率与「有正确片段时的回答准确率」,从而判断应当改进检索还是改进提示与生成,避免把精力投在错误的环节。

评价要点:指出多环节失败表现相同;提出记录中间结果;给出两个可分离的独立指标

第 2 题

引用标注在什么情况下反而有害?应如何避免?

尚未检查本题。

查看答案与评价要点

参考答案:当引用无法定位到具体片段、或引用内容并不支持回答中的陈述时,引用会制造虚假的可信感,使用者以为结论已被核实。避免方式是让每个引用可定位到文档与片段位置以便核对,并加入自动校验:检查关键陈述是否出现在被引用片段中,不一致时降级为「未找到依据」而非继续输出。

评价要点:指出无法核对的引用制造虚假可信感;要求引用可定位到具体片段;提出一致性校验与降级输出

尚未完成自测。

今日完成标准

  • 提交十条测试问题的完整中间结果记录表
  • 给出检索召回率与有正确片段时的回答准确率两个指标,并据此判断瓶颈
  • 提交片段数量与去重两组对照实验结果,以及引用校验的实现与触发样例

常见错误与纠正提示

  • 只评估最终答案,无法判断该改检索还是改提示
  • 认为放入的片段越多越好,导致关键信息被稀释或挤出窗口
  • 引用只标出文档名而无法定位片段,使用者无法核对

分层任务

基础任务

使用教师提供的链路完成十条问题的中间结果记录,并读出检索召回率。

标准任务

独立搭建最小链路,完成分环节评估与两组对照实验。

挑战任务

实现引用一致性自动校验,并在测试集上统计降级触发率与由此避免的错误数量。

关联知识点

延伸阅读

学习状态:未学习

Day 56

周末复盘

建议时长:75 分钟

本日 CO:CO3 CO8

本日概要

本周收尾把预训练、对齐、推理与检索增强串成一条完整链路,并对应到成本与风险。链路是:数据与分词决定模型看到什么;预训练决定基础能力;对齐决定是否好用;推理部署决定成本与延迟;检索增强决定能否使用私有与最新知识并可追溯。选型时真正要回答的不是「哪个模型最强」,而是「在我的任务、数据、延迟与预算约束下,哪种组合的总成本最低且风险可控」。很多场景下,一个中等规模模型加上做扎实的检索与提示,效果和成本都优于直接换更大的模型。

听书与视频

本日听书

6 分钟 · MP3 · 双主持人讲解

B 站讲解

五分钟轻松搞懂:Transformer架构 大语言模型聊天原理(二)

毛哥Mag · 已核验 2026-08-29

在 B 站打开

学习目标

  • 能画出从数据到部署的完整链路,并说明每一环对最终效果的影响方式
  • 能按任务、数据、延迟、预算四类约束组织模型选型论证
  • 能列出推理服务的主要成本驱动因素,并说明哪些数字必须实测
  • 能为一个方案列出风险清单与对应的缓解或兜底措施

核心讲解

把链路与决策对应起来

链路上的每一环都对应一类可做的决策:分词与上下文长度对应「一次能处理多少内容、成本多少」;基础模型规模对应「能力上限与显存需求」;对齐质量对应「是否听得懂指令、输出是否稳定」;推理配置(量化、批处理、缓存管理)对应「延迟与并发」;检索设计对应「能否使用私有知识、答案能否追溯」。把问题按这五类分开,讨论就不会退化成「换个更大的模型试试」。

一个常被忽略的事实是:在很多业务场景中,效果瓶颈不在模型能力,而在检索质量与提示设计。本周第五天的分环节评估方法正是为此设计——先量化出「有正确片段时的回答准确率」,如果这个数字已经很高,那么换更大的模型收益有限,应当把精力投在检索上。用数据回答「该改哪一环」,比凭直觉升级模型有效得多。

成本、风险与兜底

推理成本的主要驱动因素包括:输入与输出的词元数、并发数与键值缓存显存、模型规模与量化配置、以及是否需要长上下文。这些都应当用自己的真实请求样本实测,而不是按官方示例估算——真实业务的输入长度分布往往与示例差别很大。成本文档应记录计费单位与驱动因素,并给出低中高三档用量情景,而不是一个精确的总价。

风险清单至少要覆盖四类:内容风险(生成不准确或有害内容)、数据风险(私有数据是否出域、日志中是否留存敏感信息)、依赖风险(外部服务的可用性与接口变更)、以及成本风险(用量激增导致超支)。每一类都要有对应的缓解或兜底措施,例如引用校验与人工复核、数据脱敏与不出域部署、降级到备用模型或规则回答、以及用量告警与限流。写不出兜底措施的风险,就是需要在方案评审中重点讨论的部分。

实践任务

为一个具体业务场景写一份技术方案:给出模型选型、部署方式、检索设计与评估方案,并逐项列出成本驱动因素与风险。

  • 画出从数据、分词、模型、对齐、推理到检索的完整链路图,为每一环标注它决定了什么。
  • 为一个具体业务场景写出任务、数据、延迟、预算四类约束的具体数值或范围,标明来源是实测还是假设。
  • 给出模型选型与部署方案,列出成本驱动因素并用自己的请求样本估算低中高三档用量情景。
  • 编写风险清单,覆盖内容、数据、依赖、成本四类,为每项写出缓解措施与兜底方案;无兜底的项单独标出。

自测与答案

第 1 题

在什么情况下,投入检索优化比换更大的模型更划算?如何用数据判断?

尚未检查本题。

查看答案与评价要点

参考答案:当分环节评估显示「有正确片段时的回答准确率」已经很高,而检索召回率偏低时,瓶颈在检索而非模型能力,此时优化切块、重排与混合检索的收益远大于升级模型。判断方法是先记录每条测试问题的中间结果,分别算出这两个指标,再据此决定投入方向。

评价要点:指出用两个分离指标判断瓶颈;说明召回低而生成准确率高时应优化检索;强调用数据而非直觉决定投入方向

第 2 题

为什么推理成本必须用自己的真实请求样本实测?

尚未检查本题。

查看答案与评价要点

参考答案:成本主要由输入与输出词元数、并发与缓存显存驱动,而真实业务的输入长度分布、输出长度与并发模式往往与官方示例差别很大;按示例估算会系统性偏离。应当采集真实请求样本测量词元分布与实际占用,并给出低中高三档用量情景而非单一总价。

评价要点:列出词元数与并发等主要驱动因素;指出示例与真实分布的差异;提出用三档情景代替单一总价

尚未完成自测。

今日完成标准

  • 提交完整链路图,每一环标注其决定的内容
  • 提交四类约束的具体数值与来源标注,以及基于真实样本的三档成本情景
  • 提交覆盖四类风险的清单,每项有缓解或兜底措施,无兜底项被单独标出

常见错误与纠正提示

  • 效果不好就换更大的模型,不先做分环节评估定位瓶颈
  • 按官方示例估算成本,上线后实际用量与预估严重偏离
  • 风险清单只写内容风险,忽略数据出域、依赖可用性与成本失控

分层任务

基础任务

在教师给出的场景上完成链路图与四类约束填写。

标准任务

独立完成完整技术方案,含选型论证、成本情景与风险清单。

挑战任务

为方案补充一份降级设计:外部模型服务不可用时的备用路径、降级后的能力边界与用户提示文案。

关联知识点

延伸阅读

学习状态:未学习