蚂蚁集团 AI Agent/大模型岗位 - 真实面经网络实录

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


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

面试时间: 2024年11月
岗位: 大模型算法工程师 - 智能金融方向
结果: 已offer

一面(65分钟)

Q1:自我介绍,然后详细讲讲你最熟悉的一个大模型项目

回答思路:介绍了在前公司做的金融领域RAG问答系统。从需求分析、数据处理、检索方案设计到模型微调的完整过程,重点讲了如何处理金融文档的表格解析和数字准确性问题。

Q2:RAG项目的亮点在哪里?如果召回不准怎么优化?

回答思路:

  • 亮点:设计了混合检索策略(BM25+Dense),引入了金融实体识别做query增强
  • 召回不准的优化:
    1. Query Rewriting:让LLM重写用户查询
    2. HyDE:先生成假答案再检索
    3. 多路召回融合+Reranker重排
    4. 增加元数据过滤(日期、文档类型)
    5. 优化chunking策略:按段落语义切分

Q3:BM25算法原理讲一下

回答思路:

  • 基于TF-IDF的改进,考虑了词频饱和和文档长度归一化
  • 公式:BM25(D,Q) = Σ IDF(qi) × (f(qi,D) × (k1+1)) / (f(qi,D) + k1 × (1-b+b×|D|/avgdl))
  • k1控制词频饱和度(常设1.2-2.0),b控制文档长度惩罚(常设0.75)
  • 面试官追问了IDF的计算方式和为什么要做长度归一化

Q4:讲一下MHA、MQA、GQA的区别

回答思路:

  • MHA:每个头都有独立的Q/K/V投影矩阵
  • MQA:所有头共享同一组K/V,只有Q是独立的→KV Cache大幅减少
  • GQA:将头分成若干组,组内共享K/V→MHA和MQA的折中
  • LLaMA2用GQA,Qwen2也用GQA

Q5:Dense模型和MoE模型的区别?MoE的路由机制怎么做?

回答思路:

  • Dense:所有参数都参与每次推理,计算量固定
  • MoE:多个Expert,Router选择top-k个Expert激活→总参数大但激活参数少
  • 路由机制:Router是一个可学习的线性层,输出各Expert的概率分布
  • 常见路由:Top-K选择、Switch Transformer的Top-1路由
  • 负载均衡问题:加auxiliary loss惩罚不均匀分配

Q6:代码题 - 三数之和(LeetCode 15)

回答思路:排序+双指针,O(n²)。注意去重逻辑。

二面(55分钟)

Q1:LoRA微调的原理详细讲一下,A和B矩阵怎么初始化?

回答思路:

  • 原理:冻结预训练权重W,添加低秩分解 W' = W + BA
  • B矩阵用零初始化,A矩阵用正态/Kaiming初始化
  • 这样初始化保证训练开始时ΔW = BA = 0,不改变原模型行为
  • 秩r的选择:一般4-64,实际项目中设r=16效果就不错
  • alpha/r是scaling factor,控制LoRA更新的幅度

Q2:SFT和RL分别什么场景下用?

回答思路:

  • SFT:需要模型学会特定格式/风格/指令跟随时用,对数据质量要求高
  • RL(RLHF/DPO):需要让模型输出更符合人类偏好、更安全时用
  • 先SFT再RL是标准流程(InstructGPT的做法)
  • 纯SFT也能做到不错的效果,如果数据质量够高的话

Q3:DPO、PPO、GRPO的原理和区别,写一下DPO的loss函数

回答思路:

  • PPO:需要Reward Model + Critic,用策略梯度优化,加KL约束防止偏离参考策略太远
  • DPO:直接从偏好对学习,loss = -E[log σ(β(log π(yw)/πref(yw) - log π(yl)/πref(yl)))]
  • GRPO:DeepSeek提出,不需要Critic Model,用组内相对奖励做优势估计
  • PPO最强但最复杂,DPO最简单但可能次优,GRPO是工程友好的折中

Q4:SFT的数据是越大越好吗?有Scaling Law吗?

回答思路:

  • 不是越大越好。SFT数据质量远比数量重要
  • LIMA论文证明1000条高质量数据就能达到很好效果
  • SFT的Scaling Law不像预训练那么明显
  • 数据多但质量差反而会引入噪声,导致能力退化
  • 关键是数据的多样性、难度分布、质量控制

Q5:微调出现灾难性遗忘怎么办?

