☰
LLM面试必问8大核心问题:从原理到实战的避坑指南
2026/10/26 5:43:08 网站建设 项目流程

这两年面LLM岗位的人肉眼可见地多了起来,简历上一个比一个花哨,可不少人走到一面就被刷掉。聊下来发现,挂掉的人往往不是不懂模型,而是被几个既基础又关键的题卡住了。这类题有个共同特点:表面上是考“概念”,实际上是在考你有没有真正动手做过、有没有踩过坑、能不能把原理讲成自己的话。标题里说的“答不上来直接淘汰”确实不夸张,因为这些题背后对应的是一个工程候选人最底层的判断力。

这篇文章我按实战顺序拆一下LLM面试里出现频率极高的8个核心问题,每个都会聊三件事:面试官为什么盯住这个不放、怎么答才算过关、以及哪些回答方式会当场暴露短板。不管你是准备投大模型算法岗、应用开发岗,还是刚转进来想系统补一遍基础,照着这份清单自查远比背题库有用。

1. LLM面试到底在筛什么

1.1 面试官手里的“三层筛选逻辑”

大模型相关的岗位现在种类很杂,有做预训练和Post-training的算法岗,有做RAG/Agent应用落地的工程岗,也有做推理优化和部署的基础设施岗。岗位不同,面试重点自然不同,但我观察下来,多数面试官心里都有一张三层筛网。

最底层是“能不能说清楚原理”。Transformer为什么用Scaled Dot-Product Attention、为什么Tokenize之后要加位置编码、为什么温度系数会影响生成多样性,这些属于基本功。只要岗位和模型沾边,这类问题几乎必出。

第二层是“有没有真正做过”。面试官会通过追问来判断,比如你说做过RAG,他就会追问检索器和生成器之间怎么配合、召回结果太差你会先调哪个参数、重排模型你是怎么接的。没做过的人只能背流程,做过的人才能说出细节。

第三层是“面对新问题怎么办”。LLM发展太快,面试官自己也不能保证每个方向都熟,他们更在意候选人在遇到没见过的任务时,是有一套分析框架,还是只会说“这个我还没做过但可以学”。不同的说法背后是两个完全不同的层级。

1.2 必问题库是怎么选出来的

市面上流传的LLM面试题非常多,什么“讲讲大模型的涌现能力”“LoRA为什么能省显存”“介绍一下Mamba”……但真正高频到可以拿去当淘汰题的,反而集中在最基础的几个方向上。原因很简单:基础题能考察思维的严谨程度。

我总结了这类题的三个特征:第一,概念覆盖面广,回答过程中能牵扯出注意力、损失函数、数据配比、推理策略等一串相关知识点;第二,有标准答案也有深度空间,背过八股的人能答前面一半,但后面的细节需要真实理解;第三,答案里藏得下“坑”,比如很多人会把RAG和Fine-tuning的区别背得滚瓜烂熟,但被问到“你的知识库该不该用RAG”时就答反了。

所以,与其说这8个问题是题库,不如说它们是面试官用来探测候选人“理解底线”的探针。接下来逐个拆解。

2. LLM面试必问的8个核心问题拆解

2.1 Scaled Dot-Product Attention:除以根号d_k的直觉理解

Transformer的核心是Self-Attention,这个问题几乎是我面过的所有LLM岗位的第一道技术题。常见问法有两种:一种是直接说“讲一下Attention机制”,另一种是更刁钻的“为什么Q和K点积后要除以根号d_k”。

只回答“防止softmax饱和”只能算及格,面试官要听到的是完整逻辑链。点积的结果是Query和Key的相似度,数值大小和向量维度d_k相关。当维度变高时,点积结果的方差会变大,个别极大值会让softmax的梯度趋近于零。除以根号d_k本质上是把方差拉回一个相对稳定的范围。

加分答法是拿实际例子来证明自己理解到位。比如你可以在纸上算一笔账:假设Q和K是独立的期望为0方差为1的随机向量,它们的点积期望是0,方差是d_k。那么除以根号d_k之后,方差就稳定在1。这解释了为什么缩放系数不是d_k也不是log(d_k),而是根号d_k。能说出这个推导过程的人,说明真的看懂过原始论文。

