快手 AI Agent/大模型岗位 - 真实面经网络实录

整理自牛客、脉脉、CSDN等平台的真实面试分享,2024-2025年


面经一:大模型算法工程师(社招)

面试时间: 2024年10月
岗位: 大模型算法工程师 - 推荐与LLM结合方向
结果: 已offer

一面(60分钟)

Q1:自我介绍,讲讲你做过的大模型相关项目

回答思路:介绍了在上家公司做的RAG系统,从数据处理、向量化、检索、重排到生成的完整链路,重点讲了在检索阶段做的混合检索优化。

Q2:合成数据的优缺点是什么?你们项目里用了合成数据吗?

回答思路:

  • 优点:低成本获取大量标注数据、可控制数据分布、覆盖长尾场景
  • 缺点:可能存在分布偏移、质量不可控、"model collapse"风险
  • 项目中用GPT-4生成了部分QA对作为SFT训练数据,通过人工抽检+自动过滤保证质量

Q3:如何评估LLM的效果?人工评估和自动化评估各有什么指标?

回答思路:

  • 人工评估:相关性、流畅性、有害性、事实准确性,常用Likert量表或对比评测
  • 自动评估:BLEU/ROUGE(生成质量)、Perplexity(模型困惑度)、MTBench/AlpacaEval(综合能力)
  • 离线指标(准确率等)vs 在线指标(点击率、停留时长、用户满意度)
  • 强调了LLM-as-Judge的方法及其局限性

Q4:推荐系统和LLM怎么结合?从召回和精排两个阶段说说

回答思路:

  • 召回阶段:用LLM做query理解和改写、利用LLM的embedding做语义召回、知识增强的协同过滤
  • 精排阶段:LLM做用户兴趣建模、特征交叉的语义增强、LLM生成推荐理由辅助精排打分
  • 提到了快手在短视频推荐中可能的应用场景

Q5:算法题 - 最长回文子串(LeetCode 5)

回答思路:中心扩展法,O(n²)时间复杂度,分奇偶两种情况讨论。面试官追问了Manacher算法的思路。

二面(50分钟)

Q1:讲讲你对RAG系统的理解,你们的RAG系统是怎么做的?

回答思路:详细讲了文档解析→分块→向量化→索引构建→检索→重排→生成的完整流程,重点讲了在分块策略上做的优化(语义分块vs固定长度分块)。

Q2:RAG召回不准怎么优化?

回答思路:

  1. 查询改写/扩展(Query Rewriting)
  2. 混合检索(BM25 + Dense Retrieval)
  3. 多路召回+重排序(Cross-Encoder Reranker)
  4. 知识图谱增强检索
  5. 优化分块策略(递归分块、父文档检索)
  6. 元数据过滤

Q3:SFT的核心流程是什么?数据集怎么构建?

回答思路:

  • 流程:数据准备→格式化(instruction/input/output)→选择基座模型→设置超参→训练→评估
  • 数据构建:人工标注+合成数据+开源数据集,强调数据质量>数据量,多样性很重要
  • 提到了数据去重、去毒、难度分级等数据清洗步骤

Q4:PPO和DPO的区别?各自的优缺点?

回答思路:

  • PPO需要Reward Model + Critic Model,训练流程复杂但效果天花板更高
  • DPO直接从偏好对学习,不需要额外RM,更简单高效
  • DPO通过重参数化技巧把RM目标转化为策略优化
  • 讨论了GRPO(DeepSeek用的)作为两者的折中方案

Q5:快手的短视频场景下,你觉得大模型能怎么用?

回答思路:视频理解(多模态LLM做内容分析)、智能创作助手、个性化推荐增强、智能客服、内容审核辅助等。

三面(40分钟,主管面)

Q1:你为什么想来快手?对快手AI团队有什么了解?

回答思路:讲了对快手在推荐系统和AIGC方面的技术积累的认可,提到了快手的可灵大模型等产品。

Q2:你觉得当前大模型应用落地最大的挑战是什么?