回答思路:

  • 训练策略:降低学习率、减少训练epoch、使用LoRA等参数高效方法
  • 数据策略:混入一定比例的通用数据(replay buffer)
  • 正则化:EWC(弹性权重巩固)、L2正则
  • 架构策略:用LoRA/Adapter只更新少量参数,基座不动

三面(40分钟,总监面)

Q1:你应聘这个岗位的优势和劣势是什么?

回答思路:优势是有完整的RAG系统从0到1的经验,劣势是在大模型预训练方面实践较少。

Q2:你觉得应该从哪些方面评判一个大模型的好坏?

回答思路:

  • 能力维度:语言理解、生成、推理、知识、多轮对话
  • 效率维度:推理速度、成本、部署难度
  • 安全维度:幻觉率、有害输出、隐私保护
  • 生态维度:社区活跃度、工具链完善度

Q3:最近5年的职业规划

回答思路:1-2年深耕LLM应用开发,3年开始在Agent方向做技术探索,5年目标是成为AI架构师。

面试体验: 蚂蚁面试非常注重基础理论的深度。面试官会一直追问细节,直到你说不出来为止。特别是LoRA、DPO这些热门技术,一定要能讲清楚数学公式和工程实现。项目经验要准备得非常细致,每个技术选型都要能说出原因。


面经二:AI Agent平台工程师(社招)

面试时间: 2025年2月
岗位: AI Agent平台工程师 - 支付宝智能助手方向
结果: 三面挂

一面(60分钟)

Q1:讲讲你对AI Agent的理解,支付宝上的Agent应该具备什么能力?

回答思路:

  • Agent = LLM + 规划 + 工具调用 + 记忆 + 反思
  • 支付宝场景:理解用户金融意图、操作账户功能(转账/理财等)、信息查询、风控安全
  • 关键挑战:金融场景对准确性和安全性要求极高,容错率低

Q2:Function Calling是怎么实现的?

回答思路:

  • 在System Prompt中定义可用函数的schema(名称、参数、描述)
  • LLM根据用户输入判断是否需要调用函数,输出结构化的函数调用请求
  • 执行引擎解析调用请求,执行对应API
  • 将执行结果回传给LLM做最终回答生成
  • 训练层面:SFT数据中包含工具调用样本

Q3:多Agent协作你怎么设计?

回答思路:

  • 架构模式:中心化(Orchestrator Agent管理其他Agent)vs 去中心化(Agent间直接通信)
  • 通信协议:消息传递、共享记忆、黑板模式
  • 任务分配:Router Agent根据意图分发、基于能力描述匹配
  • 冲突解决:优先级机制、投票机制、仲裁Agent

Q4:vLLM中的PagedAttention你了解吗?

回答思路:

  • 灵感来自操作系统的虚拟内存分页
  • 将KV Cache按固定大小的block管理,不连续存储
  • 解决了KV Cache预分配导致的显存浪费问题
  • 支持动态分配/释放,提升显存利用率
  • Continuous Batching进一步提升吞吐

Q5:算法题 - 柱状图中的最大矩形(LeetCode 84)

回答思路:单调栈解法,O(n)。这题有点难度,写了大约20分钟。

二面(55分钟)

Q1:项目深挖 - 你的Agent系统中,记忆冲突怎么处理?

回答思路:

  • 时间优先:新记忆覆盖旧记忆
  • 来源可信度:不同来源的记忆赋予不同权重
  • 版本管理:保留记忆历史,支持回溯
  • 主动确认:当检测到矛盾时,向用户确认

Q2:RAG和Fine-tuning怎么选?什么时候用哪个?

回答思路:

  • RAG:知识实时性要求高、需要溯源、知识量大且频繁更新
  • Fine-tuning:需要特定行为模式、格式要求、推理时不想有检索延迟
  • 在金融场景下,通常两者结合:微调模型学会金融术语和格式,RAG提供最新的政策法规

Q3:检索器和Reranker的分数太相近,不可靠怎么解决?

回答思路:

  • 增加负样本的多样性和难度(hard negative mining)
  • 用更强的Reranker模型(Cross-Encoder > Bi-Encoder)
  • 添加特征融合:结合BM25分数、向量相似度、元数据匹配等多路信号
  • 设置分数阈值,低于阈值的结果不返回
  • 引入LLM做最终判断(LLM-as-Judge)

Q4:蚂蚁的业务场景中,Agent的安全性怎么保障?

