ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

华为AI岗秋招面试复盘:大模型、RAG与Agent全流程拆解

华为AI岗秋招面试复盘:大模型、RAG与Agent全流程拆解 10月15号我把华为AI岗的秋招面试一天之内全部走完了。早上九点半开始一面、二面、主管面连着打结束的时候已经下午快六点整个人像被掏空但脑子反而特别清醒——因为所有考题、追问、手撕代码的点我在之前备战的时候基本都踩过或者准备过。这篇就当复盘笔记把当天真实的面试节奏、考察重点、踩坑细节全部拆开讲给正在准备华为AI岗甚至其他大厂算法岗的同学一个参考。今年秋招AI岗和往年最大的不同是大模型方向从“加分项”变成了“必考项”Agent、RAG、模型微调几乎被问了个遍。传统机器学习和深度学习的底子还在考但比重明显降了反而大模型应用相关的项目经历、工程落地经验成了核心考察点。如果你现在还在准备希望我这篇复盘能让你少走点弯路。1. 整体备战思路与投递节奏1.1 时间线梳理与岗位选择先说投递节奏。我是9月初投的简历华为秋招系统开放后两周左右提交的申请岗位方向选了AI算法工程师大模型方向。9月下旬收到机试通知10月中旬才排到正式面试。这个时间线在华为秋招里算中等偏后但因为前期机试和性格测评都已经过了面试才是一锤定音的关键。华为今年秋招的时间节点比往年稍微拉长了一些但是整体节奏依然是“网申-机试-性格测评-技术面-主管面-HR面-offer审批”这条链路。AI岗和其他岗的差异主要体现在机试和面试内容上。机试统一走的是华为OD同款新系统双机位监考题目用的C卷题库面试环节则更看重项目深度和工程能力纯背八股文拿高分的时代已经过去了。岗位选择方面华为AI岗下面细分的方向很多比如自然语言处理、计算机视觉、推荐系统、大模型应用、推理优化等。投递之前一定要想清楚自己最擅长哪个方向因为面试官会根据你简历里的项目方向来匹配面试官大概率是方向match的专家来面你。我投的大模型应用方向所以面试官主攻NLP和模型部署聊得比较深也问了很多工程落地细节。1.2 简历打磨与项目包装简历是敲门砖但这里说的“包装”不是造假而是把你做过的事情用面试官能快速抓取关键词的方式呈现出来。我简历上一共写了三个项目一个是基于大模型的智能文档问答系统一个是情感陪伴类小程序涉及安全合规处理还有一个是比赛里的电商推荐算法优化。三个项目各有侧重分别对应RAG应用能力、工程落地能力和传统机器学习功底。面试下来我的体会是项目不求多但每一个都要经得起追问。面试官会按着你的项目细节一层一层往下挖从数据集怎么清洗、模型为什么选这个不选那个、评估指标怎么定、线上推理延迟多少到如果换个场景你会怎么优化。每一个问题背后都在考察你到底有没有真正做过还是看几篇博客包装出来的。所以宁可只写两个深挖过的项目也不要写五个说不清细节的项目。另外今年华为的AI面试官对“AI辅助开发”这件事很感兴趣。我在项目描述里提到使用了Cursor辅助编写工程代码面试官专门问了怎么用、用了之后对代码质量有什么影响、哪些环节AI帮不上忙。这个问题没有标准答案但能看出你是否对工具有清晰的认知。我的回答是Cursor在写数据清洗脚本、格式化代码、快速搭接口这些重复性工作上提效很明显但模型结构设计、loss调优、badcase分析这类需要深度思考的环节AI目前还替代不了只能作为辅助。2. 机试环节题型分布与备考实操2.1 考试形式与真题复盘华为机试统一用新系统牛客网在线答题双机位监考正面电脑摄像头侧面手机支架拍到手部动作和屏幕周围不能有人环境要提前准备好。考试时间两个半小时一共三道题分值分别是100分、200分、300分总分600用ACM模式自己处理输入输出。说实话这个考试对平时刷LeetCode但习惯核心代码模式的同学来说第一关就是“输入输出解析”。很多人不是题目不会做而是卡在处理输入格式上尤其是第二题和第三题的输入往往比较复杂可能有多行、有分隔符、有嵌套结构。我建议在牛客网刷题的时候不要只刷函数体多练练在线调试尤其是std::getline、split、while(cin)这些基础操作要闭着眼写。三道题的整体难度我个人体感是第一题相当于LeetCode简单偏中等第二题中等第三题中等偏难而且第三题往往是动态规划或者带状态的搜索题。我当天遇到的第一题是一个字符串处理类问题类似于正则匹配的简化版第二题是数组区间合并变种需要维护一些额外信息第三题是带限制条件的迷宫最短路径要同时考虑步数、钥匙状态和传送门标准的状态压缩BFS。2.2 机试备考的实操建议如果你现在还在准备机试我给你几个实操建议。第一刷题范围不用贪多重点抓动态规划、深度优先搜索、广度优先搜索、二分、双指针、字符串处理这六大类。华为的机试题目比较务实很少出特别偏的数据结构题但DP和搜索几乎是必考的。第二务必练习ACM模式下的输入输出解析尤其是多行不定长输入。我见过太多人栽在第三题的输入上题目本身思路是对的但因为没有正确处理输入样例没过直接丢分。建议至少提前两周每天用牛客网的在线OJ练手保持手感。第三时间分配很重要。两个半小时做三道题建议第一题20分钟内解决第二题控制在40分钟左右第三题哪怕没有完整思路也要把暴力解法写出来拿到部分分。机试的通过标准不是满分而是看总分过没过线部分分也是分。我最后总分是300多分不算高分但足够进入面试环节了。3. 技术面试核心考点拆解3.1 一面项目深挖与基础八股一面那天面试官是一位看起来三十出头的技术专家上来先让我做了五分钟自我介绍。这里有个细节自我介绍不要复述简历简历上已经有的信息面试官自己会看你要重点讲“为什么做这个项目、解决了什么核心问题、你的独特贡献是什么”把面试官的注意力引到你最擅长的部分。我重点讲了智能文档问答系统的项目。这个项目的核心链路是文档解析→切片→向量化→召回→重排→大模型生成→答案引用溯源。面试官针对这个链路问了很多细节比如切片长度怎么定的、用了什么Embedding模型、检索召回用的什么方案、命中率不高怎么排查、重排模型怎么选、大模型用的什么、推理部署用的什么框架、延迟多少、显存占用多少、QPS能扛多少。这些问题里最容易翻车的是“量化等级”和“推理框架”的细节。我一开始用的是vLLM做推理加速显存不够之后做了INT8量化但量化后模型效果掉了两个点后来通过混合精度和KV Cache优化把效果拉了回来。面试官对这一段特别感兴趣连着追问了“量化为什么掉点”“KV Cache原理是什么”“你还了解哪些推理优化手段”这些如果不真正做过部署优化现场编是编不出来的。基础八股部分面试官问的比较常规但也有代表性Transformer里为什么用LayerNorm而不是BatchNorm讲讲你对注意力机制的理解包括多头注意力为什么要多头。训练深度学习模型时梯度消失和梯度爆炸怎么解决正则化手段有哪些L1和L2的区别是什么什么是过拟合如何判断模型过拟合了这些都是经典问题看起来不难但如果很久没复习基础容易说得很散。我的建议是准备的时候把每个问题都按“定义-原因-解决方案-对应场景”四段式来组织答案说的时候先给结论再展开面试官会更容易跟上你的逻辑。3.2 二面大模型新考点与手撕代码二面的面试官明显更偏工程开场没让我自我介绍直接盯着简历上的“情感陪伴小程序”项目开始发问。这个项目我做了比较强的安全合规设计包括敏感词过滤、身份认证、未成年人模式、对话内容审计、拒绝策略等。面试官对这部分很认可因为他真正关心的是大模型应用落地时的安全边界问题这个能力其实很多候选人都不具备。围绕大模型二面问的核心考点我整理成了四个方向第一个是Agent。面试官对工具调用和任务拆解非常感兴趣让我讲Agent的规划Planning、记忆Memory、工具使用Tools三大模块的设计思路。我结合自己做的一个简单Agent场景来回答用户让AI查天气、订会议室、发通知系统需要先把用户意图拆解成多个步骤然后决定调用哪些API最后汇总结果。这里考察的不只是你会不会用LangChain而是你理不理解Agent背后的决策逻辑。第二个是RAG的进阶优化。基础RAG链路是“检索-拼接-生成”但面试官会继续追问如果检索结果质量差怎么办如何做查询改写如何做混合检索如何做上下文压缩如何减少幻觉针对这些问题我分别回答了一些实操方案比如用HyDE生成假答案再做相似度检索、用BM25和向量检索做混合召回再加RRF融合、给大模型限制“只基于给定内容回答不编造”的系统提示词并在后处理阶段增加事实一致性校验。第三个是模型微调。面试官问的是LoRA和全量微调的区别什么场景下选LoRA什么场景下必须全量微调。我当时的回答是LoRA适合资源有限、基座能力已经很强、只需要对齐特定格式或风格的场景但如果要注入大量新知识或者领域数据非常丰富LoRA的容量可能不够需要全量微调或者混合微调。面试官又追问了一句“LoRA的秩怎么定”这个我没答好只说了经验和实验对比没有给出更系统的解释。事后我查了资料秩的选择和任务复杂度强相关简单任务4-8就够复杂任务要16-64且要和模型参数量匹配这个点建议大家一定要补上。第四个是工程部署。因为项目里用到了FastAPI提供接口面试官详细问了并发处理、请求队列、模型预加载、批量推理、缓存策略等。这部分如果你的项目经验不够一定要提前补课大模型项目不是把模型训练完就结束上线后的工程问题往往才是面试官最关心的。手撕代码环节二面出了一道“最长递增子序列”的变种给定一个未排序的整数数组求最长递增子序列的长度但要求输出该子序列本身如果有多个输出任意一个即可。这道题我选择了动态规划加回溯数组的方案来写O(n^2)的时间复杂度虽然不是最优解最优是贪心加二分O(nlogn)但胜在逻辑清晰、边界不容易出错。写完后面试官问了“能不能优化到O(nlogn)”我解释了一下贪心加二分的思路表示能写但需要更多时间面试官点头表示认可。这里我的体会是手撕代码环节一定要先沟通思路再动手写写的时候注意变量命名和边界判断即使不是最优解只要思路正确、代码可以跑面试官都会给过。3.3 项目经历的常见追问方向项目经历的追问基本是面试的重头戏我总结了一下面试官最常问的追问方向有五个一是数据层面数据集从哪来、规模多大、如何清洗、标签怎么做、类别是否平衡、有没有做数据增强。这些问题都是考察你对数据敏感度因为算法工程师的工作里很大一部分时间都在和数据打交道。二是模型选择层面为什么选这个模型不选另一个模型做过哪些实验对比效果差异是多少。面试官特别反感只给结论不给对比的候选人哪怕你只是说“我对比了A和BA在验证集上准确率高了1.5个点所以选了A”也比直接说“A效果最好”要有说服力。三是评估体系层面你用什么指标评估模型为什么选这个指标指标和业务目标之间是否对齐。比如做问答系统跑分很高不代表用户体验好还要看答案是否有事实错误是否引用得当是否有敏感内容。四是上线部署层面模型怎么部署的用什么框架延迟和吞吐是多少如果QPS翻十倍怎么办模型更新迭代的流程是什么。很多同学项目停留在实验阶段一問到上线就露馅。我的建议是哪怕只是用FastAPI简单封装了一个接口也要把部署流程补齐这在面试里非常加分。五是复盘与反思层面这个项目如果再让你做一次你会改进什么。这个问题其实不难但容易掉进“我不觉得有什么要改”的陷阱。一定要说出至少两个反思点比如“当时Embedding模型选得比较随意如果换成更新更强的模型召回率应该会更好”“当时没有做A/B测试就直接上了风险偏高”等表现得有成长型思维。4. 主管面与HR面从技术到综合素质4.1 主管面项目价值与业务判断主管面一般在技术面之后面试官通常是部门主管或者技术带头人风格不像技术面那么细但问的问题更宏观。主管面开场通常会抛出一个问题你对我们部门做什么业务有了解吗这个问题看似随意但特别能筛人。建议提前到官网看看你所投递的BG业务群到底在做什么产品是什么形态目标客户是谁技术栈大概是什么方向。我当时回答的是我知道华为在AI方面的布局很广包括云服务、企业智能、终端侧的AI能力等但我投的这个岗位更偏企业智能方向可能涉及知识管理、智能问答、领域大模型定制化等场景。面试官听完没有否定也没有肯定继续追问如果让你做一个面向企业客户的智能客服系统你如何设计整体方案。这是个典型的“场景设计题”考察的是你从技术视角转化为业务视角的能力。我的回答框架是先分析业务目标降低人工客服成本、提升用户满意度再拆解技术方案知识库建设、意图识别、多轮对话、转人工策略、质检体系最后考虑成本和效果平衡小模型加规则兜底、大模型做语义理解和生成、按流量分层调用。主管面更看重你思考问题的全面性和逻辑性具体技术细节反而谈得少。另外主管面还问了职业规划、对加班的看法、期望的工作地点、有没有其他公司的offer等常规问题。这些问题没有标准答案但回答时要真诚不要为了迎合面试官说违心的话否则入职后压力和落差会很大。我对加班的回答是项目关键节点加班没问题但希望加班是高效产出而不是形式主义我更倾向于用自动化手段提升工作效率减少无效加班。面试官笑了一下没有继续追问。4.2 HR面谈薪、base与稳定性面到HR面基本就剩最后一关了。HR主要会问籍贯、家庭情况、是否独生子女、父母对你来这个城市工作怎么看、有没有女朋友、有没有其他offer、期望薪资是多少。这些问题的核心是确认你的稳定性和入职意愿说直白点就是HR要判断你能不能干长久会不会入职三个月就跑路。期望薪资这个问题要提前准备。建议先了解一下华为薪资结构包括base、绩效、年终奖、股票激励的大致范围再结合自身能力和市场行情报一个合理区间。我当时报了“总包N到N5之间”的区间没有报死一个数给自己留了谈判空间。HR没有当场给回复只说“我先记录一下后续会有对接同事沟通offer细节”这属于正常流程。HR面还有一个隐形考察点你的沟通表达是否清晰自然。很多技术型候选人技术很强但和HR聊天时特别紧张说话磕磕绊绊。其实HR面不用想那么多就当和HR聊聊天把自己的经历、想法、选择逻辑讲清楚就够了。真诚是必杀技也是我在整个秋招里体会最深的一句话。5. 复盘心得与避坑清单5.1 我最容易翻车的5个细节整个流程走完我复盘了一下有5个细节特别容易翻车写出来给大家提个醒。第一是机试环境问题。新系统双机位监考要求手机放在侧后方45度角能拍到人脸和电脑屏幕这个位置设置很讲究。我提前一天试过一开始手机放太远系统提示“监控区域不完整”重新摆放了好几次才过。建议提前一天就把机位调好不要等到考试当天再弄很容易因为环境问题导致考试不顺。第二是自我介绍超时。一面和二面的自我介绍我都控制在5分钟以内但主管面我说得有点长快7分钟还没说完面试官打断了我说“咱们直接进入正题吧”。事后总结主管面的自我介绍一定要控制在3-4分钟因为主管更想听你对业务的理解而不是听你复述简历。第三是八股文答得太散。一面对Transformer相关问题时我说了好几个点但没有组织逻辑面试官追问“你刚才说LayerNorm是解决分布偏移问题能具体说说内部做了什么事吗”我才意识到自己绕过了核心机制。后来我把“层归一化是在每个样本内部做标准化不受batch size影响更适合变长序列”这个关键点放在开头先说后面再展开解释效果明显好很多。第四是手撕代码写完没有自测。二面手撕代码的时候我写完提交给面试官面试官冷冷地问了一句“你确定这个代码没问题吗”。我才发现自己漏了一个边界条件。从那以后我养成一个习惯写完代码先自己在脑子里跑一遍包括空数组、单元素、全相同元素、倒序数组几个测试用例确认无误再交。这个习惯帮我在后来的面试里避免了好几次低级错误。第五是项目数据记不清。有一个项目我很早就做完了对模型准确率、召回率、数据集规模这些数字记忆模糊面试官问的时候我只能说“大概、可能、应该是”非常掉分。后来我把每份简历里涉及的数据指标都整理成一张表面试前背一遍再也不怕被追问了。5.2 面试当天的时间与精力管理华为AI岗的面试安排一般是一天两轮技术面加主管面中间休息时间很短。我当天是上午九点半开始一面十一点左右结束中午有不到一个小时吃饭休息下午一点半二面三点多主管面四点半后HR面。这个节奏对体力的消耗很大建议面试前三天调整作息保证睡眠面试当天早餐吃好随身带点巧克力或坚果类的零食趁中场休息补充能量。心理状态也很重要。我那天二面手撕代码差点犯错后有一段时间情绪有点起伏但其实面试官并没有直接把我的结果否定反而是我自己的情绪先崩了。后来我深呼吸了几次把注意力重新拉回到题目上慢慢把思路理清了。面试的时候紧张是正常的但不要让紧张影响你的判断面试官考察的就是你在压力下的反应是否稳定。5.3 给后续秋招同学的建议根据我这次的经验后续想投华为AI岗的同学我的建议是机试要早刷、项目要深挖、大模型知识要系统补、模拟面试一定要做。机试是入场券刷题没有捷径但要有重点项目是核心竞争力每个项目都要能讲出完整的思路链路和实验对比大模型是必考点不管你做不做大模型方向Agent、RAG、微调、部署这四个话题至少每个都能聊上十分钟模拟面试一定要找有经验的人帮你压一压自己对着镜子练和真正被人追问完全是两种体验。最后再分享一个我自己体会很深的事情面试结束后一定要当天复盘把你被问到的所有问题、你回答的内容、哪些地方卡壳了全部记下来。我那天面试结束后虽然很累但还是在回学校的路上用手机备忘录记了将近两千字的复盘笔记包括每个面试官的风格、问的问题、我的回答和不足。这些记录不仅是宝贵经验在后续其他公司的面试里也同样适用。希望大家秋招都能拿到心仪的offer别焦虑慢慢来一轮一轮打怪总能通关的。
返回列表