回答思路:成本(推理成本高)、延迟(用户体验)、幻觉(准确性)、安全(内容合规)、评估(缺乏标准化评估体系)。

Q3:你对未来3年的职业规划是什么?

回答思路:短期深耕大模型应用开发,中期拓展到多模态和Agent系统设计,长期希望能带领团队。

面试体验: 整体体验很好,面试官都很专业,会顺着你的回答深挖。二面比一面更注重项目细节和系统设计能力。建议重点准备RAG和推荐系统结合LLM的方案。


面经二:AI Agent开发工程师(校招)

面试时间: 2025年1月
岗位: AI Agent开发工程师
结果: 二面挂

一面(70分钟)

Q1:全程围绕AI Agent展开。先说说你理解的AI Agent是什么?

回答思路:具备感知、规划、决策、执行和记忆能力的自主AI系统。区别于传统chatbot的核心在于自主性和工具使用能力。列举了ReAct、Plan-and-Execute、Multi-Agent等常见范式。

Q2:你的项目中长期记忆是怎么实现的?

回答思路:

  • 使用向量数据库(Milvus)存储历史对话的embedding
  • 实体记忆:从对话中抽取实体关系存入知识图谱
  • 摘要记忆:定期对历史对话做摘要压缩
  • 检索时结合时间衰减因子和相关性得分

Q3:Agent在多轮对话中,Attention机制有什么局限性?

回答思路:

  • 上下文窗口有限,长对话会超出限制
  • 注意力分散,关键信息可能被淹没
  • 位置偏差(lost-in-the-middle问题)
  • 解决方案:滑动窗口、摘要压缩、重要信息前置

Q4:Modular Agent中的多步规划与调度策略怎么设计?

回答思路:

  • 规划:将复杂任务分解为子任务DAG图
  • 调度:拓扑排序确定执行顺序,可并行的步骤并发执行
  • 动态调整:执行过程中根据中间结果re-plan
  • 错误恢复:重试、回退、人工介入三级策略

Q5:Agent评估体系怎么设计?如何量化Planning能力和Hallucination Rate?

回答思路:

  • Planning评估:任务完成率、步骤效率(vs最优路径)、工具选择准确率
  • Hallucination Rate:事实核查(对比知识库)、自洽性检查、人工抽样评估
  • 整体评估:端到端任务成功率、用户满意度、响应延迟、token消耗成本

Q6:RoPE位置编码的原理?它解决了什么问题?

回答思路:

  • 旋转位置编码,通过在复数空间对Q/K做旋转来编码相对位置信息
  • 相比绝对位置编码,RoPE能更好地捕捉相对位置关系
  • 具有外推性,理论上支持任意长度序列
  • 详细推导了旋转矩阵的构造

Q7:算法题 - 二叉树的最近公共祖先(LeetCode 236)

回答思路:递归解法,O(n)时间复杂度。面试官追问了如果是BST的情况怎么优化。

二面(60分钟)

Q1:详细讲讲你的Agent项目架构

回答思路:画了完整的架构图,从用户输入→意图识别→任务规划→工具调用→结果整合→输出的完整流程。讲了使用LangGraph做工作流编排的细节。

Q2:Qwen模型微调的经验?训练阶段是怎么设计的?Loss Function怎么确定?

回答思路:

  • 用Qwen-7B做基座,用LoRA微调
  • 两阶段训练:先SFT做指令跟随,再用DPO做偏好对齐
  • SFT用标准的next-token-prediction交叉熵损失
  • DPO用Bradley-Terry模型的偏好损失
  • 讲了一些训练trick:学习率warmup、梯度累积、混合精度

Q3:Prompt优化策略有哪些?如何压缩Prompt?

回答思路:

  • 结构化Prompt(角色/任务/约束/示例)
  • Few-shot选择优化(相似度检索最相关的示例)
  • Prompt压缩:LLMLingua、删除冗余token、用摘要替代原文
  • Embedding层面的Prompt Tuning(P-Tuning v2)

Q4:系统延迟优化怎么做?

