AI|校招|快手AI agent开发一面60分钟已通过¶
来源:https://mp.weixin.qq.com/s/jsjTHI0vQ4m3tGpSmaJfPg
岗位名称:AI Agent 开发 面试时长:1h 左右 自评分:7/10 是否下一轮:已通过 一面 一、RAG 召回方案与检索链路 1、为什么要设计父子索引,而不是只用普通 chunk 检索? 2、检索阶段为什么还要加入 BM25? 追问: BM25 检索和向量召回是怎么配合的?两者的权重或占比怎么确定? 从用户 query 进来到最终组装上下文,中间完整链路是怎样的? 召回之后有没有再做 rerank?具体采用了什么 rerank 方式?
二、Rerank 与结果截断策略¶
1、经过 rerank 之后,通常会保留多少个文本块? 追问: 这个数量是怎么定下来的?有没有做过对比或验证? 2、rerank 之后的 topK 是如何截断的? 追问: 为什么选择当前这个 topK 值?有没有尝试过其他截断策略? 当上下文内容太少或者超出长度限制时,你是怎么处理的?
三、上下文工程与记忆设计¶
1、介绍一下你们的上下文工程是怎么做的。 追问: 最终拼给模型的上下文结构是什么样的? 如何控制上下文长度,避免内容过长影响模型效果? 2、记忆机制是如何设计的? 追问: 短期记忆和长期记忆分别存什么?两者怎么区分? 记忆内容什么时候更新?更新规则是什么?
四、Agent 规划与工具调用¶
1、Function Calling 在项目里是怎么设计和落地的? 2、Agent 的任务规划流程是怎样的? 追问: 任务规划主要依赖模型完成,还是通过规则控制? 涉及多个工具时,调用顺序是怎么决定的? 如果某个工具调用失败,系统会怎么处理?
五、安全控制与防护机制¶
1、如何防御 Prompt 注入攻击? 追问: 有没有做输入过滤、规则拦截或内容校验? 2、工具调用过程中的安全控制怎么做? 追问: 如何避免模型调用敏感接口? 有没有做权限校验、接口白名单或访问控制?
六、限流相关系统设计¶
1、讲一下分布式令牌桶限流的实现思路。 2、漏桶算法的核心原理是什么? 3、滑动窗口限流是怎么实现的? 追问: 如果用滑动窗口实现限流,结构体里一般需要包含哪些字段? 4、滑动窗口和令牌桶有什么区别? 追问: 如果基于 Redis 做限流,你会选择什么数据结构?
七、基础算法与数据结构¶
1、介绍一下布隆过滤器。 追问: 布隆过滤器可能会带来什么问题? 误判率一般怎么控制?
八、数据库索引¶
1、哪些场景会导致数据库索引失效? 2、like 查询一定会导致索引失效吗? 追问: 哪些 like 写法或者查询方式会让索引无法命中?
九、RAG 评测与数据集建设¶
1、RAG 系统一般怎么做效果评测? 2、RAG 的评测维度有哪些? 追问: 常见评测指标有哪些? 3、评测数据集通常需要包含哪些内容? 追问: 怎么构建一套质量比较高的 RAG 评测数据?
十、RAG 效果优化¶
1、如果要提升检索相关性,你会从哪些方向优化? 2、如果要提升最终回答质量,你会怎么做? 追问: 你会优先优化检索阶段,还是优化生成阶段? 怎么判断一次优化确实带来了效果提升?
十一、数据处理系统设计题¶
1、如果有一个数据处理任务,比如对一千条数据做求和,你会怎么设计处理流程? 追问: 如果数据量扩大到百万级,方案需要怎么调整? 如何保证计算效率和系统稳定性?
十二、RAG 性能优化¶
1、如果要提升 RAG 系统性能,你会从哪些方面入手? 追问: 是从检索层、模型层,还是系统架构层优化? 有没有使用缓存、并行处理等优化方式?
十三、上下文优化¶
1、当前上下文是怎么处理和组织的? 追问: 后续有哪些优化方向? 如何减少无关上下文对模型回答的干扰?
预览时标签不可点
<div class="