7 淘天大模型算法面经
参考链接:
https://www.xiaohongshu.com/explore/69f09911000000001a02f0db?xsec_token=ABkgfjz-UE8urptox57lJc5Ujrdq8ASRV1Ba08EE1LKsI=&xsec_source=pc_search&source=web_search_result_notes
https://www.xiaohongshu.com/explore/69ce5a73000000001e00ea49?xsec_token=ABtJ-qNVc_MwAarp3UsJH3bFTDaT72jK0x51Gazjp5oWw=&xsec_source=pc_search&source=web_search_result_notes
https://www.xiaohongshu.com/explore/69f058690000000023007c1c?xsec_token=ABkgfjz-UE8urptox57lJc5VnuASKRzypZQEGIU8jWTnk=&xsec_source=pc_search&source=web_search_result_notes
第一弹
一面(电话面,也算是阿里系的特色了)
- 问实习经历,用的哪个模型产生的数据,训练的哪个模型。
- 现在模型很多了,怎么去产生数据
- GRPO和DPO的区别,优劣
- 用sft+RL和纯用RL哪个效果更好,有没有实际的验证过
下面问了几个场景题,估计是和业务相关
- 淘宝场景下智能机器人需要和用户、商家进行对话,收集的数据如何去训练reward model
- 可能会发现某些语句能解决商家和用户的问题,模型就一直产生这几条语句怎么办
二面
- 介绍论文
- 介绍实习做的工作(因为是之前做的工作,如果放到现在该怎么去做)
- deepseek关于奖励的论文看没看过
- reward hacking是什么,该如何解决
hr面
- 介绍一下学习方法
- 如何分配平时的时间
- 介绍论文和实习(可能hr不太懂,基本上是我单方面的输出)
面下来整体感觉部门的技术比较强,对前沿的技术比较了解,交流的语气也很平和,而且淘天暑期普通批500一天,当时在淘天纠结了很久。
第二弹
今天面完淘天搜推团队的AI应用算法工程师实习岗,整整115分钟,是我面试以来时间最长的一场,中途有一刻真的感觉要大脑没token了😅 趁记忆还新鲜赶紧复盘。
面试结构
- ① 自我介绍(面试官也介绍了搜推团队的业务)
- ② 大模型基础知识问答(30min)
- ③ 项目深挖(40min)
- ④ AI coding笔试(30min)
- ⑤ 反问环节(10min)
看起来结构清晰,但每个环节都很扎实,尤其技术问答和项目深挖,面试官会顺着你说的一直往下追问。
一些八股:
- Attention的QKV怎么计算,WQ/WK/WV的形状
- MOE的路由机制,稀疏vs稠密
- KV Cache在prefill和decoding阶段的读写差异
- 大模型幻觉怎么规避
- 微调后出现复读机怎么排查
- SFT够用 vs 必须上DPO/RL怎么判断
- DPO损失函数的潜在问题
- KL散度在模型对齐里的作用
- 接着问了google的TurboQuant kv cache,回答不太了解
项目深挖
我简历两个项目都被追问了,问的很细,比如说GRPO里group size设成1会怎样,reward hacking遇到过吗怎么处理,灾难性遗忘怎么解决等问题
简历上写的每一个点都可能被问到底层逻辑,建议提前想清楚"为什么这么做",而不只是"做了什么"。
AI coding笔试
第一次遇到这种形式,不是自己写代码,而是和AI协作完成一道设计题。面试官说"过程比结果更重要",这句话让我放松了不少。
我的做法是先让AI输出整体技术方案,确认思路后开多个会话并行处理各模块。笔试环境有点卡,但稳住心态把思路讲清楚就好。
感受 115分钟对我来说确实是新纪录,中途压力不小,但面试官整体很专业,不刁难,追问都是顺着你的思路往下挖。最后结束时他说了句"去吃饭吧",我才意识到已经过了饭点了
第三弹
阿里-淘天AI应用面经(一面)
4.9 一面
流程大致是:
没有让自我介绍,面试官首先介绍组里业务,告知一面主要是八股+项目(论文)+code,并且项目(论文)会问的很浅,如果能进二面才会主要考察项目(论文)
- 上来就问为什么没有大厂实习
- 介绍grpo和ppo的区别,会频繁打断,不让讲太多,要求精确讲出核心区别
- ppo的clip操作的作用
- 重要性采样的作用,除了和clip操作结合限制更新幅度还有什么作用,这种操作和使用kl散度限制更新的区别是什么
- 马尔可夫性质是什么
- 从早期的策略梯度算法到现在grpo,有很多模块或者说设定是保留下来的,有些是丢掉了,讲一下发展脉络,为什么要保留/丢掉那些模块
- 开共享屏幕聊论文,背景,任务设定,对应的实际业务场景
- workflow,训练方法,用到的公式细节,且会质疑你的数学公式
- 凸函数最基本的一个性质(函数图像上任意两点的弦在图像上方,知道但是太久没接触这块讲的太口水了)
- 力扣173,二叉搜索树迭代器,要求先讲思路,三种解法(暴力-优化-正解)
暴力: 每次找最左侧叶子节点,找完后pop,下一次重新找 优化: 中序遍历一遍存到数组里,直接打印输出,空间复杂度o(n),时间复杂度o(1) 正解: 使用栈维护访问路径,空间复杂度o(logn),时间复杂度均摊o(1)
反问: 对于我委婉询问面试表现很诧异,小声说到怎么现在都喜欢这么问,随后表示:
- 强化学习在整个机器学习分支中算是比较难的,在llm出来之前研究的人比较少,现在这么多人凑热闹只是因为rl在llm上效果好,这其中很多人只是把算法跑通或者说对rl有一个比较浅显的理解,我们希望招的是对于整个rl理论都比较清楚的同学,我刚刚在面试中问的那些问题如果说真的有好好的把rl的脉络研究透彻的话都是能够很轻易回答上来的
- 你的论文不错,有些地方也很有趣,如果时间允许的话我还想和你多聊聊,至于进不进二面还得看你后面的表现(内心os: 哪还有机会给我表现)
面试体验: 时常大概1h15m,和字节比压力大很多,整个过程会不断的打断和追问,整体面下来问的最细的一次,对思路和底层实现要求很高,感觉多半寄了
阿里淘天AI应用面经(二面)
4.26 二面(一面在另一个帖子)
- 无自我介绍,无业务介绍,上来就说看到发的论文比较多,具体做的是什么方向(本科的内容审核+研究生的llm rl+cl)
- 调用openai的接口,背后协议是怎样的一个workflow(不会)
- 说我笔试没通过,是看bg比较想要捞过来的,我提出疑惑为什么我三道算法题写出两道半会不过,面试官说我只写出一道半(感觉死无对证,我凭记忆记得我第三题a了,但现在也没证据证明),然后问我cv上有算法竞赛经历为什么笔试做这么低,表示因为笔试成绩低,这场面试会有算法题
- code: n个人站成一排,从左到右编号1-n,每次随机淘汰一个奇数位置上的人,淘汰完之后右边的人左移,(淘汰49之后,50变49,51变50),99轮之后,只剩的最后一个人获胜,问: 假如你参加这个游戏,站在哪个位置可以让你的赢面最大(一开始面试官跟我说是数学题,后来自己推了下是概率dp)手算n=4的时候每个位置的获胜概率,再手算n=5的时候最后一个位置的获胜概率(全部答完之后表示没问题,具体代码最后面试结束再写)
- 模型基座怎么训的了解吗
- 场景题: 根据名字预测性别,方案和需要的数据量(p2)
- 我看你做过rl,讲一下ppo,dpo,grpo,以及rl到底在优化什么东西(讲了一下rl的基本损失函数,以及从ppo到dpo,grpo,dapo的演变)
- 我看你aaai这篇论文在做持续学习,讲一下持续学习的概念吧,业界持续学习大概有哪几种方法
- 讲解一下这篇论文
- 你看你有这么多篇论文,但是写出来的就两篇,我们还是挺看重这个的,你后面可以改一下简历做一个paper list
- 反问: 问面试官对我有什么顾虑(答本来顾虑我的算法和基础,写出来之后没啥顾虑了),组里的方向(agent,rag,持续学习等等都有),优化指标
- 面试官发了个笔试链接,说可以有多种解法,dp,dfs,或者优化复杂度等等,我们比较看重这个,然后面试官就离开了面试间,但是笔试链接里你写代码他都可以看到,我就写了个dp和记忆化dfs两种解法,然后写完没一会就看到面试官离开了笔试的面试间的通知(估计是看我写完了),我看他走了我就check了一下代码,感觉没啥问题我也走了
第四弹
阿里淘天ai应用算法暑期一面面经
流程:面试官先介绍了业务,再拷打+八股+手撕
- sft和rl数据有什么区别
- on policy是什么
- dpo ppo区别
- grpo ppo区别
- 觉得verl框架有什么问题(我觉得还挺好用的,答不上来)
- 全参和lora区别
- 裁剪作用
- dapo grpo gspo区别
- 具体的case,解释项目(可能因为不太垂直)
代码:hot100 跳跃游戏 升级版,还要输出最少跳了几次
很详细的先介绍了组里业务,偏搜推,八股很全面细节
淘天算法一面问题
1️⃣自我介绍 2️⃣实习项目拷打,用时30min➕ 3️⃣除了grpo还有哪些最新的rl方法 4️⃣分析对比一下ppo和grpo的显存占用 5️⃣手撕mha 6️⃣删除链表倒数第k个结点
总用时80min,坑点在于torch的contiguous我忘记怎么拼写了…