回答思路:

  • 模型层面:量化(INT8/INT4)、KV Cache优化、投机解码
  • 系统层面:异步处理、流式输出、并行工具调用
  • 架构层面:语义缓存、路由到不同大小模型、预计算

Q5:设计一个短视频平台的智能客服Agent

回答思路:设计了多Agent协作架构,包括意图识别Agent、知识检索Agent、工单处理Agent、情感分析Agent,用Router Agent做分发。讲了如何处理复杂查询和多轮对话。

面试体验: 面试非常硬核,全程围绕Agent深挖。一面偏理论,二面偏工程实践和系统设计。挂在二面,反馈是系统设计经验不够。建议多准备Agent的完整项目经验,不只是用过框架,要能从0到1设计系统。


面经三:大模型LLM方向(实习)

面试时间: 2025年3月
岗位: 大模型算法实习生
结果: 进入终面

一面(50分钟)

Q1:介绍一下你对Attention机制的理解,QKV变换的作用是什么?

回答思路:

  • Q(Query)代表查询、K(Key)代表键、V(Value)代表值
  • QKV通过线性变换将输入投影到不同子空间
  • Q·K^T计算相似度,Softmax归一化后加权V
  • Scaling(除以√d_k)防止点积过大导致梯度消失

Q2:Multi-Head Attention有什么问题?有什么改进方案?

回答思路:

  • 问题:计算量大(头数×注意力计算)、KV Cache显存占用大
  • MQA(Multi-Query Attention):所有头共享K/V
  • GQA(Grouped-Query Attention):分组共享K/V,MHA和MQA的折中
  • MLA(Multi-head Latent Attention):DeepSeek V2提出的低秩压缩方案

Q3:长文本处理有什么策略?

回答思路:

  • 位置编码外推(YaRN、NTK-aware)
  • 滑动窗口注意力
  • 分块处理+摘要
  • RAG方式:检索相关片段而非全文输入
  • 层次化注意力(Longformer/BigBird的稀疏注意力)

Q4:记忆系统中的意图识别怎么做?

回答思路:

  • 分类器做意图分类(预定义意图集)
  • LLM做开放域意图理解(few-shot prompting)
  • 结合上下文的多轮意图跟踪
  • 意图消歧:当识别到多个可能意图时让用户确认

Q5:Embedding维度怎么选择?Qwen-4B的Embedding是怎么实现的?

回答思路:

  • 维度选择取决于任务复杂度、模型大小、计算资源
  • 一般768/1024/2048/4096
  • Qwen-4B使用Tied Embedding(输入输出共享)
  • 讨论了维度和性能的trade-off

Q6:算法题 - 合并K个有序链表(LeetCode 23)

回答思路:用最小堆,O(NlogK)时间复杂度。面试官追问了分治法的解法。

二面(55分钟)

Q1:Qwen-34B做Rerank是怎么做的?

回答思路:

  • 把query和document拼接作为输入,让模型输出相关性得分
  • Cross-Encoder方式,比Bi-Encoder更准确但更慢
  • 用LoRA微调Qwen-34B作为Reranker
  • 训练数据:正负样本对,用交叉熵或margin loss

Q2:SFT后的Post-Training技术有哪些?

回答思路:

  • RLHF/DPO/GRPO做偏好对齐
  • Self-Play(让模型自我博弈提升)
  • Rejection Sampling
  • Constitutional AI
  • 知识蒸馏(大模型→小模型)

Q3:项目深挖 - 你的RAG系统中,检索和生成的评估分别怎么做?

回答思路:

  • 检索评估:Recall@K、MRR、NDCG
  • 生成评估:Faithfulness(答案是否忠于检索内容)、Relevance(是否回答了问题)
  • 端到端评估:用RAGAS框架,覆盖Context Precision/Recall、Answer Relevance、Faithfulness
  • 人工评估:定期抽样评测

Q4:MoE模型的原理?专家负载均衡怎么做?

