蚂蚁国际社招一面(AI方向)
段段投简历之前也没想到啊,猎头推荐的职位,居然是专家岗,后来想想就当攒面经了,咱也见识见识专家岗面试到底咋样,由于最开始忘了录音的事,所以没录上,最开始就是问了一些基础的东西。
话说回来,给这么多money,我感觉这钱纯纯拿命换啊。
话不多说,上链接!啊不对,上面经。
从面试问题来看,这一轮非常侧重于后端基础开发(Go/MySQL/Redis)以及大模型项目(特别是 RAG 检索增强生成)的工程落地细节。(段段的Go都是在公司硬着头皮上,然后带着学的,面试突击了一下)
一、 大模型工程化与 RAG 落地
- Q1:商机智能体项目的背景与你的核心职责是什么? 回答: 介绍了项目目标是为了提升商家的客服效率与销售线索转化率。核心职责是使用 Java语言负责后端业务逻辑开发、Prompt 调试以及大模型的链路编排。为了系统轻量化和易于排查问题,团队放弃了臃肿的 LangChain,而是手写了基于 DAG 图的路由和任务调度逻辑。
- Q2:你们是如何优化知识库检索(RAG)准确率的? 回答: 三步解答:第一步是优化文档的预处理,按照段落和语义进行精细化切片。第二步是采用多路召回策略,将向量检索与 ElasticSearch 的关键词检索结合起来互相兜底。第三步是引入了轻量级的 Rerank 模型,对召回的结果进行二次打分重排,从而保证喂给大模型的上下文是最相关的。
- Q3:针对大模型响应慢的问题,系统耗时层面做了哪些优化? 回答: 你提到在前端展示上采用了 SSE 流式输出来提升用户的体感响应速度。在后端工程上做了两个核心动作:一是自建了“语义缓存”,利用 Redis 配合轻量级向量计算,如果遇到高频且相似度极高的问题,直接查缓存返回,跳过大模型调用(这块非常重要,大模型和策略map结合,最大化效率);二是利用 Go 语言 Goroutine 的特性,对那些不依赖上下文的外部 API(比如查询订单状态)进行了高并发请求处理,缩短了整体链路耗时。
二、 Go 语言与数据库基础核心
- Q4:Go 语言原生的 Map 是并发安全的吗?在项目中如何解决并发读写问题? 回答: Go 的原生 Map 并非并发安全,如果发生并发读写冲突会直接导致程序 panic。我给出的解决方案是根据场景使用 sync.Mutex 或 sync.RWMutex 进行加锁,或者在特定高并发场景下直接使用标准库提供的 sync.Map。
- Q5:平时开发中,MySQL 的慢查询你们是如何排查和优化的? 回答: 标准且实战的排查链路:首先定位慢查询日志,然后使用 EXPLAIN 关键字分析 SQL 的执行计划,重点关注 type 字段(检查是否发生全表扫描 ALL)以及是否出现了耗性能的 filesort(文件排序)。在优化层面,你提到了建立合理的联合索引、严格遵循最左前缀匹配原则,并且特别强调了要避免在索引列上使用函数运算,以免导致索引失效。
三、 个人职业规划与 HR 考察点
- Q6:从上一家公司(百度)离职的原因是什么?目前的期望薪资如何? 回答: 我很坦诚,因为部门组织架构调整,整体环境不稳定,所以出来寻找更合适的机会。关于薪资,希望能在现有基础上获得一定的涨幅,具体薪资结合面试的定级和评价来综合谈。
一面已过,二面刚面完,静候佳音。
#AI求职实录#

查看8道真题和解析