月之暗面 大模型LLM 一面

这个面经是群里 小伙伴分享的 社招, 2年的工作经验 双非本9硕 将近40分钟都在问项目细节 项目这里我全部砍掉了

1. 自我介绍

2. 大模型在推理时通常分哪两个阶段,每个阶段关注点是什么

一般分成 prefill 和 decode 两个阶段。prefill 阶段主要是把输入 prompt 一次性编码进去,重点看吞吐、并行效率和长序列的计算开销;decode 阶段是逐 token 生成,重点看单步延迟、KV Cache 复用和 batch 调度效率。很多线上推理慢,不是模型本身慢,而是 prefill 太重或者 decode 阶段调度策略不合理。理解这两个阶段,才能知道为什么有些优化只对长输入有效,有些只对生成阶段有效。

3. 如果推理时出现 OOM,你会怎么排查

先看是不是显存被参数、激活、KV Cache 或者临时张量占满,再判断是训练阶段还是推理阶段。推理阶段最常见的原因是上下文太长、batch 太大、KV Cache 没做合理管理,或者某些算子产生了额外的临时开销。排查时一般先缩 batch、缩 context、关掉不必要的 profiling,再逐步定位具体层。很多 OOM 不是模型太大,而是调度策略把显存峰值顶上去了。

4. 输入 shape 为 (b, s, h),怎么估算 MHA 的计算量

MHA 的核心计算分成 QKV 投影、注意力分数计算、softmax、加权求和和输出投影几部分。若隐藏维度为 h,头数为 n_head,每头维度为 d = h / n_head,那么 QKV 投影大致是 O(b*s*h*h) 级别,注意力分数计算是 O(b*n_head*s*s*d),也就是常说的二次复杂度来源。最后的输出投影还是 O(b*s*h*h)。所以长序列场景里,真正的瓶颈通常不是 MLP,而是 attention 的 s^2

def mha_flops(b, s, h, n_head):
    d = h // n_head
    qkv = 3 * b * s * h * h
    attn = b * n_head * s * s * d
    out = b * s * h * h
    return qkv + attn + out

5. 介绍一下 vLLM 的 page attention 原理

vLLM 的 page attention 核心是把 KV Cache 切成固定大小的 page 来管理,而不是按连续大块显存直接分配。这样做的好处是显存利用率更高,减少碎片,同时能够支持更灵活的请求调度和连续批处理。它本质上是把“变长序列的缓存管理”做成了类似分页系统的思想,避免长短请求互相阻塞。对在线推理来说,这种设计能明显提升吞吐和资源利用率。

6. 讲一下 FlashAttention 的原理

FlashAttention 的核心不是“更快算 attention”,而是“避免把完整 attention matrix 落到显存里”。它通过分块计算、在线 softmax 和重计算,减少 HBM 访问量,把很多中间结果保留在更快的片上存储里。这样做的本质是用更少的内存带宽换更好的速度和更低的显存占用。长序列场景下,它的收益非常明显,因为传统 attention 的瓶颈往往就是读写中间矩阵。

7. 为什么 RMSNorm 在大模型里比 LayerNorm 更常见

RMSNorm 去掉了均值中心化,只保留方差归一化,计算更简单,开销更低,而且在大模型里通常足够稳定。相比 LayerNorm,它少了一部分计算和同步开销,尤其在大规模训练和推理里更有工程优势。很多模型选择 RMSNorm,不是因为它理论上一定更强,而是因为它在稳定性和效率之间更平衡。工程里常见的选择逻辑就是:只要效果差不多,就选更省的。

8. 为什么很多 Transformer

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

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

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

全部评论

相关推荐