回答思路:

  • 输入安全:Prompt注入检测、内容审核
  • 输出安全:敏感信息过滤、金融合规检查
  • 操作安全:高风险操作需二次确认、权限控制
  • 系统安全:速率限制、审计日志、异常检测
  • 红队测试:定期做对抗测试

Q5:如何用修改损失函数来解决MoE的负载均衡问题?

回答思路:

  • 在原始loss基础上加auxiliary load balancing loss
  • L_aux = α × N × Σ(fi × Pi),其中fi是expert被选中的频率,Pi是router分配的概率
  • 这个loss鼓励所有expert被均匀使用
  • Switch Transformer中的具体实现:α通常设0.01

三面(45分钟,VP面)

Q1:你怎么看AI Agent在金融领域的未来发展?

回答思路:从自动化流程、智能投顾、风控、客服四个方向展开,强调了合规和安全是金融Agent的核心挑战。

Q2:如果让你从0开始搭建蚂蚁的Agent平台,你会怎么做?

回答思路:

  • 基础层:LLM推理服务、向量数据库、工具注册中心
  • 编排层:工作流引擎、多Agent调度、记忆管理
  • 应用层:对话管理、意图路由、输出安全审核
  • 运维层:监控、评估、A/B测试、灰度发布

Q3:你有什么想问我的?

回答思路:问了团队规模、技术栈选择、以及Agent平台的当前进展。

面试体验: 蚂蚁的面试很有深度,三面VP面偏战略视野。挂在三面,反馈是"技术能力满足要求,但对金融业务理解不够深入"。建议如果面蚂蚁金融方向,一定要提前研究支付宝的AI功能和金融监管政策。


面经三:大模型推理优化(校招)

面试时间: 2024年8月
岗位: 大模型算法工程师 - 推理加速方向
结果: 已offer

一面(50分钟)

Q1:KV Cache是什么?为什么需要KV Cache?

回答思路:

  • 自回归生成中,每一步都要重新计算所有token的attention
  • KV Cache缓存已计算过的K和V矩阵,避免重复计算
  • 显存占用 = 2 × num_layers × num_heads × head_dim × seq_len × batch_size × precision
  • 长序列时KV Cache会占用大量显存

Q2:KV Cache压缩有哪些方法?

回答思路:

  • GQA/MQA:减少KV头数
  • 量化:将KV Cache量化到INT8/INT4
  • 驱逐策略:丢弃不重要的KV(H2O、StreamingLLM)
  • 低秩压缩:MLA(Multi-head Latent Attention)
  • 窗口化:只保留最近N个token的KV

Q3:DeepSpeed你了解吗?ZeRO优化的三个阶段?

回答思路:

  • ZeRO-1:优化器状态分片
  • ZeRO-2:优化器状态+梯度分片
  • ZeRO-3:优化器状态+梯度+参数都分片
  • 每个阶段逐步减少单卡显存占用
  • DeepSpeed还有Offload功能,可以把数据放到CPU内存

Q4:Pre-norm和Post-norm的区别?为什么现在主流用Pre-norm?

回答思路:

  • Post-norm:残差连接后做LayerNorm(原始Transformer)
  • Pre-norm:残差连接前做LayerNorm(LLaMA等现代模型用)
  • Pre-norm训练更稳定,不需要warmup
  • 但Post-norm在最终性能上可能略优
  • 面试官纠正:其实现在大模型主流用的是Pre-norm(RMSNorm)

Q5:算法题 - 接雨水(LeetCode 42)

回答思路:双指针法,O(n)时间O(1)空间。

二面(50分钟)

Q1:FlashAttention的原理?

回答思路:

  • 核心思想:利用GPU内存层次结构(HBM vs SRAM)
  • 将Q/K/V分块(tiling),在SRAM中完成attention计算
  • 避免将完整的attention矩阵写入HBM
  • IO复杂度从O(N²)降低到O(N²/M),M是SRAM大小
  • FlashAttention-2进一步优化了并行策略

Q2:投机解码(Speculative Decoding)了解吗?

回答思路:

  • 用一个小模型(draft model)快速生成多个候选token
  • 用大模型(target model)并行验证
  • 接受率高时能显著提速,因为验证是并行的
  • 关键:小模型和大模型的分布要足够接近

Q3:如果在多卡GPU上训练一个70B的模型,你怎么设计训练策略?

