个人观察来看,目前大模型应用方向的面试,整体风格和传统后端或底层系统岗位有很大不同。很少会出现一上来就让你手写红黑树、深入剖析Raft协议细节,或者层层追问MySQL MVCC实现机制这类“硬核八股”问题。
这背后的原因主要有两点:
首先,大模型技术本身仍处于快速演进阶段,行业尚未形成统一、成熟的技术范式。无论是RAG系统设计、Agent架构,还是微调策略与部署方案,各家公司都在摸索中前行,缺乏标准答案。其次,很多企业是今年才全面投入AI赛道,团队中的面试官本身也在边招人边学习、边实践边总结。因此,面试更看重的是你是否具备基本认知、项目经验和“可塑性”,而不是对某个冷门机制的死记硬背。
比如在RAG相关的考察中,常见的问题往往是:“你觉得RAG最容易出问题的环节是什么?”“你是如何缓解大模型幻觉的?”“微调和RAG适用场景有什么区别?”——这些问题没有绝对标准答案,更多是考察你的项目理解、技术判断和表达能力。只要你真正动手做过相关项目,平时也关注社区动态,稍加梳理就能应对自如。
但有一个技术点,我认为正在成为面试中的“隐形门槛”,那就是:是否真正理解并实践过模型微调与部署全流程。这是我面试中最常被问到而又只能说没做过的问题,当然大部分公司都有专门的算法团队去做这件事,自己到没机会参与其中,也是可以理解的。
LLM 基础
- 大模型是怎么训练出来的?
- Transform 的架构,Encoder 和 Decoder 是什么?
- Function Call 是怎么训练的?
- 微调的方案有哪些?自己做过没有? - 大模型分词器是什么?
- Embedding 是什么?你们用的那个模型?
Lib
- 介绍一下 langchian
- 介绍一下 autogen
- 有没有用过大模型的网关框架(litellm)
-为什么手搓agent,而不是用框架?
- mcp 是什么?和Function Call 有什么区别?有没有实践过?
- A2A 了解吗?
Prompt - ReAct 是啥?怎么实现的?
- CoT 是啥?为啥效果好呢?有啥缺点?
- Prompt Caching 是什么?
- 温度值/top-p/top-k 分别是什么?各个场景下的最佳设置是什么?
RAG
- 你介绍一下RAG 是什么?最难的地方是哪?
- 文档切割策略有哪些?怎么规避语义被切割掉的问题?
- 多路召回是什么? - 文档怎么存的?粒度是多大?用的什么数据库?
- 为啥要用到图数据库?
- 向量数据库的对比有没有做过?Qdrant 性能如何?量级是多大?有没有性能瓶颈?
- 怎么规避大模型的幻觉? - 微调和RAG的优劣势?
- 怎么量化你的回答效果?例如检索的效果、回答的效果。
workflow
- 怎么做的任务拆分?为什么要拆分?效果如何?怎么提升效果?
- text2sql 怎么做的?怎么提高准确率? - 如何润色query,目的是什么?
- code-generation 是什么做的?如何确保准确性?
- 现在再让你设计你会怎么做?(replan)
- 效果是怎么量化的?
Agent
- 介绍一下你的 Agent 项目
- 长短期记忆是怎么做的?记忆是怎么存的?粒度是多少?怎么用的?
- Function Call 是什么做的? - 你最大的难题是什么?你是怎么提高效果的?怎么降低延迟的?
- 端到端延迟如何优化的?
- 介绍一下single-agent、multi-agent的设计方案有哪些?
- 反思机制是什么做的?为什么要用反思?
- 如何看待当下的LLM应用的趋势和方向
- 为什么要用Webrtc?它和ws的区别是什么?
- agent服务高可用、稳健性是怎么保证的?
- llm 服务并发太高了怎么办?
系统设计题
- 短链系统 - 分布式锁的设计
- 给你一部长篇小说,怎么做文档切割?
- 怎么做到论文翻译,并且格式尽可能和原来的统一
- 游戏社区客服助手设计。如何绑定游戏黑话,如何利用好公司内部的文档
- 结合线上问题快速定位项目工程代码有问题的地方
- 有很多结构化和非结构化数据,怎么分析,再怎么得出我要的结论。
八股
- go的内存分配策略、GMP、GC
- python 的内存分配策略、GC - redis 用过那些?mget 底层什么实现的?、zset怎么实现的?
- mysql 索引怎么设计最好?数据库隔离级别?mvcc是怎么实现的?
- 分布式锁是什么实现的?
- kafka的 reblance 是什么?会产生那些问题?怎么保证数据不丢?
- fastapi 设计原理?
- go 中 net/http 如何处理的tcp粘包问题
- http2 是什么?比http1.1有什么优势?
- Linux 网络性能调优的方式
- 如何定位Linux中的pid、端口号等等