LLM 算法岗面试题库
多模态 · Agentic RL · RL 重点版 — 汇总 400+ 道真实面经,覆盖字节 / 阿里 / 腾讯 / Deepseek / Moonshot / 美团 / 小红书 等大厂大模型岗
📊题库概览~420 道题
使用说明
本题库专为大模型算法岗面试准备,重点覆盖多模态(VLM)和 Agentic RL 这两个 2025-2026 年最热方向。每道题标注:
① 公司标签(字节 / 阿里 / DS 等);② 难度/频率(🔥高频 / 🧠难题);③ 考点提示(仅高频题)。
核心准备建议(按优先级排序)
1. RL / RLHF 必背:PPO/DPO/GRPO 三件套是大模型岗最高频题,几乎每场必问。重点掌握公式推导、Clip 机制、Reference Model 作用、KL 散度估计。
2. 多模态 = 现在最热:CLIP/LLaVA/Qwen-VL/MiniGPT4 必须能讲清架构、对齐方式、训练阶段。高分辨率处理、Grounding 是高阶题。
3. Agentic RL = 2025-2026 新热点:工具调用 RL、多轮 Rollout、Reward Hacking、Verifiable Reward 是新晋热门,DeepSeek-R1 / SWE-RL / ToolRL / RAGEN 必须熟悉。
4. 手撕代码必练:MHA、RoPE、RMSNorm、SFT/DPO/PPO/GRPO Loss、KV Cache 几乎每场都手撕一题。
5. 项目深挖:把自己的简历项目按"问题 → 方案 → 数据 → 指标 → 优化"五段式整理,准备深挖三轮(why → how → what if)。
1LLM 八股~70 题
Transformer、位置编码、归一化、激活函数、采样策略、Tokenizer、Scaling Law 等基础八股。近 90% 面试都会从这里开场,是底线分。
- 1详细介绍 Self-Attention 机制:本质是什么?数学计算步骤?时间/空间复杂度?
- 线性投影:$Q=XW_Q$, $K=XW_K$, $V=XW_V$
- 计算注意力分数:$S = QK^T / \sqrt{d_k}$
- Softmax 归一化:$P = \text{softmax}(S)$(加 causal mask 则先 mask)
- 加权求和:$O = PV$
- 2Attention 计算 Softmax 之前为什么要除以 $\sqrt{d_k}$?不除会怎样?
- 3为什么要用 Multi-Head Attention?切多头的作用是什么?多头之间参数共享吗?
- 不同 head 用不同的线性投影 → 在不同子空间学习不同的关注模式
- 例:某些 head 学局部依赖(相邻词),某些学长距离关系(指代),某些学句法结构
- 多头 = 并行学习多种关系模式 → 比单头表达能力更强
- 4介绍 QKV 计算。如果在 Encoder 中去掉 K,变成 QQV 会有什么问题?
- 5MHA / MQA / GQA / MLA 四种 Attention 的区别是什么?KV Cache 怎么变化?
- MHA:每个 head 独立 QKV,KV Cache = $2 \times n_{heads} \times d_{head} \times seq$
- MQA:所有 head 共享一组 KV,Cache 减为 $1/n_{heads}$,但表达力损失
- GQA:将 heads 分组(如 8 组),组内共享 KV → 平衡效率和表达力(LLaMA-2 70B)
- MLA (DeepSeek):用低秩投影将 KV 压缩到 latent space,只缓存压缩向量 → Cache 极小
- 6Transformer 为什么能替代 RNN?核心优势?又有什么劣势?
- 7详细介绍 Encoder-Only / Decoder-Only / Encoder-Decoder 三种架构及擅长任务。
- CLM 训练目标简单统一 → 容易 scale up
- 自回归生成天然适合对话/续写等应用
- 随规模涌现 few-shot/zero-shot 能力(GPT-3)
- 工程链路简洁:预训练 → SFT → RLHF 一条线
- 8Transformer 是 Encoder-Decoder,GPT 是 Decoder-only,为什么会演变成这种形式?生成式任务为什么要舍弃 Encoder?
- 9Decoder 中的 Causal Mask 是怎么实现的?为什么必须用?训练时和推理时有何不同?
- 10Cross-Attention 和 Self-Attention 的区别?哪些场景用 Cross-Attention?
- 11如何降低 Transformer 的计算复杂度?常见稀疏注意力变体有哪些(Longformer、BigBird、Sliding Window)?
- 12分析 Transformer 训练过程中的显存占用和计算复杂度。
- 13FlashAttention 解决了什么问题?核心思想是什么?v1/v2/v3 区别?
- v1:Tiling + Online Softmax + 不存中间矩阵
- v2:减少非 matmul 操作 + 序列维度并行 + 优化 warp 分工 → 加速约 2×
- v3:H100 专属:Warp Specialization + TMA + FP8 + Pingpong Scheduling
- 14Transformer 的 FFN 为什么逐渐演变成 MoE 层?MoE 怎么训练?
- 15MoE 的负载均衡(Load Balance)怎么做?Aux Loss / 偏置项 b 怎么更新?
计算步骤:
因果链:点积过大 → Softmax 输入值过大 → 输出趋近 one-hot → 梯度进入饱和区 → 训练不稳定。
除以 $\sqrt{d_k}$ 后:点积方差回归约 1,Softmax 在梯度充分的区域工作。不是"越小越好",而是恢复合理量级。
多头之间参数共享吗:标准 MHA 中各 head 的 $W^Q_i, W^K_i, W^V_i$ 完全独立不共享。但 MQA 让所有 head 共享 K/V 投影(只 Q 不同),GQA 是分组共享。
| 架构 | 代表模型 | 训练目标 | 擅长任务 |
|---|---|---|---|
| Encoder-Only | BERT, RoBERTa | MLM(双向上下文) | 分类、NER、句子相似度等理解任务 |
| Decoder-Only | GPT, LLaMA, Qwen | CLM(自回归) | 文本生成、对话、推理、few-shot |
| Encoder-Decoder | T5, BART | Seq2Seq(条件生成) | 翻译、摘要、输入输出明确映射的任务 |
为什么 Decoder-Only 胜出成为 LLM 主流:
核心思想:IO-aware 分块计算。利用 SRAM(快 10× 但小 1000×)做 Tiling,避免存完整注意力矩阵。关键技术:Online Softmax(维护 running max/sum 实现分块 softmax)+ 反向时重算。
版本区别:
- 16介绍 Transformer 的位置编码(PE)有哪几种实现?绝对 PE / 相对 PE / RoPE / ALiBi 区别?
- 绝对 PE(Sinusoidal/Learned):直接加到 embedding,位置信息固定或可学习。缺点:不支持外推
- 相对 PE(Shaw / T5 bias):编码 token 之间的相对距离,加在 attention score 上
- RoPE:旋转位置编码,将位置编码为旋转角度,作用于 Q/K 向量。支持外推、无需额外参数
- ALiBi:直接在 attention score 上减去距离偏置 $m \cdot |i-j|$,简单高效,天然外推
- 17详细介绍 RoPE。为什么 RoPE 能做长度外推?相比绝对 PE 的优劣势?
- 优:相对位置、可外推、无额外参数、兼容 KV Cache
- 劣:实现稍复杂(需分组旋转)、需专门的外推策略
- 18RoPE 的旋转矩阵推导一下?为什么是分组旋转?
- 19长度外推有哪些方案?NTK-Aware / YaRN / LongRoPE 各自原理?
- 20LayerNorm 和 BatchNorm 的区别?为什么 LLM 都用 LN 而不用 BN?
- BN:沿 batch 维度归一化(同一特征维度跨样本),依赖 batch 统计
- LN:沿特征维度归一化(同一样本跨特征),每条样本独立
- 变长序列:batch 内不同位置的统计意义不同,BN 统计不稳定
- 自回归推理时 batch=1,BN 无法正常工作
- BN 依赖 running mean/var,分布式训练时跨 GPU 同步成本高
- 21RMSNorm 是什么?相比 LayerNorm 有什么优势?
- 省去计算均值和减均值的操作 → 减少约 5-10% 计算量
- 实验表明 re-centering(减均值)对 LLM 性能影响极小,缩放是核心
- 所有主流 LLM(LLaMA/Qwen/Mistral)均采用 RMSNorm + Pre-Norm
- 22Pre-Norm 和 Post-Norm 区别?为什么现代 LLM 都用 Pre-Norm?训练稳定性差异?
- 23DeepNorm 解决了什么问题?
关键性质:$\langle q'_m, k'_n \rangle$ 只依赖相对位置 $m-n$(旋转差),不依赖绝对位置。
为什么能外推:位置信息编码为连续旋转角度,超出训练长度时旋转角度自然延伸(配合频率缩放如 NTK-Aware 可进一步增强)。
vs 绝对 PE:
优势:
- 24LLM 常用激活函数有哪些(ReLU / GeLU / SiLU / SwiGLU / GeGLU)?为什么选 SwiGLU?
- 门控机制让网络自适应选择信息通过,表达力更强
- PaLM 论文实验证明 SwiGLU 在相同参数量下 loss 更低
- 平滑非零梯度(vs ReLU 的 dead neuron 问题)
- 25SwiGLU 的公式是什么?相比 ReLU 优势在哪?参数量怎么算?
- 26主流开源 LLM 架构(LLaMA / Qwen / Mistral / DeepSeek)的核心区别是什么?
- 27DeepSeek V3 / R1 的架构创新点是什么?MLA、MoE 改进、Multi-Token Prediction 各自原理?
- Auxiliary-Loss-Free Load Balancing:用动态偏置 $b_i$ 替代 aux loss 做负载均衡
- 256 experts, top-8 激活 → 激活参数仅 37B(总 671B)
- 28Qwen3 相比 Qwen2.5 做了哪些改进?
- 29Mistral / Mixtral 8x7B 的核心创新是什么?SlidingWindowAttention 怎么工作?
- 30Mamba / SSM 模型相对 Transformer 优势是什么?什么场景下能替代 Transformer?
SwiGLU = Swish × Gate:$\text{SwiGLU}(x) = \text{Swish}(xW_1) \otimes (xW_2)$
为什么选 SwiGLU:
| 模型 | Attention | PE | Norm | FFN | 特色 |
|---|---|---|---|---|---|
| LLaMA-2 | GQA | RoPE | RMSNorm | SwiGLU | 开源标杆 |
| Qwen2.5 | GQA | RoPE | RMSNorm | SwiGLU | 中文强,长上下文 |
| Mistral | GQA+SWA | RoPE | RMSNorm | SwiGLU | Sliding Window Attn |
| DeepSeek-V3 | MLA | RoPE | RMSNorm | MoE | MLA + Aux-Loss-Free MoE |
MoE 改进:
R1 = V3 架构 + RL:用 GRPO 在数学/代码任务上做 RL,涌现出 chain-of-thought 推理能力。
- 31Tokenizer 有哪些实现方式?BPE / WordPiece / SentencePiece / Unigram 区别?
- BPE:贪心合并最高频字节对,自底向上。GPT/LLaMA 使用
- WordPiece:类似 BPE 但用似然增益选合并对。BERT 使用
- Unigram:从大词表出发,逐步剪枝低概率子词。T5/XLNet 使用
- SentencePiece:语言无关的分词框架(不依赖空格预分词),可选 BPE 或 Unigram 算法
- 32手撕 BPE 算法的训练过程。
- 33Embedding 是怎么做的?从 Token ID 到 Embedding 的具体过程?
- 34控制 LLM 生成多样性的参数有哪些?Temperature / Top-K / Top-P / Repetition Penalty 各自原理?
- Temperature (τ):$p_i = \text{softmax}(z_i / \tau)$。τ↑ 分布更均匀(多样)、τ↓ 更尖锐(确定)
- Top-K:只保留概率最高的 K 个 token 重新归一化采样
- Top-P (Nucleus):保留累计概率达到 P 的最小 token 集合 → 动态截断
- Repetition Penalty:对已出现 token 的 logit 除以惩罚因子,减少重复
- 35Top-K 和 Top-P 的区别?哪种更稳?为什么实践常用 Top-P=0.9?
- 36Greedy Search / Beam Search / Sampling 的优缺点?什么场景下用哪种?
- 37Speculative Decoding(投机解码)是什么?怎么加速推理?
- 38手撕 Top-P / Top-K 采样实现。
- 39详细描述从 txt 文本到 SFT 训练的全流程(Tokenize → Forward → Loss → 参数更新)。
- 数据处理:文本 → Tokenizer 编码为 token_ids → 拼接 prompt+response → 构造 labels(prompt 部分 mask 为 -100)
- Forward:token_ids → Embedding → N × (RMSNorm → Attention → RMSNorm → FFN) → LM Head → logits
- Loss:Shift right(logits[:-1] vs labels[1:])→ CrossEntropy(只对 response 部分有效 token 计算)
- Backward:loss.backward() 计算梯度 → gradient clipping
- Update:AdamW optimizer.step() 更新参数 → lr_scheduler.step()
- 40Pretrain / SFT / RLHF 三个阶段的目标和区别是什么?为什么需要三个阶段?
- Pretrain:在海量文本上做 Next Token Prediction → 学会世界知识和语言能力("知道什么")
- SFT:在指令数据上微调 → 学会遵循格式回答("知道怎么说")
- RLHF:用人类偏好信号优化 → 学会哪种回答更好("知道什么更好")
- Pretrain 只学预测下一个词,不会主动"回答问题"
- SFT 学会了回答格式,但不知道哪种回答更受偏好(多条合理答案中选最优)
- RLHF 用奖励信号引导策略往"更好"方向优化,解决 SFT 学不到的偏好排序
- 41Pretrain 和 SFT 在优化目标上的本质区别?为什么 SFT 后还要 RL?
- 42SFT 的 Loss 是什么?对 Prompt 部分要不要算 Loss?为什么?
- Prompt 是输入条件(已知),不是模型需要学习生成的目标
- 对 prompt 算 loss 会让模型"记忆"prompt 内容,浪费容量且可能过拟合
- 实现方式:labels 中 prompt 位置设为 -100(PyTorch CE 自动忽略)
- 43SFT 样本数据怎么构造?多样性怎么保证?指令模板有哪些常见格式(Alpaca、ShareGPT、ChatML)?
- 44手写 SFT Loss 代码,注意 Shift Right 和 Loss Mask。
- 45为什么 Pretrain 用所有 token 算 loss,而 SFT 只对 response 部分算?
- 46介绍 LoRA 的核心原理。秩 r 怎么选?r 取大取小的影响?
- r=4~16:常见选择,适合大多数任务
- r 太小:表达力不足,复杂任务效果差
- r 太大:接近全参微调,失去参数效率优势
- 经验:简单任务(分类)r=4;复杂任务(代码/推理)r=32~64
- 47LoRA 公式推导:$W' = W + \frac{\alpha}{r} BA$,alpha 起什么作用?
- 48LoRA 通常加在哪些层?为什么不加在 LayerNorm 之后?为什么主要加在 Attention 的 Q、V 上?
- 49QLoRA 是怎么降低显存的?NF4 量化为什么有效?Double Quantization 是什么?
- 50LoRA / Prefix Tuning / Prompt Tuning / P-Tuning v2 四种 PEFT 方法的区别?
- 51LoRA 微调和全参微调差距在哪?什么场景下 LoRA 效果不行?
- 52DoRA、LoRA+、AdaLoRA 各自改进了什么?
- 53合并 LoRA 权重和挂着 Adapter 推理的取舍?多 LoRA 怎么部署?
推理时:$h = (W_0 + \frac{\alpha}{r}BA)x$,可以合并权重零开销。
r 的选择:
- 54Scaling Law 揭示了什么关系?Chinchilla 和 GPT 系列的训练 token / 参数比有什么不同?
- Chinchilla 后 LLaMA 等改为"小模型 + 大数据"(7B + 2T tokens)
- 最新趋势(DeepSeek/Qwen)甚至 over-train:远超 Chinchilla 最优比
- 55Test-time Compute Scaling Law 是什么?OpenAI o1 / DeepSeek R1 揭示了什么?
- 56Adam / AdamW / Lion / Muon 这些优化器各自优缺点?为什么 LLM 训练常用 AdamW?
- 57LLM 训练为什么用 Cosine 学习率?Warmup 起什么作用?
- 58梯度消失/爆炸怎么解决?LLM 训练中 Loss Spike 怎么处理?
- 59混合精度训练(FP16/BF16/FP8)原理?BF16 相比 FP16 优势?
- 60Gradient Checkpointing 怎么节省显存?时间换空间比例?
- 61ZeRO 1/2/3 的区别是什么?什么场景用哪个?
- 62DP / TP / PP / EP 四种并行的区别?千亿模型怎么组合用?
- 63DeepSpeed 和 Megatron-LM 的区别?什么场景选哪个?
Kaplan (OpenAI) Scaling Law:优先扩参数量,数据量增长慢 → GPT-3 (175B, 300B tokens)
Chinchilla Scaling Law:N 和 D 应等比例扩展(最优比≈1:20)→ 70B 模型应训 1.4T tokens
实践影响:
- 64什么是"涌现能力"?通常在什么参数规模出现?最近有论文质疑 emergence 是评估问题,怎么看?
- 65大模型幻觉是什么?分为哪几类(事实幻觉 / 上下文幻觉)?怎么缓解?
- 事实幻觉:编造不存在的事实(如虚构论文、错误数据)
- 上下文幻觉:回答与用户给定的上下文矛盾
- 逻辑幻觉:推理链条中出现逻辑跳跃或错误
- RAG:用检索提供事实依据
- CoT + Self-consistency:多条推理路径投票
- RLHF 对齐:"不知道就说不知道"
- 高质量数据:减少训练数据中的错误信息
- Decoding 约束:Factual Nucleus Sampling
- 66CoT(Chain of Thought)为什么有效?为什么小模型用 CoT 反而效果差?
- 67In-Context Learning 的机制是什么?为什么 few-shot 比 zero-shot 强?
- 68Constitutional AI 是什么?Anthropic 的 RLAIF 方案如何工作?
- 69什么是 Catastrophic Forgetting?SFT 怎么避免破坏 Pretrain 知识?
- 70L1 / L2 正则化分别是什么?什么场景用?LLM 训练用 weight decay 一般取多少?
分类:
2RLHF & 对齐~45 题
RLHF 三阶段、Reward Model、PPO 训练、KL 散度、Reward Hacking — 大模型岗几乎必问方向,且会一路深挖到公式推导。
- 1详细阐述经典 RLHF 流程的三个阶段。每阶段输入/输出/目标分别是什么?
- SFT:输入=指令数据,输出=SFT模型,目标=让模型学会遵循指令格式回答
- RM 训练:输入=偏好对比数据(chosen/rejected),输出=Reward Model,目标=学会评估回答质量($\mathcal{L} = -\log\sigma(r_w - r_l)$)
- PPO 优化:输入=prompts+RM信号,输出=对齐后模型,目标=$\max E[R(y)] - \beta \cdot KL[\pi_\theta || \pi_{ref}]$
- 2为什么 SFT 之后还要做 RLHF?SFT 本身为什么不够实现对齐?
- SFT 只学"模仿"标注答案,不学"判断好坏" → 遇到模糊场景无法做偏好选择
- SFT 学的是 MLE(最大似然),所有 token 平等 → 无法表达"这个回答整体更好"
- SFT 数据通常只有"好答案",没有"对比信号" → 模型不知道边界在哪
- 3RLHF 和传统 SFT 相比解决了哪些核心问题?
- 4为什么偏好对齐不能直接用偏好数据做 SFT,必须用 RL?
- 5RLHF 流程复杂且不稳定,主要的不稳定因素有哪些?怎么诊断?
- 6InstructGPT 论文有什么核心贡献?和现在的 RLHF 流程有什么差异?
- 7RM 训练为什么用成对比较数据而不让人直接打绝对分数?优劣对比?
- 人类更擅长相对判断("A比B好")而非绝对评分("A=7.3分")
- 绝对分数的标注者间一致性极低(不同人的7分含义不同)
- 成对比较天然消除了个人 scale bias
- 8Bradley-Terry 模型的公式是什么?为什么能用它建模偏好概率?
- 假设每个回答有一个"真实质量分" r(y,x)
- 偏好概率只取决于分数差 → 只关心相对好坏,不关心绝对值
- sigmoid 将分数差映射到 [0,1] → 满足概率公理
- 分数差越大 → 偏好概率越接近 1 → 符合直觉
- 传递性:如果 r(A) > r(B) > r(C),则 P(A>C) > P(A>B)
- 对称性:P(A>B) = 1 - P(B>A)
- 9RM 的损失函数怎么推导?为什么是 $-\log\sigma(r_w - r_l)$?
- 10RM 的架构通常如何选择?要不要从 SFT 模型初始化?为什么?
- 11RM 训练完后怎么评估好坏?常见指标?
- 12RM 给出的 reward 容易出现 OOD 问题,怎么缓解?
- 13如果偏好数据噪声大(标注员意见分歧),怎么训练 RM?
| 成对比较 | 绝对打分 | |
|---|---|---|
| 标注一致性 | 高(80%+) | 低(60%~) |
| 数据效率 | 低(每对只产一个偏好) | 高(每条直接得分) |
| 建模复杂度 | Bradley-Terry,简洁 | 需处理 calibration |
| 适用规模 | O(n²) 对比组合 | O(n) 直接标注 |
为什么能建模偏好:
对所有偏好对做 MLE:$$\mathcal{L}_{RM} = -\mathbb{E}[\log \sigma(r_w - r_l)]$$
直觉:最大化 chosen 和 rejected 的分数差 → chosen 得分越高于 rejected,loss 越小。
为什么用差值而非绝对分:偏好本质是相对排序,绝对分数无意义;差值形式天然归一化,避免 reward scale 问题。
- 14RLHF-PPO 训练时需要几个模型?分别是什么作用?显存占用大概多少?
- Actor (Policy):生成回答的策略模型,是优化目标
- Reference Model:冻结的 SFT 副本,计算 KL 惩罚防止策略跑飞
- Reward Model:打分器,评估回答质量
- Critic (Value Model):估计状态价值 V(s),计算 Advantage 降低方差
- 15为什么选 PPO 而不是更简单的 REINFORCE 或 TRPO?
- vs REINFORCE:REINFORCE 方差极大(单轨迹估计)、样本效率低(on-policy 用完即弃)。PPO 用 Advantage + 多 epoch 复用数据 → 效率高
- vs TRPO:TRPO 需计算二阶导(Fisher 信息矩阵)+ 约束优化 → 实现复杂、不适合大模型。PPO 用 clip 近似 trust region → 一阶梯度即可,简单高效
- 16为什么要用 Reference Model?解决了什么问题?KL 惩罚到底惩罚什么?
- 17PPO 中的 KL 散度有几种估计方法?K1 / K2 / K3 估计的区别?
- 18PPO 训练时 KL 系数 β 太大/太小分别会出什么问题?怎么动态调整?
- 19PPO 的 Reward 怎么算?token-level 的 reward 和最后一步的 RM 分数怎么结合?
- 每个 token 都有 KL penalty(= 逐 token 负 reward)
- 只有最后一个 token 叠加 RM 的打分
- RM 只能对完整回答打分(整体质量)→ 放在最后一步
- KL penalty 逐 token 累加 → 防止策略在任何位置偏离太远
- GAE 从最后一步的 RM 信号反向传播 advantage → 信用分配到每个 token
- 20Reward 在 LLM 场景下只在最后一步打分(ORM)还是每一步都打(PRM)?区别在哪?
- 21PPO 在 LLM 训练里 Critic 怎么初始化?为什么要预热 Critic?
- 22PPO 训练不稳定(reward 突然崩 / 训飞)的常见原因?怎么排查?
- Reward hacking:策略找到 RM 漏洞 → reward 飙升但实际质量下降 → 崩溃
- KL 散度爆炸:策略偏离 ref model 过远 → 进入 RM 没见过的分布 → reward 打分失真
- Critic 估计不准:Value head 未充分预热 → Advantage 估计噪声大 → 梯度方向混乱
- 学习率过大:策略单步更新过猛 → 破坏已有能力
- 数据质量问题:某些 prompt 导致极端 reward → 梯度被少数样本主导
- 监控 KL 散度 — 是否单调增长超过阈值?
- 监控 entropy — 突然下降说明策略坍缩
- 监控 clipfrac — 太高说明策略变化过大
- 监控 approx_kl — 超过 0.02 考虑降 lr 或增大 β
- 人工看 reward 最高的样本 — 是真好还是 hacking?
- 23PPO 训练时 batch size 怎么定?rollout step 取多大?
这也是 DPO 的动力:只需 Actor + Ref 两个模型,显存减半。
解决的问题:防止策略模型为了追求高 reward 而偏离太远(reward hacking / mode collapse)。
KL 惩罚的含义:$$\text{Reward}_{total} = R_{RM}(y) - \beta \cdot KL[\pi_\theta(y|x) || \pi_{ref}(y|x)]$$惩罚的是:当前策略对每个 token 的生成概率分布与 SFT 模型的偏离程度。
token-level KL:$KL_t = \log\frac{\pi_\theta(y_t|y_{
β 过大:模型几乎不更新 → 学不到新能力
β 过小:模型跑飞 → reward hacking
PRM(Process Reward Model):对每个推理步骤打分 → 信号密集但标注贵。
区别:
| ORM | PRM | |
|---|---|---|
| 信号密度 | 1 个 reward / sequence | 每步 1 个 reward |
| 信用分配 | 差(哪步导致最终好/坏?) | 好(精确到步) |
| 标注成本 | 低 | 高(需逐步标注) |
| 适合场景 | 短回答、结果可验证 | 数学推理、长链 CoT |
实践选择:能用 RLVR(自动验证结果)就用 ORM(DeepSeek-R1 方案);需要精细引导推理过程时用 PRM(OpenAI 方案)。
- 24什么是 Reward Hacking?举一个 LLM 场景下的具体例子。怎么缓解?
- 模型发现"越长越高分" → 生成冗长废话(Length Hacking)
- 模型发现"堆叠关键词/重复结论" → RM 打高分但用户体验差
- 模型发现特定格式(markdown/列表)得高分 → 所有回答都用相同格式
- KL 惩罚限制策略偏移
- Length normalization(奖励除以长度)
- 多 RM 集成投票
- 定期更新 RM(对抗性训练)
- Reward model ensemble / constraint reward
- 25什么是 Reward Collapse / Length Bias?为什么 PPO 出来的模型答案越来越长?怎么处理?
- 26多目标 Reward 冲突(有用性 vs 无害性 vs 简洁性)怎么处理?加权 / 多 RM 投票?
- 27如何解决 Credit Assignment(信用分配)问题?token-level vs sequence-level 奖励差异?
- 28RLHF 后模型变"模板化"、风格趋同了怎么办?为什么会出现 mode collapse?
- 29RLHF 后模型在 OOD 上效果反而变差(alignment tax)怎么办?
LLM 中的典型例子:
- 30DPO 的核心思想?相比 RLHF-PPO 优势?为什么不需要 RM?
- 只需 2 个模型(Policy + Ref),PPO 需 4 个 → 显存减半
- 无需 RM 训练和奖励推理 → 流程简单
- 训练更稳定(无 RL 探索噪声)
- 31DPO 损失函数完整推导:从 RLHF 闭式解 → Bradley-Terry → DPO Loss。
- 32DPO 损失中的 β 起什么作用?为什么 β 是 KL 散度的反比?
- 33DPO 是 on-policy 还是 off-policy?为什么?
- Iterative DPO / Online DPO:每轮用当前策略重新采样生成 pair
- RLHF-PPO 天然是 on-policy(每 step 用当前策略 rollout)
- 34DPO 的局限性是什么?为什么 chosen 和 rejected 概率一起下降?怎么解决?
- 35IPO / KTO / SimPO / ORPO / cDPO 这些 DPO 变体分别改进了什么?
- IPO:避免 DPO 的 overfitting to point estimate,用 squared hinge loss 替代 log-sigmoid
- KTO:不需要 pair 数据!只需单条样本 + good/bad 标签 → 数据获取门槛大降
- SimPO:去掉 Reference Model,用 length-normalized log-probability 作为隐式 reward + margin 目标
- ORPO:将偏好优化融入 SFT 阶段(SFT + preference penalty 一步到位)
- cDPO:对 noisy labels 做 conservative 处理(假设一定比例标注错误)
- 36SimPO 不用 Reference Model 怎么实现?length normalize 起什么作用?
- 37KTO 相比 DPO 的核心改进?为什么只需要单条样本+标签?
- 38手写 DPO Loss 代码。
数学洞察:RLHF 的 KL 约束优化有闭式解 $\pi^*(y|x) \propto \pi_{ref}(y|x) \cdot e^{r(y)/\beta}$,反解得隐式 reward:$r(y) = \beta \log \frac{\pi_\theta(y|x)}{\pi_{ref}(y|x)}$,代入 Bradley-Terry 得 DPO Loss。
vs PPO 优势:
Step 1 - RLHF 闭式解:$$\pi^*(y|x) = \frac{1}{Z(x)} \pi_{ref}(y|x) \exp\left(\frac{r(y,x)}{\beta}\right)$$
Step 2 - 反解 reward:$$r(y,x) = \beta \log\frac{\pi^*(y|x)}{\pi_{ref}(y|x)} + \beta \log Z(x)$$
Step 3 - 代入 Bradley-Terry:$$P(y_w \succ y_l) = \sigma(r_w - r_l) = \sigma\left(\beta \log\frac{\pi_\theta(y_w|x)}{\pi_{ref}(y_w|x)} - \beta \log\frac{\pi_\theta(y_l|x)}{\pi_{ref}(y_l|x)}\right)$$
Z(x) 在差值中消掉。
最终 DPO Loss:$$\mathcal{L}_{DPO} = -\mathbb{E}\left[\log\sigma\left(\beta \log\frac{\pi_\theta(y_w|x)}{\pi_{ref}(y_w|x)} - \beta \log\frac{\pi_\theta(y_l|x)}{\pi_{ref}(y_l|x)}\right)\right]$$
问题:随着 $\pi_\theta$ 更新,训练数据越来越 off-policy → 梯度估计偏差增大,性能受限。
解决方案:
- 39RLAIF 是什么?用 AI 反馈替代人类反馈的优劣?
- 成本极低:无需人工标注 → 可以生成百万级偏好数据
- 速度快:自动化流程可并行
- 一致性高:AI 判断标准更稳定(无标注者间差异)
- 可迭代:随时生成新数据 → 支持 Online DPO
- AI 偏好可能有系统性偏差(偏好长回答、格式化回答)
- 安全边界:AI 可能在敏感问题上判断不准
- 天花板:AI 反馈质量受限于"教师模型"本身的能力
- 可能放大现有偏见(self-reinforcing)
- 40Constitutional AI 的训练流程?SL-CAI 和 RL-CAI 区别?
- 41Rejection Sampling Fine-tuning 是什么?相比 RLHF 优劣?
- 42什么是 Iterative DPO?为什么要做多轮?
- 43Self-Reward / Self-Play 在 LLM 对齐中如何应用?
- 44如果 RM 偏弱,policy 模型容易被攻破,有什么解决思路?
- 45介绍下 Inverse RLHF / RLHF 数据集典型规模(HH-RLHF / Anthropic / OASST 等)。
流程:让 AI 对比两个回答 → 判断哪个更好 → 生成偏好数据 → 训练 RM 或直接 DPO。
优势:
3RL 算法~40 题
策略梯度、PPO、TRPO、GRPO、DAPO、GSPO — 从 RL 基础到最前沿 LLM-RL 算法演进。
- 1on-policy 和 off-policy 的本质区别是什么?举例说明。RLHF 属于哪种?
- On-policy:用当前策略 $\pi_\theta$ 采样数据来更新 $\pi_\theta$ 本身。数据用完即弃,每次更新后需重新采样
- Off-policy:用其他策略(behavior policy)采集的数据来更新目标策略。数据可以复用(Replay Buffer)
- On-policy:PPO、REINFORCE、A2C — 必须用当前策略 rollout
- Off-policy:DQN、SAC — 用 Replay Buffer 中的历史数据训练
- 2V(s)、Q(s,a)、A(s,a) 三者关系是什么?Advantage 怎么算?
- V(s):状态价值函数 — 从状态 s 出发,遵循策略 π 的期望累积回报
- Q(s,a):动作价值函数 — 在状态 s 执行动作 a 后,遵循策略 π 的期望累积回报
- A(s,a):优势函数 — 动作 a 相比"平均动作"好多少
- TD 估计:$A_t = r_t + \gamma V(s_{t+1}) - V(s_t)$(单步)
- GAE:多步 TD 误差指数加权 → 平衡 bias/variance
- MC 估计:$A_t = G_t - V(s_t)$(整条轨迹)
- 3Bellman 方程的物理含义?为什么 V 满足这个递归?
- 4为什么 Policy Gradient 公式里要用 $\log\pi$ 而不是 $\pi$?Log-derivative trick 推导一下。
- 5REINFORCE 算法原理?为什么方差大?怎么降方差?
- 引入 Baseline $b(s)$:$\nabla J = E[\nabla\log\pi \cdot (G_t - b)]$,b 不引入偏差但降方差
- Advantage Actor-Critic:用 $A_t = Q - V$ 替代 $G_t$
- GAE:多步 TD 误差加权平均
- 6Baseline 为什么能降方差且不引入偏差?证明一下。
- 7Actor-Critic 的核心思想?为什么需要 Critic?
- Actor:策略网络 $\pi_\theta$,决定做什么动作
- Critic:价值网络 $V_\phi(s)$,评估当前状态的好坏
- REINFORCE 必须等整条轨迹结束才能更新(MC 方差大)
- Critic 提供即时的价值估计 → 可以每步更新(TD 方差小)
- Advantage = $r + \gamma V(s') - V(s)$ → 低方差的策略梯度信号
- 8Critic 损失为什么用 MSE?从数学上能不能证明 MSE 最优?
- 9A2C、A3C、SAC 各自特点?什么场景用?
- 10DQN 的核心思想?为什么需要 Target Network 和 Replay Buffer?
Advantage 怎么算:
为什么方差大:$G_t$ 是单条轨迹的累积回报,随机性来源多(环境随机 + 策略随机 + 多步累积),单样本估计噪声极大。
降方差方法:
- 11TRPO 的核心思想?为什么要约束 KL?Trust Region 起什么作用?
- 策略梯度的"代理目标"只在旧策略附近是好的近似
- 步子迈太大 → 代理目标不准确 → 策略可能崩溃
- KL 约束保证新旧策略足够接近 → 单调改进有理论保证
- 12TRPO 中的 Importance Sampling 公式推导一下。为什么能从 on-policy 变 off-policy?
- 13TRPO 和 PPO 的区别?PPO 怎么简化了 TRPO?
- 14PPO Clip 机制完整解释。$\text{clip}(r_t, 1-\epsilon, 1+\epsilon)$ 中为什么外面还要 min?画出 A>0 和 A<0 两种情况的图。
- A > 0(好动作):r 越大越好,但 clip 限制 r ≤ 1+ε → 不会过度加强
- A < 0(差动作):r 越小越好,但 clip 限制 r ≥ 1-ε → 不会过度惩罚
- 15Clip 机制可以限制分布差异,还有哪些方法可以做到(KL 惩罚、Early Stopping、Adaptive KL)?
- 16PPO 的 epoch 数取多少合适?epoch 太多会怎样?
- 17GAE 是什么?为什么需要它?λ 取大取小的影响?
- TD(0):低方差但有偏(依赖 V 的准确性)
- MC:无偏但高方差(用整条轨迹)
- λ → 0:退化为 TD(0),低方差高偏差
- λ → 1:退化为 MC,高方差低偏差
- λ = 0.95:常用值,兼顾两者
- 18推导 GAE 公式。GAE 是 MC 和 TD 的什么样的折中?
- 19PPO 的总目标函数包括哪几项?(Surrogate + Value + Entropy)?
- 20PPO 用 value baseline 和 GAE 的根本原因是降方差,能不能从信噪比角度分析?
- 21手撕 PPO 伪代码 / PPO Loss。
目标函数:$$\max_\theta \; \mathbb{E}\left[\frac{\pi_\theta(a|s)}{\pi_{old}(a|s)} A^{old}(s,a)\right] \quad \text{s.t.} \; KL[\pi_{old} || \pi_\theta] \leq \delta$$
为什么约束 KL:
为什么 PPO 替代了 TRPO:TRPO 需二阶优化(共轭梯度+线搜索),PPO 用 clip 近似同样效果但只需一阶梯度。
为什么要 min:取 min 是悲观估计,防止策略更新幅度过大:
ε 常取 0.2,即策略每步最多变化 20%。
为什么需要:Advantage 估计面临 bias-variance tradeoff:
- 22GRPO 是什么?它相比 PPO 主要改进了什么?为什么不需要 Critic?
- 对同一 prompt 采样 G 条回答 → 组内 reward 比较已包含"好坏信息"
- mean(rewards) 天然充当 baseline(数学上等价于 REINFORCE with baseline)
- 省掉 Critic 模型 → 训练资源减半、流程简化
- 23GRPO 怎么用 group mean 当 baseline?数学上等价于什么?
- 24GRPO 的 KL 散度怎么加?为什么是 ratio - log(ratio) - 1 形式(K3 估计)?
- 25为什么 GRPO 容易"训飞"(reward 突然掉)?常见原因和解法?
- Entropy collapse:策略快速坍缩到少数输出模式 → 探索消失 → reward 停滞或下降
- Group 内方差太小:所有采样答案 reward 接近 → 归一化后 Advantage 噪声极大
- KL 失控:策略偏离 ref model 过远 → 进入 reward OOD 区域
- Reward 不稳定:验证器有 bug 或 edge case → 给出误导信号
- DAPO 的 Dynamic Sampling:跳过全 0/全 1 reward 的 group
- Clip-Higher:上界 > 下界 → 鼓励好动作探索
- 增大 Group size G(如 64→128)→ baseline 估计更准
- 加 entropy bonus 或 temperature annealing
- 监控 KL / entropy / reward 三指标,异常即 early stop
- 26DeepSeek-R1 用 GRPO 训练的核心创新是什么?冷启动数据起什么作用?
- 纯 RL 涌现推理:R1-Zero 从 base model 直接 GRPO,不经 SFT → 自发涌现 CoT(aha moment)
- 极简 reward:只用答案正确性(math_verify / code_test)+ format reward → 无需 RM
- 冷启动 SFT + RL 两阶段:用 R1-Zero 生成的高质量 CoT 做 SFT 稳定格式 → 再继续 GRPO
- 解决 R1-Zero 输出可读性差、混合语言、格式不稳定的问题
- 提供一个"可读、有结构"的起点 → 后续 RL 在此基础上探索更好的推理路径
- 本质是把 R1-Zero 涌现的"能力"通过 SFT 固化成"习惯"
- 27DAPO 是什么?相比 GRPO 改进了哪 4 个 trick?(Clip-Higher / Dynamic Sampling / Token-Level Loss / Overlong Reward Shaping)
- Clip-Higher(解耦 clip):上界 $\epsilon_{high}=0.28$ > 下界 $\epsilon_{low}=0.2$ → 鼓励探索好动作,限制坏动作
- Dynamic Sampling:跳过 reward 全 0 或全 1 的 group(无学习信号)→ 提高有效梯度利用率
- Token-Level Loss:loss 按 token 数归一化(而非按 sample 数)→ 避免长回答主导梯度
- Overlong Reward Shaping:超长回答给 soft 负 reward(而非硬截断)→ 平滑惩罚
- 28为什么 DAPO 要做 Clip-Higher?怎么解决 entropy 坍缩问题?
- 29GSPO 的核心思想?sequence-level clip 解决了 token-level clip 什么问题?
- 30PPO / GRPO / DAPO / GSPO 演进路线图:每一步解决了上一步的什么问题?
- PPO:经典 on-policy RL,需 4 个模型(Actor/Ref/RM/Critic),训练复杂且资源消耗大
- GRPO 解决 → 去掉 Critic(用 group reward baseline 替代),2 模型即可,适合 verifiable reward 场景
- DAPO 解决 → GRPO 的 entropy collapse(Clip-Higher 鼓励探索 + Dynamic Sampling 过滤无效 batch)
- GSPO 解决 → token-level clip 导致长序列梯度不一致(改为 sequence-level clip,整条序列的 ratio 做 clip)
- 31手写 GRPO Loss 代码。
核心改进:去掉 Critic 模型,用 group 内 reward 的均值和标准差做归一化替代 Advantage:$$\hat{A}_i = \frac{r_i - \text{mean}(\{r_1,...,r_G\})}{\text{std}(\{r_1,...,r_G\})}$$
为什么不需要 Critic:
适用场景:数学/代码等有明确 verifiable reward 的任务(DeepSeek-R1)。
四个 trick:
- 32Reward 函数设计有哪几类?(Hand-crafted / Learned RM / Rule-based / Self-Reward / PRM)
- 33ORM vs PRM 区别?PRM 怎么标数据?怎么训练?
- 人工逐步标注(OpenAI PRM800K — 人工标每步对/错)
- Monte Carlo 估计:从每步开始多次 rollout → 最终正确率作为该步"好坏"
- Auto-PRM:用模型自身多次采样+自动验证来标注
- 34RLVR (Reinforcement Learning with Verifiable Reward) 是什么?相比 RLHF 优势?
- 数学:答案是否等于 ground truth(math_verify)
- 代码:是否通过测试用例
- 逻辑推理:答案是否满足约束
- 格式:是否遵循指定输出格式
- 无 reward hacking:reward 不可被骗(答案对就是对,错就是错)
- 无需 RM 训练:省去偏好数据收集 + RM 训练流程
- 信号真实:不存在 RM 分布外打分不准的问题
- 可无限采样:自动验证 → 数据获取成本趋近于零
- 35数学/代码任务为什么特别适合 RLVR?哪些任务不适合?
- 36Reward Shaping 怎么做?dense vs sparse reward 选哪个?
- 37Off-policy RL(DQN/SAC)和 On-policy RL(PPO/GRPO)数据使用上有什么本质区别?
- 38RL 框架 OpenRLHF / TRL / VERL / NeMo-Aligner 各自特点?怎么选?
- 模型 <7B + 快速实验 → TRL
- 模型 7B-70B + 生产部署 → OpenRLHF
- 需要 Agentic RL + 环境交互 → VERL (原生支持) 或 OpenRLHF (需自定义)
- 已有 NeMo 训练 pipeline → NeMo-Aligner
- 39RL 训练中 rollout 和 train 怎么并行?什么是 Async RL?
- Rollout Worker:用 vLLM 引擎持续生成。每完成一批 → 计算 reward → 放入队列
- Training Worker:从队列取最近的 rollout 数据 → 计算 advantage → PPO/GRPO 更新
- 权重同步:每 N 步 train 后把最新权重 broadcast 给 rollout worker
- OpenRLHF 的 Ray-based 调度:rollout/reward/train 分别在不同 Ray Actor,通过 object store 传数据
- VERL 的 FSDP 混排:train 用 FSDP 分片,rollout 切换到 vLLM 引擎(共享 GPU 显存)
- 40RL 训练时如何监控?哪些指标说明训挂了?(reward / KL / entropy / clipfrac / approx_kl)
| ORM (Outcome RM) | PRM (Process RM) | |
|---|---|---|
| 评估粒度 | 整条回答最终结果 | 每一步推理过程 |
| 信号密度 | 稀疏(只有最终对/错) | 密集(每步都有对/错) |
| 标注成本 | 低(自动验证答案) | 高(需逐步标注正确性) |
| 信用分配 | 差(不知道哪步错了) | 好(精确到错误步) |
PRM 标数据方法:
典型 verifiable reward:
| 框架 | 核心特点 | 优势 | 劣势 | 适用场景 |
|---|---|---|---|---|
| OpenRLHF | Ray 分布式 + vLLM rollout + 多种算法 | 扩展性强,支持 70B+ 模型;PPO/GRPO/DPO/RLVR 全覆盖;vLLM 异步 rollout | 配置复杂,依赖 Ray 集群管理 | 大规模生产环境、多算法对比 |
| VERL (volcengine-rl) | 字节出品,Actor/Rollout/Critic 分离部署 | FSDP+vLLM 混合编排;资源弹性调度;支持 Megatron backend | 文档少、社区较小 | 字节生态、大规模 Agentic RL |
| TRL (HuggingFace) | 与 transformers 深度集成 | 上手快、生态好、小模型友好;SFT/PPO/DPO 一站式 | 大模型(>34B)scaling 弱,缺乏 vLLM rollout | 研究原型、小模型实验 |
| NeMo-Aligner | NVIDIA Megatron 后端 | 原生 TP/PP 支持;与 NeMo 预训练链路打通 | 仅支持 NeMo 格式模型,生态封闭 | NVIDIA GPU 集群、NeMo 用户 |
选型决策树:
Sync vs Async 架构:
| 同步 (Sync) | 异步 (Async) | |
|---|---|---|
| 流程 | rollout → train → rollout → ... | rollout 持续跑,train 从 buffer 取最新数据 |
| 数据新鲜度 | 100% on-policy | 略 off-policy(延迟 1-2 步) |
| GPU 利用率 | ~50%(交替空闲) | ~90%+ |
| 收敛性 | 稳定 | 需 IS 修正或容忍轻微 off-policy |
工程实现:
4Agentic RL ⭐~50 题
2025-2026 最热前沿方向。多轮 Tool Use RL、长程 Rollout、Process Reward、SWE-RL、Browser Agent — 大厂面试新晋必考。
⭐ 重要程度
Agentic RL 是 2025-2026 大模型岗最高门槛方向。DeepSeek R1、OpenAI o1/o3、Kimi K1.5、Anthropic Sonnet 都在用各种变体。Agent 类公司(Devin / Magic / Cursor)、所有大厂 RL 团队几乎必问。建议熟悉这些关键论文:DeepSeek-R1、Kimi K1.5、SWE-RL、ToolRL、RAGEN、Search-R1、ReTool、ARTIST、MUA-RL。
- 1什么是 Agentic RL?它和经典 RLHF 的本质区别是什么?
- 2Agentic RL 的核心特征:多轮、工具调用、长程、可验证反馈 — 分别带来什么挑战?
- 多轮:credit assignment 困难 — 哪一轮的决策导致了最终成功/失败?
- 工具调用:action space 爆炸 — 选哪个工具 × 什么参数 × 何时调用
- 长程:reward 稀疏 + 显存爆炸 — rollout 几千 token 才得到一个 reward 信号
- 可验证反馈:reward 设计受限 — 只有特定任务能自动验证(数学/代码),通用任务缺乏 ground truth
- 3Agent SFT 和 Agent RL 各自适用场景?为什么 SFT 后还要 RL?
- 有高质量 trajectory 数据(人工标注的工具调用示例)
- 任务模式相对固定(标准化流程)
- 冷启动:让模型学会基本的 tool use 格式和调用时机
- 最优策略未知 — 需要探索(如复杂搜索/多步推理)
- 有 verifiable reward(代码通过率 / 任务完成度)
- 需要超越 SFT 数据的 "天花板"
- SFT 只能模仿训练数据 → 无法发现更优路径
- SFT 数据有上界(标注者的能力极限)→ RL 可以 self-improve
- SFT 不优化最终目标(任务成功率)→ RL 直接优化 outcome
- Agent 任务解空间巨大 → 需要 trial-and-error 探索
- 4RLHF / RLVR / Agentic RL 三者关系?怎么演进过来的?
- RLHF:用人类偏好训练 RM → PPO 优化。解决"什么是好回答",但 RM 可被 hack、人工标注贵
- RLVR:用可验证规则替代 RM(数学对错/代码测试通过)。解决 reward hacking + 标注成本,但只适用于有标准答案的任务
- Agentic RL:在多轮、工具调用、长程任务中做 RL。扩展了 RLVR 的思路到 Agent 场景 — verifiable reward = 任务完成度(PR 合并 / 测试通过 / 网页任务完成)
- RLHF → 对齐(偏好),RLVR → 能力提升(推理),Agentic RL → 行为决策(Agent)
- Reward 来源:人类 → 规则 → 环境反馈
- 轨迹长度:单轮 → 单轮 → 多轮长程
- 5Agentic RL 的 MDP 怎么建模?action space 是什么?(token / tool call / function args)
- 6为什么经典 RLHF 不适合 Agent 训练?(单步 reward / 短轨迹 / 静态环境)
- 7什么是 Verifiable Reward?哪些 Agent 任务可以构造 verifiable reward?
- 8DeepSeek-R1 的 RL 训练流程是什么?冷启动 + R1-Zero + 蒸馏的三阶段?
- R1-Zero:直接从 base model 出发,用 GRPO + verifiable reward(数学正确性)做 RL → 涌现出 CoT 推理能力(aha moment)
- 冷启动 SFT:用 R1-Zero 生成的高质量 CoT 数据做 SFT → 稳定格式和可读性
- 正式 RL + 蒸馏:在 SFT 模型上继续 GRPO 训练 → 然后蒸馏到小模型(1.5B~70B)
- 证明纯 RL(无 SFT)就能涌现推理能力
- Reward 极简:只用"答案对不对"(math_verify / code_test)
- Format Reward 保证输出结构化(<think>...<answer>...)
- 9R1-Zero 为什么能 work?为什么不需要 SFT 冷启动?aha moment 是什么?
- 10Kimi K1.5 的 RL 方案和 DeepSeek-R1 有什么不同?Long Context CoT 怎么处理?
vs 经典 RLHF 的区别:
| 维度 | 经典 RLHF | Agentic RL |
|---|---|---|
| 轨迹 | 单轮 prompt→response | 多轮 think→act→observe→... |
| 动作空间 | text tokens | tokens + tool calls + args |
| Reward | RM 主观打分 | 可验证结果(测试通过/答案正确) |
| 环境 | 静态(无反馈) | 动态(工具返回/环境变化) |
| 挑战 | reward hacking | + 长程信用分配 + 稀疏 reward + 工具异常 |
- 11Tool Use RL(如 ToolRL / Search-R1 / ARTIST)的核心思想?为什么能让模型自主决定何时调工具?
- 模型在推理时可以选择:直接回答 or 调用工具(搜索/计算器/代码执行)
- 工具返回结果嵌入 context → 模型继续推理
- Reward = 最终答案正确性(RLVR)
- GRPO/PPO 训练 → 模型学会在需要时主动调工具
- 如果直接回答就能对 → reward 一样高 → 不需要工具 → 不会多调
- 如果需要外部知识/精确计算才能对 → 用工具的 trajectory reward 更高 → 策略收敛到"该用就用"
- 12Search-R1 / R1-Searcher 怎么训练?Reward 怎么设计?为什么只用最终答案对错作 reward 就能学会用搜索?
- 13ReTool 的设计思路?什么时候选择"先思考还是先调工具"?
- 14ToolRL 中工具结果嵌入 trajectory 时,loss mask 怎么打?工具返回的 token 要算 loss 吗?
- 15Tool Use 训练中怎么处理工具异常(API failure)?要不要给负 reward?
- 16如果工具是确定性的(计算器)vs 随机的(搜索),训练时怎么处理 reward 噪声?
- 17ARTIST 框架的 self-improving 机制?Agent 怎么从自己的 trace 中学习?
典型流程:
- 18多轮 Agent 训练怎么 rollout?每一轮的 token 怎么算 advantage?
- 给 Agent 一个 task → 模型生成 think + action
- 执行 action → 环境返回 observation
- observation 拼入 context → 模型继续生成下一轮 think + action
- 重复直到任务完成或达到 max_turns
- 最终 reward 根据任务完成度打分
- 方法 1(Outcome-level):所有 token 共享最终 reward,用 GRPO group 归一化 → 简单但信用分配差
- 方法 2(Turn-level):每轮结束后评估中间状态 → 分配该轮 advantage
- 方法 3(Token-level with GAE):需要 Critic(每步估计 V),计算每 token 的 TD 误差 → 精确但计算昂贵
- 19RAGEN 框架的核心创新?多轮 RL 训练有什么特别处理?
- 20为什么长程多轮 RL 容易陷入"reward 折扣消失"?怎么处理?
- 21多轮 rollout 中怎么处理"中间步成功+最终失败"的情况?(可信用分配)
- 22RL 训练长 trajectory 时显存爆掉怎么办?Gradient Checkpointing / Truncated BPTT 怎么用?
- 23MUA-RL(multi-turn user-interacting)是什么?模拟用户的方式有什么优势?
- 24Agent-R1 v2 的多轮 RL 创新点?
- 25Agent 任务 reward 怎么设计?outcome reward / process reward / format reward 怎么组合?
- Outcome Reward:任务最终结果(代码测试通过=1,失败=0)→ 最可靠但最稀疏
- Process Reward:中间步骤质量(搜索到有用信息 / 代码编译成功)→ 密集但难设计
- Format Reward:输出格式正确(<think>...</think><answer>...</answer>)→ 简单但辅助性
- Outcome 是主信号(权重大)
- Format 是辅助信号(权重小,如 0.1)→ 保证输出可解析
- Process reward 可选:如果任务太长/太稀疏,加中间步 reward 加速学习
- Format reward 权重太大 → 模型只学格式不学内容
- Process reward 设计不当 → reward hacking(学会生成"看起来对"的中间步)
- 26Format Reward(如要求模型按 `
... ... ` 格式输出)作用是什么?过强会怎样? - 27Agent 训练中怎么避免 Reward Hacking?(模型学会输出冗长但表面"对"的中间步)
- 28代码 Agent 的 reward 设计:编译成功 / 测试通过 / 风格分 怎么配权重?
- 29Web Agent / Browser Agent 的 reward 怎么定?(任务完成度 / 步数 / 安全性)
- 30如何处理 sparse reward 问题?Curriculum Learning / Reward Shaping 实践中怎么用?
- 31PRM 在 Agent 训练中怎么用?怎么标 process 数据?
- 32为什么数学/代码题适合用 outcome reward,而开放任务必须用 PRM 或 RM?
- 33SWE-RL(Meta)的核心方法?为什么只用 GitHub PR 数据就能训出 Agent?
- 从 GitHub 收集 merged PR 数据 → issue description 作为 task,PR diff 作为 ground truth
- 用 outcome reward:模型生成的 patch 是否能通过 repo 的 CI 测试 → 0/1 reward
- GRPO 训练 → 模型学会理解 issue → 定位文件 → 生成 patch
- PR = 完整的 (问题描述, 解决方案, 验证测试) 三元组 → 天然 RLVR 数据
- GitHub 数据量极大(百万级 PR)→ 无需人工标注
- CI 测试 = 免费的 verifiable reward → 可以无限 rollout
- 涵盖真实软件工程场景 → 学到的能力直接可用
- 34SWE-Gym / SWE-Bench 评估有什么 trick?怎么避免数据污染?
- 35代码 Agent 的 sandbox 怎么搭?执行不安全代码要做哪些防护?
- 36Cursor / Devin / Magic 的 Agent 训练方案推测?为什么效果差异大?
- 37SWE-Smith 框架的数据合成思路?合成 issue / 合成 patch 怎么做?
- 38Web/GUI Agent 的 action space 怎么设计?accessibility tree vs screenshot+coordinate?
- 39UI-TARS、ShowUI、OS-Atlas 这些 GUI Agent 模型怎么训?数据从哪来?
- 40为什么 GUI Agent 普遍用 SFT + RL 而不是纯 RL?冷启动数据怎么获取?
- 41VLM Agent(看 screenshot 操作)和纯文本 Agent(看 HTML)各有什么优劣?
- 42Agentic RL 训练中 rollout 巨贵,怎么加速?(vLLM 推理 / async rollout / prefix caching)
- vLLM 批量推理:把同一 batch 的 G 条采样并行生成 → continuous batching + PagedAttention → 吞吐量提升 5-10×
- Async Rollout:rollout 和 training 异步执行。rollout worker 不停采样 → trainer 从 buffer 取数据训练 → 不互相等待
- Prefix Caching:同一 prompt 的 G 条采样共享 prefix KV Cache → 避免重复计算 prompt 部分
- 环境并行:多个 sandbox 并行执行工具调用(Docker 容器池)
- Early Termination:超长/明显失败的 rollout 提前截断
- 43VERL / OpenRLHF / NeMo-RL / TRL 中谁更适合 Agentic RL?为什么?
- VERL ⭐(最适合):原生支持 multi-turn rollout + 环境交互;Actor/Rollout/Critic 分离部署;FSDP+vLLM 混合编排;弹性处理不等长 trajectory
- OpenRLHF(适合但需定制):Ray-based 天然支持异构资源调度;vLLM rollout 成熟;但 multi-turn 环境交互需自行集成 sandbox 层
- TRL(不推荐):单卡友好但缺乏分布式环境调度;无 vLLM 集成;长序列 rollout 显存溢出;适合单轮 RLHF 不适合 Agentic
- NeMo-Aligner(可用但限制多):与 Megatron 绑定;定制 environment loop 困难;适合标准 RLHF 不适合 Agentic
- 44怎么做 Dynamic Sampling(动态采样)?为什么 DAPO 要在 reward=1 或 reward=0 时跳过这批?
- Group 内全部 reward=1(太简单):$\hat{A}_i = r_i - \bar{r} = 1-1 = 0$ → 所有 advantage = 0 → 无梯度信号
- Group 内全部 reward=0(太难):$\hat{A}_i = 0-0 = 0$ → 同样无信号,且容易让模型学到"什么都别做"
- 只有 0/1 混合的 group 才有对比 → 能区分好坏 response → 产生有意义的 advantage
- 对每个 prompt 采样 G 条 response → 计算 reward
- 如果 group 内 reward 全同(全 0 or 全 1)→ 丢弃该 group,不算 loss
- 只保留有 "信息量" 的 group → 有效梯度利用率提升
- 45Agent RL 中 entropy 容易迅速下降导致 explore 不足,怎么解决?
- Entropy Bonus:在 loss 中加 $-\beta H(\pi)$ 项(SAC 思想),直接鼓励输出分布保持多样
- DAPO Clip-Higher:解耦 clip 上下界,$\epsilon_{high} > \epsilon_{low}$ → 好动作的 ratio 可以更大 → 鼓励探索新路径
- KL 约束放松:减小 KL penalty / 增大 KL budget → 允许策略偏离 ref model 更远 → 更多探索空间
- 温度调节:rollout 时用较高 temperature (1.0-1.2) 增加采样多样性;train 时正常
- Dynamic Sampling:避免在无信号的 group 上训练 → 防止 reward=0 group 把策略"吓"回保守模式
- Prompt 多样性:确保训练 prompt 覆盖不同难度和类型 → 防止 Agent 只学会一种套路
- 周期性 entropy reset:当 entropy 降到阈值时,用少量 SFT 数据回血(DeepSeek-R1 cold start 思路)
- 46如何评估一个 Agent RL 训练是否健康?除 reward 外哪些指标重要?
- 健康:reward ↑ + entropy 缓降 + KL 适中 + success ↑
- Collapse:entropy 骤降 + reward 平坦/下降 + response 趋同
- Reward Hacking:reward ↑ + success ↓ + length ↑
- 训练不稳定:clipfrac>0.5 + KL 震荡 + loss spike
- 47Curriculum RL 在 Agent 训练中怎么用?(easy → hard / short → long horizon)
- 难度 Curriculum:
Easy tasks(1-2 步即可完成)→ Medium(3-5 步)→ Hard(10+ 步,需要 planning)
判断依据:历史 success rate > 阈值 → 升级到下一难度 - Horizon Curriculum:
max_turns=3 → max_turns=5 → max_turns=10+
好处:短 horizon rollout 快 + reward 不太稀疏 → 快速学会基本策略 → 再训长程泛化 - 工具 Curriculum:
单工具 → 2-3 工具组合 → 全工具集
减少 action space 爆炸的早期负担 - 环境 Curriculum:
确定性环境(如数学)→ 半确定(代码执行)→ 随机(Web browsing) - Score-based:按 prompt 的历史 reward 分桶,优先采样 "刚好在学习边界" 的题(不太简单也不太难)
- Self-paced:模型每轮 rollout 完自动统计 success rate → 动态调整下一轮数据难度分布
- 48Self-Play / Self-Improving Agent 怎么训?避免 distribution drift 有哪些方法?
- 当前策略 $\pi_k$ rollout 生成 N 条 trajectory
- Reward 评估(verifier / test case / 环境反馈)
- 选取高质量 trajectory 做 RL 训练 → 得到 $\pi_{k+1}$
- 重复 — 每代 Agent 用自己的数据提升自己
- KL 约束(标准方法):PPO/GRPO 的 KL penalty 限制每步更新幅度
- 混合数据:每轮训练数据 = α × 当前策略采样 + (1-α) × SFT/历史高质量数据 → 防止遗忘
- Rejection Sampling + SFT:只保留 reward>阈值的 trajectory 做 SFT → 更稳定但保守
- EMA Policy(RLHF 经验):ref_model 用 EMA 更新而非固定 → 缓慢跟随训练策略
- Periodic Reset:每 N 步从 SFT checkpoint 重新开始 RL → 重置 drift(DeepSeek-R1 cold start 思路)
- 49Agentic Scaling Law:参数量 / 数据量 / rollout 步数三个维度的 scaling 关系?
- 参数量 N:更大模型 → 更好的 planning/reasoning 能力 → 复杂任务 success rate 更高。但 rollout 成本 ∝ N → 计算预算制约
- Rollout 数据量(compute):同一 prompt 采样 G 条 → G 越大,advantage 估计越准 → 训练越稳。类比"推理时 scaling"(test-time compute scaling)
- 环境交互步数 (horizon T):更长 trajectory → 能解决更复杂任务,但 reward 稀疏度 ∝ T → 信用分配更难
- OpenAI o1/o3:更多 inference-time compute(更多搜索/推理步)→ 持续提升
- DeepSeek-R1:GRPO 的 G=16-64 对训练稳定性至关重要,G 太小训不动
- SWE-RL:Agent 在 code 任务上随 rollout 步数和训练迭代持续提升
- 50展望:Agentic RL 下一步主要瓶颈在哪?(数据 / sandbox / 评估 / 长程信用分配)
- Sandbox / Environment 基础设施:
- Agent 需要真实环境交互(执行代码/浏览网页/操作 API)→ 需要安全、快速、可并行的 sandbox
- 难点:环境状态复杂 → 难以 reset;API 有 rate limit;真实环境不可逆
- 进展:Docker 池 + Kubernetes 弹性调度、SWE-bench 的 docker-per-task 方案
- Reward / 评估:
- 大量真实任务缺乏自动 verifier(只有代码/数学能自动评测)
- 通用 Agent 任务(研究/写作/规划)→ 只能靠 LLM-as-judge 或人类评估,成本高且噪声大
- 进展:Process Reward Model(PRM)提供中间步奖励;LLM judge 做 proxy reward
- 长程信用分配:
- Agent 任务动辄 10-50 轮交互、数千 token → 哪个 action 决定了最终成败?
- GRPO 的 outcome-level reward 粒度太粗;token-level Critic 太贵
- 进展:Turn-level reward(每轮评估)、Monte Carlo Tree Search 辅助
- 数据飞轮:
- SFT 数据少:高质量 Agent trajectory 标注极贵(Devin 的专家标注数据 ~$100/条)
- RL 探索效率低:成功 trajectory 稀疏(SWE-bench 上 baseline <5% 解决率)
- 进展:SWE-RL 用 Git PR 作为免费数据源;Self-Play 迭代提升
加速方法:
框架适配度排名:
关键差异 — Harness 架构:
| 能力 | VERL | OpenRLHF | TRL |
|---|---|---|---|
| Multi-turn Env | 原生支持 | 需插件 | 不支持 |
| vLLM Rollout | ✓ (FSDP↔vLLM) | ✓ (Ray Actor) | ✗ |
| Async Rollout | ✓ | ✓ | ✗ |
| Sandbox 调度 | Docker/K8s原生 | 需自建 | ✗ |
| 动态序列长度 | padding-free | 支持 | 需截断 |
为什么跳过 reward 全 0 或全 1:
Curriculum 联动:如果大量 group 被跳过(全 0 → 太难),说明需要降低难度或加 reward shaping。
解决方法:
监控指标:如果 policy entropy 在训练前 100 步内下降超过 50%,说明 collapse 可能发生 → 需立即干预。
| 指标 | 健康范围 | 异常信号 |
|---|---|---|
| mean reward | 稳步上升 | 突然骤降或长期平坦 |
| policy entropy | 缓慢下降 | 前 100 步暴跌 → collapse |
| KL divergence | 0.01-0.2 | >0.5: policy drift 过大;~0: 没学到东西 |
| clipfrac | 0.1-0.3 | >0.5: clip 太多,步长太大 |
| approx_kl | <0.02 | >0.05: 单步更新过猛 |
| value loss | 下降趋势 | 震荡不收敛 → Critic 训练有问题 |
| response length | 合理范围内 | 持续增长 → reward hacking(废话变多) |
| tool call rate | 与任务匹配 | 降到 0 → 放弃工具;100% → 工具滥用 |
| success rate | 上升且与 reward 一致 | reward 升但 success 不升 → reward hacking |
健康 vs 异常模式:
Curriculum 维度:
实现方式:
训练流程:
避免 drift 的方法:
Agentic RL 的 Scaling 维度:
已知现象:
开放问题:三维 scaling 的最优比例未知 — 给定固定 compute budget,应该用大模型+少 rollout,还是小模型+多 rollout?目前缺少系统性研究。
最可能突破方向:Sandbox infra 标准化(如 E2B / Modal / 开源 sandbox)+ 自动 reward 设计(LLM judge + verifier 组合)。
5多模态 / VLM ⭐~70 题
CLIP / LLaVA / Qwen-VL / InternVL / Gemini / GPT-4V 系列 — 2025-2026 大模型岗第一热门方向,几乎所有岗位都会问。
- 1多模态大模型一般有哪几个组件?各自作用?
- Visual Encoder(视觉编码器):提取图像特征。常用 ViT(CLIP-ViT / SigLIP / InternViT)→ 输出 patch 级 visual tokens
- Connector/Projector(连接层):对齐视觉和语言空间。方案:Linear / MLP / Q-Former / Perceiver Resampler / Pixel Shuffle
- LLM Backbone(语言模型):理解和生成文本。接收 visual tokens + text tokens,做统一的自回归生成
- 2多模态大模型的核心挑战是什么?怎么实现视觉和语言的对齐和融合?
- 模态鸿沟:视觉和语言的表示空间差异巨大
- 信息粒度:图像信息密度远高于文本(一张图 = 数百 visual tokens)
- 训练数据:高质量图文配对数据稀缺
- CLIP 对比学习:图文特征拉近 → 共享 embedding space
- 连接层投影:Linear/MLP 将 visual tokens 映射到 LLM 的 word embedding 空间(LLaVA)
- 交叉注意力:用 Q-Former/Cross-Attn 让语言模型主动 query 视觉特征(BLIP-2/Flamingo)
- 原生统一:图像离散化为 token 与文本共享词表(Chameleon/Emu3)
- 3视觉和文本的对齐任务怎么做?常见对齐范式有几类?
- 对比学习对齐(CLIP 范式):
双塔架构 → 图文各自编码 → InfoNCE 拉近匹配对、推开不匹配对
特点:学到通用对齐空间,适合检索/zero-shot - 生成式对齐(LLaVA/BLIP-2 范式):
Visual tokens 投影到 LLM 空间 → 通过 next-token prediction 隐式对齐
特点:对齐嵌入在生成过程中,适合多模态对话 - 原生统一对齐(Chameleon/Emu3 范式):
图像离散化为 token → 和文本共享同一词表/embedding space
特点:最深度的对齐,但需要训练 image tokenizer - 4主流 VLM 架构范式:共享编码器 vs 跨模态注意力融合 vs LLM-as-decoder 各自优劣?
- 5VLM 训练分几个阶段?(预训练对齐 → 视觉指令微调 → RLHF)
- Stage 1 - Pretrain Alignment:大规模图文对数据(如 LAION)→ 只训练 Connector → 让 visual tokens 对齐到 LLM 的表示空间
- Stage 2 - Visual Instruction Tuning:高质量多模态指令数据 → 训练 Connector + LLM(可选 ViT)→ 学会基于图像回答问题、描述、推理
- Stage 3 - RLHF/DPO(可选):偏好数据对齐 → 减少幻觉、提升安全性和有用性
- 6什么是视觉指令微调(Visual Instruction Tuning)?为什么是 VLM 具备对话能力的关键?
- 7VLM 的"幻觉"和纯文本 LLM 的幻觉有什么不同?(物体幻觉 / 属性幻觉 / 关系幻觉)
- 物体幻觉:描述图中不存在的物体(如"图中有一只猫"但其实没有)— 最常见
- 属性幻觉:物体存在但属性描述错误(颜色/大小/数量错误)
- 关系幻觉:物体间空间关系描述错误("A 在 B 上面"但实际在下面)
- 视觉信息压缩后丢失细节 → LLM 用语言先验"脑补"
- 训练数据中图文描述本身就有噪声
- LLM backbone 的语言先验太强 → 覆盖视觉证据
- 8怎么缓解 VLM 幻觉?(POPE 评估 / RLHF-V / DPO 对齐 / 高质量数据)
三类对齐范式:
三类 VLM 幻觉:
- 9CLIP 的训练流程?对比学习的 loss 是什么?为什么用 InfoNCE?
- 输入 batch of (image, text) pairs
- Image Encoder (ViT) → 图像特征 $I_i$;Text Encoder (Transformer) → 文本特征 $T_i$
- 计算 batch 内所有 (I, T) 对的余弦相似度矩阵 $S_{ij} = I_i^T T_j / \tau$
- 对角线是正样本(匹配对),其余为负样本
- 10CLIP 的文本编码器和图像编码器是什么?训练时 batch 内每张图片有多少负样本?
- 11CLIP 的 temperature 参数起什么作用?为什么是 learnable?
- 12CLIP 在 zero-shot 分类上为什么效果好?
- 13CLIP 有哪些局限性?(细粒度 / 计数 / 空间关系 / 长文本)
- 14SigLIP 相比 CLIP 改进了什么?为什么用 sigmoid loss 替代 softmax?
- 15EVA-CLIP / DFN-CLIP / OpenCLIP 各自特点?
- 16手撕 InfoNCE / CLIP 对比学习 loss。
对称结构:image→text 和 text→image 两个方向都优化。
为什么 InfoNCE:互信息的下界估计,batch 越大负样本越多 → 对比学习越有效(CLIP 用 32K batch size)。
- 17ViT 的结构?Patch Embedding 怎么做?CLS Token 起什么作用?
- 18ViT 和 CNN 区别是什么?ViT 的归纳偏置弱,会带来什么问题?
- 19ViT 的位置编码怎么做?为什么后期 VLM 都改用 2D RoPE?
- 20DINO / DINOv2 / MAE 这些自监督视觉模型怎么训练?和 CLIP 对比学习有什么区别?
- 21SAM 有哪几个组件?怎么训?性能水平?
- 22SAM2 相比 SAM 改进了什么?为什么能做视频分割?
- 23Swin Transformer 的窗口注意力解决了什么问题?
Patch Embedding:图像 $H \times W \times 3$ 切成 $N = \frac{H \times W}{P^2}$ 个 patch(如 P=14)→ 每个 patch 展平后通过线性层映射到 D 维(等价于 stride=P 的卷积)。
CLS Token:可学习的特殊 token,拼在 patch 序列最前面。经过 Transformer 后,CLS token 聚合了全局信息 → 用于分类/对齐。
在 VLM 中:通常不用 CLS,直接取所有 patch token 作为 visual tokens 送入 LLM。
- 24LLaVA-1.0 / 1.5 / NeXT / OneVision 演进路线?每代核心改进?
- LLaVA-1.0:单层 Linear connector + ViT-L/14 + Vicuna → 证明简单投影就能对齐
- LLaVA-1.5:MLP connector(两层+GELU)+ CLIP-ViT-L@336 + 更多数据 → 效果大幅提升
- LLaVA-NeXT:AnyRes 高分辨率(动态切图 + 全局缩略图)+ 更强 LLM backbone → 支持任意分辨率
- LLaVA-OneVision:统一图像/多图/视频三种模态 + 大规模指令数据 → 单模型多任务
- 25LLaVA 的 connector 从单层 Linear 升级到两层 MLP,为什么?
- 26LLaVA 的训练阶段:Pretrain(只训 connector)+ SFT(连 LLM 一起训)— 为什么这么分?
- 27LLaVA-NeXT 怎么处理高分辨率?AnyRes 切图策略原理?
- 28LLaVA-OneVision 怎么把图像、多图、视频统一到一个模型?
- 29MiniGPT-4 / MiniGPT-v2 怎么连接 ViT 和 LLM?Q-Former 起什么作用?
- 30BLIP-2 的 Q-Former 是什么?为什么用 learnable queries?
- 31Qwen-VL / Qwen2-VL / Qwen2.5-VL / Qwen3-VL 的演进核心?
- Qwen-VL:Cross-Attention 投影层 + 三阶段训练 + grounding 能力
- Qwen2-VL:Naive Dynamic Resolution(直接处理任意分辨率)+ M-RoPE(3D 位置编码)+ 去掉固定切图
- Qwen2.5-VL:Window Attention + MRoPE 优化 + 长视频支持(1小时+)+ Agent 能力增强
- Qwen3-VL(Qwen-Omni):端到端全模态(图/文/音/视频)统一生成 + thinking mode
- 32Qwen2-VL 的 Naive Dynamic Resolution 怎么工作?相比 LLaVA 的 AnyRes 优势?
- 33M-RoPE(Multimodal RoPE)解决了什么问题?三维 RoPE 怎么编码时间 + 空间?
- 时间维 (temporal):视频第几帧 → 编码时间顺序
- 高度维 (height):patch 在图像中的行坐标
- 宽度维 (width):patch 在图像中的列坐标
- 纯文本 token:三维 position 相同 → 退化为标准 1D RoPE
- 图像 patch:temporal 相同,height/width 不同 → 编码 2D 空间
- 视频帧:temporal 不同 + 2D 空间 → 完整的 3D 时空编码
- 34Qwen-VL 的 Cross-Attention 投影层和 LLaVA 的 MLP 投影层有什么取舍?
- 35Qwen-VL 三阶段训练:每阶段冻结/解冻哪些模块?为什么?
M-RoPE(Qwen2-VL 提出):将 RoPE 的频率维度拆成三份,分别编码三个位置轴:
效果:
- 36InternVL 系列的核心创新?InternViT-6B 怎么训出来的?
- 37InternVL 2.5 / 3 / 3.5 演进?Dynamic High Resolution 实现?
- 38DeepSeek-VL2 的 MoE + 多模态怎么训?
- 39Molmo / PaliGemma / Pixtral 各自架构特点?
- 40GPT-4V / Gemini / Claude 3.5 Sonnet 的多模态能力推测架构?
- 41VLM 处理高分辨率图像的几种主流方案?AnyRes / Native Dynamic / Tiling 对比?
- AnyRes(LLaVA-NeXT):将图像切成多个固定分辨率子图 + 一张全局缩略图 → 分别过 ViT → 拼接 tokens。优:兼容固定分辨率 ViT;劣:切图粒度固定
- Naive Dynamic Resolution(Qwen2-VL):ViT 直接处理任意分辨率 → 出来多少 patch tokens 就多少。优:无预设切图,信息无损;劣:需重新训练 ViT
- Pixel Shuffle / Token Merging:在 connector 阶段压缩 visual tokens(如 4 tokens → 1 token)→ 减少 LLM 输入长度
- 42高分辨率会带来什么计算挑战?(visual token 爆炸 / KV cache 显存)
- 43Visual Token Compression 有哪些方案?(Q-Former / Pixel Shuffle / Token Merging / Perceiver)
- 44视频 VLM 的核心难点?多少帧合适?怎么 sample?
- Token 爆炸:每帧数百 visual tokens × 帧数 → 轻松超过 LLM 上下文窗口
- 时间建模:需理解动作先后顺序、因果关系、时间跨度
- 信息冗余:相邻帧高度相似 → 大量重复信息浪费 context
- 长视频:小时级视频无法全部送入
- 短视频(<1min):8-32 帧,均匀采样
- 中视频(1-10min):32-64 帧,关键帧采样
- 长视频(>10min):hierarchical sampling 或 streaming
- 均匀采样:最简单,适合内容变化均匀的视频
- 关键帧采样:基于光流/差异度选变化大的帧
- 动态采样(Qwen2-VL):根据 FPS 和视频长度自适应选帧数
- Token 压缩:对每帧做 Pixel Shuffle 或 temporal pooling → 减少总 token
- 45长视频(小时级)怎么处理?VideoChat / VideoLLaMA / Video-XL 各自方案?
- 46视频中的时间编码怎么做?Timestamp / 帧率 编码方案?
- 47什么是 needle-in-the-haystack 视频评估?为什么难?
- 48什么是 Visual Grounding?VLM 怎么输出 bbox?
- 文本化坐标(主流):将 bbox 坐标归一化到 [0, 1000] → 作为特殊 token 生成
例:输出 "<box>(102, 345, 567, 789)</box>" → 解析为 [x1, y1, x2, y2]
代表:Qwen-VL、Shikra、Ferret - 离散化 bin token:将坐标空间量化为有限 bin(如 1000 个)→ 每个 bin 一个特殊 token
代表:Kosmos-2、Pix2Seq - 回归 head:在 LLM 输出上接检测 head → 直接回归连续坐标
代表:少数方案,兼容性差 - 49怎么评估 VLM 的 grounding 能力?常见 benchmark?
- 50Kosmos-2 / Shikra / Ferret 的 grounding 方案区别?
- 51VLM 在 OCR、文档理解任务上为什么效果差?怎么改进?
- 52细粒度识别(鸟类/车型)VLM 的瓶颈在哪?
VLM 输出 bbox 的方式:
主流趋势:文本化坐标最受欢迎 — 不修改模型结构、和对话能力兼容、支持多目标输出。
- 53RLHF-V 怎么对齐 VLM?偏好数据怎么收集?
- 54VLM 怎么做 DPO?相比文本 DPO 有什么特别处理?
- 55怎么评估 VLM 的有用性 / 真实性 / 视觉理解能力?(MMBench / MM-Vet / MMMU / SEED)
- 有用性:MM-Vet / LLaVA-Bench(开放 QA + GPT-4 judge)
- 真实性:POPE / HallusionBench(幻觉检测)
- 视觉理解:MMBench / MMMU(多维度结构化评估)
- 56什么是 POPE 评估?怎么测物体幻觉?
- 57SuperCLEVR / MMVP / MMBench 这些 benchmark 各自侧重什么?
| Benchmark | 侧重 | 特点 |
|---|---|---|
| MMBench | 综合能力 | 多维度打分(感知/推理/知识),CircularEval 减少选项偏差 |
| MM-Vet | 综合对话 | 开放式 QA + GPT-4 评分,6 种核心能力 |
| MMMU | 学科知识 | 大学水平多学科(物理/化学/医学),测真正理解 vs 猜测 |
| SEED-Bench | 时空理解 | 图像+视频评估,19k 选择题 |
| POPE | 幻觉评估 | Yes/No 探测物体存在性 → precision/recall |
| RealWorldQA | 真实场景 | 真实照片 + 实用问题 |
评估策略:
- 58VLA(Vision-Language-Action)模型是什么?OpenVLA / RT-2 / π0 怎么训?
- 59GUI Agent(UI-TARS / ShowUI / Cogagent)怎么用 VLM 操作界面?
- 60具身智能(Embodied AI)的 VLM 训练有什么特别挑战?
- 61VLM-RL 怎么训?比纯文本 RL 多哪些难点?
- 62你做过 VLM 相关微调吗?用了什么模型?数据集怎么构造?
- 63VLM 微调中冻结哪些模块?为什么?数据多少合适?
- 64如果让你做一个电商 VLM Agent,输入应该选哪些模态?怎么训?
- 65VLM 微调出现"模态遗忘"(纯文本能力下降)怎么办?
- 66视觉特征对齐 LLM 时,连接层是 Linear / MLP / Q-Former 选哪种?
- 67VLM 训练数据组成(图文对 / 指令 / OCR / 视频)的比例怎么定?
- 68Self-Attention 机制在多模态对齐上是否存在瓶颈?注意力权重完全偏向某一模态怎么办?
- 69怎么评估 VLM 落地效果?线上指标和离线指标怎么对齐?
- 70如果训练后 VLM 中文场景 OCR 效果差,怎么针对性补救?
6Agent 智能体~40 题
Agent 设计、ReAct、Planning、Memory、Tool Use、Multi-Agent 协作。Agent 类岗位(字节豆包 / 通义实验室 / Devin)几乎必问。
- 1如何定义一个基于 LLM 的 Agent?由哪些核心组件构成?(LLM Brain / Memory / Planning / Tool Use)
- LLM Brain(推理核心):理解指令、推理决策、生成行动
- Memory(记忆系统):短期(对话历史/working memory)+ 长期(向量数据库/知识库)
- Planning(规划能力):任务分解、子目标设定(CoT/ToT/ReAct)
- Tool Use(工具使用):调用 API/搜索/代码执行/数据库查询
- 2详细解释 ReAct 框架。Thought → Action → Observation 循环怎么工作?
- Thought:LLM 思考当前状态和下一步该做什么(自然语言推理)
- Action:执行具体操作(调用工具/搜索/代码执行)
- Observation:获取外部环境反馈(工具返回结果)
- 重复直到任务完成或达到最大步数
- 3ReAct 和 Plan-and-Execute / Reflexion 各自适用场景?
- 4Agent 的 Planning 能力有哪些实现方式?(CoT / ToT / GoT / LLM+PDDL)
- 5什么是 Agent 的 self-reflection?Reflexion 论文的核心机制?
- 6在构建一个复杂的 Agent 时,最大的挑战是什么?
- 7怎么确保 Agent 的行为安全可控?
四大组件:
循环流程:
vs 纯 Action:没有显式推理 → 决策不透明且容易出错。
- 8怎么为 Agent 设计短期记忆和长期记忆?分别用什么存储?
- 9长期记忆如何存?向量数据库 + 知识图谱组合方案?
- 10历史记录量非常大时,怎么优化查询效率?怎么做记忆衰退?
- 11MemGPT / Letta 的 OS-style memory 方案是什么?working memory 和 archival memory 怎么调度?
- 12Agent 多轮对话时,怎么压缩历史 context?Summary / Sliding Window 怎么选?
- 13LLM 是怎么学会调用外部 API 或工具的?(prompt-based / fine-tune / RL)
- 14Function Calling 的 SFT 数据怎么构造?工具的描述、参数、返回值怎么模板化?
- 15工具调用的调度策略怎么设计?异常 Fallback 策略?
- 16怎么让 Agent 处理工具返回的大量数据(搜索结果数千 token)?
- 17MCP(Model Context Protocol)是什么?相比传统 function calling 优势?
- 18Toolformer / ToolLLaMA / Granite-Function 这些工具调用模型的训练方法?
- 19LangChain / LlamaIndex / AutoGen / CrewAI / MetaGPT 框架的核心区别?怎么选型?
- 20A2A(Agent-to-Agent)框架是什么?和普通 Agent 框架的区别?
- 21多 Agent 系统怎么协作?(分工 / 投票 / 辩论)
- 22多 Agent 比单 Agent 优势在哪?什么场景适合?
- 23Agent 误判导致策略冲突怎么处理?
- 24Agent 多轮对话中 Attention 的局限性体现在哪?
- 25用过哪些 Agent 框架?选型考虑什么?评价指标?
- 26微调过 Agent 能力吗?数据集怎么收集?(self-instruct / human / 蒸馏)
- 27Agent 评估维度有哪些?怎么衡量 Planning 能力 vs Hallucination Rate?
- 28常见 Agent benchmark:AgentBench / WebArena / OSWorld / SWE-Bench / GAIA 各自侧重?
- 29Agent 任务过程指标有哪些?(完成率 / 步数 / token 成本 / 工具调用准确率)
- 30真实环境 Agent vs 软件工具 Agent 的本质区别?
- 31高并发查询的 Agent 系统中,怎么优化召回和生成阶段的延迟?
- 32Agent 推理链路有 3 个工具 + 高频请求时整体延迟高,怎么优化?(场景题)
- 33Prompt 自动推荐模块用了哪些优化策略?Prompt 压缩 / Embedding 表示?
- 34大规模 Agent 系统多线程/多进程下的资源调度策略?
- 35GPU 资源有限的条件下同时提供推理和微调服务,怎么做资源分配?
- 36如果做电商 Agent,应选哪些模态?(文本评论 / 图像 / 视频 / 购买记录)
- 37当前 Agent 能力的最大瓶颈是什么?(长程规划 / 工具组合 / 数据 / 评估)
- 38最近半年印象最深刻的 Agent 论文 / 开源项目?为什么?
- 39追求更强大的基础模型 vs 更精巧的 Agent 架构,怎么取舍?
- 40你最想创造一个什么样的 Agent?解决什么问题?
7RAG 检索增强~30 题
RAG 全流程、Embedding、Reranking、Hybrid Search、GraphRAG — RAG 是 LLM 应用最重要的工程方向,大部分应用岗位必问。
- 1RAG 的工作原理?完整流程?相比微调 LLM 主要优势?
- 索引构建:文档 → Chunking → Embedding → 存入向量数据库
- 检索:用户 query → Embedding → 向量相似度搜索 → 召回 top-K 文档片段
- 增强生成:将召回文档作为 context 注入 prompt → LLM 基于上下文生成答案
- 无需重训模型 → 知识可实时更新
- 可溯源 → 回答可追溯到原始文档
- 减少幻觉 → 有事实依据约束生成
- 领域适应快 → 换文档库即换领域
- 2RAG 与传统"检索 + 模型生成"的本质区别?
- 3标准 RAG 的最大瓶颈是什么?(检索质量 / chunk 切分 / context noise)
- 4把 RAG 做成 Agent(Agentic RAG)有什么好处?
- 5什么是 "Lost in the Middle" 问题?怎么缓解?
- 6Chunk 切分策略怎么选?大小、重叠、语义切分(semantic chunking)?
- 大小:通常 256-1024 tokens。太小则缺乏上下文;太大则噪声多、检索精度低
- 重叠:相邻 chunk 重叠 50-200 tokens → 避免切断完整语义
- 分隔符优先级:段落 > 句子 > 固定长度 → 保持语义完整
- Semantic Chunking:用 embedding 相似度判断语义断点(相邻句 embedding 相似度骤降处切分)
- Agentic Chunking:用 LLM 判断每段是否自包含
- 层次切分:小 chunk 用于检索精度 + 大 chunk 用于上下文完整性(parent-child)
- 7怎么选 Embedding 模型?评估指标?(MTEB / C-MTEB)
- 8BGE / E5 / GTE / Conan-Embedding 各自特点?
- 9Embedding 模型和 Rerank 模型用法上有什么区别?
- 10动态更新知识库时,全量重嵌入 vs 增量处理怎么选?
- 11除了基础向量检索,还有哪些 RAG 检索提升技术?(HyDE / Multi-Query / Hybrid Search)
- 12BM25 + 向量混合检索(Hybrid Search)怎么融合分数?RRF 算法?
- 13Rerank 模型在 RAG 中起什么作用?什么场景需要?
- 14什么场景下用知识图谱(GraphRAG)增强或替代向量数据库?
- 15RAG + 知识图谱 Agent 系统中,知识图谱更新机制?
- 16复杂 RAG 范式:Adaptive RAG / Self-RAG / Corrective RAG / Modular RAG 各自原理?
- 17Self-RAG 怎么让模型自主判断要不要检索?
- 18GraphRAG / LightRAG / HippoRAG 怎么用图结构做检索?
- 19多模态 RAG 怎么做?图文混合检索?
- 20长上下文 LLM (1M token) 出现后,RAG 是否还有必要?
- 21怎么评估 RAG 系统?检索/生成两阶段分别有什么指标?(RAGAS / TruLens / Recall@k)
- 22构建向量检索库时,怎么处理时间衰减对召回的影响?
- 23从数据清洗到检索服务上线的完整链路?
- 24RAG 系统部署中的常见挑战?
- 25了解搜索系统吗?和 RAG 有什么区别?
- 26开源 RAG 框架(RAGFlow / LlamaIndex / Dify)怎么选?
- 27RAG 怎么处理多语言文档?
- 28如果 user query 是模糊的,RAG 怎么做 query 改写?
- 29用过 Faiss / Milvus / Qdrant / Weaviate 哪个?怎么选?
- 30RAG 系统的 cache 怎么设计?(query cache / chunk cache / answer cache)
8推理与工程~35 题
KV Cache、量化、vLLM、TensorRT、并行训练、显存优化 — 大模型工程岗 / Infra 岗高频。
- 1KV Cache 是什么?为什么能极大提升推理速度?显存占用怎么算?
- 2MQA / GQA / MLA 怎么压缩 KV Cache?分别压缩多少?
- MHA(基线):每个 head 独立 KV → Cache = $2 \times L \times H \times d \times S$
- MQA:所有 head 共享 1 组 KV → Cache 压缩为 $1/H$(如 H=32 则减到 1/32)
- GQA:H 个 head 分成 G 组,每组共享 1 组 KV → 压缩为 $G/H$(如 8/32 = 1/4)
- MLA (DeepSeek):KV 经低秩投影压缩到 latent(如 512 维)→ 只缓存压缩向量,压缩比可达 ~1/10
- 3vLLM 的 PagedAttention 解决了什么问题?类比操作系统什么概念?
- KV Cache 不再需要连续物理显存
- 将 KV Cache 分成固定大小的 Block(如 16 tokens 一块)
- 用 Block Table(类似页表)映射逻辑位置到物理显存块
- 按需分配、用完释放 → 显存利用率接近 100%
- 4Continuous Batching(动态批处理)相比静态 batch 优势?
- 5Prefix Caching / RadixAttention 怎么工作?什么场景适合?
- 6Chunked Prefill 是什么?为什么能提升吞吐?
- 7vLLM / SGLang / TensorRT-LLM / LMDeploy 各自定位和优势?
- 8Speculative Decoding (投机解码) 原理?draft model 怎么选?接受率影响因素?
- 9Medusa / EAGLE / Lookahead decoding 各自原理?
为什么快:生成第 t 个 token 时,只需计算当前 token 的 Q,与 cache 中的 K 做 attention → 从 O(t²) 降为 O(t)。
显存公式:$$\text{KV Cache} = 2 \times n_{layers} \times n_{kv\_heads} \times d_{head} \times seq\_len \times batch \times \text{bytes}$$
例:LLaMA-2 7B(32层, 32 heads, d=128)BF16, seq=4096, batch=1:$$2 \times 32 \times 32 \times 128 \times 4096 \times 2B = 2GB$$
问题:长序列下 KV Cache 显存线性增长 → PagedAttention / MQA / GQA / MLA 都是为了压缩 KV Cache。
类比:操作系统的虚拟内存 + 分页(Paging)。
- 10LLM 常见量化方案:INT8 / INT4 / FP8 / NF4 区别?
- INT8:8位整数量化。精度损失小,速度提升~2×。LLM.int8() 方案对 outlier 做混合精度
- INT4:4位整数量化。精度损失明显 → 需要 GPTQ/AWQ 等校准算法补偿
- FP8 (E4M3/E5M2):8位浮点,H100+ 硬件原生支持。兼顾动态范围和精度 → 用于训练+推理
- NF4 (Normal Float 4):QLoRA 提出。假设权重近似正态分布 → 4bit 量化点按正态分位数分配 → 信息论最优
- 推理部署:INT4 (GPTQ/AWQ) 最常用,内存减 75%
- 训练:BF16 主流,FP8 新趋势
- 微调:QLoRA 用 NF4 量化 base model + LoRA 适配器
- 11GPTQ / AWQ / SmoothQuant / GGUF 各自原理?什么场景用?
- 12权重量化和激活量化区别?为什么激活量化更难?
- 13QAT(量化感知训练)和 PTQ(训后量化)区别?精度损失对比?
- 14FP8 训练为什么开始流行?相比 BF16 优势?(H100 / B200)
- 15量化后理解能力下降怎么办?怎么做精度补偿?
- 16车载/低端设备的 LLM 推理加速方案?
- 17模型剪枝 / 蒸馏在 LLM 上效果怎么样?(MiniLM / DistilBERT)
- 18详细分析 LLM 训练显存占用:模型参数 / 梯度 / 优化器状态 / 激活 各占多少?
- 模型参数:2Φ bytes(BF16 存储)
- 梯度:2Φ bytes(BF16)
- 优化器状态:12Φ bytes(Adam: FP32 参数副本 4Φ + FP32 momentum 4Φ + FP32 variance 4Φ)
- 合计(不含激活):≈ 16Φ bytes
- 197B 模型 BF16 训练大概要多少显存?为什么?怎么省?
- 20怎么对激活值的显存占用做控制?Gradient Checkpointing 怎么用?
- 21DP / TP / PP / SP / EP 五种并行的区别?千亿模型怎么组合?
- 22FSDP 和 ZeRO-3 的区别?什么场景用 FSDP?
- 23DeepSpeed 和 Megatron-LM 的区别?什么场景选哪个?
- 24Megatron 的 1F1B / Interleaved PP schedule 区别?气泡(bubble)怎么算?
- 25部署一个 MoE 235B 模型,所需算力大概是多少?参数量与硬件需求关系?
7B 模型示例:16 × 7B = 112GB(纯参数+梯度+优化器)→ 加激活需 ~160-200GB → 至少 2-3 张 A100-80G。
省显存方法:ZeRO 分片、Gradient Checkpointing、Flash Attention、Offload。
- 26100K+ 长上下文推理的核心瓶颈?(KV cache 显存 / attention O(n²))
- 27Ring Attention / Sequence Parallelism 怎么处理超长上下文?
- 28StreamingLLM 怎么用 attention sink 处理无限长流?
- 29YOCO / Compressive Transformer 各自核心思想?
- 30disaggregated prefill/decode(分离式部署)是什么?为什么 prefill 和 decode 应该分开?
- 31P/D 分离后通信开销怎么处理?KV transfer 怎么做?
- 32Swift / Llama-Factory / Axolotl 这些微调框架的区别?
- 33PyTorch 2.0 的 torch.compile 在 LLM 上提升怎样?
- 34CUDA / Triton 写过 kernel 吗?(FlashAttention / 算子融合)
- 35如何在 multi-query attention 优化中分析 decoder 延迟瓶颈?vLLM 的 KV cache 是否会成为负担?
9手撕代码~35 题
大模型岗几乎每场都有一道手撕,最高频是 MHA、RoPE、RMSNorm、SFT/DPO/PPO/GRPO Loss、Cross Entropy。
- 1手撕 Self-Attention(完整版含 mask)。
- 2手撕 Multi-Head Attention(含 reshape 和 transpose)。
- 3手撕 GQA / MQA(不同 head 数共享 K、V)。
- 4手撕 LayerNorm。
- 5手撕 RMSNorm。
- 6手撕 RoPE(含旋转矩阵和频率计算)。
- 7手撕 Cross Entropy + Softmax(数值稳定版本)。
- 8手撕 SFT 的 Loss 计算(注意 shift right + Prompt mask)。
- 9手撕 DPO Loss(含 reference model 的 logp 计算)。
- 10手撕 PPO Loss(含 clip)。
- 11手撕 PPO 的 GAE 计算。
- 12手撕 GRPO Loss(含 group 内 advantage 计算)。
- 13手撕 PPO 完整伪代码(含 rollout / 优势计算 / 更新)。
- 14手撕 KL 散度的 K1 / K2 / K3 三种估计。
- 15手撕 Top-K Sampling。
- 16手撕 Top-P (Nucleus) Sampling。
- 17手撕 Beam Search。
- 18手撕 Temperature Sampling + Repetition Penalty。
- 19手撕 KV Cache 推理逻辑。
- 20手撕 CLIP / InfoNCE Loss。
- 21手撕 Patch Embedding(ViT 的图像切块)。
- 22手撕 LLaVA 的图像-文本拼接逻辑(visual tokens insert)。
- 23手撕 2D RoPE / M-RoPE。
- 24手撕 BPE 训练过程。
- 25手撕 SwiGLU 激活函数。
- 26手撕 LoRA forward(W + αBA/r * x)。
- 27手撕 MoE 的 Top-K Router(含 load balance loss)。
- 28手撕 Causal Mask 矩阵生成。
- 29用 Numpy 手写 FlashAttention v1 思路(不需要完整实现,写关键 tile/online softmax)。
- 30手撕 Softmax(数值稳定 + 溢出处理)。
- 31rand5 -> rand10 转换。
- 32LeetCode 经典:编辑距离 / 最长公共子序列 / Top-K 频繁元素 / 滑动窗口最大值。
- 33手撕中位数计算(大数据流场景)。
- 34手撕股票买卖问题(一次/多次/含冷冻期)DP。
- 35手撕计算器(中缀表达式求值)。
10评估与系统设计~30 题
LLM/Agent 评估方法、Benchmark、LLM-as-Judge、A/B 测试、系统设计。
- 1传统 NLP 指标(BLEU / ROUGE)评估 LLM 的局限性?
- 2主流 LLM 基准:MMLU / GSM8K / HumanEval / MATH / GPQA / IFEval 各自侧重?
- 3中文基准 C-Eval / CMMLU / SuperCLUE 评估有什么注意点?
- 4什么是 LLM-as-a-Judge?优点和潜在偏见?怎么减少偏见?
- 5MT-Bench / AlpacaEval / Arena-Hard 各自方法?为什么 Chatbot Arena 是金标准?
- 6怎么评估 LLM 的"事实性 / 推理能力 / 安全性"?分别用什么 benchmark?
- 7什么是 contamination(数据污染)?怎么检测?怎么避免?
- 8什么是红队测试(Red Teaming)?在发现安全漏洞和偏见中扮演什么角色?
- 9为什么 Agent 评估比 LLM 评估更难?多了哪些维度?
- 10Agent 评估的过程指标有哪些?(完成率 / 步数 / 工具调用准确率 / 错误恢复)
- 11SWE-Bench / WebArena / OSWorld / GAIA / AgentBench 各自怎么评?
- 12怎么评估 Agent 的成本(cost-aware evaluation)?
- 13设计一个 ChatBot 系统:流量 / 延迟 / 多轮 context / 缓存 怎么做?
- 14设计企业级 RAG 知识库:数据 → 索引 → 检索 → 生成 → 评估 全链路。
- 15设计一个搜索 Agent:query rewrite → 多轮搜索 → 综合答案 怎么做?
- 16设计代码 Agent 系统:sandbox / tool / 多文件编辑 / 测试反馈循环?
- 17设计一个推荐+大模型混合系统:召回 / 排序 / 解释生成怎么分工?
- 18设计 VLM 客服系统:图片识别 + 多轮对话 + 知识库 怎么搭?
- 19数百万 QPS 的 LLM 推理服务怎么设计?(负载均衡 / 自适应 batch / 弹性扩缩)
- 20数据飞轮(Data Flywheel)怎么搭?用户反馈如何回收训练?
- 21如何把 LLM 落地到具体业务?POC → MVP → 生产 的关键节点?
- 22线上 LLM 服务怎么监控?(token 消耗 / latency / 出错率 / 用户满意度)
- 23怎么处理 LLM 输出的不确定性?回退策略?
- 24A/B 测试 LLM 应用要注意什么?metric 怎么定?
- 25大模型 + 小模型混合方案怎么设计?什么场景用大模型,什么用小?
- 26怎么持续监控和评估上线的 LLM 应用表现?
- 27怎么解决冷启动问题?LLM 在冷启动上能起什么作用?
- 28长尾数据和多峰数据怎么处理?
- 29怎么设计 prompt 让 LLM 在垂直领域效果好?few-shot 怎么选?
- 30人工评估方案怎么设计?标注准则 / Inter-Annotator Agreement 怎么保证?
11前沿与开放题~25 题
趋势性、开放性问题。考察候选人对 LLM 行业的判断、思考深度、技术 vision。面试官最爱用来区分候选人深度。
- 1你认为 Transformer 架构会长久统治这个领域吗?Mamba / SSM 等新架构的潜力?
- 2o1 / R1 这种 inference-time scaling 是不是下一代范式?会持续多久?
- 3未来 1-2 年 LLM 最大的瓶颈是数据、算力、还是算法?
- 4高质量人工合成数据在未来训练中的角色?
- 5多模态融合会走向何方?unified model(单模型生成图文音视频)还是 specialist?
- 6Agentic RL 下一步主要瓶颈在哪?怎么 scale?
- 7具身智能(Embodied AI)+ LLM 的关键瓶颈?数据 / 物理仿真 / 安全?
- 8追求更强基础模型 vs 更精巧 Agent 架构,哪个回报更高?
- 9你怎么看 OpenAI o3 / Anthropic 的 computer use / Google 的 Astra?谁的方向更对?
- 10未来 3-5 年 LLM 最有可能颠覆哪些行业?为什么?
- 11怎么平衡个性化 vs 隐私 vs 安全?
- 12开源 vs 闭源模型生态会如何演化?开源会赶上闭源吗?
- 13LLM 距离 AGI 还有多远?关键缺失能力?
- 14"世界模型"在 LLM 中怎么实现?现在做得怎么样?
- 15怎么看 Yann LeCun 关于 LLM 是"死胡同"的观点?
- 16最近读过哪些 LLM/Agent/RL 论文?为什么印象深?聊聊核心方法、对比实验。
- 17你最大的项目是什么?背景 / 方案 / 难点 / 指标 / 反思 五段式讲。
- 18如果让你自由探索,最想创造什么样的 AI 解决什么问题?
- 19顶尖 AI 工程师应该具备哪些核心素质?
- 20平常用 AI 干嘛?日常工作流?
- 21对想入 Agent 领域的新人,重点学什么?
- 22你怎么跟进 LLM 领域日新月异的发展?信息源?阅读节奏?
- 23建议反问:团队当前训的最大模型 / 现在最紧迫的技术 challenge / 团队评估机制?
- 24建议反问:团队对 Agentic RL / 多模态 的中长期规划?
- 25建议反问:新人成长路径?mentor 机制?
📚来源汇总 & 持续更新建议
本题库主要参考来源
datawhalechina/hello-agents AIR-hl/llm-interview-code ckd0817/LLM-Interview-Code adongwanai/AgentGuide 0voice/Campus_recruitment_interview_questions KalyanKS-NLP/LLM-Interview-Questions-and-Answers-Hub yang19527/AwesomeInterview
MoonOut 博客园 · LLM 八股系列 小林 coding · 530+ 大模型面试题 Bojie Li · 大模型面试 200 问 知乎 · 2026 大模型 100+ 题 CSDN · 字节大模型面经汇总 MoonOut · 强化学习与 RLHF
Hello-Agents 第十一章 · Agentic-RL 2025 Agent RL 多轮 planning 综述 火山引擎 · Agentic RL 综述 智源 · Agentic 强化学习全景综述
持续更新建议
① 周更新:每周关注 arXiv 上 Agentic RL / VLM 新论文(搜索关键词:agentic RL, multi-turn RL, tool use RL, GUI agent, VLM grounding)。
② 月更新:刷牛客最新面经(搜索"大模型"+"算法岗"+"2026"),把没见过的题补到对应章节。
③ 实战补充:每读一篇有意思的论文,自问自答 3-5 个潜在面试题加进题库。例如读完 DAPO,问"为什么 Clip-Higher / Dynamic Sampling 各自解决什么问题"。
④ 项目深挖:把自己的项目按 STAR-L 法整理(Situation / Task / Action / Result / Learning),并预想 3 轮深挖问题。
配套学习材料(本仓库内)
- 📘 RL 面试速查手册 — RLHF/PPO/DPO/GRPO 全推导与图解
- 📗 VLM 知识手册 — 多模态知识体系详解
- 📕 Transformer Decoder 流程图 — 推理流程动画
- 📒 多模态大模型面试准备手册 — Markdown 版