回答思路:

  • 多个Expert FFN + Router网络
  • 每次只激活top-k个Expert(如2/8)
  • 负载均衡loss:辅助损失函数惩罚不均匀分配
  • Expert坍缩问题:部分专家从不被选中

Q5:算法题 - LRU Cache(LeetCode 146)

回答思路:HashMap + 双向链表,O(1)的get/put操作。

面试体验: 快手LLM方向面试涵盖面很广,从底层Attention到上层应用都会考。面试官人很好,会引导你思考。建议熟悉至少一个开源大模型的架构细节(Qwen/LLaMA/DeepSeek),能说出具体的实现细节会加分很多。


面经四:大模型应用开发(社招)

面试时间: 2024年12月
岗位: AI应用开发工程师
结果: 已offer

一面(55分钟)

Q1:RAG系统的评估你怎么做?评测维度和指标有哪些?

回答思路:

  • 维度:检索质量、生成质量、端到端效果
  • 检索指标:Hit Rate、MRR、Recall@K
  • 生成指标:BLEU、ROUGE、BERTScore、人工评分
  • 端到端:任务完成率、用户满意度
  • 用RAGAS和LlamaIndex的评估模块做自动化评测

Q2:幻觉问题怎么解决?

回答思路:

  • 检索增强(RAG引入外部知识做事实基座)
  • 思维链推理(CoT让模型展示推理过程)
  • 自我一致性(多次采样取多数一致的答案)
  • 输出校验Agent(生成后做事实核查)
  • 微调高质量数据、降低temperature

Q3:你有微调经验吗?用的什么框架?

回答思路:

  • 用LLaMA Factory做LoRA微调
  • 数据准备:Alpaca格式,大约5000条高质量QA
  • 训练配置:rank=16, alpha=32, 3个epoch
  • 评估:在holdout测试集上用GPT-4做评判
  • 讲了遇到的问题:学习率过大导致loss震荡,解决方案是cosine scheduler

Q4:大模型部署你了解多少?

回答思路:

  • vLLM做推理引擎,支持Continuous Batching和PagedAttention
  • 量化:GPTQ/AWQ做INT4量化减少显存
  • 服务化:FastAPI + 流式输出(SSE)
  • 监控:Prometheus + Grafana看QPS、延迟、GPU利用率

Q5:算法题 - 岛屿数量(LeetCode 200)

回答思路:BFS/DFS遍历,标记已访问。选了DFS实现。

二面(45分钟)

Q1:你觉得大模型应用开发中最难的部分是什么?

回答思路:不是技术本身,而是如何在成本、延迟、效果之间取得平衡。举了具体项目中的例子:用小模型做简单query路由,复杂query才走大模型。

Q2:如何设计一个快手电商场景的AI客服系统?

回答思路:

  • 意图识别→知识检索→回答生成→安全审核
  • 多轮对话管理:状态机+LLM结合
  • 知识库:商品信息、售后政策、常见问题
  • 转人工策略:情感检测到愤怒/复杂问题自动升级
  • SLA保证:p99延迟<2s,准确率>95%

Q3:技术方案选型 - 你怎么决定用RAG还是微调?

回答思路:

  • RAG:知识频繁更新、需要可溯源、数据量有限
  • 微调:需要特定风格/格式、推理时不想额外检索开销、任务相对固定
  • 混合方案:先微调提升基础能力,再用RAG补充实时知识

面试体验: 快手应用开发岗位不会考太深的模型底层原理,更看重工程能力和系统设计。如果你有完整的RAG或Agent项目经验,一定要能讲清楚数据怎么来的、评测怎么做的、线上效果如何。快手面试效率很高,基本一周内出结果。


面经五:大模型评测工程师(校招)

面试时间: 2024年9月
岗位: 大模型评测
结果: 一面挂

一面(40分钟)

Q1:如何设计一套LLM评测指标体系?

回答思路:这道题比较开放,没给具体场景。我从通用能力评测和领域能力评测两个维度展开:

  • 通用:语言理解、生成质量、推理能力、知识覆盖度
  • 领域:任务完成率、专业知识准确率
  • 安全性:毒性、偏见、隐私泄露检测
  • 效率:延迟、吞吐、成本 面试官追问了具体怎么量化"推理能力",我回答用GSM8K、MATH等benchmark。

