Appearance
术语表 — 60+ 核心概念速查
面向前端/跨端工程师。每个词条给出:英文、所属章节、一句话定义、公式(如有)、前端类比、代码定位。 判定标准:能用自己的话讲清 + 能指出代码在哪 + 能说出它坏掉时的表现。
如何使用
一、计算图与自动微分(第3章, 第6章)
计算图
- 英文:computational graph
- 章节:第3章
- 定义:把一次前向计算记录成有向无环图,节点是中间值,边是算子依赖。
- 公式:
- 前端类比:像 Vue/React 的响应式依赖图——先建依赖,再按拓扑序回流。
- 代码定位:
python/llm_core/autograd.py
autograd
- 英文:automatic differentiation
- 章节:第3章
- 定义:自动把每一步运算反向传播成梯度,免去手写偏导。
- 公式:—
- 前端类比:像 ESLint 自动定位错误,不必逐行
console.log。 - 代码定位:
python/llm_core/autograd.py
链式法则
- 英文:chain rule
- 章节:第3章
- 定义:复合函数的导数等于各层导数相乘,反向传播的数学依据。
- 公式:
- 前端类比:像中间件链:
ctx.next()把请求与回写串起来。 - 代码定位:
python/llm_core/autograd.py
拓扑排序
- 英文:topological sort
- 章节:第3章
- 定义:保证每个节点只在所有前置节点算完之后才被处理,决定反向传播的顺序。
- 公式:—
- 前端类比:像 Webpack 的 loader 链,从入口到产物按依赖先后产出。
- 代码定位:
python/llm_core/autograd.py
叶子节点
- 英文:leaf node
- 章节:第3章
- 定义:没有
prev的输入节点,梯度会在这里停下并写入.grad。 - 公式:—
- 前端类比:像组件树里的 props 入口——依赖的终点。
- 代码定位:
python/llm_core/autograd.py
梯度累加
- 英文:gradient accumulation
- 章节:第6章
- 定义:把多次小 batch 的梯度相加,模拟出大 batch 的效果。
- 公式:
- 前端类比:像
Array.reduce把多条流合并成一条。 - 代码定位:
python/llm_core/tensor_grad.py
有限差分 / gradcheck
- 英文:finite difference / gradient check
- 章节:第3章
- 定义:用极小扰动
估算导数,与自动微分结果比对,验证反向正确。 - 公式:
- 前端类比:像单元测试里的快照比对——确认实现没写错。
- 代码定位:
python/llm_core/gradcheck.py
微分与导数
- 英文:derivative vs. differential
- 章节:第3章
- 定义:导数是切线斜率,微分是无限小增量;神经网络里通常混用。
- 公式:
- 前端类比:像
Math.h里Math.roundvsMath.trunc的差别。 - 代码定位:
python/llm_core/autograd.py
梯度
- 英文:gradient
- 章节:第3章
- 定义:损失函数对参数的偏导向量,标明了参数往哪边调能降 loss。
- 公式:
- 前端类比:像 Webpack 的 sourcemap,告诉你改动会影响哪些输出。
- 代码定位:
python/llm_core/autograd.py
参数更新
- 英文:parameter update
- 章节:第6章
- 定义:按学习率与梯度把参数往反方向推一步,公式
。 - 公式:
- 前端类比:像
git rebase把提交按目标线串起来。 - 代码定位:
python/llm_core/optimizer.py
loss
- 英文:loss function
- 章节:第3章
- 定义:衡量模型预测与真值的差距,训练目标就是最小化它。
- 公式:
- 前端类比:像 CI 里的失败计数——越低越好。
- 代码定位:
python/llm_core/bigram.py
反向传播
- 英文:backpropagation
- 章节:第3章
- 定义:从 loss 回溯到每个叶子,沿链式法则累乘梯度。
- 公式:—
- 前端类比:像事件冒泡:捕获阶段一路收信息,最后统一处理。
- 代码定位:
python/llm_core/autograd.py
二、语言建模基础(第4章)
Token
- 英文:token
- 章节:第4章
- 定义:模型处理的最小语义单元,可以是字、子词或符号。
- 公式:—
- 前端类比:像 Babel 编译后的最小语法单元——AST 节点。
- 代码定位:
python/llm_core/bigram.py
词表 vocab
- 英文:vocabulary
- 章节:第4章
- 定义:模型能识别的全部 token 及其索引映射表。
- 公式:
- 前端类比:像 i18n 字典——把字符串 ID 化。
- 代码定位:
python/llm_core/bpe.py
embedding
- 英文:embedding
- 章节:第4章
- 定义:把离散 token 映射成连续向量,捕捉语义相似度。
- 公式:
- 前端类比:像 SVG
<symbol>——把抽象 ID 渲染成可视片段。 - 代码定位:
python/llm_core/bigram.py
logits
- 英文:logits
- 章节:第4章
- 定义:模型最后一层未归一化的分数,喂给 softmax 得到概率。
- 公式:
- 前端类比:像
Promise.all返回前的中间态——还没决定谁赢。 - 代码定位:
python/llm_core/mlp_lm.py
softmax
- 英文:softmax
- 章节:第4章
- 定义:把 logits 指数化再归一,得到离散分布,公式
。 - 公式:
- 前端类比:像 CSS 优先级
!important——把所有权重放大到一目了然。 - 代码定位:
python/llm_core/mlp_lm.py
交叉熵 CE
- 英文:cross-entropy
- 章节:第4章
- 定义:衡量两个分布之间的距离,分类任务最常用的损失。
- 公式:
- 前端类比:像 Git diff——逐位对照找出偏差。
- 代码定位:
python/llm_core/mlp_lm.py
负对数似然 NLL
- 英文:negative log-likelihood
- 章节:第4章
- 定义:把正确 token 的预测概率取负对数,是交叉熵在独热标签下的简化。
- 公式:
- 前端类比:像没命中 cache 时的
cache-miss日志——必然要付出代价。 - 代码定位:
python/llm_core/mlp_lm.py
最大似然估计 MLE
- 英文:maximum likelihood estimation
- 章节:第4章
- 定义:让模型在训练数据上的似然最大,等价于最小化交叉熵。
- 公式:
- 前端类比:像调 ESLint 规则让代码最合规。
- 代码定位:
python/llm_core/mlp_lm.py
teacher forcing
- 英文:teacher forcing
- 章节:第4章
- 定义:训练时用真实 token 而不是模型自己的预测作为下一步输入,加速收敛。
- 公式:—
- 前端类比:像 IDE 自动补全——引导你输入正确答案。
- 代码定位:
python/llm_core/mlp_lm.py
困惑度 perplexity
- 英文:perplexity
- 章节:第4章
- 定义:交叉熵的指数,越低说明模型越确定地预测下一个 token。
- 公式:
- 前端类比:像 RPS(请求每秒)——越低越稳。
- 代码定位:
python/llm_core/mlp_lm.py
bigram
- 英文:bigram
- 章节:第4章
- 定义:只用上一个 token 预测下一个,是 n-gram 的最小形式。
- 公式:
- 前端类比:像组件只看直接 prop,不递归——最朴素的依赖。
- 代码定位:
python/llm_core/bigram.py
n-gram
- 英文:n-gram
- 章节:第4章
- 定义:连续 n 个 token 片段的统计,用于语言建模的早期方法。
- 公式:
- 前端类比:像
Array.slice(n-1)拿最近一段窗口。 - 代码定位:
python/llm_core/bigram.py
三、分词(第5章)
BPE
- 英文:byte-pair encoding
- 章节:第5章
- 定义:从字符出发反复合并最高频对,最终得到子词词表。
- 公式:—
- 前端类比:像 PostCSS 把 CSS 合并成更短的语法糖。
- 代码定位:
python/llm_core/bpe.py
merge
- 英文:merge operation
- 章节:第5章
- 定义:BPE 训练时把出现频率最高的相邻字符对合成一个新符号。
- 公式:
- 前端类比:像 Git 的
merge --squash——把多笔提交压成一笔。 - 代码定位:
python/llm_core/bpe.py
byte 级分词
- 英文:byte-level tokenization
- 章节:第5章
- 定义:把任意 UTF-8 字节序列纳入词表,避免 OOV(未登录词)问题。
- 公式:—
- 前端类比:像 Buffer/Uint8Array——总能拆到底层。
- 代码定位:
python/llm_core/bpe.py
UTF-8
- 英文:UTF-8
- 章节:第5章
- 定义:变长 Unicode 编码,向后兼容 ASCII,是现代 NLP 的事实标准。
- 公式:—
- 前端类比:像
<meta charset="utf-8">——写对字符集才不会乱码。 - 代码定位:
python/llm_core/bpe.py
特殊 token
- 英文:special tokens
- 章节:第5章
- 定义:
<bos><eos><pad>等控制性符号,用于对齐与边界识别。 - 公式:—
- 前端类比:像 React Fragment
<>——存在但不影响结构。 - 代码定位:
python/llm_core/bpe.py
round-trip 往返
- 英文:round-trip
- 章节:第5章
- 定义:encode 后再 decode 必须能还原原串,是分词正确性的最基本断言。
- 公式:
- 前端类比:像 JSON 序列化测试——
JSON.parse(JSON.stringify(o))不丢字段。 - 代码定位:
python/tests/test_bpe.py
token 边界
- 英文:token boundary
- 章节:第5章
- 定义:分词结果里相邻 token 之间的分界点,影响子词粒度。
- 公式:—
- 前端类比:像 ESLint 单词边界
\b正则——边界要识别清楚。 - 代码定位:
python/llm_core/bpe.py
四、注意力与 Transformer(第7章)
Attention
- 英文:attention
- 章节:第7章
- 定义:通过 query 与 key 的相似度给 value 加权,让模型关注相关上下文。
- 公式:
- 前端类比:像 CSS
:hover选择器——匹配了才生效。 - 代码定位:
python/llm_core/attention.py
scaled dot-product attention
- 英文:scaled dot-product attention
- 章节:第7章
- 定义:把点积除以
,避免维度大时 softmax 进入饱和区。 - 公式:
- 前端类比:像
transform: scale(0.5)——按比例缩放避免溢出。 - 代码定位:
python/llm_core/attention.py
query
- 英文:query
- 章节:第7章
- 定义:当前位置发出的「我想要什么」向量,用于检索。
- 公式:
- 前端类比:像浏览器的搜索词——是检索的入口。
- 代码定位:
python/llm_core/attention.py
key
- 英文:key
- 章节:第7章
- 定义:每个位置的「我是什么」向量,与 query 做相似度。
- 公式:
- 前端类比:像数据库索引——能让你快速定位。
- 代码定位:
python/llm_core/attention.py
value
- 英文:value
- 章节:第7章
- 定义:被加权的「实际内容」向量,是 attention 的输出来源。
- 公式:
- 前端类比:像
Map.get(key)返回的真实载荷。 - 代码定位:
python/llm_core/attention.py
causal mask
- 英文:causal mask
- 章节:第7章
- 定义:把未来位置的注意力分数置为
,保证解码时只看历史。 - 公式:
- 前端类比:像
aria-hidden="true"——屏蔽未来还没渲染的内容。 - 代码定位:
python/llm_core/attention.py
多头注意力 multi-head
- 英文:multi-head attention
- 章节:第7章
- 定义:把 Q/K/V 切成多组并行 attention,让模型同时关注不同子空间。
- 公式:
- 前端类比:像多个
<input>并列工作,每个关注不同字段。 - 代码定位:
python/llm_core/attention.py
注意力头 head
- 英文:attention head
- 章节:第7章
- 定义:多头的其中一支,往往学到不同语义关系(语法、指代等)。
- 公式:—
- 前端类比:像 Tailwind 的工具类插槽——每个 head 是独立的 utility。
- 代码定位:
python/llm_core/attention.py
残差连接
- 英文:residual connection
- 章节:第7章
- 定义:把输入直连到输出
,缓解梯度消失。 - 公式:
- 前端类比:像 Promise 链里的
try/finally——保证出口存在。 - 代码定位:
python/llm_core/blocks.py
位置编码
- 英文:positional encoding
- 章节:第7章
- 定义:把位置信息注入 token embedding,让模型感知顺序。
- 公式:
- 前端类比:像 CSS Grid 的
grid-row——给元素一个明确位置。 - 代码定位:
python/llm_core/transformer.py
Transformer Block
- 英文:transformer block
- 章节:第7章
- 定义:Attention + FFN + 残差 + LN 的标准组合,是 LLM 的基本单元。
- 公式:—
- 前端类比:像 React 函数组件——可复用、有 props、有输出。
- 代码定位:
python/llm_core/blocks.py
前馈层 FFN
- 英文:feed-forward network
- 章节:第7章
- 定义:块内的两层 MLP,提供 token 级别的非线性变换。
- 公式:
- 前端类比:像 Vue 的
computed——拿到数据做加工再输出。 - 代码定位:
python/llm_core/blocks.py
tied embedding
- 英文:tied embedding
- 章节:第7章
- 定义:输入 embedding 与输出 logits 共享权重,节省参数。
- 公式:
- 前端类比:像同一份 CSS 类同时控制颜色与字体——共享样式源。
- 代码定位:
python/llm_core/tied_embedding.py
五、归一化与激活(第6章, 第7章, 第9章)
LayerNorm
- 英文:layer normalization
- 章节:第6章
- 定义:对单样本内特征维度做归一化,稳定训练。
- 公式:
- 前端类比:像组件内的
useMemo——把不稳定输入归一化。 - 代码定位:
python/llm_core/blocks.py
RMSNorm
- 英文:root mean square layer norm
- 章节:第9章
- 定义:只缩放不中心化的简化 LayerNorm,推理更省时。
- 公式:
- 前端类比:像 CSS 的
aspect-ratio——计算简单又常用。 - 代码定位:
python/llm_core/rmsnorm.py
SwiGLU
- 英文:swiGLU activation
- 章节:第9章
- 定义:用 SiLU 门控线性单元的前馈层,比 ReLU 表达力更强。
- 公式:
- 前端类比:像
v-if控制可见性——门控后才有输出。 - 代码定位:
python/llm_core/swiglu.py
GELU
- 英文:Gaussian Error Linear Unit
- 章节:第6章
- 定义:高斯误差线性单元,平滑地保留负值信息。
- 公式:
- 前端类比:像
Intl.NumberFormat——平滑格式化。 - 代码定位:
python/llm_core/blocks.py
权重初始化
- 英文:weight initialization
- 章节:第6章
- 定义:用 Xavier/Kaiming 等策略给参数赋初值,影响收敛速度。
- 公式:
- 前端类比:像 Webpack 的
entry——出发点定好后续路径才顺。 - 代码定位:
python/llm_core/tensor_grad.py
梯度裁剪
- 英文:gradient clipping
- 章节:第6章
- 定义:把梯度的范数或值限制在阈值内,防止爆炸。
- 公式:
- 前端类比:像 ESLint 的
max-len——超过阈值就强制收敛。 - 代码定位:
python/llm_core/optimizer.py
学习率调度
- 英文:learning rate schedule
- 章节:第6章
- 定义:warmup + cosine 衰减等节奏,控制训练步幅。
- 公式:
- 前端类比:像 CDN 缓存预热——先把资源加载到位再用。
- 代码定位:
python/llm_train/train.py
六、训练与优化(第6章, 第8章)
SGD
- 英文:stochastic gradient descent
- 章节:第6章
- 定义:用随机小 batch 的梯度更新参数的最基础优化器。
- 公式:
- 前端类比:像
Array.sort——一步步逼近最优顺序。 - 代码定位:
python/llm_core/optimizer.py
AdamW
- 英文:Adam with decoupled weight decay
- 章节:第6章
- 定义:在 Adam 基础上把权重衰减与梯度更新解耦,是 LLM 训练的事实标准。
- 公式:
- 前端类比:像 Vue3 的 reactivity——细节封装好,开箱即用。
- 代码定位:
python/llm_core/optimizer.py
动量
- 英文:momentum
- 章节:第6章
- 定义:把历史梯度指数平均加入更新,平滑震荡。
- 公式:
- 前端类比:像
requestAnimationFrame——保留惯性,避免抖动。 - 代码定位:
python/llm_core/optimizer.py
weight decay
- 英文:weight decay
- 章节:第6章
- 定义:在损失上加入参数正则项,抑制过拟合。
- 公式:
- 前端类比:像 ESLint 的
no-unused-vars——压一压没用上的代码。 - 代码定位:
python/llm_core/optimizer.py
batch
- 英文:batch
- 章节:第6章
- 定义:一次前向/反向所用的样本数,影响显存与梯度噪声。
- 公式:—
- 前端类比:像
Promise.all([...])——并发处理一组。 - 代码定位:
python/llm_train/data.py
epoch 与 step
- 英文:epoch / step
- 章节:第6章
- 定义:epoch 是看完一遍数据集,step 是单次参数更新。
- 公式:
- 前端类比:像
npm install一次次直到 lockfile 收敛。 - 代码定位:
python/llm_train/train.py
checkpoint
- 英文:checkpoint
- 章节:第6章
- 定义:训练中定期保存的模型权重快照,可用于恢复与推理。
- 公式:—
- 前端类比:像 Git tag——关键时刻打个标记。
- 代码定位:
python/llm_train/checkpoint.py
seed 与可复现性
- 英文:seed / reproducibility
- 章节:第6章
- 定义:固定随机种子,让 Python/NumPy/CUDA 的随机结果一致。
- 公式:—
- 前端类比:像
package-lock.json——锁住依赖保证一致。 - 代码定位:
python/llm_train/config.py
train/validation 切分
- 英文:train / validation split
- 章节:第6章
- 定义:把数据分成训练集和验证集,前者学、后者评。
- 公式:—
- 前端类比:像 dev/staging/prod 环境隔离。
- 代码定位:
python/llm_train/data.py
过拟合
- 英文:overfitting
- 章节:第6章
- 定义:模型在训练集上很好但在验证集上差,缺乏泛化。
- 公式:—
- 前端类比:像硬编码常量——换个环境就崩。
- 代码定位:
python/llm_train/train.py
scaling law
- 英文:scaling law
- 章节:第8章
- 定义:描述模型能力随参数/数据/算力变化的幂律关系。
- 公式:
- 前端类比:像 CDN 命中率的边际收益曲线。
- 代码定位:—(本课只做概念对照,不实现)
七、推理与效率(第9章)
KV Cache
- 英文:key-value cache
- 章节:第9章
- 定义:把每一步算过的 K/V 缓存下来,避免重复计算。
- 公式:—
- 前端类比:像
useMemo缓存 expensive 结果。 - 代码定位:
python/llm_core/kv_cache.py
PagedKV / PagedAttention
- 英文:paged KV cache / PagedAttention
- 章节:第9章
- 定义:把 KV Cache 切成固定大小的物理块,按需分配、跨请求共享,避免连续显存分配造成的碎片。
- 公式:—
- 前端类比:像操作系统虚拟内存的分页——逻辑块号映射到物理页帧,也像 IndexedDB 的分页存储。
- 代码定位:
clean_room/paged_kv.py、python/llm_core/paged_kv.py
RoPE
- 英文:rotary positional embedding
- 章节:第9章
- 定义:把位置信息编码成复平面旋转,相对长度可外推。
- 公式:
- 前端类比:像 CSS 的
transform: rotate()——位置由角度表达。 - 代码定位:
python/llm_core/transformer.py
GQA
- 英文:grouped-query attention
- 章节:第9章
- 定义:多组 query 共享同一份 K/V,省显存又不损质量。
- 公式:—
- 前端类比:像 SWR 的 stale-while-revalidate——多个请求共用一份缓存。
- 代码定位:
python/llm_core/attention.py
MQA
- 英文:multi-query attention
- 章节:第9章
- 定义:所有 query 头共享一份 K/V,极致省显存。
- 公式:—
- 前端类比:像多租户单例——所有人共用同一份资源。
- 代码定位:
python/llm_core/attention.py
量化
- 英文:quantization
- 章节:第9章
- 定义:把 fp32/fp16 权重压成低位整数,牺牲一点精度换吞吐。
- 公式:
- 前端类比:像图片 WebP 压缩——更小但仍可识别。
- 代码定位:
python/llm_core/blocks.py
int8
- 英文:8-bit integer
- 章节:第9章
- 定义:8 位整数量化,相比 fp16 再省一半显存。
- 公式:—
- 前端类比:像把 CSS class 名压缩成单字符短类名。
- 代码定位:
python/llm_core/blocks.py
int4
- 英文:4-bit integer
- 章节:第9章
- 定义:4 位整数量化,边缘设备首选。
- 公式:—
- 前端类比:像图片转成 grayscale 灰度图。
- 代码定位:
python/llm_core/blocks.py
fp16
- 英文:half precision float
- 章节:第9章
- 定义:16 位浮点,训练与推理常用的精度档位。
- 公式:—
- 前端类比:像 CSS 里的
color: #abc——三位简写。 - 代码定位:
python/llm_core/blocks.py
GPTQ
- 英文:GPTQ quantization
- 章节:第9章
- 定义:按层最小化重构误差的训练后量化方法。
- 公式:—
- 前端类比:像 PostCSS 的 autoprefixer——按规则自动加补丁。
- 代码定位:—(本课只做概念对照,不实现)
AWQ
- 英文:activation-aware weight quantization
- 章节:第9章
- 定义:保护激活敏感权重的低比特量化策略。
- 公式:—
- 前端类比:像 React 的
React.memo——按重要性差别对待。 - 代码定位:—(本课只做概念对照,不实现)
上下文窗口
- 英文:context window
- 章节:第9章
- 定义:模型一次能处理的最大 token 数,受位置编码与显存限制。
- 公式:—
- 前端类比:像
URL_MAX_LENGTH——超过会截断。 - 代码定位:
python/llm_core/transformer.py
prefill 与 decode
- 英文:prefill / decode
- 章节:第9章
- 定义:prefill 并行处理整段 prompt,decode 自回归逐 token 生成。
- 公式:—
- 前端类比:像 SSR(prefill)与 CSR 渲染(decode)的差别。
- 代码定位:
python/llm_core/kv_cache.py
采样
- 英文:sampling
- 章节:第9章
- 定义:从概率分布中抽 token,决定生成多样性。
- 公式:—
- 前端类比:像
Math.random()抽样。 - 代码定位:
python/llm_core/mlp_lm.py
temperature
- 英文:temperature
- 章节:第9章
- 定义:缩放 logits 分布的「温度」,高则多样低则确定。
- 公式:
- 前端类比:像
border-radius——越大越圆润。 - 代码定位:
python/llm_core/mlp_lm.py
greedy 解码
- 英文:greedy decoding
- 章节:第9章
- 定义:每步选概率最大的 token,确定性最强但易重复。
- 公式:
- 前端类比:像 ESLint
--fix——自动挑最保守的修复。 - 代码定位:
python/llm_core/mlp_lm.py
top-k
- 英文:top-k sampling
- 章节:第9章
- 定义:只在概率最高的 k 个 token 里采样,砍掉长尾。
- 公式:—
- 前端类比:像
Array.slice(0, k).sort()——只看头部候选。 - 代码定位:
python/llm_core/mlp_lm.py
top-p
- 英文:nucleus sampling
- 章节:第9章
- 定义:按累计概率选一个最小集合,使和 ≥ p,从中采样。
- 公式:—
- 前端类比:像
Promise.race——先达标的入选。 - 代码定位:
python/llm_core/mlp_lm.py
八、后训练与对齐(第10章)
SFT
- 英文:supervised fine-tuning
- 章节:第10章
- 定义:用人工标注的 (prompt, answer) 对继续训练,让模型对齐指令。
- 公式:—
- 前端类比:像在脚手架上按指南重写组件。
- 代码定位:
python/llm_core/post_training.py
指令微调
- 英文:instruction tuning
- 章节:第10章
- 定义:用多样化任务指令训练,提升 zero-shot 泛化能力。
- 公式:—
- 前端类比:像 Storybook 文档驱动组件开发。
- 代码定位:
python/llm_core/post_training.py
loss mask
- 英文:loss masking
- 章节:第10章
- 定义:在 SFT 中只对回答部分算损失,把 prompt 部分 mask 掉。
- 公式:—
- 前端类比:像
<input readonly>——某些字段不参与提交。 - 代码定位:
python/llm_core/post_training.py
LoRA
- 英文:low-rank adaptation
- 章节:第10章
- 定义:冻结原权重,只训练低秩增量
,省显存省成本。 - 公式:
- 前端类比:像打 patch——只改变动部分,原文件不动。
- 代码定位:
python/llm_core/post_training.py
adapter
- 英文:adapter
- 章节:第10章
- 定义:插在 Transformer 层间的小网络,是早期参数高效微调手段。
- 公式:—
- 前端类比:像 Webpack 的中间件插件。
- 代码定位:
python/llm_core/post_training.py
DPO
- 英文:direct preference optimization
- 章节:第10章
- 定义:用偏好对直接优化策略,省去 reward model 和 RL 流程。
- 公式:—
- 前端类比:像 Git rebase——直接重写历史。
- 代码定位:
python/llm_core/post_training.py
RLHF
- 英文:reinforcement learning from human feedback
- 章节:第10章
- 定义:用人类偏好训练 reward 模型,最后用 PPO 微调 LLM。
- 公式:—
- 前端类比:像 Code Review 反馈——多轮迭代到符合规范。
- 代码定位:—(本课只做概念对照,不实现)
reward model
- 英文:reward model
- 章节:第10章
- 定义:用人类偏好数据训练的评分模型,给回答打分。
- 公式:—
- 前端类比:像 ESLint 规则集——给代码打分。
- 代码定位:
python/llm_core/post_training.py
preference pair
- 英文:preference pair
- 章节:第10章
- 定义:同一个 prompt 的 (chosen, rejected) 回答对,用于 RLHF/DPO。
- 公式:—
- 前端类比:像 PR 里的
+与-行——成对存在。 - 代码定位:
python/llm_core/post_training.py
九、检索与知识(第11章)
RAG
- 英文:retrieval-augmented generation
- 章节:第11章
- 定义:先从外部知识库检索,再让 LLM 基于检索内容生成回答。
- 公式:—
- 前端类比:像
<Suspense>——等待异步数据再渲染。 - 代码定位:
python/agent_core/rag.py
retrieval
- 英文:retrieval
- 章节:第11章
- 定义:给定 query 在语料中找最相关的若干文档。
- 公式:—
- 前端类比:像搜索引擎的全文索引。
- 代码定位:
python/agent_core/rag.py
reranking
- 英文:reranking
- 章节:第11章
- 定义:对初检结果用更强模型二次排序,提升 top 结果质量。
- 公式:—
- 前端类比:像 ESLint
--fix --quiet先排序再处理。 - 代码定位:
python/agent_core/rag.py
chunk 切分
- 英文:chunking
- 章节:第11章
- 定义:把长文档切成适合嵌入的小块,是 RAG 的关键预处理。
- 公式:—
- 前端类比:像虚拟列表
react-window的窗口切片。 - 代码定位:
python/agent_core/rag.py
向量检索
- 英文:vector search
- 章节:第11章
- 定义:用 embedding 向量在 ANN 索引里找最近邻。
- 公式:—
- 前端类比:像 CDN 的就近节点调度。
- 代码定位:
python/agent_core/embedding.py
余弦相似度
- 英文:cosine similarity
- 章节:第11章
- 定义:用向量夹角衡量相似度,对长度不敏感。
- 公式:
- 前端类比:像 GitHub 协作关系图的角度度量。
- 代码定位:
python/agent_core/embedding.py
recall@k
- 英文:recall@k
- 章节:第11章
- 定义:top-k 检索中真实相关文档被召回的比例。
- 公式:
- 前端类比:像 CI 中的 code coverage 报告。
- 代码定位:
python/agent_core/eval.py
引用回链
- 英文:citation back-link
- 章节:第11章
- 定义:让模型在回答中标注引用的来源,便于核验。
- 公式:—
- 前端类比:像
<a target="_blank">——可点回原页面。 - 代码定位:
python/agent_core/rag.py
拒答
- 英文:abstention
- 章节:第11章
- 定义:检索结果不足或不确定时,模型主动回答「不知道」。
- 公式:—
- 前端类比:像 404 页面——给个明确兜底。
- 代码定位:
python/agent_core/rag.py
RRF 混合检索
- 英文:reciprocal rank fusion
- 章节:第12章
- 定义:多路召回按排名倒数打分融合,不看原始分数量纲,向量路与 BM25 路可直接合并。
- 公式:
(本课取 ) - 前端类比:像多个排行榜按名次赋分再汇总,而不是直接加原始分数。
- 代码定位:
python/agent_core/rag_live.py
十、Agent 与工具(第13章)
Agent
- 英文:agent
- 章节:第13章
- 定义:能感知环境、做决策、调工具完成多步任务的 LLM 应用形态。
- 公式:—
- 前端类比:像 Service Worker——自动监听事件并执行任务。
- 代码定位:
python/agent_core/engine.py
harness
- 英文:harness
- 章节:第13章
- 定义:包裹 LLM 的运行时框架,负责循环、工具调用、状态管理。
- 公式:—
- 前端类比:像 webpack-dev-server——包住引擎做对外接口。
- 代码定位:
python/agent_core/engine.py
tool
- 英文:tool
- 章节:第13章
- 定义:Agent 可调用的外部能力(搜索、计算、HTTP、文件 IO)。
- 公式:—
- 前端类比:像 Web API(
fetch、localStorage)。 - 代码定位:
python/agent_core/tools.py
schema
- 英文:schema
- 章节:第13章
- 定义:用 JSON Schema 描述工具输入输出,约束调用合法性。
- 公式:—
- 前端类比:像 TypeScript
interface——定义结构契约。 - 代码定位:
python/agent_core/schemas.py
function calling
- 英文:function calling
- 章节:第13章
- 定义:让 LLM 输出结构化参数以触发外部函数的标准接口。
- 公式:—
- 前端类比:像
dispatchEvent(new CustomEvent(...))——触发已注册回调。 - 代码定位:
python/agent_core/tools.py
policy
- 英文:policy
- 章节:第13章
- 定义:决定 Agent 下一步该选哪个工具/动作的策略函数。
- 公式:
- 前端类比:像路由守卫
beforeEach——根据状态决定下一步。 - 代码定位:
python/agent_core/policy.py
HITL 人在回路
- 英文:human-in-the-loop
- 章节:第13章
- 定义:关键动作前需要人工确认,降低自动化风险。
- 公式:—
- 前端类比:像
<button>的二次确认弹窗。 - 代码定位:
python/agent_core/policy.py
幂等
- 英文:idempotency
- 章节:第13章
- 定义:同一操作执行多次结果相同,避免重复副作用。
- 公式:
- 前端类比:像 REST 的
PUT——重复请求幂等。 - 代码定位:
python/agent_core/tools.py
状态机
- 英文:state machine
- 章节:第13章
- 定义:把 Agent 行为建模成离散状态与转移,便于测试和回放。
- 公式:—
- 前端类比:像 XState——把 UI 流程写成 FSM。
- 代码定位:
python/agent_core/state.py
MCP
- 英文:Model Context Protocol
- 章节:第13章
- 定义:让 LLM 通过统一协议接入外部工具与数据源。
- 公式:—
- 前端类比:像 WebUSB / Web Bluetooth——统一抽象。
- 代码定位:
python/agent_core/mcp_adapter.py
ACL
- 英文:access control list
- 章节:第13章
- 定义:工具/资源的访问控制清单,决定谁能调用什么。
- 公式:—
- 前端类比:像 npm scopes——谁能 publish/install。
- 代码定位:
python/agent_core/tools.py
提示注入 prompt injection
- 英文:prompt injection
- 章节:第13章
- 定义:在用户输入或工具返回中塞入恶意指令,劫持 Agent。
- 公式:—
- 前端类比:像 XSS——把脚本塞进 DOM 里。
- 代码定位:
python/agent_core/policy.py
十一、评估、安全与交付(第18章, 第19章)
Eval
- 英文:evaluation
- 章节:第18章
- 定义:用基准集量化模型能力,对比不同版本。
- 公式:—
- 前端类比:像 Lighthouse 跑分——给页面打分。
- 代码定位:
python/agent_core/eval.py
Judge
- 英文:LLM-as-judge
- 章节:第18章
- 定义:用更强的 LLM 给回答打分,代替昂贵的人类评估。
- 公式:—
- 前端类比:像 ESLint plugin——按规则打分。
- 代码定位:
python/agent_core/judge.py
trace
- 英文:trace
- 章节:第18章
- 定义:记录一次推理的输入、工具调用、中间状态,方便回放。
- 公式:—
- 前端类比:像 Chrome DevTools 的 Performance trace。
- 代码定位:
python/agent_core/eval_harness.py
manifest
- 英文:manifest
- 章节:第19章
- 定义:描述模型制品(权重、配置、hash、依赖)的元数据文件。
- 公式:—
- 前端类比:像
package.json或manifest.webmanifest。 - 代码定位:
python/cloud_adapter/artifacts.py
artifact chain
- 英文:artifact chain
- 章节:第19章
- 定义:制品之间的依赖链(数据 → 模型 → 评测 → 部署)。
- 公式:—
- 前端类比:像 Webpack 的 chunk graph。
- 代码定位:
python/cloud_adapter/artifacts.py
冻结分母
- 英文:frozen denominator
- 章节:第18章
- 定义:评测时固定评估集与 judge 模型,保证分数可比。
- 公式:—
- 前端类比:像
package-lock.json锁住依赖版本。 - 代码定位:
python/agent_core/eval_harness.py
OWASP LLM Top 10
- 英文:OWASP LLM Top 10
- 章节:第18章
- 定义:LLM 应用常见安全风险清单(注入、数据泄露等)。
- 公式:—
- 前端类比:像 OWASP Top 10 Web——给前端安全画清单。
- 代码定位:
python/agent_core/policy.py
Cloud Run
- 英文:Cloud Run
- 章节:第19章
- 定义:Google Cloud 上的无服务器容器托管,按请求计费。
- 公式:—
- 前端类比:像 Vercel 的 Serverless Function。
- 代码定位:
python/cloud_adapter/planner.py
Vertex AI
- 英文:Vertex AI
- 章节:第19章
- 定义:Google Cloud 的托管 ML 平台,统一训练/部署。
- 公式:—
- 前端类比:像 Vercel + GitHub Actions 的一站式套件。
- 代码定位:
python/cloud_adapter/planner.py
quota
- 英文:quota
- 章节:第19章
- 定义:云端对调用频率/数量的限制,需要做好退避。
- 公式:—
- 前端类比:像 GitHub API rate limit——超出要等。
- 代码定位:
python/cloud_adapter/planner.py
cost cap
- 英文:cost cap
- 章节:第19章
- 定义:对单次或单日云端花费的硬上限,防止失控。
- 公式:—
- 前端类比:像 CI 流水线超时设置。
- 代码定位:
python/cloud_adapter/planner.py
dry-run
- 英文:dry-run
- 章节:第19章
- 定义:预演部署/调用流程,不实际消耗资源。
- 公式:—
- 前端类比:像
terraform plan——只看不执行。 - 代码定位:
python/cloud_adapter/planner.py
十二、DeepSeek 模型专题(L1 动机级词条)
本组词条只做动机级解释(为什么省 KV / 省算力 / 省 value model);正文专题与 toy 记账实现见 第20章 DeepSeek 模型专题。
MLA
- 英文:multi-head latent attention
- 章节:第9章 延伸(L1 动机级)
- 定义:DeepSeek-V2 的注意力变体:把 K/V 压成低秩 latent 向量缓存、推理时再展开,KV Cache 体积比 GQA 再降一档。
- 公式:
(缓存低秩 而非完整 K/V) - 前端类比:像把 source map 压成索引文件——存压缩表示,用时再还原。
- 代码定位:
python/llm_core/deepseek_toys.py(KV 字节数记账 toy;专题见 第20章)
MoE
- 英文:mixture of experts
- 章节:第9章 延伸(L1 动机级)
- 定义:把 FFN 换成多份专家副本,router 对每个 token 只激活 top-k 个,总参数很大但单次前向算力近似不变。
- 公式:
- 前端类比:像微前端按路由懒加载——全量代码很大,单次渲染只挂载命中的子应用。
- 代码定位:
python/llm_core/deepseek_toys.py(router bias 纠偏 toy;专题见 第20章)
GRPO
- 英文:group relative policy optimization
- 章节:第10章 延伸(L1 动机级)
- 定义:DeepSeek 系后训练用的策略优化:同一 prompt 采一组回答,用组内均值/方差归一化优势,省掉 PPO 的 value model。
- 公式:
- 前端类比:像按小组内排名给分而不是绝对分数线——不需要额外训练一个评分模型。
- 代码定位:
python/llm_core/post_training.py(group normalized advantage fixture 是其雏形)、python/llm_core/deepseek_toys.py(GRPO toy 更新;专题见 第20章)
MTP
- 英文:multi-token prediction
- 章节:第9章 延伸(L1 动机级)
- 定义:DeepSeek-V3 的训练目标:同时预测未来多个 token 而非只预测下一个;推理侧可复用该头做投机解码加速。
- 公式:—
- 前端类比:像预取接下来 N 个路由——一次请求备好多步。
- 代码定位:—(本课边界:L1 动机级,不实现;概念级讲解见 第20章)
PPO
- 英文:proximal policy optimization
- 章节:第10章 延伸(L1 动机级)
- 定义:经典 on-policy RL 优化器,用 clipped surrogate 目标限制每次策略更新幅度,是 RLHF 管线的传统基座(GRPO 的对照组)。
- 公式:
- 前端类比:像带
maxDiff上限的自动重写——每次只许小步改,防止一次改崩。 - 代码定位:—(本课边界:L1 动机级,不实现;与 GRPO 的对照见 第20章)
十三、应用实战章(第12章, 第14章–第17章)
Context Engineering
- 英文:context engineering
- 章节:第15章
- 定义:系统性管理喂给模型的上下文:预算分配、压缩、检索回注与多轮状态,目标是在有限窗口内最大化有效信息。
- 公式:—
- 前端类比:像虚拟列表的窗口管理——视口有限,渲染什么由策略决定。
- 代码定位:
python/agent_core/memory.py
Harness Engineering
- 英文:harness engineering
- 章节:第13章–第19章
- 定义:围绕模型构建可恢复、可评估、可观测运行时的工程学科:循环、工具边界、checkpoint、eval 与成本门禁。
- 公式:—
- 前端类比:像给引擎搭测试台架——引擎不变,台架决定能否安全测出极限。
- 代码定位:
python/agent_core/engine.py、python/agent_core/eval_harness.py
结构化输出
- 英文:structured outputs
- 章节:第15章
- 定义:让模型输出符合 JSON Schema 的三档做法:自由文本求 JSON(无保证)、JSON mode(只保证合法 JSON)、strict json_schema(解码时约束,schema 级保证)。
- 公式:—
- 前端类比:像表单校验三档:文案提示 /
pattern属性 / JSON Schema validator。 - 代码定位:
python/agent_core/prompts.py
记忆模式(截断/摘要/记忆 RAG/画像)
- 英文:memory patterns (truncation / summarization / memory-RAG / profile)
- 章节:第15章
- 定义:多轮对话超窗时的四种工程模式:滑动窗口截断(注意 tool call 配对)、摘要记忆(错误会累积放大)、记忆 RAG(事实抽取 + 检索回注)、画像记忆(重写 vs collection)。
- 公式:—
- 前端类比:像状态管理的四种持久化策略:LRU 淘汰 / 压缩快照 / 外存索引 / 用户偏好表。
- 代码定位:
python/agent_core/memory.py
SSE / 流式
- 英文:server-sent events / streaming
- 章节:第17章
- 定义:LLM 流式交付协议:
data: <payload>\n\n帧、按行缓冲消费(TCP 不保证消息边界)、流式 TextDecoder 防多字节乱码、AbortController 中断。 - 公式:—
- 前端类比:像 chunked transfer 上再加一层消息协议——帧边界必须自己拼。
- 代码定位:
python/labs/streaming_server.py、python/agent_core/gemini_roundtrip.py