一、模型类
1.1 核心架构
Transformer / BERT / LLM 的关系
- Transformer(2017):一切的基础。「Attention is All You Need」,用自注意力替代 RNN,解决了并行化和长距离依赖问题。
- BERT(2018):只用 Transformer 的 Encoder 部分,双向预训练 + MLM 任务,适合「理解」类任务。
- LLM(GPT 系列、Llama 等):只用 Transformer 的 Decoder 部分,自回归生成,适合「生成」类任务。
GPT 与 Llama
- GPT 系列:OpenAI 的看家模型,从 GPT-1 到 GPT-4,Decoder-only 架构。核心思路:更大的参数 + 更多的数据 = 涌现能力。
- Llama 系列:Meta 开源路线。Llama 3 是目前最强开源模型,数学和代码能力接近 GPT-4。有中文微调版本。
- GLM 早期模型:清华系的 Encoder-Decoder 混合架构,后来 ChatGLM 转向了 Decoder-only。
多头注意力(Multi-Head Attention)
- 核心思想:不做一次注意力,而是拆成多个「头」,每个头关注不同子空间的信息,最后拼起来。
- 为什么有效:不同头可以关注不同语义(语法、指代、语义相似等)。
线性注意力(Linear Attention)
- 传统注意力的复杂度是 O(n²),序列一长就炸。
- 线性注意力通过核函数技巧把复杂度降到 O(n),代价是表达能力可能受损。
滑动上下文窗口(Sliding Window Attention)
- 不让模型看全部历史,只看最近的一段窗口。
- 降低显存、加速推理,Mistral 等模型用了这个设计。
1.2 分词与词表
Tokenizer / 分词技术
- BPE(Byte Pair Encoding):从字符开始,逐步合并高频组合。GPT 系列用。
- WordPiece:类似 BPE,但按似然度选合并。BERT 用。
- SentencePiece:不依赖空格分词,直接处理原始文本。Llama 等用。
- 词表从哪来:在预训练语料上统计/训练出来的。词表大小是性能和质量之间的权衡。
1.3 训练流程
预训练 → 微调 → 对齐
- 预训练(Pre-training):海量数据上做自监督学习(语言模型/MLM),让模型学会语言的基本规律。
- 微调(Fine-tuning / SFT):在标注好的指令数据上训练,让模型学会「听话」。
- 对齐(Alignment / RLHF):
- 先收集人类偏好数据(对同一个 prompt,人选出更好的回答)
- 训练一个奖励模型
- 用 PPO 等强化学习算法让模型输出更符合人类偏好
1.4 思维链与推理
CoT(Chain of Thought)思维链
- 让模型「一步步想」而不是直接给答案,显著提升推理能力。
- Few-shot CoT:给几个例子。Zero-shot CoT:加一句「Let's think step by step」。
DeepSeek Moment —— 追赶 o1 的推理能力
- OpenAI o1 在推理时做「内部搜索」,类似慢思考。
- DeepSeek 用强化学习 + 长思维链训练,在推理能力上大幅追赶。同期模型如 Qwen 也在发力。
- 草稿模型(Draft Model):用小模型快速生成草稿,大模型校验——加速推理的一种投机采样策略。
1.5 视觉模型
ViT(Vision Transformer)
- 把图像切成一个个 patch,像 NLP 中的 token 一样处理。
- 「Transformer 统一视觉模态」:不再需要 CNN 特有的归纳偏置(卷积、池化),纯 Transformer 也能做视觉,打通了多模态统一架构的可能性。
二、RAG 与记忆
2.1 检索基础
Embedding 向量化
- 把文本变成高维向量,语义相近的文本向量距离近。
- 常用模型:text-embedding-ada(OpenAI)、BGE(BAAI)、m3e 等。
Rerank 重排
- 向量检索召回是粗筛,Rerank 做精排。
- 用更强的模型(如交叉编码器)对召回的 top-k 结果重新打分排序,提升相关性。
BM25 关键词检索 + 混合检索
- BM25:经典的关键词匹配算法,TF-IDF 的改进版。
- 混合检索 = 向量检索(语义) + BM25(关键词),互补优势。
- 实际场景中,纯向量检索容易漏掉精确匹配,BM25 找专有名词/编号有优势。
2.2 进阶 RAG
Graph RAG
- 传统 RAG 是检索文本块,Graph RAG 是检索知识图谱中的实体和关系。
- 先做实体解析 → 建图 → 检索关联子图 → 大模型基于图谱回答。
- 适合有复杂关系链条的问题(如法律、供应链分析)。
K-Means 大规模检索加速
- 海量向量全量比对太慢。
- K-Means 聚类 → 分层检索:先找到最近的簇心,再在簇内精确搜索,速度大幅提升。
2.3 记忆与上下文
长短时记忆
- 类比人脑:短期记忆(当前对话窗口) + 长期记忆(外部存储/向量库)。
- 实现方式:滑动窗口 + 摘要压缩 + 外部检索。
遗忘策略
- 记忆不能无限积累,需要自洽的遗忘机制:
- 频率:不常提及的逐渐淡忘
- 时间:越久远的权重越低
- 用进废退:最近被检索/使用过的记忆强化
突破短上下文窗口限制
- 滑动窗口机制
- 记忆摘要(对话压缩)
- 外挂 RAG 检索
- 长上下文模型(如 128K、1M token 窗口)
三、模型部署
3.1 软件层
部署资源估计
需要估算的参数:
- 模型参数量 × 量化精度(FP16/INT8/INT4)= 显存基础需求
- MoE vs Dense:MoE 参数量大但激活参数少,显存需求不同
- DP / TP(数据并行 / 张量并行):多卡部署的划分策略
- 上下文长度 + KV Cache 精度:长上下文和缓存精度直接影响显存
- 还需要留余量给推理时的中间激活值
Chat 模版 & 输出采样
- Chat Template:不同模型格式不同(LLaMA / ChatML / Claude 等),决定了怎么拼 system prompt、多轮对话。
- 采样参数:
- Temperature(温度):控制随机性,越高越「跳」
- Top-K:只从概率最高的 K 个 token 中选
- Top-P(核采样):累积概率阈值,动态调整候选集
API 分发与负载均衡
- 多实例部署后,需要一个分发层做负载均衡(权重轮询、最少连接等)。
- 记录每个实例的并发数、延迟、健康状态。
开源部署框架
| 框架 | 特点 |
|---|---|
| vLLM | PagedAttention 优化 KV Cache,高吞吐,目前最主流 |
| LMDeploy | 上海 AI Lab 出品,TurboMind 引擎 |
| SGLang | RadixAttention,结构化生成优势 |
| llama.cpp | CPU/边缘设备推理,GGUF 量化格式 |
性能估算
- 泊松分布:建模请求到达的随机性,估计排队时间
- 关键指标:单请求速度、并发吞吐、预填充(Prefill)速度、逐 token 生成(Decode)速度
API 聚合 & 日志
- One-API:统一多模型 API 入口
- 日志采集改造:记录 token 消耗、延迟、错误率,用于监控和计费
3.2 硬件层
硬件采购基础
- CPU:推理时不是瓶颈,但数据预处理和传统检索需要。核心数 > 主频。
- 内存:模型加载到 GPU 前需要经过内存,至少 ≥ 模型大小 × 2。
- GPU:看显存、算力(TFLOPS)、带宽。推理优先显存,训练优先算力。
软件环境配置
- CUDA + PyTorch:版本匹配是地狱,cuda 11.8/12.1/12.4 各不同
- Conda / Docker:Conda 管 Python 环境,Docker 管整体镜像,生产环境推荐 Docker
四、智能体(Agent)
4.1 概念与区别
Agent vs Workflow
- 工作流(Workflow):固定的执行流程,A → B → C,可预测但没有灵活性。
- 智能体(Agent):能自己规划步骤、调用工具、根据反馈调整,有自主决策能力。
判断标准:是否需要「动态决策」——如果路径是确定的,用 Workflow 就够了;如果需要模型自己判断下一步做什么,才是 Agent。
4.2 Agent 框架
ReAct(Reason + Act)
- 最经典的范式:一步步思考 → 行动 → 观察 → 思考 → 行动……
- 交替进行推理和工具调用,适合大多数工具使用场景。
ReWOO(Reason Without Observation)
- 先一次性规划所有步骤,再批量执行,减少来回交互。
- 适合步骤可以提前确定的场景。
Compiler 类框架
- 把自然语言任务「编译」成可执行的计划图(DAG),类似编译器优化。
- 适用于复杂的多步骤任务。
4.3 常用平台与库
| 工具 | 定位 |
|---|---|
| LangChain | 最流行的 LLM 应用框架,Agent、Chain、Tool 抽象 |
| Dify | 低代码 AI 应用平台,可视化编排 Workflow 和 Agent |
| FastGPT | 知识库 + 对话,中文友好,私有化部署友好 |
4.4 Agent 的关键能力
- 结构化解析:模型输出不能是自由文本,需要稳定的 JSON/Schema 格式,供下游消费。
- 工具调用(Function Calling):模型学会在合适的时候生成工具调用指令。
- 指令遵循对齐:训练时强化「按格式输出」和「正确选择工具」的能力,本质上还是对齐问题。