回答思路:

  • 3D并行:张量并行(TP within node)+ 流水线并行(PP across nodes)+ 数据并行(DP)
  • 具体配置示例:8×A100 80GB,TP=4, PP=2, DP=1
  • 混合精度:BF16训练,FP32 master weights
  • 梯度检查点(gradient checkpointing)减少显存
  • 通信优化:NCCL、overlap computation和communication

Q4:你在项目中遇到过什么推理优化的挑战?

回答思路:讲了一个具体案例 - 将7B模型的首token延迟从500ms优化到200ms。通过KV Cache量化+FlashAttention+Continuous Batching实现。

面试体验: 蚂蚁推理优化方向面试偏底层,需要对GPU架构、内存层次、并行训练有深入了解。如果你做过实际的推理优化工作,一定要准备具体的性能数据(延迟、吞吐等),面试官很看重可量化的结果。


面经四:反洗钱算法工程师 + 大模型(社招)

面试时间: 2025年1月
岗位: 反洗钱算法工程师(需结合大模型)
结果: 二面中

一面(55分钟)

Q1:介绍一下GBDT算法原理

回答思路:

  • 梯度提升决策树,通过boosting方式串行训练多棵树
  • 每棵新树拟合前面所有树的残差(梯度)
  • 支持回归和分类任务
  • 与XGBoost的区别:XGBoost加了正则化项、支持并行、缺失值处理

Q2:如何将大模型应用到反洗钱场景?

回答思路:

  • 交易描述理解:用LLM分析交易备注、用户行为描述
  • 报告生成:自动生成可疑交易报告
  • 知识图谱增强:结合企业关系图谱做链路分析
  • Agent化:设计调查Agent,自动从多数据源收集线索

Q3:Transformer的self-attention和cross-attention区别?

回答思路:

  • self-attention:Q、K、V来自同一序列
  • cross-attention:Q来自decoder,K、V来自encoder(或外部信息)
  • 典型应用:Encoder-Decoder模型中decoder对encoder输出的attention

Q4:如何用Python实现简单的HMM?

回答思路:手写了前向算法的核心逻辑,讲了状态转移矩阵、发射矩阵、初始状态概率的含义。

Q5:代码题 - 最长递增子序列(LeetCode 300)

回答思路:先讲了O(n²)DP解法,面试官追问O(nlogn)的二分+贪心解法。

面试体验: 蚂蚁反洗钱方向比较特殊,需要传统ML+大模型两手都硬。面试会考GNN、HMM这些传统算法,同时也要了解大模型在安全合规领域的应用。适合有安全/金融背景+大模型经验的人。


面经五:智能体与大模型应用(2026 新增公开来源)

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

来源 标题 核心考点
牛客 5月20日,蚂蚁智能体与大模型应用 一面 幻觉治理、fine-tuning、Skills、Spring AI、Claude Code、混合检索
牛客 蚂蚁秋招时间线+面经 RAG vs Fine-tuning、rerank、NDCG、Agent 评测、Memory、MCP、A2A
牛客 蚂蚁 智能体与大模型应用实习 一面面经 Agent 价值、AI 前沿技术、Skill 实践、项目深挖

2026 高频追问

  1. Agent 到底解决什么问题?为什么不能直接用大模型或普通 workflow?

  2. 金融/支付场景中如何降低幻觉并保证可追溯?

  3. RAG 和微调如何取舍?何时使用 rerank、NDCG、RAGAS 等评估指标?

  4. MCP、A2A、Skill 在企业应用里分别负责什么边界?

  5. Spring AI / Claude Code / AI Coding 经验如何落到真实项目效率提升?


总结与建议

蚂蚁集团面试特点

  1. 理论深度要求高:每个技术点都会追问到底层原理和数学推导

  2. 项目要有"亮点":面试官明确会问"你的项目有什么新颖之处"

  3. 微调知识必考:LoRA、DPO、PPO的原理和实现是高频考点

  4. 金融场景理解:面金融方向需要了解合规、安全、风控等业务知识

  5. 算法题偏难:柱状图最大矩形、接雨水这种Hard级别也会出

准备建议

  1. 能写出LoRA和DPO的数学公式,并解释每一项的含义

  2. 项目经验要有量化结果(提升了多少、优化了多少延迟)

  3. 了解蚂蚁的技术栈和产品线(支付宝、OceanBase、蚂蚁百灵等)

  4. 如果面推理优化方向,要了解FlashAttention、PagedAttention的原理

  5. 准备好Hard级别的算法题,蚂蚁出题难度偏高