AI Agent 工程师求职文档
AI Agent 工程师 8 周突击学习计划
适用对象:有 10 年 C#/.NET 后端经验、每周可投入 30 小时以上、希望在 2 个月内完成 AI 应用工程岗位准备的开发者。
文档定位
这份计划不是泛泛的“AI 学习路线图”,而是围绕 AI Agent 工程师 岗位要求整理的一份求职导向文档。核心目标只有一个:在 8 周内做出一个能演示、能讲交付、能讲优化、能讲部署与稳定性的项目,让你的既有后端经验顺利迁移到 AI 应用工程场景。
计划刻意避开大而散的学习方式,不追求覆盖所有 AI 概念,而是沿着 Prompt 调优、RAG、Agent 工作流、工程化交付 这条高频岗位主线推进。每一周都要求有可见的交付物,这样学习结果才能自然转化为作品集、简历项目和面试回答。
默认前提为:以 Python 为主,向量库采用 PostgreSQL + pgvector,知识源采用 上市公司公告 + 交易所规则文档。这条路线兼顾岗位匹配度、落地速度与面试可讲述性。
路线判断
从当前市面上的 AI 应用工程岗位看,最常见的服务端主线仍然是 Python 生态,尤其是 FastAPI、LangChain、LangGraph、向量检索和部署调试相关能力。虽然 .NET 也能做 AI 应用,但如果目标是提高岗位覆盖面和面试命中率,以 Python 为主更稳妥。
向量库部分,这份计划不走“只选最炫技术”的思路,而是选 pgvector。它足够主流,学习和部署成本低,又能和你原本的数据库、索引、性能调优经验自然衔接。面试时你不仅能讲“会用”,还能讲表结构、检索链路、存储设计和性能治理。
知识源之所以选公告和规则文档,是因为它们公开、真实、结构复杂,既能体现文档解析与 RAG 质量治理能力,又能贴近金融/证券类岗位偏好。这样的项目不会像纯 Demo 一样轻飘,面试官也更容易相信它具备真实业务迁移价值。
你的优势不在于重新做一个初级 Python 开发,而在于把 10 年后端经验迁移到 AI 应用工程里:服务治理、稳定性、边界控制、排障能力、数据建模和交付意识,都是这个岗位真正缺的东西。
技术主线
这类岗位通常不要求候选人训练基础模型,但会非常看重能否把大模型能力做成一个可交付、可观测、可迭代、可上线的应用。你需要重点补的不是传统服务端基础,而是 AI 应用开发特有的几个薄弱环节:检索增强、Prompt 版本治理、工具调用、评测与回归、引用溯源和故障兜底。
| 能力方向 | 推荐技术 | 在项目中的体现 |
|---|---|---|
| 服务端骨架 | FastAPI |
接口、流式输出、异常处理、健康检查、配置治理 |
| RAG 基础 | LangChain + pgvector |
文档导入、切分、向量检索、引用返回 |
| Agent 编排 | LangGraph |
Plan → Retrieve/Tool → Check → Final 的工作流 |
| 缓存与状态 | Redis |
会话、缓存、限流、短期上下文管理 |
| 文档解析 | PyMuPDF、unstructured |
PDF 内容提取、页码与来源保留 |
| 可观测性 | OpenTelemetry + 结构化日志 |
traceId、模型耗时、token 用量、工具调用链路 |
| 部署交付 | Docker Compose |
本地一键起服务、数据库、缓存和向量扩展 |
| 测试与回归 | pytest |
接口测试、Prompt 回归、RAG 评测 |
八周总览
整套计划采用高强度单主线推进方式。每周建议投入 30 到 36 小时,保持“开发新能力、修 badcase、补工程化、写复盘”四件事并行,不要把所有时间都用来堆功能。
| 周次 | 核心目标 | 本周产出 | 验收标准 |
|---|---|---|---|
| W1 | Python 工程地基 + LLM 服务骨架 | 基础 API、流式输出、结构化输出、README v0 | 本地启动稳定,接口可跑,日志完整 |
| W2 | 会话、缓存、可观测、配置治理 | session、Redis 缓存、trace、统一响应规范 | 服务像样,能看日志、能看链路、能处理超时 |
| W3 | RAG v1:入库、切分、检索、引用 | 导入脚本、检索接口、问答接口、首批知识源 | 回答附带来源,至少导入 30 份真实文档 |
| W4 | RAG v2:混合检索、重排、评测 | 评测脚本、优化记录、badcase 列表 | 能量化展示优化前后差异 |
| W5 | Agent v1:工具调用与工作流 | 2 个工具、LangGraph 工作流、执行轨迹 | 问题能触发正确工具,链路可回放 |
| W6 | Agent v2:回归、结构校验、兜底 | Prompt 回归、拒答策略、结构化校验 | 改 Prompt 有测试,错误输出有拦截 |
| W7 | 容器化、压测、稳定性治理 | Compose、压测报告、部署文档 | 能部署、能压测、能说明排障方法 |
| W8 | 作品集与面试表达收口 | README 成品、Demo 脚本、简历项目描述 | 10 分钟内能完整讲清项目价值和决策 |
逐周执行
W1:Python 工程地基 + LLM 服务骨架
这周不要急着碰 RAG 和 Agent。先把目录结构、配置管理、日志、异常处理、模型调用封装、流式输出和结构化输出做扎实。后面所有能力都建立在这个骨架上,第一周偷懒,后面会不断返工。
建议任务:搭建 FastAPI 项目、做 /chat 和 /chat/stream、实现一个结构化输出接口、抽 Prompt 模板、补基础测试、写 README 的运行说明。
交付物:基础服务、结构化输出示例、提示词模板目录、最小测试集。
验收:本地一条命令可启动;同一套日志中能看到请求 id、耗时和异常;至少一个接口返回稳定 JSON。
W2:会话、缓存、可观测、配置治理
这周的重点是工程化而不是新功能。做 session、上下文窗口管理、缓存、超时、重试、降级和 trace,把一次请求拆开来看。AI 应用最常见的问题并不是“不会写接口”,而是出了问题不知道哪一段慢、哪一段错、哪一段成本高。
建议任务:引入 Redis 做缓存和会话;为模型调用、检索、工具调用预留 trace 字段;统一响应体和错误码;给配置文件做环境分层。
交付物:会话能力、缓存能力、结构化日志、trace 基础链路、配置规范文档。
验收:同问题二次请求可以命中缓存;模型超时时服务不会直接崩;你能仅凭日志复盘一次请求。
W3:RAG v1:入库、切分、检索、引用
先准备一小批真实知识源,不求多,求结构完整。建议从 20 到 30 份上市公司公告和 5 到 10 份交易所规则文档开始。先把 PDF 解析、页码保留、来源元数据、chunk 切分和向量入库打通,然后再接问答。
建议任务:写导入脚本、设计文档表与 chunk 表、接入 embedding、把 chunk 写入 pgvector、实现检索接口和带引用的问答接口。
交付物:/ingest、/retrieve、/ask 三类能力,以及首批知识源样本。
验收:回答必须附引用来源;检索结果至少带文档名、页码或段落信息;你能手动列出 3 个 badcase。
W4:RAG v2:混合检索、重排、评测
岗位面试里非常常见的追问不是“你会不会做 RAG”,而是“你怎么优化的”和“你怎么证明优化有效”。这一周必须做评测集、badcase 分类、混合检索和简单重排。哪怕指标体系还很朴素,也一定要开始建立“不是凭感觉改”的习惯。
建议任务:加关键词检索、向量与关键词融合排序、接入 rerank、整理 50 到 100 条问答样本、写评测脚本、记录优化前后差异。
交付物:RAG 评测脚本、优化记录、至少 3 类 badcase 的修复说明。
验收:你能拿一组样本展示优化前后的变化,能讲清 chunk、topK、rerank 的取舍逻辑。
W5:Agent v1:工具调用与工作流
这一周不追求多工具,而是要把工具调用链路做得清晰、稳定、可追踪。建议只做两个工具:一个计算类工具,一个规则校验类工具。这样既贴近金融文档场景,也便于展示模型何时该调工具、工具失败时如何回退。
建议任务:设计工具 schema、参数校验、异常处理、LangGraph 状态图、失败重试和结果汇总;记录每步输入输出。
交付物:Agent 工作流、两个工具、执行轨迹日志、Demo v1。
验收:至少一类问题会触发正确工具;工具失败时不会导致整条链路直接报废;日志里能看出每一步做了什么。
W6:Agent v2:回归、结构校验、拒答与兜底
到这一周,项目的关键差异已经不再是“多做了几个能力”,而是“能不能把错误拦下来”。Agent 很容易出现结构化输出不稳定、没有依据也回答、工具参数错误等问题,所以必须补回归、输出校验、拒答策略和自动修复机制。
建议任务:给 Prompt 编号;维护固定样本回归集;对 JSON 输出做 schema 校验;没有检索依据时拒答;记录异常路径。
交付物:Prompt 回归、结构化校验器、拒答机制、质量门禁说明。
验收:改 Prompt 后能一键跑回归;结构化输出不合法时可以拦截或重试;系统不会在“无依据”问题上强答。
W7:容器化、压测、稳定性治理
这一周是你和很多“只会做 Demo”的候选人拉开差距的关键。把应用、数据库、缓存都装进 Docker Compose,补启动自检、限流、压测和基础故障演练。面试官如果问“上线后会先出什么问题”,你必须能结合自己的项目说出具体答案。
建议任务:容器化、编写启动脚本、增加健康检查、做并发压测、记录 P95、分析瓶颈、补 OpenTelemetry 说明。
交付物:docker-compose.yml、压测报告、部署手册、排障说明。
验收:新机器按文档能启动;至少能讲出两个稳定性问题及处理方式;一次完整请求的耗时路径可解释。
W8:作品集、README、Demo 与面试表达
最后一周要做的是收口,而不是再塞功能。重写 README,补架构图,整理 10 分钟演示脚本,把“为什么这样选技术”“怎么验证优化”“哪里容易出线上问题”写成能直接说出口的话。求职阶段,表达能力会放大技术成果,也会放大技术短板。
建议任务:完善 README、补架构图、整理高频面试问答、写简历项目描述、做一轮 mock interview。
交付物:成品 README、演示脚本、简历项目描述、问答清单。
验收:你能在 10 分钟内讲清需求、方案、取舍、优化、问题与结果;读者 3 分钟能看懂这个项目值不值得面试你。
主项目设计
主项目建议命名为 证券/金融文档问答 Agent。它不需要做复杂前端,也不需要一上来做多 Agent 协作。重点是用一条完整链路把你在岗位里最可能被问到的能力串起来:知识源导入、RAG 检索、引用溯源、工具调用、结构化输出、日志链路、回归和部署。
| 模块 | 建议范围 | 这样设计的原因 |
|---|---|---|
| 知识源 | 上市公司公告、交易所规则 PDF | 公开可获取、结构真实、贴近岗位偏好 |
| RAG | 向量检索 + 关键词检索 + 引用溯源 | 足够体现检索质量与工程能力 |
| 工具 | 计算工具、规则校验工具 | 简单但贴近金融规则场景 |
| 输出 | 自然语言回答 + 结构化结论 | 便于展示结构化输出与二次消费能力 |
| 质量控制 | 拒答、引用校验、回归、异常兜底 | 体现“能上线”而不是“会跑 Demo” |
| 运维 | 容器化、trace、压测、限流 | 把后端稳定性优势迁移进 AI 项目 |
前 8 周不建议做复杂前端、多 Agent 协作、长链外部工具集成或 K8s 级别的发布体系。求职阶段最重要的是把单项目做深,把质量、解释能力和交付感做出来。
项目结构
下面这套目录结构足够支撑你从 W1 一直用到 W8,不会随着功能增加而失控。它的核心思想是把服务骨架、RAG、Agent、Prompt、测试和评测分开,让后期做回归和排障时更轻松。
ai-agent-app/
├─ app/
│ ├─ api/ # FastAPI 路由
│ ├─ core/ # 配置、日志、异常、依赖注入
│ ├─ llm/ # 模型调用封装
│ ├─ rag/
│ │ ├─ ingest/ # 文档导入与切分
│ │ ├─ retrieve/ # 检索、融合、重排
│ │ └─ citations/ # 引用组装
│ ├─ agent/
│ │ ├─ graphs/ # LangGraph 工作流
│ │ ├─ tools/ # 工具定义
│ │ └─ guards/ # 拒答、结构校验、兜底
│ ├─ schemas/ # Pydantic 模型
│ └─ services/ # 业务编排
├─ prompts/ # Prompt 模板与版本
├─ scripts/ # 导入、初始化、评测脚本
├─ tests/
│ ├─ unit/
│ ├─ integration/
│ └─ regression/
├─ eval/ # 评测集与结果
├─ docs/ # README、架构图、优化记录
├─ docker/
├─ docker-compose.yml
└─ README.md
第一周开工清单
如果现在就开始动手,第一周不需要再继续搜集大量资料。最好的做法是边搭骨架边学,先把项目跑起来,再用真实问题倒逼你补缺口。下面是一份可以直接执行的开工顺序。
- 建立项目目录和
FastAPI基础应用。 - 完成环境配置、日志初始化和异常处理中间件。
- 封装模型调用,先只做一个
chat方法。 - 实现
/chat与/chat/stream。 - 增加一个结构化输出接口,例如“提取问题意图”。
- 把 Prompt 抽到
prompts/目录中。 - 写 5 条基础接口测试。
- 补 README 的启动说明与当前能力说明。
本地可以稳定启动;模型接口能通;流式输出能返回;至少一个接口输出结构化 JSON;测试能跑;README 写清楚如何启动。只要这 6 件事完成,第一周就算合格。
面试表达重点
后续每一周复盘时,都建议围绕固定问题整理笔记。这样第八周就不需要临时拼凑话术,项目过程本身就会沉淀成面试材料。
- 为什么选择 Python 主线,而不是继续把 .NET 当主语言。
- 为什么选择
pgvector,它在项目里承担了什么角色。 - 你如何证明 RAG 优化真的有效,而不是主观感觉更好。
- 工具调用失败或没有依据时,系统如何拒答和兜底。
- 如果部署在客户环境,最容易先出什么问题,如何定位和缓解。
只要你能围绕这 5 个问题,把项目中的设计、取舍、指标、坏例子和故障处理讲顺,岗位匹配度就会非常高。对你来说,真正的竞争力不是“我也学过 AI”,而是“我能把 AI 应用做成一个可交付、可排障、可迭代的工程系统”。