AI 算法面试知识点整理备忘

一、模型类

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):模型学会在合适的时候生成工具调用指令。
  • 指令遵循对齐:训练时强化「按格式输出」和「正确选择工具」的能力,本质上还是对齐问题。