原招聘信息地址

这份招聘要求,表面上是一份岗位描述,本质上是一张能力地图。它暗含了两层能力的叠加:
- 第一层,是"会用AI工具做工程"的通用能力;
- 第二层,是"理解Agent底层机制"的专业能力。
很多人容易把这两层混为一谈,结果学得又杂又浅,哪个都不精。
下面,我们分四步走:
- 先拆解JD原文,看清它到底在考什么;
- 再逐条讲透技术名词,按一个Agent实际运行的顺序,把原理和为什么这么设计一起说清楚;
- 接着列出一张配套的技术栈全景图,按层级把概念落地到具体代码工具;
- 最后给出一套带时间规划、落地项目和验收标准的完整学习路径。
你可以把它当作一份三个月到半年的自学地图 ,也可以当作面试前的查漏补全清单。
一、先看清JD到底在要求什么
把原文拆成两段来看,逻辑会更清晰:
第一段(工程能力)
能熟练使用AI Agent工具开发软件,并且能在完全没有经验的技术领域里,靠AI辅助也能写出有质量保证的代码。
这考察的不是"你会不会写代码",而是 "你会不会借助AI,快速吃透一个陌生技术栈,并且保证产出质量"。
第二段(原理能力)
要求你不仅是Agent产品的重度用户,还要理解这些产品背后的运行机制------LLM怎么调用、上下文怎么管理、工具怎么调用、多个Agent怎么协作。
这考察的是 "你知不知道这些产品为什么这样设计,好不好用背后的原因是什么"。
一句话总结
JD要的不是"会用AI写代码的人",而是 "既能用Agent高效交付,又能讲清楚Agent内部原理,甚至能自己动手改造Agent运行环境的人"。
有一个记忆公式可以帮你贯穿全文:Agent = LLM + Planning + Memory + Tools。后面所有名词,基本都是在给这四个部分添加细节。
二、技术名词逐个讲清楚(讲原理,也讲为什么)
下面按照一个Agent系统实际运行的顺序来讲,而不是按字母表。这样更容易建立整体图景,而不是记一堆孤立的概念。
1. LLM API ------ 一切的起点
LLM API就是你调用大模型的接口:发一段文本过去,模型返回一段文本。
新手容易忽略三个关键点:
- messages结构:对话由user和assistant轮次组成的数组。模型自己不会"记住"上一次调用,全靠你把历史对话传回去。
- system prompt:决定模型的角色设定和行为边界。
- streaming流式输出:模型是逐token生成内容的,流式就是让前端实时展示这个过程,而不是等全部生成完再显示。
后面所有Agent机制,本质上都是在解决同一个问题:在一次次LLM API调用之间,怎么组织好传给模型的内容,以及怎么处理返回的内容。吃透了API调用,后面的概念都会好懂很多。
2. KV Cache ------ 决定Agent效率和成本的隐藏机制
这是JD里最容易被新手忽略、但资深工程师格外看重的一点。
大模型每生成一个token,都要用到之前所有token算出的注意力中间结果(Key和Value,简称KV)。如果每次都从头重算,速度慢、成本高。KV Cache就是把这些中间结果缓存下来,当新一轮请求的开头部分和上一轮完全一样时,直接复用缓存,只计算新增部分。
实际影响 :如果你频繁在对话历史前面插入或修改内容(比如动态改写system prompt),会导致KV Cache频繁失效,拖慢速度、推高成本。这也是为什么很多Agent系统的设计原则是 "只在末尾追加,不改前面已生成的部分"。
理解了这一点,你才能看懂主流Agent产品的上下文管理策略为什么那样设计------这往往是面试中区分"用过"和"懂原理"的关键问题。
3. Agent Loop ------ Agent的心脏
一个Agent本质上就是一个循环:
接收任务 → 模型思考下一步该做什么 → 调用工具执行 → 把执行结果喂回给模型 → 模型继续思考 → ......直到任务完成
这个模式也常被称为 ReAct(Reasoning + Acting)。
新手最容易犯的错误,是把Agent当成"一次性生成答案的高级版"。实际上,Agent的关键在于 能在多轮循环中不断根据新信息调整策略------这是Agent和普通对话机器人的本质区别,没有这个循环就不算Agent。
4. Tool Use(工具调用)------ Agent和世界交互的手
模型本身只会生成文本,不能真的查数据库、发邮件、执行代码。Tool Use让模型在生成文本时能"声明"它想调用某个工具、传什么参数,由外部程序真正执行,再把结果返回给模型。
具体机制是:你在调用API时,告诉模型有哪些工具可用(名称、描述、参数格式),模型需要时会返回结构化的调用请求,而不是普通文本。
这是所有Agent产品能"做事"而不只是"聊天"的技术基础。
5. Reasoning(推理)+ 6. Planning(规划)
这两个概念紧密相关,放在一起讲。
- Reasoning(推理):指模型在给出答案或采取行动前,先进行一段显式思考。比如链式思考(CoT)、现在很多模型自带的"深度思考"模式。
- Planning(规划):是Reasoning在Agent场景下的具体应用。面对复杂目标,Agent先在内部生成任务分解,再按计划逐步执行,执行中发现不对还要能重新规划。
新手容易忽视的一点是:好的Planning不是一次性生成完整计划就不再变,而是要在Agent Loop中不断根据执行结果动态调整。这也是为什么Planning和Agent Loop是紧密绑定的概念。
对应到JD里"无经验领域也能靠AI高质量编程"这条,靠的正是这种规划推理能力------拆解陌生技术栈的学习路径,然后逐步执行。
7. Skills ------ 把经验打包成可复用的知识模块
与其把所有操作细节塞进system prompt,让模型每次重新"想起来",不如把某类任务的最佳实践写成独立的文档或脚本包(比如"如何生成规范的Word文档"),让Agent按需加载。
好处是:
- 平时不占上下文空间
- 需要时才动态调用
- 能被反复复用、独立维护更新
8. MCP(Model Context Protocol)------ Agent连接外部世界的标准接口
MCP出现之前,想让Agent接入Gmail、Slack、GitHub、数据库,每接一个服务都要单独写适配代码,不同Agent产品之间也无法复用。
MCP是一个开放协议,定义了Agent和外部工具/数据源之间统一的通信标准。可以理解成 "Agent界的USB接口" ------只要服务实现了MCP,任何支持MCP的Agent客户端都能直接接入,不用重复造轮子。
这是目前Agent生态发展最快的方向之一,也是搭建企业级Agent系统的必备标准。
9. Memory(记忆)------ 让Agent记住"之前发生过什么"
LLM本身不记得任何历史,每次调用都要把需要的上下文重新传回去。Memory机制通常分三层:
| 记忆类型 | 存储内容 | 技术载体 |
|---|---|---|
| 短期/工作记忆 | 当前任务的中间状态 | 内存 / Redis |
| 中期记忆 | 完整对话历史 | MySQL / PostgreSQL |
| 长期记忆 | 跨对话保留的用户偏好和事实知识 | 向量数据库(语义检索) |
这一层如果想深入,直接对照你自己熟悉的三层记忆架构去理解,就是最好的案例,不需要再找别的教材。
10. Subagent(子代理)+ 11. Multi-Agent(多智能体协作)
-
Subagent(子代理) :任务足够复杂时,主Agent把某个子任务完整委派给独立的Subagent执行。子Agent有自己独立的上下文窗口,处理完只把"结果摘要"返回给主Agent。核心价值是上下文隔离------避免主Agent被中间过程信息淹没。
-
Multi-Agent(多智能体协作):是这个思路的扩展。设计多个各有专长的Agent(规划、编码、测试、审核),按明确协议协同完成复杂系统级任务。
在学习路径的阶段四,你会用LangGraph搭建这样一个多Agent系统,把概念落地成工程实践。
12. Prompt Engineering / Context Engineering / Harness Engineering ------ 三层递进,边界要分清
这是JD里反复出现的三个概念,也是最容易讲混的地方。它们的边界必须分清楚:
| 概念 | 关注范围 | 核心操作 | 通俗理解 |
|---|---|---|---|
| Prompt Engineering | 单次调用的输入文本 | 角色设定、约束、少样本示例、输出格式控制 | "把这一次'指令'写好" |
| Context Engineering | 整个运行过程中的全部信息组织 | 历史裁剪压缩、工具结果摘要、RAG知识注入、Token预算分配 | "把多轮'背景信息'管理好" |
| Harness Engineering | 整个Agent系统的工程架构 | Loop设计、工具注册调度、错误处理重试、多Agent通信、状态持久化、可观测性、人工审批介入 | "把整套'运行环境'搭建好" |
JD特意提到 "对Agent Harness开发有极大热情",说明岗位真正看重的是第三层能力------不满足于用别人做好的产品,而是有兴趣自己设计和搭建这套运行环境。
这三层的边界,是面试里最容易被追问、也最容易讲混的高频考点。建议在学习每个阶段时,有意识地思考:我现在做的事,属于这三层中的哪一层?
三、配套技术栈全景图
前面讲的都是"概念层",但概念要落地,必须依托具体的代码技术栈。这一部分按层级列出整套Agent系统的技术栈,每一层都解释清楚是什么、为什么需要它。
层级1:编程语言与后端Web框架
| 技术 | 作用 |
|---|---|
| Python 3.10+ | 核心语法之外,重点补上类型注解(Type Hints)------不是可选项,FastAPI和主流Agent框架都重度依赖它 |
| FastAPI | 搭建Agent后端服务的主流选择,原生支持异步(async/await),适合大量I/O等待场景 |
| Uvicorn | 跑FastAPI的ASGI服务器,了解启动和--reload调试即可 |
层级2:前端与实时通信
| 技术 | 作用 |
|---|---|
| HTML/CSS/JS基础 | 不用精通,但要能看懂DOM结构和基本JS语法 |
| Vue3(Composition API) | 组件化开发前端界面,直接学Composition API(setup、ref、reactive) |
| Vite | Vue3配套构建工具,用npm create vue@latest起项目即可 |
| Axios / 原生fetch | 前端调用后端API的基础 |
| SSE(Server-Sent Events) | Agent输出逐token流式生成,前端实时渲染"打字机效果",比WebSocket简单,是主流首选 |
层级3:Agent编排框架
| 技术 | 定位 |
|---|---|
| LangChain | "零件库"------可插拔的组件化工具库(Prompt模板、LLM调用、输出解析、工具封装) |
| LangGraph | "总装图纸"------状态图编排框架,原生支持条件分支、循环、状态持久化 |
两者关系:LangChain提供零件,LangGraph负责总装。不是互相替代,而是配合使用。
层级4:数据与存储层
| 技术 | 用途 |
|---|---|
| MySQL / PostgreSQL | 存对话历史、用户画像等结构化数据(中期记忆) |
| Redis | 存Agent执行过程中的中间状态、短期/工作记忆,读写速度快 |
| 向量数据库(Chroma起步,进阶Qdrant/Milvus) | 存长期记忆和RAG知识库,靠语义相似度检索 |
层级5:通信与协议
- MCP:工具接入标准协议
- HTTP / SSE / WebSocket:对外通信的基础协议栈
层级6:工程化与部署
| 技术 | 用途 |
|---|---|
| Git | 版本管理,团队协作必备 |
| Docker | 将整套系统(后端+数据库+向量库)打包成可移植容器 |
| Langfuse / LangSmith(可选) | Agent可观测性工具,追踪每一步调用和执行耗时 |
四、给新手的学习路径(五个阶段)
下面五个阶段,按 "先会用 → 再理解 → 后改造" 的逻辑递进。每个阶段都包含:目标、学习内容、落地项目,以及它对应JD里的哪项要求。
阶段0:编程与Web框架基础
(0基础必学,有基础可跳过,周期1-2周)
目标:具备读懂和调用Agent系统所需的最低限度编程能力,同时提前接触后面会用到的Web框架。
学习内容:
- Python核心语法(变量、循环、函数、类、JSON处理、文件读写)
- 类型注解基础
- HTTP请求基础(requests库)
- Git和终端基本操作
- FastAPI入门:写一个"Hello World"接口,加一个接收JSON参数返回处理结果的POST接口
- 申请一个大模型的API Key(国内可选DeepSeek、通义千问,国外可选Anthropic、OpenAI),写一段Python代码完成一次问答调用
落地项目:一个基于FastAPI的接口,内部调用LLM API实现连续多轮对话,用Postman或简单脚本测试通过。
阶段一:成为AI编程工具的重度用户 + 补齐前端基础
(周期1-2周)
目标:让"用AI辅助开发"变成本能反应,满足JD里"高强度Agent产品用户"的要求。同时借这个机会把Vue3这个陌生技术栈学会。
具体做法:
- 代码类Agent:Cursor、Claude Code、GitHub Copilot任选1-2款深度使用
- 通用Agent平台:Coze、Dify任选一款,搭建一个带搜索/代码执行插件的简单Bot
- 用AI工具辅助学习Vue3:让AI讲解Composition API的核心概念,用AI辅助写一个简单前端页面
过程中记录你是怎么向AI提问、怎么验证AI给出的Vue3代码是否正确的。先建立 "信任但验证"(trust but verify) 的工作习惯。
落地项目:一个Vue3 + FastAPI的前后端联调小项目------前端是一个简单对话框,调用后端FastAPI接口,展示LLM的问答结果。同时整理一份自己的"AI辅助开发checklist"。
阶段二:亲手实现一个最简单的Agent Loop
(周期2-3周)
目标:不再把Agent当黑盒,知道它内部到底在做什么。同时体会"手写"和"用框架"之间的差异。
具体做法:
- 手写版本:只用最原始的LLM API,写一个最简单的Agent Loop------给模型一个"计算器"工具,让它解决需要多步工具调用的问题
- 加入Planning:让模型先输出任务分解列表再逐项执行,观察执行中途改变计划时代码要怎么处理
- 加入短期记忆:把对话历史正确地在每轮传回去
- 框架重构:用LangChain的Tool抽象和Prompt模板把同样的逻辑重写一遍,对比两版代码量和结构的差异
落地项目:两个版本的同一个Agent(纯手写版 + LangChain版),支持至少2个工具调用、含短期记忆,能完成"需求拆解→执行→校验"的完整闭环,并写一段对比笔记说明两版的优劣。
阶段三:三大工程实战 + 引入LangGraph和存储层
(周期3-5周,岗位核心考核)
这一阶段按 Prompt → Context → Harness 的顺序层层升级。
第1步:Prompt Engineering(约1周)
同一需求写多版提示词做对比测试,重点练习控制AI规范写注释、写单元测试、按格式输出(JSON/Markdown代码块)。产出一套自己的代码开发提示词模板库。
第2步:Context Engineering(约1-2周)
给阶段二做的Agent加一层RAG:
- 用Chroma轻量向量库存技术文档
- 让AI写代码时自动检索文档辅助回答
- 练习上下文压缩、历史对话摘要、Token预算管理
穿插:原理补课(与上两步并行)
- KV Cache:找一篇讲Transformer推理优化的文章,理解其原理
- MCP:直接看官方文档过一遍交互流程,接一个最简单的MCP server试一下
- Subagent / Multi-Agent:找一两个开源多智能体项目,重点看它们怎么做"上下文隔离"和"结果摘要传递"
每个主题写一段200-300字"讲给别人听"的解释------写得出来才算真的理解了。
第3步:Harness Engineering(约2-3周)
这是技术栈融合的重点:
- 用LangGraph把阶段二手写的Agent Loop重构成显式的状态图(节点+边)
- 存储层全部接入:MySQL存对话历史,Redis做短期记忆缓存
- 后端用FastAPI暴露一个SSE流式接口,把LangGraph的流式输出实时推给前端
- 前端用Vue3消费这个SSE接口,实现打字机效果的流式对话界面
落地项目:一个完整的前后端联调Agent系统------Vue3前端 + FastAPI后端 + LangGraph编排 + MySQL/Redis存储 + Chroma向量检索,支持流式对话、有短期和长期记忆、能调用至少2个工具。
阶段四:高阶系统开发,对标岗位入职标准
(周期2-4周)
目标:从"用Agent产品"进化到"有能力自己设计Agent运行环境"。
具体做法:
-
Multi-Agent系统:用LangGraph的多图协同搭建一个多Agent系统,模拟企业级软件开发场景------
- 规划Agent拆解需求
- 后端Agent写接口
- 前端Agent写页面
- 测试Agent自动写单元测试
- 审核Agent校验代码质量
- 多个Agent之间靠明确协议协作
-
工程化部署:整个系统用Docker打包(后端服务+MySQL+Redis+向量库全部容器化)
-
终极验证:选一个你完全没接触过的技术栈(比如Go后端、React前端、小程序开发),只靠这套Multi-Agent系统自主规划、检索、编码、调试完成一个完整项目,全程可人工干预调试。
这是直接对标JD "无经验领域也能高质量编程" 这条要求的验证方式,也是简历里含金量最高的项目。
持续做两件事:
- 深度对比至少两款设计理念不同的Agent产品的错误处理、上下文管理、工具调度差异
- 尝试自己改造或扩展一个开源Agent Harness的某个环节
有余力可以接入Langfuse这类可观测性工具,给整套Multi-Agent系统加上执行链路追踪。
五、学习验收标准(自查是否达到JD要求)
完成上面五个阶段后,用下面这份清单自查:
- 能熟练使用Cursor、Coze等主流Agent工具独立完成全流程软件开发,并能借助AI快速上手Vue3、Go等陌生技术栈
- 能清晰讲清楚LLM API、KV Cache、Agent Loop、Tool Use、Reasoning、Planning、Skills、MCP、Memory、Subagent、Multi-Agent每一项的原理,以及"为什么这样设计"
- 能准确分清Prompt Engineering、Context Engineering、Harness Engineering三者的边界和递进关系
- 能说清LangChain和LangGraph的定位差异,并且实际用LangGraph搭建过带状态持久化的Agent工作流
- 独立设计并搭建过一套前后端打通(Vue3+FastAPI)、含流式输出、含MySQL/Redis/向量库三层存储的Agent系统
- 面对完全没接触过的编程语言或框架,能依靠Agent自主规划、检索、编码、调试,产出可运行的高质量代码
- 能对比不同模型和不同Agent工具的优劣,并从开发者体验角度提出具体的优化建议
六、一个提醒
这份JD本质上要求的,不是掌握某个具体框架的API,而是要求你对 "LLM怎么被组织成一个可靠系统" 这件事有系统性理解。
技术名词和具体框架会变------今天是LangGraph,明天可能是别的框架;今天是Vue3,明天可能是别的前端框架。但Agent Loop、上下文管理、工具调用这些底层原理相对稳定。
建议把学习重心放在 "理解原理 + 动手实践" 上。技术栈只是把原理落地的载体,不是学习的终点。这样即使工具迭代,你的能力也不会过时。
七、一条更高效的捷径
上面的学习路径,是一份扎实的自学地图。但如果你希望在更短的时间内,不仅走完这条路,还能和同样方向的同行者一起探讨、获得资深工程师的即时反馈,那可以考虑另一种学习方式。
慕课网最近推出的 「Harness & Hermes」多智能体开发特训营 ,其课程大纲的设计思路与本文提到的能力模型高度吻合。它不只是讲API调用,而是把 Harness Engineering(脚手架工程) 作为核心,带你从0到1手写一个完整的Multi-Agent系统。
感兴趣的话,可以了解一下慕课网的 「Harness & Hermes」多智能体开发特训营。