我建议再顺带提一句“这本质上是数值稳定性问题,而不是模型效果问题”,然后引出大模型训练里无处不在的稳定性考量——梯度裁剪、混合精度、LayerNorm都是同一类思路。面试官听到这个角度通常会眼前一亮,因为你把Attention从“一个机制”上升到了“一种工程思维”。

2.2 Pre-training和SFT/RLHF:不只是“预训练加微调”

这个问题其实是个连环套。面试官会先让你分别简述这三个阶段的训练目标和数据形态,然后突然追问“为什么要分开做,直接端到端训练不行吗”。

基础回答是:预训练阶段用海量无标注文本学语言规律和世界知识,SFT阶段用指令-响应对教模型学会回答问题,RLHF阶段用人类偏好对齐让回答更有用、更无害。能把这个主干答出来的人很多,但能解释清楚背后逻辑的人很少。

这里的关键在于:SFT解决的是“会说话”的问题,RLHF解决的是“说人话”的问题。预训练做完的模型已经具备很强的续写能力,但用户问“写一封辞职信”时它只会继续生成“写一封辞职信”的变体。SFT阶段用少量高质量指令数据可以让模型理解指令格式。但SFT数据是人工标注的,成本和天花板都很有限,所以再用RLHF让模型在更大空间里探索符合人类偏好的回答。

答得好的人还会补充数据配比的细节。SFT数据不是越多越好,业界普遍发现几千到几万条高质量样本往往优于几十万条低质量数据。而RLHF阶段需要准备奖励模型的数据标注规范,标注员之间的一致性直接影响对齐质量。这些细节如果没真正跑过训练流程,很难说得具体。

2.3 Prompt Engineering还是模型能力?常用的提示词技巧

千万别小看这个题。很多候选人觉得“我会写Prompt”就是会面试了,结果被追问“你设置的temperature为什么是0.7而不是0.2”就哑火了。面试官问Prompt Engineering,本质上是想确认你懂不懂LLM的输出机制。

回答时应该先给出一个判断框架:Prompt Engineering之所以存在,是因为模型在推理时只能看到上下文,无法打开参数去查知识,所以你要通过输入文本“启动”模型某些能力。常见的技巧包括Few-shot示例、零样本指令、角色设定、思维链、让模型先总结再回答等。

每个技巧背后都有原理。思维链之所以有效,是因为它把复杂推理拆成了多个小步骤,每一步的推理空间都缩小了,模型的自回归解码过程因此更容易保持一致性。Few-shot示例不是越多越好,一般3到5个就够,太多示例会把上下文占满还影响推理时间。

另外值得提的是“指令冲突”问题:系统提示里说“你是专家”然后用户又补了一句“不要管上一条指令”,模型会怎么取舍。这类安全边界问题在面试里越来越多,能谈谈你对注入攻击的理解和防御思路,会明显加分。

2.4 RAG的工作原理和常见翻车点

RAG几乎是LLM应用岗的必考题,但大部分人的答案停留在“检索加生成”四个字上。面试官对这个回答的评价通常是:你说的是PPT,不是系统。

合格的回答要至少覆盖这四个组件:文档加载与切分、Embedding模型、向量检索、生成融合。每个组件都有大量细节。比如文档切分,很多人不管三七二十一把PDF按500字切块,结果一个完整的事件被切开,检索回来的内容驴唇不对马嘴。这里需要考虑段落结构、句子完整性、相邻块重叠度等。

再比如向量检索只负责“召回”,它不管“排序”。召回一堆候选段落之后,你还需要做重排来提升精确度。很多优化项目最后效果提升明显,靠的不是换更大的LLM,而是加了一个Cross-Encoder重排模型。

还有一个高频追问是“检索召回了错误内容怎么办”。这时候如果你能说出“设置相似度阈值过滤低质量召回结果、拔高Top-K的覆盖度然后让生成阶段做筛选、对严重低质量的检索结果直接放弃检索走兜底逻辑”,面试官基本会认定你有实战经验。

2.5 上下文窗口是什么?处理超长文本的几种方案

这个话题现在越来越热,因为各家模型都在卷长上下文。面试官会问“为什么模型不能无限扩展上下文窗口”,以及“如果让你给一套方案让模型处理100万token的文本,你会怎么做”。

核心是两层约束:一是Attention的计算复杂度随序列长度平方增长,内存和计算开销都受不了;二是长文本里的位置编码、信息衰减会让模型“记不住前面内容”。能说出这两点,问题解答已经过半。

