NiceOffer

面试面经 · 得物

【得物】【大模型开发】【暑期实习一面】面经(八股+大模型项目+手撕)

得物面经大模型开发实习

海外一年制硕士,投递得物大模型开发暑期实习,简历偏 LLM 应用工程方向,一面约 60 分钟,全程视频面试,面试官是团队里做 Agent 平台的一线开发。

题目摘要

  • Go 基础:slice 与 array 的区别,slice 扩容机制,map 是否并发安全,如何实现一个并发安全的 map
  • Go 并发:channel 有缓冲/无缓冲的区别,select 的随机性,context 在超时控制里的作用
  • MySQL/Redis 八股:MySQL 索引失效场景、explain 关注哪些字段、Redis 缓存穿透/击穿/雪崩的区别与应对、Redis 分布式锁的坑
  • RAG 项目深挖:文档切分策略、向量检索召回率低怎么排查、rerank 的必要性、如何评估 RAG 效果
  • Agent / Function Calling:工具调用失败怎么兜底、多轮对话上下文怎么管理、token 成本怎么压
  • 手撕算法:LRU 缓存。题意:设计一个数据结构,支持 get(key) 和 put(key, value),容量满时淘汰最久未使用的键,要求两个操作都是 O(1)。关键思路:哈希表 + 双向链表,哈希表存 key 到链表节点的映射,双向链表维护访问顺序,get 命中后把节点移到头部,put 时若超容量则删尾节点。面试官要求手写双向链表节点和指针操作,不能用 container/list。

项目深挖

简历上写了一个基于 RAG 的企业知识库问答 + Function Calling 的 Agent 项目,面试官在这块追问最多。

追问一:向量检索召回率低,你怎么定位和优化?

参考回答方向:先分层排查。第一层看数据,文档切分是否把语义完整的段落切断了,chunk 太大导致向量被稀释、太小导致上下文缺失,可以按语义边界切分并加 overlap。第二层看 embedding 模型,是否和业务语种、领域匹配,通用模型在垂直领域术语上表现差,可以考虑领域微调或换模型。第三层看检索策略,纯向量检索对关键词、编号、专有名词不敏感,可以加 BM25 做混合检索,再上 rerank 模型对 Top-K 重排。最后要有评估手段,构造一批 query-answer 对,看 recall@k 和 MRR,不然优化全靠感觉。

追问二:Function Calling 里工具调用失败或者模型输出格式不对,怎么兜底?

参考回答方向:分几类处理。格式错误用结构化输出约束,比如 JSON Schema 校验,失败后把报错信息回灌给模型让它重试,设置最大重试次数。工具执行失败要区分是参数错还是下游服务错,参数错可以回灌错误让模型修正参数,服务错则返回明确的错误语义让模型决定换工具还是告知用户。另外要给每个工具写清晰的 description 和参数说明,模型调错工具很多时候是描述不清导致的。最后要有超时和熔断,避免一个工具卡死整条链路。

追问三:多轮对话上下文越来越长,token 成本怎么控制?

参考回答方向:几个手段叠加。短期用滑动窗口保留最近 N 轮,长期用摘要压缩,把历史对话定期总结成一段摘要。RAG 场景下检索到的文档要控制条数和长度,rerank 后只保留最相关的几条。系统提示词能精简就精简,工具定义也是 token 大户,工具多的时候可以按意图动态挂载。另外可以做 prompt 缓存,把固定不变的前缀缓存起来,很多模型厂商对缓存命中的 token 计费更低。监控上要按请求打点,统计输入输出 token,找出成本大头。

准备建议

  1. Go 并发和 slice/map 底层要能手画。面试官不满足于背结论,会追问扩容阈值、map 扩容的渐进式 rehash、channel 底层 hchan 结构。建议对着 Go 源码或高质量博客把 slice、map、channel 三块过一遍,能手写并发安全的 map 和带超时控制的 worker pool。
  1. RAG 和 Agent 项目要准备"失败案例"。面试官最爱问"你这个方案有什么问题""线上出过什么 bug"。提前想好 2-3 个真实踩坑,比如检索召回不准、工具调用死循环、上下文超限,以及你当时怎么发现、怎么修的。有量化数据更好,比如 recall 从多少提升到多少。
  1. 八股不要只背结论,要能讲清"为什么"。MySQL 索引失效要能结合 B+ 树结构和最左前缀讲,Redis 缓存三兄弟要能说清各自触发条件和具体方案(布隆过滤器、互斥锁、逻辑过期、随机过期时间)。手撕题建议把 LRU、LFU、Top-K、合并区间这类高频题手写一遍,注意边界和指针操作。

一面整体偏工程实践,八股问得不深但覆盖广,项目深挖占了一半时间。一面通过,三天后约了二面。

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