Java 后端开发实习生二面面经
完整信息
本篇目录
已挂,原因:
1.项目只有基本链路,没实际上线
2.AI Coding 耗时较长,感觉候选人生疏。
大家谨慎包装上线项目,很容易露馅,吃大亏了。
一、项目
1. 你的两个项目分别是什么性质?RAG 项目是个人项目、实验室项目,还是校企合作项目?
2. 介绍一下你这个校企合作 RAG 项目的业务背景、目标用户和你负责的核心模块。
1.1 这个项目主要解决什么痛点?
1.2 目前是否上线?做到什么程度了?
3. 你这个 RAG 项目的完整链路是怎么设计的?
3.1 文档入库链路怎么做?
3.2 用户提问后的查询链路怎么做?
3.3 记忆加载、问题改写拆分、意图路由、检索、重排、Prompt 拼接和最终生成之间是怎么串起来的?
4. 文档入库目前支持什么类型的文档?为什么当前先做 Markdown?
4.1 后续如果支持 PDF、Word、Excel 等文档,你准备怎么扩展?
5. Markdown 文档是怎么做 Chunk 切分和合并的?
5.1 标题、普通文本、代码块等结构是怎么识别和处理的?
5.2 为什么不直接按固定长度切分,而是先按结构切分再合并?
5.3 合并策略是什么?是按大小、结构关系,还是语义关系?
5.4 这种策略怎么保证 Chunk 的语义完整性?
5.5 如果后续要做语义拆分,你准备怎么自动化实现?
6. 向量化入库这块用了什么方案?为什么选择 pgvector,而不是 Milvus?
6.1 从数据规模、部署复杂度、事务支持、系统维护成本等角度,你是怎么权衡的?
7. 你们项目效果是怎么评测的?
7.1 用了哪些指标?
7.2 测试集是怎么构造和标注的?
7.3 每个问题对应的应召回 Chunk 和标准答案是怎么确定的?
7.4 召回效果和最终回答质量分别怎么评估?
7.5 如何避免只靠个人主观感觉判断回答质量?
8. 项目过程中遇到了什么比较典型的问题?
8.1 你说 RAG 链路太长,具体是哪些环节导致首字 Token 延迟高?
8.2 为什么一开始要设计这么长的链路?
8.3 后续你打算怎么减少大模型调用次数或降低延迟?
9. 问题改写拆分阶段你做过哪些优化?
9.1 为什么一开始加载全量历史记忆会导致延迟变高?
9.2 为什么后来只加载最近两轮记忆就能满足指代消解?
9.3 这种优化对延迟和准确性分别有什么影响?
10. 你这个系统算 Agent 吗?RAG 和 Agent 的区别是什么?
10.1 你的系统有没有工具调用能力?
10.2 大模型在系统里具体承担了哪些任务?
10.3 RAG 链路和大模型调用是怎么集成到后端服务里的?
二、八股
无
三、算法
无
四、AI Coding
1. 可以使用自己任意的AI Coding工具,实现订单状态校验流转系统,从 [创建->支付->发货->签收->确认收货] 完成状态流转,在顺序异常、取消订单后还进行流程的情况设定为异常订单,输出异常单号,要求能处理各种边界情况、有前端页面,交付方案设计、实现代码、测试报告。
本篇目录
当前问题0137
- 01
你的两个项目分别是什么性质?RAG 项目是个人项目、实验室项目,还是校企合作项目?
- 02
介绍一下你这个校企合作 RAG 项目的业务背景、目标用户和你负责的核心模块。
- 03
这个项目主要解决什么痛点?
- 04
目前是否上线?做到什么程度了?
- 05
你这个 RAG 项目的完整链路是怎么设计的?
- 06
文档入库链路怎么做?
- 07
用户提问后的查询链路怎么做?
- 08
记忆加载、问题改写拆分、意图路由、检索、重排、Prompt 拼接和最终生成之间是怎么串起来的?
- 09
文档入库目前支持什么类型的文档?为什么当前先做 Markdown?
- 10
后续如果支持 PDF、Word、Excel 等文档,你准备怎么扩展?
- 11
Markdown 文档是怎么做 Chunk 切分和合并的?
- 12
标题、普通文本、代码块等结构是怎么识别和处理的?
- 13
为什么不直接按固定长度切分,而是先按结构切分再合并?
- 14
合并策略是什么?是按大小、结构关系,还是语义关系?
- 15
这种策略怎么保证 Chunk 的语义完整性?
- 16
如果后续要做语义拆分,你准备怎么自动化实现?
- 17
向量化入库这块用了什么方案?为什么选择 pgvector,而不是 Milvus?
- 18
从数据规模、部署复杂度、事务支持、系统维护成本等角度,你是怎么权衡的?
- 19
你们项目效果是怎么评测的?
- 20
用了哪些指标?
- 21
测试集是怎么构造和标注的?
- 22
每个问题对应的应召回 Chunk 和标准答案是怎么确定的?
- 23
召回效果和最终回答质量分别怎么评估?
- 24
如何避免只靠个人主观感觉判断回答质量?
- 25
项目过程中遇到了什么比较典型的问题?
- 26
你说 RAG 链路太长,具体是哪些环节导致首字 Token 延迟高?
- 27
为什么一开始要设计这么长的链路?
- 28
后续你打算怎么减少大模型调用次数或降低延迟?
- 29
问题改写拆分阶段你做过哪些优化?
- 30
为什么一开始加载全量历史记忆会导致延迟变高?
- 31
为什么后来只加载最近两轮记忆就能满足指代消解?
- 32
这种优化对延迟和准确性分别有什么影响?
- 33
你这个系统算 Agent 吗?RAG 和 Agent 的区别是什么?
- 34
你的系统有没有工具调用能力?
- 35
大模型在系统里具体承担了哪些任务?
- 36
RAG 链路和大模型调用是怎么集成到后端服务里的?
- 37
可以使用自己任意的AI Coding工具,实现订单状态校验流转系统,从 [创建->支付->发货->签收->确认收货] 完成状态流转,在顺序异常、取消订单后还进行流程的情况设定为异常订单,输出异常单号,要求能处理各种边界情况、有前端页面,交付方案设计、实现代码、测试报告。