开发一个能读报价、查规则、等待供应商回复,并在人工确认后接入采购业务的长任务 Agent。
本课程为 VIP 实战教程,以图文笔记和配套源码为主要学习资料,持续更新。你可以按照已发布章节完成环境配置、代码运行与结果核对。
课程大纲会在制作过程中根据实际讲解与实践情况调整,具体章节安排以站内更新为准。
从一笔采购需求,走进企业 Agent 开发
客户需要的商品库存不足,业务员需要向多家供应商询价。有人发来 Excel,有人回复 PDF,还有人直接发送报价截图。价格之外,还要核对起订量、交期、有效期和采购规则。
供应商也不会同时回复。有的立即报价,有的需要催办,还有的直到截止时间都没有消息。
这门课围绕“销售缺货后怎样补采购”,带你逐步开发一个智能采购助手:读取库存缺口、联系供应商、整理报价、依据规则比价,最后将采购建议交给业务员确认。

模型负责识别报价、理解规则和解释取舍;业务代码负责权限、金额、库存和单据状态。人工确认后,系统经过业务校验创建采购草稿,再衔接采购确认、收货和销售出库。
课程使用教学数据与供应商模拟服务,让你在本机重复演练不同报价格式、回复延迟和异常情况。
六大能力,串起完整业务流程

多模态报价识别
从读取一张报价截图开始,逐步处理 Excel、文字 PDF 和扫描 PDF。用 Pydantic 定义统一的报价结构,抽取单价、起订量、交期等字段,保留原文依据,将无法确认的信息标为待核对。
你会学习区分:输出结构正确、报价内容读对,以及这份报价能够用于本次采购,分别需要哪些检查。
采购规则 RAG
将采购规则切片、生成向量并存入 pgvector,检索当前有效的规则,再结合商品和订单判断是否适用。建议附带原文出处;没有找到依据时,明确返回原因。
你会处理规则版本、停用状态和索引发布,避免旧规则或未完成的索引影响结果。
Agent 流程与 MCP
用 LangGraph 组织状态、节点与条件分支,明确每一步需要什么输入、产出什么结果,以及失败时怎样继续或结束。
通过 MCP 接入供应商模拟服务,完成发送询价、查询回复和获取附件,将外部服务接进业务流程。
长任务与故障恢复
保存任务状态,在等待外部回复时暂停,按时间检查、催办与截止;服务重启后读取已保存的进度继续推进。
结合中断和重试场景,理解检查点与幂等各自解决的问题,验证恢复时不会重复发送询价、重复催办或重复创建采购草稿。
人工确认与业务协作
先用代码检查报价有效期、起订量和明细覆盖,再让模型结合价格、交期与规则生成建议,说明推荐理由和排除原因。
模型可调用的工具限定为只读查询。发送询价、催办和创建采购草稿由流程节点按规则执行,业务写入仍经过权限和业务校验。
评测、优化与排查
用同一批样例和标准答案,比较纯规则基线、第一版与优化版的准确率、模型成本和耗时。
尝试附件预处理、模型分工和解析结果复用,通过实际记录判断改动是否有效,并用调用日志和检查点定位抽取错误与流程卡点。
课程特色:让 Agent 跨时间推进任务
一次询价可能持续几分钟,也可能跨越几天。等待期间需要保存进度,收到回复后继续执行,到时间后催办或结束等待,生成建议后还要等待业务员确认。

围绕这条长任务流程,你会练习:
- 等待与恢复:暂停任务,接收外部结果,再从已保存的状态继续。
- 催办与截止:对未回复的供应商催办,到截止时间使用已收到的报价继续处理。
- 中断与防重:模拟服务重启、写操作后中断等情况,核对恢复结果。
- 人工参与:保存建议与确认状态,将人的决定接回后续业务。
- 进度展示:通过 SSE 展示真实阶段,关闭页面后,询价仍由服务端继续推进。
这些经验也可以用于需要等待外部系统、处理资料和人工审批的其他业务应用。
学完后,你能收获什么
将 AI 接入业务系统的方法。 能够区分模型适合处理的识别、理解和取舍问题,以及必须由确定代码保护的权限、金额、库存与事务。
实现多步骤 Agent 的经验。 能够组织状态和分支,处理外部等待、人工确认、取消、失败与恢复,并解释每个保护机制的作用。
评价和优化 Agent 的能力。 能够建立评测样例,记录错误、用量与耗时,用对比结果支持方案选择。
一份能够运行、演示和讲解的项目。 完成对应章节后,可以展示报价解析、规则引用、采购建议、任务进度和故障恢复,并沿着记录解释执行过程。
怎样用于简历和面试
如果你准备应聘 Python 后端、AI 应用开发或 Agent 应用相关岗位,可以围绕自己完成并验证的功能,整理项目介绍、演示和技术讨论材料。

