Skip to content
D · AI 面试训练第 1 课⏱ 30 分钟

大模型基础面试题

学完你能
  • 用自己的话讲清注意力、token、训练流程这些基础原理
  • 说出采样参数、上下文、KV Cache、量化背后的工程取舍
  • 在模拟面试里拿到 60 分以上
Yui 和 Kai 备战大模型面试
Yui 和 Kai 备战大模型面试AI 生成配图

应用开发岗不会要求你推公式,但面试官会通过基础题判断两件事:你是真理解了模型怎么工作,还是只会调 API;你能不能把原理和工程问题联系起来——比如知道 KV Cache,就能解释为什么长上下文会让并发上不去。

回答时少背定义,多说「所以在工程上意味着什么」。

题库 ​

自注意力像给每个词连关注光线
自注意力像给每个词连关注光线AI 生成配图

Transformer 里的自注意力(self-attention)在做什么?为什么它取代 RNN 成了大模型的主流结构? ​

  • 做什么:每个 token 生成 Query、Key、Value 三个向量,用 Q 和所有 K 的点积(除以 √d 后做 softmax)算出「该关注谁」,再按这些权重把 V 加权求和,得到融合了上下文的新表示。多头注意力让不同的头关注不同类型的关系。
  • 为什么取代 RNN:任意两个位置一步就能直接交互,长距离依赖不会像 RNN 那样逐步衰减;训练时整段序列可以并行计算,适合大规模扩展。
  • 补充:需要位置编码(如 RoPE)提供顺序信息;生成模型用因果掩码,只看前文;计算量随序列长度平方增长,这是长上下文贵的原因之一。

什么是 token?分词方式会对模型的效果和成本带来哪些影响? ​

  • token 是模型处理文本的单位,通常是 BPE、SentencePiece 这类算法切出来的子词,不等于一个字或一个词。
  • 成本:计费、上下文上限、输出速度都按 token 算。同样一段话,在不同模型的分词器下 token 数可能差不少,中文和代码的切分效率也不同。
  • 效果:模型看到的是 token 而不是字符,所以数字母、反转字符串、多位数运算这类任务容易出错。
  • 实践:估算成本和长度时用目标模型自己的分词器,或直接看接口返回的 usage,不要按字数硬算。

一个对话大模型是怎么训练出来的?请说说预训练、SFT、RLHF 和 DPO 各自的作用。 ​

  • 预训练:在海量文本上做「预测下一个 token」,学到语言能力和大量知识;这时的基座模型擅长续写,还不会好好按指令回答。
  • SFT(监督微调):用「指令—高质量回答」数据训练,让模型学会对话格式和按要求作答。
  • RLHF:人对多个回答排序,训练奖励模型,再用 PPO 等强化学习让输出更符合人类偏好。
  • DPO:直接用「好回答 / 差回答」的偏好对优化模型,不用单独训练奖励模型,流程更简单、训练更稳定。
  • 近年的推理模型还会在数学、代码等答案可验证的任务上做强化学习,提升多步推理能力。

temperature 和 top_p 分别控制什么?在不同业务场景下你会怎么设置? ​

  • temperature:对下一个 token 的概率分布做缩放。值低,高概率的词更占优,输出更稳定;值高,分布更平,输出更多样也更容易跑偏。
  • top_p(核采样):只在累计概率达到 p 的那批候选里抽样,把长尾的低概率词排除掉。
  • 一般只调其中一个,两个同时改不好判断效果。
  • 场景:信息抽取、分类、写代码、生成 JSON 用低值;文案、头脑风暴可以调高。
  • 注意 temperature 设为 0 也不保证每次输出完全一致;部分推理模型固定了这些参数或不支持修改。

上下文窗口是什么?上下文很长时会遇到哪些问题,工程上怎么应对? ​

  • 上下文窗口是一次请求里输入加输出能容纳的 token 上限,超出会报错或被截断。
  • 问题:输入越长,费用越高、首 token 越慢;信息放在中间位置时更容易被忽略;无关内容多了会干扰回答质量。窗口大不等于模型能把每个细节都用好。
  • 应对:多轮对话只保留最近几轮,早期内容做摘要;用检索(RAG)只放相关片段,而不是整篇文档塞进去;关键指令放在开头或结尾;控制输出长度;把固定的系统提示放在前面,利用 prompt cache 降低重复前缀的成本。

大模型为什么会产生幻觉?在应用里你会用哪些手段降低幻觉? ​

  • 原因:模型按概率生成「看起来合理」的文字,而不是去查事实;训练数据可能缺失或过时;训练过程也往往奖励「给出答案」,而不是「承认不知道」。
  • 降低手段:
    • 用 RAG 提供资料,要求只依据资料回答并标注引用;
    • 在提示词里明确允许回答「不知道」;
    • 实时数据(价格、天气、订单)通过工具查询,不让模型凭记忆说;
    • 结构化输出后用程序校验字段和数值;
    • 事实类任务降低随机性;
    • 用评测集持续测幻觉率,关键结论(医疗、法律、金额)人工复核。

