NiceOffer

面试面经 · 京东

【京东】【大模型开发】【暑期实习三面】面经(八股+大模型项目+手撕)

京东面经大模型开发实习

海外一年制硕士,投递京东零售-大模型应用开发暑期实习,三面为部门技术负责人+HRBP 交叉面,全程约 55 分钟,技术占比七成。

题目摘要

  1. Go 语言基础:slice 的扩容机制与底层数组共享问题,map 是否并发安全,sync.Map 适用场景,defer 与返回值的关系(命名返回值陷阱)。
  2. MySQL/Redis 八股:聚簇索引与回表,explain 中 type 与 key_len 怎么读;Redis 缓存穿透/击穿/雪崩的区分与各自解法,分布式锁用 SETNX 还是 Redlock,为什么。
  3. RAG 项目深挖:文档切分策略怎么定的,向量检索召回率低怎么排查,rerank 模型选型与延迟的权衡,如何评估 RAG 效果(召回率/忠实度/答案相关性怎么算)。
  4. Function Calling 与上下文管理:多工具场景下工具描述怎么写才不容易误触发,工具调用失败/参数缺失怎么兜底;长对话上下文怎么压缩,system prompt、历史摘要、检索片段三者的 token 预算怎么分配。
  5. 推理成本优化:线上 QPS 上来后单次请求成本怎么降,prompt 缓存、小模型路由、流式输出、batch 推理各自的适用边界。
  6. 手撕算法:给定一个整数数组和一个目标值,返回所有和为目标的不重复二元组下标对,要求时间复杂度 O(n),并说明如何去重。关键思路:哈希表存「值 → 已出现下标」,遍历时查 target - nums[i] 是否在表中,命中则记录;去重靠对结果按值排序后放入 set,或先排序数组再用双指针。面试官追问了「如果要求返回所有组合而非下标对,怎么改」以及「数组含大量重复元素时的边界」。

项目深挖

简历上写的是「基于 RAG 的企业知识库问答 + 多工具 Agent」,面试官没有问「你做了什么」,而是直接往决策细节上戳。

追问一:你的切分策略是固定长度还是语义切分?为什么?
参考回答方向:不要答「用了 LangChain 的 RecursiveCharacterTextSplitter」就完事。要说清楚文档类型——如果是制度类文档,标题层级本身就是天然边界,按标题切再对超长段落做二次切分;chunk size 是结合 embedding 模型的最大输入长度和检索粒度定的,比如 512 token 配 64 重叠。然后主动给一个反例:纯固定长度切分会把表格和跨段落的因果句切断,导致召回片段语义不完整,这是后来改成「结构优先+长度兜底」的原因。面试官想听的是你有没有踩过坑并量化过。

追问二:召回率低你怎么定位是切分问题、embedding 问题还是检索策略问题?
参考回答方向:分层排查。先固定一批标注好的 query-answer 对,人工看 top-k 召回里有没有正确片段——如果没有,是召回阶段问题;如果有但没排进 top-3,是排序问题,上 rerank;如果正确片段压根不在库里,是切分或入库问题。embedding 模型的问题通常表现为「语义相近但用词不同的 query 召不回」,这时候换模型或加 query 改写(HyDE、多查询扩展)。要能说出你实际测出来的数字,哪怕是「top-5 召回从 62% 提到 81%」这种粗糙的。

追问三:Function Calling 里模型选错工具或者参数格式不对,你怎么处理?
参考回答方向:三个层次。一是工具描述层面,每个工具的 description 要写清楚「什么时候用、什么时候不用」,参数用 JSON Schema 约束类型和枚举值,减少歧义;二是调用层面,加一层校验,参数缺失或类型错误时不直接把错误抛回给模型让它重试,而是先做参数补全(比如日期默认今天),失败再带着明确的错误信息重试,限制重试次数;三是兜底层面,连续失败就降级到「让模型直接回答」或转人工,避免死循环烧 token。可以补一句:工具数量超过 10 个之后误触发明显上升,后来做了工具分组+两阶段选择。

准备建议

  1. 八股要能往项目上引,不要背独立知识点。比如被问 Redis 缓存穿透,答完布隆过滤器后主动接一句「我在项目里用 Redis 存了工具调用的幂等 key,TTL 设的是……」——面试官对「能落地」的答案明显更感兴趣。MySQL 重点准备索引和慢查询,Go 重点准备 slice/map/channel/GC,Java 岗同理换 JVM 和集合。
  1. RAG 和 Agent 项目要准备一套「问题-定位-方案-数据」的叙事。面试官几乎必问「效果不好怎么办」,提前把每个环节的失败模式列出来:切分粒度、embedding 选型、召回 top-k、rerank、prompt 模板、上下文长度、幻觉。每个环节想好一个你真实调过的参数和它带来的变化,哪怕变化很小,也比空谈方法论强。
  1. 手撕算法按「先讲思路再写码」练。京东这场算法题不难,但面试官会打断你问边界和复杂度。准备时对每道高频题(哈希、双指针、滑动窗口、二叉树、DP 入门)都练一遍口述思路,重点说清楚「为什么用这个数据结构」和「重复元素/空数组/溢出怎么处理」。写之前先确认输入输出和约束,比闷头写更省时间。

三面结束后第 4 天收到 HR 口头通过,一周内发实习 offer,base 北京,需现场到岗。

想系统备战大厂大模型/Agent 开发?NiceOffer 提供 SDE+LLM 双轨 1v1 陪跑,合同保底 40w 年薪,文末扫码咨询。