Q2:自动评估和人工评估各有什么优缺点?

回答思路:

  • 自动评估:可复现、低成本、大规模,但可能与人类偏好不一致
  • 人工评估:更贴近真实需求,但成本高、主观性强、难以大规模
  • 折中方案:LLM-as-Judge(用GPT-4做评判)+人工抽检

Q3:BPE分词原理

回答思路:贪心地合并高频字符对,直到达到目标词表大小。和WordPiece的区别在于合并策略(频率 vs 似然)。

Q4:算法题 - 有效括号(LeetCode 20)

回答思路:栈匹配,O(n)。

面试体验: 评测岗面试偏宏观设计能力,面试官期望你能独立设计评测方案而不是等他给场景。我的回答太套路化了,没有展现独立思考。建议准备这类岗位时,多想想"如果你是负责人,怎么从0建评测体系"。


面经六:AI Agent 开发(2026 新增公开来源)

来源:小红书公开页面;以下为摘要索引,完整内容请查看来源链接。

来源 标题 核心考点
小红书 快手AI Agent开发一面(小红书站内搜索原标题) 父子索引、BM25、Rerank、Memory、Function Calling、Prompt 注入防御、RAG 评测
小红书 快手AI Agent开发实习生面经2026.6.12(小红书站内搜索原标题) Agent 基础、ReAct、多模型 API、单/多 Agent、RAG 优化、算法题
小红书 快手 AI Agent研发实习 日常实习 一面(小红书站内搜索原标题) Agent 研发实习一面、项目和 RAG 追问
牛客 快手 AI 全栈开发二面凉经(Agent 应用方向,2026-09) Agent 项目深挖、Skill、Tool Use、全栈工程和端到端交付
牛客 快手 AI 应用开发 / Agent 开发一面(2026-09) AI Coding 质量、工具结果缓存、长期偏好、敏感信息保护、并发基础
牛客 快手 Data Agent 开发一面(2026-06) LLM 与 Agent 边界、ReAct、Agent 框架模块设计、项目深挖

2026 高频追问

  1. 为什么引入父子索引和 BM25?如何与 dense retrieval 融合?

  2. Rerank TopK 如何截断?截断策略如何影响延迟和准确率?

  3. 工具调用如何做安全控制,如何防 Prompt 注入?

  4. 如何统一 OpenAI / Anthropic / Gemini 等多模型 API?

  5. 为什么不用 Milvus 或 Elasticsearch?向量库选型如何解释?

  6. Skill 开发和完整 Agent 工程的边界是什么?只写 Prompt 为什么不等于完成了 Agent?

  7. 如何证明 Agent 项目真正上线:任务成功率、首次成功率、延迟、成本和人工接管率分别是多少?

  8. Tool 返回结果是否应该缓存?如何设计缓存键、TTL、权限隔离和数据更新策略?

  9. 长期用户偏好应保存在 Prompt、Memory、关系数据库还是向量库?敏感字段如何脱敏和删除?


总结与建议

快手面试特点

  1. 非常重视项目经验:会深挖项目细节,不只是用了什么框架,而是为什么这么做

  2. Agent方向是重点:2025年Agent开发是快手招聘热点

  3. 实践>八股:面试官更看重你是否真的动手做过微调、部署

  4. 场景设计题常见:会结合快手业务出开放性设计题

  5. 算法题中等难度:LeetCode Easy~Medium为主

准备建议

  1. 至少有一个完整的RAG或Agent项目,能讲清楚每个环节

  2. 了解快手的业务场景(短视频、直播、电商),想想大模型能怎么结合

  3. 重点准备RAG评估、微调实践、Agent设计等热门方向

  4. 算法题不用刷太难的,Medium级别刷够100题就够了

  5. 关注最新的开源大模型(Qwen、DeepSeek)的架构和使用经验