NiceOffer

面试面经 · 小红书

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

小红书面经大模型开发实习

背景

海外一年制硕士,计算机方向,主攻 NLP 与大模型应用,有一段中小厂大模型平台开发实习。投递小红书大模型开发暑期实习,一周后约面,一面时长 55 分钟。

题目摘要

  1. Go 语言基础:GMP 调度模型、channel 底层结构、内存逃逸分析、sync.Map 与普通 map+mutex 的取舍。
  2. MySQL/Redis 八股:索引失效场景、覆盖索引、事务隔离级别与 MVCC;Redis 持久化机制(RDB/AOF)、缓存穿透与布隆过滤器、分布式锁的 Redlock 实现与缺陷。
  3. 大模型项目深挖:RAG 检索质量优化、Function Calling 的可靠性保障、上下文窗口管理策略、推理成本优化手段。
  4. 手撕算法「合并 K 个升序链表」——要求先讲思路,再写代码,最后分析时间/空间复杂度。

项目深挖

追问 1:你的 RAG 系统在检索阶段如何解决"检索不准"的问题?

参考方向:不要只答"换更好的 embedding 模型"。我会分三层回答——第一层是召回策略,混合检索(BM25 + 向量检索)并用 RRF 融合排序;第二层是查询改写,对原始 query 做意图识别,拆解为多个子查询分别检索后合并;第三层是重排,用 cross-encoder 做精排,取 top-k 送入 LLM。面试官大概率会追问"重排模型的训练数据哪来的",可以回答先用远程监督(LLM 生成相关性标签)构造初版训练集,再结合线上用户点击反馈做迭代。

追问 2:Function Calling 场景下,如何避免模型输出非法 JSON 或调用不存在的函数?

参考方向:两层保障。第一层是约束解码,使用 vLLM 的 guided decoding(基于 JSON Schema 或正则)强制输出合法结构,而不是依赖模型自觉;第二层是容错设计,解析失败时走"兜底流程"——将原始输出包装为自然语言回复,同时记录错误日志用于后续 prompt 优化。另外可以提一下,在系统 prompt 中给足函数说明和 few-shot 示例,并限制 function 数量,减少模型困惑。

追问 3:你提到做了推理成本优化,具体怎么做的?

参考方向:从三个维度说——缓存、蒸馏、调度。缓存层面,对用户 query 做 embedding 相似度匹配,命中缓存直接返回;蒸馏层面,用大模型(如 GPT-4 或 Qwen-Max)离线生成数据,蒸馏到 7B 量级小模型做粗排或意图识别;调度层面,根据请求复杂度动态选择模型大小(简单意图走小模型,复杂推理走大模型),同时利用 prefix caching 复用公共 prompt 前缀。最后补一句,成本优化必须量化,用"单次请求平均成本下降 X%"来证明效果。

手撕算法

题目:合并 K 个升序链表(LeetCode 23)。

关键思路:主流解法是优先队列(最小堆)。初始化时将所有链表的头节点入堆,每次弹出堆顶节点接入结果链尾,若该节点有 next 则继续入堆。时间复杂度 O(N log K),N 为总节点数,空间复杂度 O(K)。面试官可能追问"不用堆怎么做",可以提分治合并(两两归并),时间复杂度相同,但空间复杂度 O(1)(递归栈除外)。代码要一次过,注意边界条件(空链表数组、单节点链表)。

准备建议

  1. 项目深挖必须准备"量化指标"。简历上每个优化点都要能说出"优化前是多少,优化后是多少,怎么测的"。建议提前跑通一个离线评估脚本(如 RAG 的 Recall@K、命中率),没有真实数据就自己造一个 200 条的小型评测集,面试时拿出来非常加分。
  2. Go 语言八股按"底层原理"复习,不要背概念。重点看 GMP 调度、channel 的 sendq/recvq 结构、sync.Pool 的 victim cache 机制,这些是高频考点。如果简历写 Java,就重点看 JVM 内存模型、CMS/G1 收集器、ConcurrentHashMap 的 CAS+synchronized 锁升级。
  3. 手撕算法刷高频题,重点刷"链表、二叉树、滑动窗口、动态规划"四大类,要求做到看题 30 秒内出思路、10 分钟内写完并自测。建议用 LeetCode Hot 100 + 剑指 Offer 覆盖,每道题至少写两遍(一遍裸写,一遍看题解后优化)。

结果反馈

一面通过,约了 3 天后二面(系统设计方向),整体面试风格偏工程落地,对项目细节追问很细,建议重点打磨自己的"技术决策链路"。

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