项目能够支持你展开讨论的内容包括:
- 模型输出的可靠性:JSON 格式正确,为什么仍可能读错报价?无法确认的字段怎样处理?
- RAG 的业务适用性:怎样管理规则版本?为什么检索命中后还要判断是否适用于当前订单?
- 长任务的执行机制:状态保存在哪里?等待期间发生重启,怎样继续?
- 重复操作的保护:为什么有检查点还需要幂等?重复确认怎样返回同一份采购结果?
- AI 与业务的权限边界:模型能调用哪些工具?怎样阻止越权和未经确认的写入?
- 优化的实际依据:改动影响了哪些指标?准确率、成本和耗时怎样比较?
课程最后会结合评测记录与故障演示,练习讲清项目目标、关键设计、本人实现的部分和验证结果。
完成项目并理解关键实现后,可以将其作为课程实战或个人项目写进简历。供应商与业务数据均为模拟数据,应如实说明项目来源、个人贡献和验证范围。
学习路线
| 阶段 | 学习内容 | 阶段成果 |
|---|---|---|
| 1. 识别报价,建立评测 | 运行项目、调用多模态模型、定义报价结构、接入上传与调用记录 | 从报价截图中抽取字段,核对准确率、成本与耗时 |
| 2. 理解业务,接入工具 | 走通采购与库存流程,阅读事务、防重与权限,编写只读工具 | 让 Agent 安全读取真实业务数据 |
| 3. 编排询价,接入规则与供应商 | 建立 LangGraph 流程,检索采购规则,通过 MCP 联系供应商 | 根据销售缺口与规则筛选供应商并发出询价 |
| 4. 实现长任务与故障恢复 | 保存检查点、等待回复、催办、截止、中断恢复与幂等 | 询价跨时间推进,服务重启后继续,恢复时避免重复操作 |
| 5. 生成建议,完成人工确认 | 扩展多格式解析,校验报价、比价、人工确认与取消 | 将有效报价整理成采购建议,确认后创建采购草稿 |
| 6. 联调、优化与项目展示 | 展示进度、完整评测、故障验证与问题排查 | 用运行结果、评测记录和故障演示讲清项目 |
技术栈与架构
项目采用 FastAPI + LangGraph + PostgreSQL,业务模块与 Agent 模块在同一个后端应用中协作,Vue 前端展示业务操作与询价进度,独立的供应商模拟服务提供外部询价能力。

| 技术 | 在项目中的用途 |
|---|---|
| Python + uv | 编写后端与 Agent,管理依赖和运行环境 |
| FastAPI | 提供业务接口、报价上传、询价与人工确认接口 |
| LangChain + 多模态模型 API | 接入模型,识别报价附件、理解规则并生成建议 |
| Pydantic | 定义请求与报价结构,校验模型输出 |
| LangGraph | 编排状态、节点与分支,实现暂停等待、人工确认和恢复 |
| PostgreSQL + SQLAlchemy | 保存业务单据、报价、采购建议与调用记录 |
| pgvector + Embedding | 存储规则向量,检索相关采购规则 |
| LangGraph PostgreSQL 检查点组件 | 持久化执行状态,支持中断后恢复 |
| MCP Python SDK | 连接供应商模拟服务,发送询价、查询回复与附件 |
| Vue 3 + TypeScript + Element Plus | 构建业务页面、报价对比与人工确认界面 |
| SSE | 向页面推送询价进度与处理结果 |
模型 API 负责识别与理解,LangGraph 组织任务推进,数据库保存业务数据与执行状态,业务代码控制权限、事务和实际写入。
哪些内容亲手实现,哪些提供源码
| 内容 | 学习方式 |
|---|---|
| Agent 模块 | 逐节实现模型调用、报价解析、规则检索、询价流程、等待恢复、人工确认与评测 |
| 业务模块 | 提供源码,沿请求阅读销售、采购、库存,以及事务、权限和防重实现 |
| Vue 前端 | 提供页面,逐步联调接口与 SSE 进度 |
| 供应商模拟服务 | 提供源码与配置,练习调用并复现延迟回复、不回复等情况 |
| 报价与评测样例 | 提供教学附件与标准答案,核对结果并比较不同方案 |
适合谁学习
- 已有 Python 基础,希望进入 AI 应用开发的学习者。
- 用过 FastAPI,希望通过完整项目学习 LangGraph、RAG 和 MCP 的开发者。
- 了解 Agent 开发,希望系统掌握流程编排、人工确认和故障恢复的同学。
- 已有后端经验,希望学习怎样为业务系统增加 AI 能力的开发者。
需要理解 Python 函数、类、异常和基本异步写法,用过 FastAPI,并了解数据库增删改查。LangGraph、MCP 和向量检索会结合项目逐步引入;没有 FastAPI 基础,可以先学习站内免费入门教程。
项目在本机运行,通过云端 API 调用模型,不需要本地显卡。学习时需要自备支持图片输入的模型 API 账号,调用费用由模型服务商计费。
求职资料包
本课程的求职资料包将在课程结课后提供。
课程更新期间,架构图将根据项目的实际实现同步完善。