方案库里至少要准备好三套思路。第一套是截断策略:只取首尾或关键片段,简单但代价是丢失信息。第二套是上下文压缩:在送入长文本前先用模型做摘要或召回相关的块,相当于“内部RAG”。第三套是工程层面优化:FlashAttention、稀疏注意力、KV Cache缓存等,这些手段可以在不牺牲太多效果的前提下扩展可处理的长度。

顺带提一下,能聊到“长文本评估指标”的人会更占优势。目前长上下文能力的评测还不是一个成熟标准,很多宣称支持更长上下文的模型在实际任务里远没有宣传的那么好。这个观察能让面试官觉得你不仅有方案,还有判断力。

2.6 Fine-tuning和RAG到底怎么选

这个题是我见过区分度最高的一个,因为它没有一个固定答案,纯看你怎么分析场景。面试官会抛一个具体场景,比如“做一个企业内部的规章制度问答助手,你会用RAG还是Fine-tuning”,然后盯着你看你从什么角度切入。

说得标准一点,RAG适合知识更新频繁、需要溯源、数据量大的场景;Fine-tuning适合固定行为风格、特定输出格式、需要学习新能力的场景。但这不是标准答案,真正答得好的人会先追问:知识库大概多少条文档?回答是否需要引用出处?如果出现冲突知识以哪个为准?用户的query是开放问答还是固定格式?

这里有一个很重要的加分角度:混合方案。比如先Fine-tuning让模型学会“必须引用条例编号”的输出风格,再通过RAG动态注入具体条文。很多落地项目最后都是这种混合形态。能给出这条思路,面试官心里基本会把你归到“做过实际项目”那一类。

2.7 幻觉问题:成因和缓解手段

幻觉是LLM被吐槽最多的问题,面试考察频率自然很高。但很多人一上来就背缓解手段,却说不清机制。面试官最想听的其实是“幻觉为什么存在”的原因分析。

形成机制可以从数据角度回答:预训练数据里本身就存在错误信息和相互矛盾的文本,模型把这些当作共现模式学进去了。再加上解码阶段为了让回答更流畅,模型倾向于生成概率高的词序列,不一定和事实有严格对应。另外知识是“静态”的,模型参数里存的记忆和当前世界不一定同步,这也是产生幻觉的原因。

缓解手段方面,工程派会回答RAG兜底、加置信度检测、让模型说“我不知道”;算法派会回答强化学习里加入事实一致性奖励、解码时用事实核验工具。能同时给出这两个视角的候选人极少。我建议准备这个题时至少结合一个自己实际处理过的案例,哪怕只是个小Demo,也比堆名词有说服力。

2.8 Agent能力:LLM从“聊天”到“干活”的关键一跃

Agent相关的题在近一年面试中占比暴涨。面试官问的不是“Agent是什么”,而是“LLM作为Agent的核心,有哪些能力边界”。

回答思路应该围绕“规划—工具调用—记忆—反思”这四个环节展开。规划对应任务拆解,工具调用对应LLM生成结构化指令去触发外部函数,记忆分为短期上下文和长期向量库,反思则是对过往错误的修正。

这个题容易挂的地方在于:候选人只会吹Agent多牛,但被问到“工具调用解析失败怎么办”“模型乱选工具怎么办”“多轮Agent的上下文爆掉怎么办”就愣住了。我建议准备一两个真实或模拟的异常案例。比如你可以说“我当时用function calling解析参数时发现,模型偶尔会生成非法JSON,后来我改用约束解码+失败重试,一次性把成功率从82%提到了97%”。这类细节一出来,整个答案的可信度完全不一样。

3. 除了这8题,面试官还爱追问什么

3.1 从“会用”到“会用得明白”:推理与部署的高频追问

当面试官觉得你基本概念过关之后,会开始往深一层压。常见操作是在你讲完某个模型之后追问:“那你有没有试过在本地跑一个开源模型?显存怎么算?量化要不要做?”

这里我特别想提醒准备面试的朋友:本地部署开源LLM的经历越来越值钱。比如你用过Ollama或者llama.cpp跑过GGUF格式的量化模型,并且能说清楚GGUF的量化等级(Q4_K_M、Q8_0这些)分别是什么精度和体积,在面试里就是一个很硬的细节。

