顺丰科技27届AI开发工程师 一面面经

10月19日,顺丰科技AI开发工程师,线上技术面。 整体流程: 自我介绍、实习经历、项目深挖、RAG知识库、文档切分与检索、Workflow、Docker部署、数据隔离与质量评测、反问。 这场基本全程围绕一个AI应用项目展开,没有手撕算法,也没有问太多传统八股,比较关注技术选型和实际系统流程。 一、自我介绍与实习 1. 自我介绍。 2. 简单介绍一下实习经历,主要做了什么? 3. 几个项目里面,觉得哪个做得比较好?选一个详细介绍。 二、项目深挖 1. 讲一下项目的整体架构和技术栈。 2. 能不能举一个完整的例子,把项目所有核心功能串起来? 3. 用户使用系统时,先输入什么?整体流程是什么? 4. 用户输入相关资料后,最终会输出哪些结果? 5. 不同的输出结果分别在哪个环节生成? 6. 如果有多个版本的数据,系统是如何管理的? 7. 不同版本的数据会一起参与处理,还是每次指定其中一个? 8. 用户是否需要在前端明确选择输入对象和对应版本? 9. 整个项目的前后端都是自己开发的吗? 10. 你觉得项目做得比较好的地方有哪些?遇到过什么困难? 三、RAG与知识库(重点深挖) 1. 知识库在整个系统中起到什么作用?具体在哪个环节使用? 2. RAG检索时,召回的具体是什么内容? 3. 如果知识库里存在多个版本的数据,如何确定召回范围? 4. 如果用户已经明确指定了需要处理的两份文档,为什么还需要切块和检索? 5. 为什么不直接把完整文档交给大模型处理,而要额外引入RAG? 6. 既然输入对象已经明确,是否完全可以绕过知识库检索? 7. 引入RAG相比直接处理原文,实际解决了什么问题? 8. 知识库是怎么搭建的?具体处理流程是什么? 9. 检索使用关键词、向量还是混合检索? 10. 怎么保证检索召回的准确率?如何验证? 11. 文档切分是根据文档结构,还是根据文档类型? 12. 切块时如何保证语义完整性? 13. 系统支持哪些文档格式?PDF、Word、Markdown、TXT等是否支持? 14. 如果PDF里面有图片或者扫描内容,怎么处理? 15. 文档是在上传时就完成切分和存储,还是查询时才进行切分? 16. 检索召回之后,结果会直接交给模型吗?中间还有哪些处理环节? 四、Agent与Workflow及工程部署 1. 项目中的工作流是怎么设计的? 2. 有没有使用LangChain、LangGraph之类的框架? 3. 为什么选择直接根据业务逻辑实现,而不是使用现成的Agent框架? 4. 工作流如何记录各步骤的执行状态和结果? 5. 项目目前部署在本地还是服务器? 6. 有没有使用Docker?具体是怎么部署的? 7. Workspace工作空间隔离具体指什么? 8. 不同用户或工作空间之间的数据如何隔离? 9. 项目中的质量评测是怎么实现的? 10. 功能测试与实际AI效果评估有什么区别? 五、反问 1. AI开发工程师这个岗位实际主要做哪些业务? 2. 团队主要使用哪些技术栈? 3. 应届生入职后多久可以接触真实业务项目? 面试官介绍,目前主要有两个方向。 第一类是AI Agent应用开发,例如AI客服、AI语音下单等业务场景。 第二类是AI基础设施,例如AI链路观测、监控、AI框架开发等。 技术方面提到了Python、Go、Java、C++,以及Redis、Kafka、大数据存储和实时处理组件。