什么是 KV Cache?它为什么能加速推理,又带来了什么代价? ​

  • 模型逐个 token 生成,每一步都要用到前面所有 token 的 Key 和 Value。KV Cache 把这些 K、V 缓存起来,新 token 只计算自己的部分,不用每步重算整段前文。
  • 推理因此分成两段:prefill 一次性处理整个输入、建好缓存;decode 逐个生成,每步复用缓存。
  • 代价:缓存占显存,随序列长度、层数和并发数线性增长。长上下文和高并发时显存常常先被 KV Cache 吃满。
  • 缓解:GQA / MQA 让多个头共享 K、V;分页管理显存(如 vLLM 的 PagedAttention);对 KV 做量化。供应商的 prompt cache 就是跨请求复用相同前缀的 KV。

模型量化是什么?INT8、INT4 量化在效果、显存和速度上有什么取舍? ​

  • 量化是用更少的位数存储权重(有时也包括激活值和 KV Cache),比如从 FP16 / BF16 降到 INT8 或 INT4。
  • 显存:INT8 大约是 FP16 的一半,INT4 大约四分之一,同样的卡能放下更大的模型或更多并发。
  • 速度:生成阶段主要受显存带宽限制,读取的数据少了通常会更快,但也取决于硬件和推理框架是否支持对应算子。
  • 效果:INT8 损失一般很小;INT4 更明显,需要 GPTQ、AWQ 这类基于校准数据的方法来控制误差。
  • 是否可用要在自己的任务和评测集上验证,不能只看通用榜单。

MoE(混合专家)模型的原理是什么?和参数量相同的稠密模型比,有什么优缺点? ​

  • 原理:把 Transformer 里的前馈层(FFN)换成多个「专家」网络,再加一个路由器,为每个 token 只挑选 top-k 个专家参与计算。
  • 优点:总参数可以做得很大(容量大、知识多),但每个 token 实际激活的参数只占一小部分,训练和推理的计算量接近一个小得多的稠密模型。
  • 缺点:所有专家都要装进显存,部署门槛按总参数算;路由需要负载均衡,否则少数专家过载;专家分布在多卡上时通信开销大;微调和推理部署更复杂。
  • 比较模型时要分清「总参数」和「激活参数」。

推理模型(reasoning model)和普通对话模型有什么区别?什么场景值得用它? ​

  • 推理模型在给出答案前先生成一段较长的推理过程,这种能力主要靠强化学习训练,用「多想一会儿」换更好的结果。
  • 擅长:数学、写代码和调试、多步规划、需要反复核对条件的分析。
  • 代价:更慢、更贵,推理过程的 token 同样计费;很多接口提供推理强度(effort)之类的参数来控制。
  • 不划算的场景:简单问答、信息抽取、改写、分类,用普通模型更快更省。
  • 提示词:写清目标、约束和验收标准即可,不需要再要求它「一步一步思考」。

答题思路 ​

按结论原理实践三步答面试题
按结论原理实践三步答面试题AI 生成配图

基础题最怕两种答法:一是只背一句定义,二是一口气把知道的全倒出来。比较稳的结构是三步:

  1. 先结论:一两句话直接回答问题。「KV Cache 是把前文的 K、V 缓存起来,避免每生成一个 token 都重算。」
  2. 再原理:解释为什么成立,说到面试官能判断你真懂就够了,不必推公式。
  3. 再实践与取舍:这件事在工程里意味着什么、代价是什么、你会怎么做。「所以长上下文、高并发时显存先满,我们会……」

第三步往往是拉开差距的地方。能联系到自己做过的项目(比如「我们把系统提示固定在前面后,缓存命中率上来了,费用降了一截」)会比泛泛而谈有说服力得多。不确定的地方直接说「这块我了解得不深,我的理解是……」,比编一个答案好。

想看更多题目,可以读延伸阅读里的 大模型基础面试题总结 和 LLM 运行机制。

模拟面试 ​

准备好了就开始一场:5 道题从上面的题库随机抽,逐题作答,每题都会得到打分、点评和要点。用自己的话回答,不会的题可以直接写「不会」,看完要点再来一场。

🎤 模拟面试每场 5 题,AI 面试官逐题打分点评,总分 = 平均分 × 10
登录后开始模拟面试

小结 ​

  • 基础题考的是理解:注意力、token、训练流程都要能用自己的话讲出来。
  • 每个原理都要落到工程上:采样参数怎么设、长上下文贵在哪、KV Cache 和量化省的是什么。
  • 回答按「结论 → 原理 → 实践与取舍」组织,能举项目里的例子更好。

下一课 D2 讲 Agent 面试题:从 ReAct 和工具调用,到规划、记忆、MCP、多 Agent 和安全。

代码示例在页面里运行时使用 HiveGPT 的模型接口。延伸阅读来自 JavaGuide(Apache-2.0),版权归原作者。