1. 31岁转行大模型,我踩过的坑和摸到的门道
先说结论:31岁转行做大模型工程师,不是脑子一热就能干成的事,但也绝对不是死路一条。我2023年底从Java后端开发转到大模型应用方向,到现在一年半,踩过的坑比写过的代码还多。这篇文章不卖课、不画饼,就是把转行路上那些没人明说的东西摊开讲——包括学习路线怎么排、简历怎么写、面试问什么、实际工作到底在干什么、哪些技能是刚需哪些是噱头。
如果你正在犹豫要不要转、或者已经开始学但越学越迷茫,这篇内容应该能帮你省下至少三个月的试错时间。我会从转行决策、技术栈选择、实操路径、面试准备、入行后的真实状态这几个维度展开,每个部分都附上我自己的操作细节和踩坑记录。
提醒:大模型这个方向变化极快,今天的热门框架可能半年后就没人提了。所以下面讲的东西,重点不是具体某个工具的用法,而是判断逻辑和学习方法——这些才是能扛住变化的东西。
2. 转行决策:31岁到底晚不晚
2.1 年龄焦虑的真实面
网上到处是“35岁危机”的讨论,31岁转行听起来像是往枪口上撞。但我实际观察下来,大模型方向对年龄的容忍度比传统开发岗要高一些,原因有三个。
第一,这个领域太新了。真正意义上的大模型应用开发也就是2022年底之后才爆发,意味着所有人都是新手,没有人有五年以上的“大模型工程师经验”。你的竞争对手不是那些25岁就已经做了五年大模型的人——这种人根本不存在。大家起跑线差不太多,年龄带来的经验反而在某些场景下是加分项。
第二,大模型落地需要行业理解。纯做模型训练和算法研究的岗位确实偏好年轻高学历,但大量的大模型应用岗需要的是“懂业务+能调API+会搭系统”的人。我之前的Java经验在搭建后端服务、处理并发、设计数据库这些方面直接能用上,这些恰恰是很多纯算法背景的人不擅长的。
第三,31岁通常意味着你有几年工作经验,知道怎么跟产品经理沟通、怎么写文档、怎么排优先级。这些软技能在转行初期比技术本身更能帮你站稳脚跟。
但话说回来,年龄确实会带来一些实际困难。比如学习精力不如二十出头的时候,比如可能上有老下有小没法全身心投入,比如有些公司校招和社招的年龄门槛卡得很死。这些是客观存在的,需要你在决策前想清楚。
2.2 什么样的人适合转
我总结下来,以下几类人转大模型方向成功率比较高:
- 有后端开发经验的人:Java、Python、Go都行。大模型应用本质上还是软件系统,后端能力直接迁移。特别是Python,如果你之前用Python写过服务,过渡会非常顺。
- 有数据处理经验的人:大模型离不开数据清洗、格式转换、质量筛选。如果你做过ETL、数据仓库、爬虫,这些经验在构建训练数据和RAG知识库时非常有用。
- 有特定行业背景的人:比如你之前在金融、医疗、法律、电商行业做过开发,那转做大模型在这个行业的落地会很有优势。纯技术谁都能学,但行业know-how是壁垒。
- 能接受不确定性的人:大模型落地项目失败率很高,很多需求最后证明用传统方法更好。你需要能接受“折腾三个月最后方案被砍”这种情况。
反过来,如果你只是听说大模型薪资高就想转,或者完全没有任何编程基础,那我建议先冷静一下。这个方向不是速成班能搞定的,需要持续投入至少半年才能达到入行门槛。
2.3 转行的时间账和金钱账
我算过自己转行期间的实际投入:
| 项目 | 时间/金额 | 说明 |
|---|---|---|
| 系统学习 | 约4个月 | 每天3小时,周末6小时 |
| 做个人项目 | 约2个月 | 两个完整项目,一个RAG一个Agent |
| 面试准备 | 约1个月 | 刷题+模拟面试+复盘 |
| 课程和资料 | 约2000元 | 主要是买了几本专业书和少量付费课程 |
| 算力花费 | 约1500元 | API调用+租GPU做微调实验 |
| 收入损失 | 约3万 | 转行期间绩效受影响,年终奖打折 |
总计大概7个月、3万多的直接和间接成本。这个数字供你参考,每个人的情况不同,但别相信“三个月速成大模型工程师”这种话。
3. 技术栈选择:学什么、不学什么
3.1 大模型工程师的能力模型
我把大模型工程师的能力分成四层,从下到上分别是:
第一层:编程基础。Python是必须的,基本的数据结构、面向对象、常用库(numpy、pandas)要熟练。如果你之前是Java背景,花两周把Python过一遍就够了,不用学得太深,够用就行。
第二层:大模型基础认知。理解Transformer架构的基本原理、Tokenization是怎么回事、注意力机制在干什么、预训练和微调的区别、上下文窗口的限制。这些不需要你手推公式,但面试一定会问,工作中也天天用到这些概念做决策。
第三层:应用开发能力。这是最核心的一层,包括Prompt Engineering、RAG(检索增强生成)、Agent开发、Function Calling、模型部署和推理优化。这层的能力直接决定你能不能干活。
第四层:领域深度。比如你专注做金融大模型、医疗大模型、代码大模型,需要额外的领域知识和数据敏感度。
转行初期,重点砸在第二层和第三层。第一层如果本来就有基础,快速过一遍就行。第四层是入行之后慢慢积累的。
3.2 学习路线的具体安排
我自己的学习路线是这样的,供参考:
第1-2周:Python快速过一遍
- 重点:函数、类、装饰器、异步编程、常用标准库
- 资源:官方文档+LeetCode简单题
- 目标:能读懂开源项目代码,能写小脚本
第3-4周:大模型基础理论
- 重点:Transformer架构、Attention机制、Tokenization、预训练/微调/RLHF的区别
- 资源:李沐的论文精读视频、Hugging Face课程
- 目标:能给别人讲清楚大模型是怎么工作的
第5-8周:Prompt Engineering和API调用
- 重点:Prompt设计模式、Few-shot、CoT、结构化输出、Function Calling
- 实操:用主流大模型API做几个小工具(翻译、摘要、分类)
- 目标:能写出稳定可靠的Prompt,理解Temperature、Top-p这些参数的实际影响
第9-12周:RAG系统开发
- 重点:文档加载、文本分割、向量化、向量数据库、检索策略、重排序
- 实操:搭一个完整的RAG问答系统,从文档上传到答案生成
- 目标:理解RAG的每个环节,知道哪里容易出问题
第13-16周:Agent开发
- 重点:ReAct框架、工具调用、多Agent协作、记忆机制
- 实操:做一个能调用外部工具的Agent
- 目标:理解Agent的工作原理和适用场景
第17-20周:模型微调
- 重点:LoRA、QLoRA、数据集构建、训练参数调优、效果评估
- 实操:用开源模型做一次完整的微调
- 目标:知道什么场景该微调、什么场景不该
第21-24周:项目实战和面试准备
- 重点:把前面的东西整合成两个完整项目,写文档,准备面试
这个路线是我实际走下来的,中间有反复和调整。比如Prompt Engineering我其实花了更多时间,因为这是日常工作中最高频的技能。微调反而花的时间少一些,因为实际工作中真正需要微调的场景不多。
3.3 哪些东西可以先不学
转行最怕的是什么都想学,最后什么都学不精。以下这些我建议初期直接跳过:
- 从零训练大模型:除非你去的是做基座模型的团队,否则工作中几乎不会从零训练。成本太高,没必要。
- 复杂的分布式训练:这是Infra工程师的活,应用工程师不需要深入。
- CUDA编程和底层优化:同上,分工不同。
- 各种冷门框架:先把主流的东西学扎实,冷门框架用到再学。
- 数学推导:理解概念就行,不需要能推导反向传播。
我的经验:转行初期最大的陷阱是“收藏了一堆课程和论文,但一个都没看完”。与其贪多,不如把RAG和Prompt Engineering这两个东西练到能独立做项目的程度,找工作就够用了。
4. 实操路径:从零到能干活
4.1 第一个项目:RAG知识库问答系统
这是我建议每个人都先做的项目,因为它覆盖了大模型应用开发的大部分核心技能,而且面试时非常好讲。
项目目标:上传一批文档,用户提问,系统基于文档内容回答,并给出引用来源。
技术选型:
- 文档加载:LangChain的Document Loaders或者自己写
- 文本分割:RecursiveCharacterTextSplitter,chunk_size设500-800,overlap设50-100
- 向量化:用开源的BGE模型或者调API
- 向量数据库:Chroma(本地开发)或Milvus(生产环境)
- 大模型:调API或者本地部署开源模型
- 前端:Streamlit快速搭一个
关键细节:
- 文本分割不是越细越好。我试过chunk_size=200,检索精度反而下降,因为上下文被切碎了。500-800是比较好的平衡点。
- 向量模型的选择很关键。BGE系列在中英文场景下表现不错,而且可以本地跑,不花钱。
- 检索策略上,单纯向量检索不够,最好加上关键词检索做混合检索,再用重排序模型精排。
- Prompt里一定要加“如果文档中没有相关信息,就说不知道”,否则模型会编。
踩坑记录:
- 一开始我用的是固定长度分割,结果把表格和代码块切得乱七八糟。后来改成按段落和标题分割,效果好很多。
- 向量数据库的索引类型会影响检索速度。小数据量用Flat索引就行,数据量大了再考虑IVF或HNSW。
- 评估RAG效果不能只看“感觉”,要建一个测试集,人工标注问题和正确答案,然后算命中率和准确率。
这个项目做完,你对RAG的每个环节都会有体感,面试时也能讲出很多细节。
4.2 第二个项目:Agent工具调用
Agent是大模型应用的热门方向,但也是坑最多的方向。我建议做一个简单但完整的Agent,理解原理就行。
项目目标:做一个能查天气、算数学、搜网页的Agent。
技术选型:
- Agent框架:LangChain Agent或自己实现ReAct循环
- 工具定义:用JSON Schema描述工具的参数
- 大模型:需要支持Function Calling的模型
关键细节:
- Agent的核心是“思考-行动-观察”的循环。模型先思考需要用什么工具,然后调用工具,拿到结果后再思考下一步。
- 工具描述要非常清晰,包括每个参数的类型、含义、示例。描述不清楚模型就会乱调。
- 要设置最大迭代次数,否则模型可能陷入死循环。
- 错误处理很重要。工具调用失败时,要把错误信息返回给模型,让它决定下一步。
踩坑记录:
- 一开始我没限制迭代次数,结果模型反复调用同一个工具,烧了一堆Token。
- 工具的参数校验不能省。模型有时候会传错类型,不加校验直接崩。
- Agent的延迟很高,因为每次工具调用都要等模型响应。实际产品中要考虑流式输出和超时处理。
4.3 微调实验:知道什么时候该微调
微调不是必须的,但你需要知道什么时候该用。我建议做一次完整的微调实验,哪怕效果不好,也能帮你建立判断力。
实验目标:用LoRA微调一个开源模型,让它学会某个特定任务(比如把非结构化文本转成JSON)。
操作步骤:
- 准备数据:至少500条高质量的训练样本,格式是“输入-输出”对
- 选择基座模型:7B左右的模型,显存要求低
- 配置LoRA参数:rank=8或16,alpha=16或32,dropout=0.1
- 训练:用Hugging Face的Trainer或LLaMA-Factory
- 评估:在留出的测试集上看准确率
关键认知:
- 微调适合“格式对齐”和“风格迁移”,不适合注入新知识。注入知识用RAG更好。
- 数据质量比数量重要。500条精标数据比5000条脏数据效果好。
- LoRA的rank不是越大越好。rank太大容易过拟合,太小又学不到东西。8-16是常用范围。
- 微调后的模型要跟基座模型对比,确认真的有提升。我见过有人微调后效果反而变差,因为数据有问题。
实操心得:微调实验最大的价值不是学会微调本身,而是让你在面试时能说清楚“什么场景该微调、什么场景不该”。这个问题几乎每场面试都会问。
5. 面试准备:大模型岗位到底问什么
5.1 面试问题的四个层次
我面了大概十几家公司,总结下来大模型岗位的面试问题分四层:
第一层:基础概念
- Transformer的Self-Attention是怎么计算的
- 为什么大模型需要位置编码
- Tokenization的常见方法有哪些
- 预训练和微调的区别是什么
- 什么是幻觉,怎么缓解
这些问题比较标准,提前准备就能答上来。关键是不要只背定义,要能结合实际例子说。
第二层:应用设计
- 设计一个RAG系统,你会怎么划分模块
- 如果检索效果不好,你会从哪些方面排查
- Prompt注入攻击怎么防范
- 怎么评估一个Agent的好坏
- 大模型应用的延迟优化有哪些手段
这些问题没有标准答案,面试官看的是你的思路是否清晰、是否有实际经验。如果你做过项目,就把项目里的具体做法讲出来。
第三层:编程能力
- 手写一个Attention计算
- 用Python实现一个简单的RAG流程
- 处理一批文本数据,做清洗和分割
- 写一个Prompt模板类
编程题不会太难,但要求你能写出可运行的代码。平时多动手,别只看不练。
第四层:项目深挖
- 你做的RAG项目,chunk_size为什么设这个值
- 向量模型为什么选这个,对比过哪些
- 项目上线后遇到的最大问题是什么,怎么解决的
- 如果重新做一遍,你会怎么改进
这层是区分“真做过”和“只是了解”的关键。面试官会追问细节,如果你只是跟着教程做了一遍,很容易被问住。
5.2 简历怎么写
转行简历最容易犯的错误是“把学习经历当项目经历写”。比如“学习了LangChain框架,完成了官方教程的示例”——这种写法基本会被筛掉。
正确的做法是:把学习过程包装成项目。比如你跟着教程做了一个RAG问答系统,那就写成:
个人项目:基于RAG的文档问答系统
- 设计并实现了一个完整的RAG流程,包括文档加载、文本分割、向量化、检索和生成
- 对比了三种文本分割策略,最终选择按语义分割,检索命中率提升约20%
- 使用混合检索(向量+关键词)加重排序,Top-3命中率达到85%
- 技术栈:LangChain、Chroma、BGE、某大模型API
这样写,面试官看到的是你做了实际的工作,而不是“我学过”。
另外,简历上要突出你之前的经验跟大模型的结合点。比如你是Java背景,可以写“有后端服务开发经验,能独立完成大模型应用的工程化落地”。如果你是数据背景,可以写“有数据处理经验,能构建高质量的微调数据集”。
5.3 面试中的高频问题速查表
| 问题 | 回答要点 | 常见坑 |
|---|---|---|
| 为什么转行做大模型 | 结合之前经验,说明迁移优势 | 不要说“因为薪资高” |
| RAG的流程 | 分模块讲,每个模块说清楚作用和选型理由 | 不要只讲概念,要结合项目 |
| 怎么评估RAG效果 | 建测试集,算命中率和准确率,人工评估 | 不要说“感觉效果不错” |
| 微调 vs RAG | 微调改风格和格式,RAG注入知识 | 不要一刀切说哪个更好 |
| Prompt注入怎么防 | 输入过滤、权限控制、输出校验 | 不要只说“加个系统提示” |
| Agent的适用场景 | 需要多步推理和工具调用的场景 | 不要什么都说能用Agent |
| 大模型应用的延迟优化 | 流式输出、缓存、模型选择、并行调用 | 不要只提一个方面 |
| 你最大的不足 | 诚实说一个可以改进的点,附上改进计划 | 不要说“我太追求完美” |
5.4 面试后的复盘方法
每次面试完,我都会花半小时做复盘:
- 记录被问到的所有问题
- 标记哪些答得好、哪些答得不好
- 对于答得不好的问题,查资料写出更好的答案
- 更新自己的面试题库
我面到第五家的时候,发现很多问题都是重复的。复盘做得好,后面会越来越顺。
6. 入行后的真实状态
6.1 日常工作在干什么
很多人以为大模型工程师天天在训练模型、调参、看Loss曲线。实际工作中,大部分时间花在这些事情上:
- 写Prompt和调Prompt:这是最高频的工作。同一个需求,Prompt写得好不好,效果差很多。
- 搭RAG管道:处理文档、调检索策略、优化生成效果。这部分工作很琐碎但很重要。
- 跟产品经理吵架:产品经理觉得大模型什么都能做,你需要解释什么能做、什么做不了、为什么。
- 做Demo和POC:很多需求先做个Demo验证可行性,大部分Demo最后不会上线。
- 看论文和新技术:这个领域变化太快,不学习很快就落后了。
真正做微调的时间大概只占10%左右。大部分场景用Prompt+RAG就能解决,不需要微调。
6.2 转行后遇到的挑战
挑战一:从“确定性”到“不确定性”的思维转变。传统软件开发是确定性的——输入A一定得到B。大模型不是,同样的输入可能得到不同的输出。你需要学会跟不确定性共处,设计系统时要考虑容错和降级。
挑战二:效果评估很难。传统软件跑测试用例就行,大模型应用的评估需要人工参与,而且标准很主观。我花了很多时间在建立评估体系上。
挑战三:技术更新太快。今天学的框架,三个月后可能就有更好的替代品。你需要保持学习,但又不能什么都追,要学会判断哪些是真正重要的。
挑战四:期望管理。业务方对大模型的期望往往过高,你需要反复沟通,把期望拉到合理水平。
6.3 这个方向还能走多久
经常有人问“大模型是不是泡沫”。我的判断是:泡沫肯定有,但底层能力是真实的。就像2000年的互联网泡沫破了,但互联网本身改变了世界。
大模型也一样。现在很多项目确实在烧钱不赚钱,但大模型作为一项技术,它的能力是实实在在的。未来可能会有调整,但方向不会变。
对于个人来说,关键不是预测行业走向,而是确保自己的能力是“可迁移”的。具体来说:
- 理解大模型的工作原理,而不只是会调API
- 掌握RAG和Agent的设计模式,而不只是会用某个框架
- 有工程化落地的能力,而不只是会写Demo
这些能力不管技术怎么变,都是有价值的。
7. 给转行者的几个实在建议
7.1 别辞职学习
我见过太多人辞职全职学习,结果压力巨大,效果反而不好。最好的方式是边工作边学,用业余时间。虽然累一点,但心态稳,而且有收入兜底。
如果你实在想全职学,建议先攒够6个月的生活费,并且给自己设定一个明确的截止日期——比如3个月内找不到工作就重新考虑。
7.2 项目不在多,在深
简历上写五个浅尝辄止的项目,不如写两个能讲透的项目。面试官不关心你做了多少个项目,关心的是你在项目中做了什么决策、解决了什么问题、学到了什么。
我建议至少有一个项目是你能从架构设计讲到代码实现的,包括每个技术选型背后的理由。
7.3 建立自己的知识库
大模型领域信息太多,容易学了就忘。我从转行第一天就开始建自己的知识库,用Notion记录:
- 学到的概念和原理
- 踩过的坑和解决方案
- 面试问题和答案
- 论文和文章的摘要
这个知识库后来成了我面试复习的主要材料,也是工作中查漏补缺的工具。
7.4 找同行交流
一个人学容易走弯路。我加了好几个大模型开发的交流群,虽然大部分时间在潜水,但偶尔看到别人讨论的问题和解决方案,能帮我省很多时间。
另外,找一两个同样在转行的朋友,互相监督、互相模拟面试,效果很好。
7.5 接受“不完美”的开始
转行最怕的是“等我学好了再去找工作”。你永远学不好,因为这个领域没有“学好”的标准。学到能做出一个完整项目、能讲清楚核心概念、能回答常见面试题,就可以开始投简历了。
剩下的东西,在工作中边干边学。我入职后学的东西比转行准备期间学的还多,因为有实际场景驱动,学得更快。
最后分享一个我自己的判断标准:当你能够独立设计一个RAG系统、能够跟别人讲清楚大模型的工作原理、能够写出稳定的Prompt并解释为什么这样写——你就已经具备入行能力了。剩下的,交给实践。
这个方向确实有机会,但机会只留给真正动手去做的人。31岁转行不容易,但也没那么可怕。关键是迈出第一步,然后持续走下去。