大模型常考面试题100道(第1~25道)

这份题不是随便凑出来的 100 道,而是从大量面经和题目里 筛出来的高频题。我整理了上百套校招、实习、校招的大模型相关面试题,又结合公开平台上反复出现的问题,把那些 出现次数最多、覆盖岗位最广、面试最容易问到 的内容统一收拢,最后形成这套 大模型常考面试题100道

1. Transformer 的整体结构是什么?

答:Transformer 最早是 Encoder-Decoder 结构。Encoder 每层主要是多头自注意力和前馈网络,Decoder 每层除了 masked self-attention 和前馈网络,还多了一个 cross-attention,用来关注 Encoder 的输出。不过现在大模型大多用的是 Decoder-only 结构,因为它更适合做自回归生成,训练目标统一,扩展到超大规模也更自然。每层通常都包含注意力模块、MLP 模块、残差连接和归一化层。

2. BERT 和 GPT 的核心区别是什么?

答:BERT 是 Encoder-only,训练目标主要是 MLM,所以它是双向建模,更适合理解类任务,比如分类、匹配、抽取。GPT 是 Decoder-only,训练目标是 next token prediction,也就是根据前文预测下一个 token,所以它天然适合生成类任务。简单说,BERT 更偏“看懂”,GPT 更偏“续写”。

3. Self-Attention 的原理和公式是什么?

答:Self-Attention 的核心是让序列里的每个 token 都能和其他 token 建立关系。输入 (X) 经过线性变换得到:Q=XWQ,K=XWK,V=XWV 注意力计算公式是:其中 QKt表示 query 和 key 的相似度,softmax 后得到权重,再对 V加权求和。本质上就是“我当前这个 token,应该重点看哪些 token”。

4. 为什么 Attention 里要除以

答:因为如果 dk 很大,Q和K 点积后的值会变得很大,softmax 容易进入饱和区,导致梯度很小,训练不稳定。除以 相当于把分数做一个缩放,让数值范围更平稳,训练更容易收敛。这是一个很典型的数值稳定性处理。

5. Multi-Head Attention 为什么有效?

答:单头注意力只能在一个子空间里建模关系,多头注意力相当于把表示空间拆成多个子空间,每个头可以学不同类型的信息,比如局部依赖、长程依赖、语法关系、语义关系。最后把多个头的结果拼接起来,再做一次线性映射。这样模型表达能力会更强,不同头能关注不同角度的信息。

6. 位置编码是干什么的?为什么 Transformer 需要它?

答:因为 Attention 本身不包含顺序概念,如果不给位置信息,模型只知道这是一堆 token,不知道谁在前谁在后。位置编码就是把“顺序”告诉模型。最早 Transformer 用的是正弦余弦位置编码,后面很多模型用可学习位置编码,再往后大模型里很常见的是 RoPE,因为它在长文本建模上通常更好。

7. RoPE 是什么?它和传统位置编码有什么区别?

答:RoPE 是 Rotary Position Embedding,也就是旋转位置编码。传统位置编码一般是直接把位置向量加到 token embedding 上,RoPE 则是把位置信息作用在 (Q) 和 (K) 上,通过旋转变换把相对位置信息编码进注意力分数。这样做的好处是更适合建模相对位置关系,而且在长上下文外推时通常比绝对位置编码更稳定。所以现在很多大模型都偏向用 RoPE。

8. LayerNorm 和 RMSNorm 有什么区别?

答:LayerNorm 会先减均值,再除以标准差:不减均值,只按均方根做缩放: 计算更简单,速度更快,所以现在很多大模型更爱用 RMSNorm。从效果上说,RMSNorm 在大模型里经常已经够用了。

9. Pre-Norm 和 Post-Norm 的区别是什么?

答:Pre-Norm 是先做归一化,再进注意力或 MLP;Post-Norm 是先经过子层,再做归一化。现在大模型普遍更偏向 Pre-Norm,因为深层网络训练更稳定,梯度传播更顺。Post-Norm 在层数不深时问题不大,但模型一深就更容易训练困难。

10. 大模型里的 FFN 或 MLP 层是做什么的?

答:Attention 负责建模 token 和 token 之间的关系,FFN 负责对每个位置上的表示做非线性变换,增强表达能力。它通常是两层线性层,中间接激活函数,形式类似:其中中间维度一般会比隐藏维度大很多,比如 4 倍。所以一个 Transformer Block 里,Atte

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

AI-Agent面试实战专栏 文章被收录于专栏

本专栏聚焦 AI-Agent 面试高频考点,内容来自真实面试与项目实践。系统覆盖大模型基础、Prompt工程、RAG、Agent架构、工具调用、多Agent协作、记忆机制、评测、安全与部署优化等核心模块。以“原理+场景+实战”为主线,提供高频题解析、标准答题思路与工程落地方法,帮助你高效查漏补缺.

全部评论
总结的非常好
点赞 回复 分享
发布于 03-31 10:09 安徽
可以的,写的真的好啊
点赞 回复 分享
发布于 03-26 23:40 北京
可以的,总结的很好呢
点赞 回复 分享
发布于 03-25 23:27 北京

相关推荐

接到了一个腾讯面试,客户端的,当时没细看以为是游戏客户端,毕竟我投的也是这个(后面才知道是企业微信的)。这点蛮重要的,在接受面试那里可以看到,还是得针对面试官的具体方向做一点处理,不然双方都很难受。面试官一口广普,说话不利索,开局也没有自我介绍,也没让开摄像头。我一开始还以为对面是个ai。上来甩给我三道题,在文档里写:合并有序链表,寻找旋转排序数组和shared_ptr实现。甩给我之后就下线了,45分钟后上线,也没监控,就不怕我用ai吗。第一道题没什么问题,追着我对头节点插入的逻辑问了好一会;然后第二道题我脑子抽了写错了,想半天也没想出来,后来我拿纸笔推演了一下才给出正确结果。第三题基本逻辑都写了出来,但是没有做特殊情况处理,比如数据处传入一个nullptr的处理(当时脑子抽了,在抛异常和直接接受里选了在构造函数里返回空指针......),还有右值引用时传入自身的特殊处理(确实是草率了,cherno视频都有讲来着,只能说是经验不足)。然后进入了项目环节,让我讲讲自己的项目,这时我就感觉到了不对,一种鸡同鸭讲的感觉。我跟他讲我怎么用GAS实现状态互斥,他问我怎么让游戏变得更好玩;我跟他讲AI怎么设计,他问我AI模型这么大,怎么放在本地跑,当时我听到这句话的时候脑袋是懵逼的,于是跟他解释我的AI是用行为树做的,这部分自然也是没什么好结果。最后反问环节,我问面试官觉得我表现如何,他说我算法功底不错,但是习惯不好,缺少实践,二分用的也不太熟,还得多练。后面又问他是哪个方向的,这时我才知道他是企业微信的。总的来说,还是吸取上面的教训,至少得确认面试官是什么方向的。也不知为什么会让我去面,感觉是KPI面,不过面试官人挺好的,就是说话不利索,听不清楚,也不开摄像头,让我很疑惑。
朴临希:兄弟我投的也是游戏客户端,然后被腾子的企业微信捞了,虽然不知道是不是kpi但是收到面试申请还是挺开心的
查看4道真题和解析
点赞 评论 收藏
分享
评论
2
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务