Shopee 大模型开发 一面
1、自我介绍
2、训练和推理的并行策略
大模型训练和推理常见的并行策略主要有数据并行、张量并行、流水线并行和专家并行。
数据并行是每张卡放一份完整模型,不同卡处理不同 batch,然后通过 All-Reduce 同步梯度。它实现简单,但模型太大时单卡放不下。张量并行是把同一层的权重按列或者按行切到多张卡上,每张卡只算一部分,再做通信聚合,适合单层参数特别大的场景。流水线并行是把不同层分配到不同 GPU 上,让不同 micro-batch 像流水线一样流动,能解决单卡放不下完整模型的问题,但会有流水线气泡。专家并行主要出现在 MoE 结构里,不同 token 路由到不同专家,参数量可以很大,但每次只激活部分专家。
推理阶段除了这些并行方式,还会关注 batch 推理、连续批处理、KV Cache、PagedAttention 这类优化。训练更关注吞吐和显存,推理更关注首 token 延迟、吞吐和显存利用率。
3、了解过一些 RL 训练和推理的库吗
强化学习和大模型对齐这块常见的库有 TRL、DeepSpeed-Chat、OpenRLHF、Ray RLlib、Colossal-AI 相关方案,还有一些团队会自己在 Megatron 或 PyTorch Distributed 上做 PPO 或 DPO 训练。
TRL 是 Hugging Face 生态里比较常见的 RLHF 工具库,支持 SFT、PPO、DPO 这些流程,比较适合快速实验。DeepSpeed-Chat 更偏工程化,适合做大模型对齐训练和分布式加速。OpenRLHF 也是专门做大模型强化学习训练的,和 vLLM 等推理框架结合比较方便。Ray RLlib 是通用强化学习框架,不只面向大模型,但做分布式训练和环境管理比较成熟。
如果是 RL 训练里的推理,一般会把 policy rollout、reward model 打分、reference model 计算 KL 这些环节拆开,训练时往往要同时跑生成和打分,所以推理效率也很重要。
4、讲一下某大模型平台里的 Agent 流程
Agent 的核心不是单纯聊天,而是让模型具备任务分解、工具选择、执行和结果整合能力。一个典型流程是用户输入请求后,系统先做意图识别和安全检查,再把用户问题、系统规则、可用工具描述和上下文一起交给模型。模型先判断当前问题是否需要调用工具,如果不需要就直接返回结果;如果需要,就输出结构化的 tool call,包括工具名和参数。系统执行工具后,把返回结果再送回模型,模型再决定是否继续调用下一个工具,或者组织最终回答。
实际工程里还会加记忆管理、失败重试、超时熔断、权限控制和结果校验。比如查知识库走检索工具,查订单走业务 API,涉及多步推理时会做计划拆解。Agent 真正落地时一般不会完全自由放开,通常是工作流和 Agent 混合架构,这样稳定性会更高。
5、HNSW 怎么实现,底层、插入和检索过程是什么
HNSW 是 Hierarchical Navigable Small World,核心思想是构建一个分层的小世界图。上层节点少、连接稀疏,负责全局快速导航;下层节点多、连接更密,负责局部精细搜索。每个向量会被随机分配一个最大层数,层数越高出现概率越低,所以越往上节点越少。
底层结构上,每个节点存储向量本身、所在层数,以及每一层上的邻居列表。构图时会控制每层最大邻居数 (M),还会有构建时搜索参数 efConstruction,用来在插入时找更优邻居。检索时有 efSearch,控制候选集大小,值越大召回通常越高,但检索更慢。
插入过程一般是先从当前图的最高层入口点开始,贪心往更接近目标向量的节点移动,逐层下降。到了每一层后,先做局部搜索找候选邻居,再按启发式规则挑选邻居建立双向连接。这个启发式不是简单选最近的几个点,还会考虑图结构多样性,避免邻居过度聚集。
检索过程也是从顶层入口开始。高层一般使用贪心搜索,找到一个较好的落点后逐层往下。在最底层会维护一个候选优先队列和结果集合,持续扩展距离更近的节点,直到候选耗尽或满足停止条件。最终返回距离最近的 topK 结果。它高效的根本原因是利用了分层导航和小世界图的近邻可达性,不需要像暴力检索那样扫全库。
6、PPO 里的 KL 散度、
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
本专栏聚焦 AI-Agent 面试高频考点,内容来自真实面试与项目实践。系统覆盖大模型基础、Prompt工程、RAG、Agent架构、工具调用、多Agent协作、记忆机制、评测、安全与部署优化等核心模块。以“原理+场景+实战”为主线,提供高频题解析、标准答题思路与工程落地方法,帮助你高效查漏补缺.
查看9道真题和解析