深浅色
LLM 基础(背诵版)
1. Transformer 与自注意力
- 自注意力:Q(查询)、K(键)、V(值),用 Q 和 K 算相似度,softmax 后对 V 加权求和。
- 多头注意力:并行多组 QKV,捕捉不同子空间的关系。
- 位置编码:正弦函数或 RoPE(现在主流)。
- 追问:为什么要除以根号 dk?-> 防止点积过大导致 softmax 梯度消失。
2. 训练流程
- 预训练:海量文本自监督(预测下一个 token),学通用语言能力。
- SFT:指令微调,用人工标注的问答对学会遵循指令。
- RLHF:训奖励模型 + PPO 优化;DPO 直接用偏好数据优化,省掉奖励模型,更简单稳定。
- 追问:SFT 和 RLHF 的区别?-> SFT 学「像人类示范」,RLHF 学「人类更偏好哪个」。
3. 采样参数
- temperature:越低越确定(抽取、代码),越高越发散(创意)。
- top-p(核采样):从累积概率达到 p 的最小集合里采样,比 top-k 更自适应。
- top-k:只在概率最高的 k 个里采样。
- 重复惩罚 / presence / frequency penalty:抑制复读。
- 追问:结构化抽取(输出 JSON)怎么设?-> temperature 设 0 或极低,再配合 JSON schema 约束。
4. Tokenizer 与上下文窗口
- 分词用 BPE / SentencePiece;英文大约 4 字符 = 1 token,中文一个汉字可能占 1 到 2 个 token。
- 上下文窗口限制的是输入 + 输出的总 token。
- 超长方案:滑动窗口、RAG、摘要压缩、换长上下文模型。
- 追问:为什么中文通常更贵?-> 同样信息量下中文 token 数更多(取决于 tokenizer)。
5. 幻觉
- 成因:模型本质是预测下一个 token,不是查数据库;训练数据有噪声;对齐过程鼓励自信输出。
- 缓解:RAG 给事实依据、要求引用来源、结构化输出 + 校验、降低 temperature、明确允许说不知道。
- 追问:RAG 能完全消除幻觉吗?-> 不能,模型仍可能误读或忽略检索内容。
6. 推理优化
- KV Cache:缓存历史 token 的 K/V,避免重复计算,是自回归生成的关键优化。
- 量化:INT8 / INT4 降低显存和带宽,代价是精度损失。
- 连续批处理(continuous batching)显著提升吞吐。
- 追问:KV Cache 的代价?-> 显存占用随上下文长度线性增长。
7. 成本与延迟估算
- 成本 = 输入 token 数 × 输入单价 + 输出 token 数 × 输出单价;输出通常贵 3 到 4 倍。
- 延迟 = 首 token 延迟(TTFT)+ 输出 token 数 ÷ 每秒生成速度。
- 优化:压缩 prompt、缓存系统提示词、小模型做路由。
- 追问:流式输出降低了总延迟吗?-> 没有,但首 token 更快,用户感知明显更快。
8. 模型选型
- 闭源 API:能力强、免运维;但贵、有数据合规风险、不可控。
- 开源模型:可私有化部署、可控;但要自己解决推理资源,效果可能差一档。
- 常见策略:大小模型路由,简单任务走小模型,复杂任务走大模型。
- 追问:怎么判断该不该自建?-> 看调用量、数据敏感度和成本拐点。