美团暑期后端一面面经

面试时间:3.30上午11点

面试时长:1h5min

部门:到家的搜索工程组?(没听清)

自我介绍

1、完整讲一下你的 RAG 项目(离线 + 在线 + 架构)

2、重叠大小分块是自己做的吗?还是用的什么工具?

3、向量化用的模型是什么,还记得吗?然后这个模型是你自己部署的吗?还是调的LLM接口?

4、专门做过什么策略来提升召回率和准确率?如何评测召回率和准确率,有没有做过数字化的评估?

5、如果说你的 embedding 质量比较高的话,那这个评测确实没有问题,但如果说就是向量化的效果没那么好的话,那这个方案好像也并不是很行得通,因为它可能生成向量的时候就会有问题,这个有考虑过吗?然后你有没有想办法去……(接着面试官说,算了不问了)

6、关键字检索是怎么做的?

7、你可以说一下在线的部分,就是用户从一个请求,到它最终拿到结果的一个过程?

8、你刚才说意图节点,也就是意图识别的时候去识别它关联的那个叶子节点,我想问一下你这块是怎么实现的?

9、你刚才说首先有多路召回,多路检索,然后每一路检索里面会有一个粗排,然后这些结果拿到之后可能还会有一个细排。然后想问一下你这两个排序大概都是怎么做的?然后如果是用模型排的话,你这分别是用什么模型?然后你知道这些模型的检索排序的原理吗?

10、重排序用的什么模型?

11、你可以再总结一下,就是从你这个离线到在线的过程中有多少次和大模型的交互吗?分别简述一下。

12、我看你这个里面会有那个模型的,多模型的降级策略和熔断机制,你可以简单说一下,你现在是有哪几个模型之间可以降级?然后以及是怎么实现的?

13、你这个降级是手动降级吗?还是自动降级?

14、那这个自动降级是怎么感知的?比如说从模型里是刚才三个状态,它们三个状态之间流转是什么样子的?就什么情况下就把它变为异常了?然后什么情况下会让它自动恢复正常?还是就是怎么做的这块?

15、看你这个里面还支持了那个 MCP 的工具调用,然后你可以说一下你现在支持哪些那个MCP,然后以及这些 MCP 是怎么和模型交互,然后大概的实现原理吗?(这一部分不太会,就扯到MCP与function calling的区别了)

16、那function calling的话是怎么调呢?是 RPC调还是HTTP调?还是怎么调用的?

17、看你这边那个会话,大概是怎么存储的?可以说一下吗?

18、然后就是你这个会话就是大概是一个什么样的存储结构呢?可以说一下这个 MySQL表的存储的结构,就是哪几个关键字段?

19、就比如说一个用户可能在一个会话里面和模型会有多轮的这种对话。就比如说问了一个问题,模型回答一次,然后我再问一个问题,他再回答一次,再问,再回答。这样的结构在数据库里面是怎么存的?是一条还是多条?

20、然后就是你这个 message 表大概是一个什么结构?就是有哪几个关键字段?

21、看你这个里面用到了那个Redis,然后你可以解释一下那个 Redis 的缓存穿透、缓存击穿以及缓存雪崩吗?以及具体解决思路?

22、然后那个布隆过滤器,你可以说一下布隆过滤器的实现原理吗?

算法题:合并区间

23、然后我们谈一下,就是之前就是那个AI coding的那个面试题,然后你可以简单说一下你这边实现的思路吗?(这个是美团面试前发的AI Coding的题目,让设计一个限流中间件)

24、我再问一下,就是你认为它的这个Lua脚本能满足那个需求吗?(要求同一个用户60秒内只能发送60个请求)
这里面试官理解的是滑动的时间窗口,但是我实现的是固定的时间窗口,题目中只说了“时间窗口”,然后面试官就说你这个实现好像也没有问题。

反问

1、业务

2、具体工作

3、建议
      做项目其实可以更深入一点,而不是说只是作为一个 API 的调用方,就比如说这些模型,因为其实我们日常就是也会和这些模型交互之类的,你除了知道调它这个API,你可能需要更多的去了解一下,就是我为什么要这么设计,然后以及我这个模型具体能做什么东西,它大概是怎么实现的,有了这些可能对你未来会更有帮助,然后职业生涯可能更具有那个什么。(录音没录到,估计是想表达“更具有竞争力”这个意思吧

感受:
      面试官问的很细,能感觉出来面试官真的很专业,但是自己对于大模型相关底层原理的理解显然不够深入,MCP具体的工具调用也没来得及研究,属于半吊子水平
      也是第一次拿RAG项目来面试,这个面试官真的让我学到了很多,也让我知道了自己诸多的不足以及还需要提升的地方。整体面试体验感很好,面试官也不会特意刁难,我表达的很含糊的地方或者不会的地方,就是一句“行”帮我带过,感谢面试官

#牛客AI配图神器#现在还没消息,大概率是寄了,下去好好沉淀了

二编:4.1晚上6点约二面。
全部评论
重叠分块咋做的
点赞 回复 分享
发布于 04-03 11:18 北京
27届拼多多实习机会或看我主页 https://careers.pddglobalhr.com/campus/intern?t=4OmKPVeX9a
点赞 回复 分享
发布于 03-31 21:32 上海
第五点能详细说一下吗没看明白
点赞 回复 分享
发布于 03-31 17:45 北京
这个项目似曾相识啊
点赞 回复 分享
发布于 03-31 17:27 重庆
佬是在简历上写了分块吗 分块我还没啃
点赞 回复 分享
发布于 03-31 14:57 黑龙江
佬,面的是java还是agent岗
点赞 回复 分享
发布于 03-31 12:34 辽宁
有消息了吗
点赞 回复 分享
发布于 03-31 11:38 湖北
重叠分块咋做的
点赞 回复 分享
发布于 03-31 10:58 北京
这个是马丁那个rag吧
点赞 回复 分享
发布于 03-30 23:48 北京

相关推荐

二、Text2SQL 相关技术问题1. 不同数据表量级下,Text2SQL 的技术选型差异是什么?2. 为何要将数据表每一行数据向量化?使用的 Embedding 模型是什么?3. 行级向量化与表元数据(Metadata)检索的优劣对比,为何不直接用 Metadata?4. Text2SQL 业界常用方案、技术框架与难点你了解哪些?三、RAG 相关技术问题1. Jira Agent Rack 项目要解决什么问题?高频查询内容是什么?2. 为何采用关键词+向量混合检索?各自适用场景是什么?3. 结构化数据用固定分块的原因?什么场景不适合固定分块?4. 长文档 RAG 如何分块?标点分块如何解决语义割裂问题?5. RAG 中为何要加**重排(Rerank)**环节?你的项目是否使用?6. 加重排后效果变差的原因是什么?7. 是否做过Query 改写?解决什么问题?如何实现?8. RAG 与小模型微调的适用场景分别是什么?四、Agent 相关技术问题1. 多 Agent 系统采用什么架构?任务如何编排?2. OpenCloud、Perplexity 等 Agent 系统的核心是什么?3. Agent 的短期/长期记忆如何设计、区分与协作?4. Agent 系统相比直接用大模型的优势是什么?5. 用户如何自定义 Agent 与 MCP?流程是什么?整体上就是自己给自己挖坑,很多细节答不上来,面试了差不多50min,面试完感觉被抽干了,像是做了一次小丑,好不容易有次二面,被自己浪费了
查看17道真题和解析
点赞 评论 收藏
分享
评论
18
96
分享

创作者周榜

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