【潞晨科技】-【AI 平台研发工程师(Backend, MLOps)】-一面技术面经
1. 你参与的关键词命中系统主要业务目标是什么?整体是怎么设计的?
2. 关键词命中系统的使用方是谁?应用在什么业务场景中?
3. 上游服务是如何接入关键词命中系统的违禁词命中能力的?是否有SDK类的接入方式?
4. 关键词命中系统里的前缀树是服务全局的缓存,还是函数内的缓存?
5. 关键词命中系统有400多个实例,每个实例都需维护一份缓存,各实例缓存是否一致?缓存之间的分配策略是什么?
6. 关键词命中系统中的前缀树(AC自动机)是你自己想到使用的吗?
7. 关键词命中系统里的前缀树(AC自动机)与emoji表情匹配是否为一套架构?请说明二者数据流转的前后顺序关系。
8. 关键词命中系统中emoji的CRUD需求是你从0到1做的吗?你是如何实现emoji的兼容支持的?
9. 你在关键词命中系统优化中提到用Redis做增量、定时同步,做定时同步的目标是什么?是否是为了做热点访问的分散?
10. 关键词命中系统做了分库分表,400多个实例都要访问数据库,为何会出现数据库连接的并发瓶颈,而非访问分散的状态?
11. 关键词命中系统的400多个实例会在凌晨1点随机重启,这个随机重启是怎么设计的?加随机数的具体实现方式是什么?
12. 关键词命中系统的服务是怎么部署的?你通过什么方式实现的服务重启?
13. 请解释什么是agent?
14. agent和大模型的主要区别是什么?
15. 你设计的是多agent系统,为何不直接做单agent workflow?二者有什么区别?
16. RAG是做知识库的一种方式,你还了解过哪些构建记忆系统(知识库)的方式?
17. 做RAG向量化时,你选取embedding模型的标准是什么?
18. RAG使用embedding模型向量化后,若出现相似度匹配不准确的情况,你会怎么解决?
19. RAG检索时,若出现召回的文档和提问情境不匹配的情况,你会怎么解决?
20. 请简单介绍一下ReAct是什么?
21. ReAct与COT(思维链)在写prompts的时候有哪些差异?
22. 请详细介绍Redis zset的实现,包括其底层数据结构还有哪些相关实现细节?
23. 请讲解Redis zset底层跳表的插入、查找过程,包括节点之间的连接方式,以及查找时向下切换层级的判断逻辑?
24. 请说明Golang中的线程、协程、进程这三者的区别?
25. 项目开发中为什么需要使用线程池?线程池的设计来源是什么?在什么情况下线程池会出现瓶颈?
26. 线程池的参数设置在不同状态下,和不使用线程池相比会有哪些性能区别?
27. 给定字符串s和单词数组,判断单词是否为s的子序列,请设计算法并实现,同时讲解你的算法思路和具体处理逻辑。
2. 关键词命中系统的使用方是谁?应用在什么业务场景中?
3. 上游服务是如何接入关键词命中系统的违禁词命中能力的?是否有SDK类的接入方式?
4. 关键词命中系统里的前缀树是服务全局的缓存,还是函数内的缓存?
5. 关键词命中系统有400多个实例,每个实例都需维护一份缓存,各实例缓存是否一致?缓存之间的分配策略是什么?
6. 关键词命中系统中的前缀树(AC自动机)是你自己想到使用的吗?
7. 关键词命中系统里的前缀树(AC自动机)与emoji表情匹配是否为一套架构?请说明二者数据流转的前后顺序关系。
8. 关键词命中系统中emoji的CRUD需求是你从0到1做的吗?你是如何实现emoji的兼容支持的?
9. 你在关键词命中系统优化中提到用Redis做增量、定时同步,做定时同步的目标是什么?是否是为了做热点访问的分散?
10. 关键词命中系统做了分库分表,400多个实例都要访问数据库,为何会出现数据库连接的并发瓶颈,而非访问分散的状态?
11. 关键词命中系统的400多个实例会在凌晨1点随机重启,这个随机重启是怎么设计的?加随机数的具体实现方式是什么?
12. 关键词命中系统的服务是怎么部署的?你通过什么方式实现的服务重启?
13. 请解释什么是agent?
14. agent和大模型的主要区别是什么?
15. 你设计的是多agent系统,为何不直接做单agent workflow?二者有什么区别?
16. RAG是做知识库的一种方式,你还了解过哪些构建记忆系统(知识库)的方式?
17. 做RAG向量化时,你选取embedding模型的标准是什么?
18. RAG使用embedding模型向量化后,若出现相似度匹配不准确的情况,你会怎么解决?
19. RAG检索时,若出现召回的文档和提问情境不匹配的情况,你会怎么解决?
20. 请简单介绍一下ReAct是什么?
21. ReAct与COT(思维链)在写prompts的时候有哪些差异?
22. 请详细介绍Redis zset的实现,包括其底层数据结构还有哪些相关实现细节?
23. 请讲解Redis zset底层跳表的插入、查找过程,包括节点之间的连接方式,以及查找时向下切换层级的判断逻辑?
24. 请说明Golang中的线程、协程、进程这三者的区别?
25. 项目开发中为什么需要使用线程池?线程池的设计来源是什么?在什么情况下线程池会出现瓶颈?
26. 线程池的参数设置在不同状态下,和不使用线程池相比会有哪些性能区别?
27. 给定字符串s和单词数组,判断单词是否为s的子序列,请设计算法并实现,同时讲解你的算法思路和具体处理逻辑。
全部评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
查看5道真题和解析