面试面经 · 百度
【百度】【大模型开发】【暑期实习HR面】面经(八股+大模型项目+手撕)
百度大模型开发 暑期实习 HR面面经
背景: 海外一年制硕士,投递大模型应用开发岗,简历上主要是一个RAG项目和一个Agent工具调用项目。
题目摘要
- 编程语言基础(Go):goroutine 和 channel 的底层原理;GMP 调度模型简述;如何避免 goroutine 泄漏。
- MySQL/Redis 八股:MySQL 联合索引最左前缀原则的底层原因;Redis 持久化机制(RDB/AOF)的优缺点及混合持久化;缓存穿透、击穿、雪崩的区别与解决方案。
- 大模型项目深挖(RAG):基于你的项目,详细说明检索召回策略如何设计?重排(Rerank)的必要性和代价?如何处理检索结果相关性差的问题?
- 大模型项目深挖(Agent):Function Calling 的调用链路是怎样的?如何管理多轮对话中的上下文长度?当模型输出不符合 JSON Schema 时怎么办?
- 手撕算法题:题目:给定一个整数数组
nums和一个目标值k,返回数组中和为k的连续子数组的个数。关键思路:前缀和 + 哈希表优化。遍历数组时计算前缀和preSum,每次将preSum - k出现的次数累加到答案中,然后更新当前preSum的出现次数。时间复杂度 O(n),空间复杂度 O(n)。 - 场景设计题:如果多个用户同时上传大量文档并触发 RAG 索引构建,如何设计一个异步任务队列来处理?如何保证任务不丢失?
项目深挖
追问1: “你的 RAG 项目里,向量检索的召回率大概是多少?如果用户问题很模糊,首轮检索效果差,你怎么优化?”
参考回答方向: 先给出具体数据(如召回率 70%-80%),然后说明优化策略。重点答出多路召回和查询改写。例如:除了向量检索,同时走 BM25 关键词召回,用 RRF(Reciprocal Rank Fusion)融合排序。针对模糊问题,在进入检索前加一个 LLM 查询改写模块,将口语化表达拆解为多个子查询或补充同义词。最后提一句重排模型(如 BGE-Reranker)过滤 Top 20 重排到 Top 5,能显著提升准确率。
追问2: “你的 Agent 项目里,Function Calling 的调用链路过长导致 token 消耗很大,怎么控制成本?”
参考回答方向: 核心是减少无效轮次和压缩上下文。方案分三层:第一层,在 Prompt 层做约束,用 Few-shot 示例引导模型一次性输出多个函数调用(并行调用);第二层,在系统层面,当模型返回结果不符合要求时,不直接重新调用 LLM,而是写一个规则校验器(如 JSON Schema 校验器),把错误信息喂回给模型做一次小规模修正,而不是从头生成;第三层,上下文管理上,将历史对话中已成功执行的函数结果进行摘要压缩,只保留关键状态变量,丢弃原始长文本。
追问3: “如果模型在 Function Calling 时,返回了一个你系统里不存在的函数名,或者参数类型完全错误,你会怎么处理?”
参考回答方向: 这属于模型幻觉问题。我会设置一个兜底策略:第一层,在代码里维护一个函数白名单,对模型输出做正则匹配和参数类型校验,不通过直接拦截。第二层,如果校验失败,将错误信息(包括期望的函数签名和实际输出)拼接进 Prompt,要求模型重新生成,但最多重试 2 次。第三层,如果仍失败,则返回一个默认的兜底回复(如“抱歉,我暂时无法处理该请求”),避免系统报错。同时,这些失败案例会记录到日志中,用于后续微调或 Few-shot 补充。
准备建议
- 算法题不要只刷 Hot 100。百度面试手撕题偏重前缀和、双指针、滑动窗口、动态规划基础题。建议把 LeetCode 上“前缀和”标签下的中等题刷熟,尤其是“和为 K 的子数组”、“连续数组”、“矩阵区域和”这几道变体。写代码时注意边界条件和空数组的处理。
- 项目深挖准备要按“数据流”来梳理。不要只背项目结论,要画清楚一条链路:用户输入 → Query 改写 → 路由 → 检索 → 重排 → 拼接上下文 → LLM 生成 → 输出校验。面试官会顺着这条链路逐节点问,每个节点要准备至少一个“失败场景”和对应的“降级方案”。
- 八股要结合项目场景去答。比如 MySQL 索引,不要只背最左前缀原则,要能说“在我项目里,为什么对
user_id和created_at建联合索引,以及为什么查询条件里如果跳过user_id索引会失效”。Redis 持久化同理,要能说出哪个场景下选 RDB,哪个场景下选 AOF,而不是单纯背区别。
结果反馈
一面通过,约 4 天后收到邮件通知进入二面(技术面)。整体面试节奏偏快,HR 面穿插技术问题,重点考察项目落地能力和工程基础是否扎实。
想系统备战大厂大模型/Agent 开发?NiceOffer 提供 SDE+LLM 双轨 1v1 陪跑,合同保底 40w 年薪,文末扫码咨询。