原文(来源:牛客网,作者:Arancia_Arancione,门头沟学院):二面 业务面 40min1. 自我介绍2. 本硕专业都和AI没啥关系,为啥想当AI产品经理?3. 谈一下对AI产品经理这个岗位的理解,以及它对应的职责4. 你觉得AI产品经理需要具备哪些技能5. 谈下对人工智能未来发展趋势的看法6. 你有多段实习经历,你觉得对你来说成长最大或者收获最大的是哪段?7. 介绍一下在小米的实习8. 你说到会通过策略调整来提升大模型,是什么策略?怎么调整的?展开讲下9. 小米这段的大模型数据评测10. 评测的核心指标是什么?怎么得到的?11. 这段实习中,你遇到的最大的挑战or困难是啥?怎么解决的?12. 再讲一下Minimax的这段实习13. 讲下数据标注的工作14. prompt方面做了什么具体的内容?15. 谈一下深度学习这块的原理,例如卷积神经网络、强化学习等,原理+应用场景16. 有监督学习和无监督学习的区别是啥?17. 假设我们现在有一个需求,需要找一个合适的模型来进行解决。现在市面上有很多模型,我们要怎么去选择?或者说怎么验证某个模型就是能够达到我们的预期的?市面上常见的大模型有哪些───1. 17道题40分钟——理想的「剥洋葱」追问战术理想二面问题数是百度、vivo的3-4倍,时间相同。面试策略是「快速下钻,触及边界」——每题约2分钟窗口,立刻追问下一层。靠背诵的答案撑不过三轮追问。面试官要的不是完美答案,是认知边界在哪。2. Q8-Q10连续追问链暴露了面试的真实目的Q8「什么策略」→ Q9「评测怎么做」→ Q10「核心指标是什么、怎么得到」。从方法论→实操→量化的下钻路径。如果实习经历真实深度参与,Q10能直接报出指标和获取方式;如果是包装的,到Q9就开始含糊。面试官用这个链精确测量实习深度。3. Q15「谈一下深度学习原理」——AI PM面试的技术边界测试考的不是有没有ML学位,是能不能用产品经理的语言讲清楚技术原理。合格回答用类比:CNN像滑动窗口扫描图片,强化学习像训狗。不合格要么背教科书定义(不懂跟非技术人员沟通),要么完全答不上来(跟算法工程师沟通成本极高)。4. Q17「如何验证模型达到预期」——区分AI PM和传统PM的终极问题传统PM验证「功能有没有按PRD做出来」;AI PM验证「模型在不完全可控的情况下能不能稳定输出期望结果」。高分框架:验证维度(准确率/召回率/延迟/成本)→ 评测集(正常+边界+对抗Case)→ A/B方案 → 上线标准。
查看17道真题和解析
点赞 评论 收藏
分享
05-25 22:17
已编辑
中山大学 算法工程师
一面(1小时30分钟):上来先做题1. 手撕AdamW2. 手撕无重复字母的字串(hot100)3. 出了两个题都是对数据库的操作,我以为是让写大模拟,写到一半结果面试官告诉我是用sql写🐱,不会遂罢。4. 面对海量数据的时候怎么对数据进行处理,比如说去除掉敏感词等等,面对海量数据会出现哪些问题,该如何去处理5. 介绍发表的顶会论文6. 介绍Q-learning和DQN二面(2小时30分钟)实习乃至秋招面的最久的一轮面试了,从晚上七点多面到十点,最后人都麻了🥵,面试官估计要下班了结束了面试🐱1. 介绍论文,主包是做强化学习相关的,围绕问了很多强化学习算法(GRPO,PPO,reward model),介绍马尔可夫决策过程。2. bf16、fp16和fp32,并进行计算。3. lora微调的细节,量化相关知识然后开始漫长的手撕过程🥵4. 手撕ppo5. 算马尔可夫决策过程的γ阈值,我感觉是个无穷级数?6. 算模型sft的参数量大小及显卡利用率7. 是否重合链表(hot100)8. 如何使得一个输入向量x在经过一个或多个全连接层后,其输出向量y所在子空间基底尽可能接近标准正交基三面(面委会面)(30分钟)1. 介绍第一篇顶会论文(共享屏幕)2. 介绍第二篇顶会论文3. 不同强化学习之间的区别4. 和使用强化学习训练大模型相比,使用强化学习训练小模型需要做出哪些改变hr面(30分钟)常规的hr面问题,主要问来wx的意向。感觉前几面比较侧重技术细节,面委会感觉就比较侧重聊未来技术的发展,个人感觉前几面的压力比较大😼📳对于想求职算法岗的同学,如果想参加高质量项目辅导,提升面试能力,欢迎后台联系。
查看18道真题和解析
点赞 评论 收藏
分享
评论
3
7
分享

创作者周榜

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