显存估算也是一个高频点。面试官可能让你算“7B模型FP16推理需要多少显存”,如果你连参数占用的基本公式都不知道,前面聊得再好也要掉分。粗略算法是:加载权重需要参数乘以2字节,再加上KV Cache和激活值的开销,所以一般留出参数重量的1.5到2倍内存比较稳。如果是推理框架还会省一些,训练则还要加上优化器状态的开销。

3.2 从“会答”到“能聊”:用项目经验撑起整个面试

很多人忽略了一个事实:面试官其实不太相信你“会”某个东西,他只相信你“做过”某个东西。所以面试中只要有聊项目的环节,尽量把技术选型和踩坑过程前置。

我举一个常见场景:你说自己做过知识库问答,面试官问“Embedding模型你怎么选的”。如果你说“用了BGE,因为排行榜上效果好”,这就是典型没有灵魂的回答。好的回答是:我对比过BGE和别的模型在10个领域样本上的检索命中率,发现BGE在长文档上表现更好,而且中文分词效果好一些,后面还考虑过微调Embedding模型,但因为标注成本太高先放弃了。

这个回答没有多复杂,但它透露出三个信息:你真的做过、你有对比方法、你知道成本收益权衡。面试官可以顺着继续追问,你也能把话题引向自己更熟悉的领域。准备面试时,给自己每个重点项目都写一份“为什么这样选”的说明,比刷100道题都管用。

4. 面试状态与临场发挥的避坑心得

4.1 高频失误案例与补救动作

这几年帮人模拟面试和复盘的时候,我统计过一些高频失误,发现它们惊人的一致。

第一个通病是“背概念但不会举例”。你说“LoRA通过低秩分解减少了训练参数量”,但你一个实际例子都举不出来。LoRA的秩取多少、为什么秩不是越大越好、挂在模型哪些模块上,这些问题答不出来,前面的定义背得再熟也只是记忆不是理解。我的建议是:准备每个概念都配一个具体场景,哪怕只能说“我之前给一个7B模型做指令微调用LoRA,秩设了16,只训练了Attention层的q和v矩阵,显存节省了差不多70%”。

第二个通病是“遇到不确定的问题直接蒙”。这里有个很实用的兜底策略:先复述一遍你的理解,再明确划分“我确定的部分”和“我推测的部分”。比如“你问的这个问题我记得有两层,第一层肯定的,第二层我记得和XXX有关,但我不太确定,如果按我现在的理解应该是……”这样就算答得不完整,面试官也会觉得你思维诚实且有条理。反过来,硬着头皮编答案被追问两次就露馅,观感会差很多。

第三个通病是“自己把问题带偏到舒适区”。有些候选人一聊到自己准备过的东西就收不住,讲10分钟都不停。面试官其实需要时间覆盖多个考察维度,你一个人占满全场反而会压缩其他环节,被迫打断后双方都尴尬。正确做法是每段主动回答控制在2到3分钟,用“这块我先说到这,如果你想听细节我可以展开”作为收尾,把节奏交还给面试官。

4.2 一个不算秘密的准备方法

最后分享一个我一直在用的准备方法:把每个高频问题写成“一页纸答案”。这里的一页纸不是让你背,而是让你写清楚三个层次——核心结论、关键依据、踩坑细节。比如RAG这题,一页纸的核心结论写“RAG解决的是知识更新与溯源问题”,关键依据写“检索质量决定上限、生成模型决定下限”,踩坑细节写“切块大小影响召回率、相似度阈值要按领域调”。面试前只看这些一页纸,比反复刷题有效得多。

另外有个心态上的建议:LLM面试的淘汰率高,很大程度上是因为这个领域的知识体系还在快速变化,面试官自己也在不断学习。遇到不会的题真不用慌,能把“我不会”换成“我大概能这么推理”,就已经比大部分人强了。这一点我每次面完都会反复跟候选人强调,因为它确实决定了你在面试官眼里的整体印象。

8个问题聊完了,真正留在我记忆里的其实不是哪些人背得全,而是哪些人能在我追问第二层、第三层的时候给我讲出一个真实的场景来解释他的选择。面试是双向的,你也在判断这个团队的技术方向是不是你想要的。带着这一页纸的问题清单去准备,剩下的事,交给现场发挥就好。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询