Agent 运行时
Session、Run、Agent Process 与 Runtime 的边界
把四层对象分开:Session 是持久化的产品会话,保存 CID、消息、事件和文件关联;Run 是一次具体执行;Agent Process 是承载执行的操作系统进程;Agent Runtime 是进程内已装配的配置、Provider、Skill、MCP 与临时状态。Session 可以跨进程恢复,Process 可以空闲等待或按需启动,Runtime/Process 的存活不等于 Agent 正在思考。
建议预留 100 分钟
学习目标
- 能画出 Session → Run → Process/Runtime 的生命周期关系
- 能解释为什么聊天记录可以持久化而 Agent Process 可以销毁
- 能根据资源约束选择常驻、TTL 回收或每次冷启动
关键概念
- Session、Run、Agent Process、Agent Runtime 的边界
- 持久状态与临时运行时分离
- 按需启动、空闲回收与状态恢复
为什么学习
- 这是理解 Agent 平台资源模型和故障恢复的基础概念,后续需要在真实部署与压力约束下应用。
如何检验理解
- 能区分 Codex 会话、PI sessions 记录、messages/session_events 与 uploads 目录
- 能说明 Pi 进程空闲时只是在等待事件,不代表后台持续思考
- 能用进程日志、数据库事件和目录状态证明一次进程回收后的会话可恢复
系统全景
生产级 Agent AI 应用后端全景
从 NestJS 框架根基到可运营、可治理、可扩展的 AI 应用后端。这是学习地图,不代表要在一个项目中一次学完。
建议预留 20 分钟
学习目标
- 识别能力分层
关键概念
- NestJS
- AI Backend
- Capability Map
为什么学习
- 该节点在当前路线中主要用于建立边界意识;现阶段应能识别它何时需要、何时可以延后。
如何检验理解
- 识别能力分层
- 面对需求或架构图时,能指出「生产级 Agent AI 应用后端全景」的用途、触发条件和可延后边界
Agent 运行时
Agent Runtime:进程生命周期与按需启动
结合节点目标,安排适合自己的练习。
建议预留 0 分钟
Python 基础
异常处理与日志体系
掌握异常层级与 try/except/finally、自定义异常、logging 体系(logger/Handler/格式化),与 JS try/catch 对照。
建议预留 90 分钟
学习目标
- 能设计合理的异常层级与捕获策略
- 能用 logging 搭建带格式化的日志
关键概念
- 异常层级与捕获
- 自定义异常
- logging 体系
为什么学习
- 生产 Agent 服务的可观测性始于日志;NestJS 有成熟的 logger 体系可对照迁移。
如何检验理解
- 为一个模块设计异常层级并写日志
- 对比 logging 与 print 在生产中的差异
Python 基础
函数、闭包与装饰器工厂
理解 Python 一等函数与装饰器机制:闭包、*args/**kwargs、装饰器工厂与 functools.wraps。
建议预留 150 分钟
学习目标
- 能写出一个带参数的装饰器工厂
- 能解释闭包捕获变量的规则
关键概念
- 装饰器与装饰器工厂
- 闭包与函数作用域
- *args/**kwargs 与 functools.wraps
为什么学习
- FastAPI 路由、LangChain @tool、LangGraph 节点都重度使用装饰器/高阶函数,不理解它将无法阅读框架源码。
如何检验理解
- 实现一个计时装饰器工厂并验证效果
- 解释 functools.wraps 的作用与不用的后果
Python 基础
虚拟环境与工程结构
掌握 Python 项目工程化:uv/venv、pyproject.toml、依赖锁定、包与模块组织,与 Node 的 package.json/npm 对照。
建议预留 90 分钟
学习目标
- 能初始化一个带虚拟环境与依赖清单的 Python 项目
- 能组织多文件包结构并正确导入
关键概念
- uv/venv 与依赖锁定
- pyproject.toml 与 requirements.txt
- 包与模块导入
为什么学习
- 后续所有项目(FastAPI、LangChain)都需要规范的工程结构;对照 Nest 项目结构理解差异。
如何检验理解
- 用 uv 初始化一个新 Python 项目并安装两个依赖
- 解释虚拟环境为什么是必需的
框架核心
后端请求链路与 Node 运行时
学习 后端请求链路与 Node 运行时,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“后端请求链路与 Node 运行时”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“后端请求链路与 Node 运行时”的最小闭环
关键概念
- 后端请求链路与 Node 运行时
- NestJS
- 生产级后端
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“后端请求链路与 Node 运行时”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“后端请求链路与 Node 运行时”的最小闭环
- 能画出或口述「后端请求链路与 Node 运行时」的关键机制,解释边界并诊断一个典型错误
Python 基础
asyncio 深入:事件循环与并发原语
掌握 Python 异步模型:async/await、事件循环、Task 层级、并发原语(gather/wait/锁/信号量),与 JS 异步对照。
建议预留 180 分钟
学习目标
- 能写一个并发拉取多个 HTTP 资源的异步函数并控制并发度
- 能解释 async 函数与普通函数互调的限制及解法
关键概念
- async/await 与事件循环
- asyncio.gather/wait 与信号量
- 同步阻塞与事件循环饥饿
为什么学习
- LLM API 调用、流式输出与 FastAPI 全异步栈都以 asyncio 为核心,是后续所有网络章节的前置。
如何检验理解
- 用 asyncio + 信号量并发完成 10 个 API 请求并测量耗时
- 解释为什么在 async 函数里用同步 requests 会卡住整个服务
Python 基础
类型系统与数据结构
理解 Python 的动态类型与渐进式类型注解:可变/不可变、鸭子类型、typing 模块核心用法,与 TS 类型系统对照。
建议预留 120 分钟
学习目标
- 能解释可变与不可变对象的区别及各自陷阱
- 能写出带类型注解的函数签名并通过 mypy
关键概念
- 类型注解 typing
- 可变与不可变
- None 与 falsy 语义
为什么学习
- Agent 开发(尤其 LangChain 源码阅读)依赖对 Python 类型系统的准确理解。
如何检验理解
- 用类型注解写一个处理 JSON 数据的函数并跑 mypy 通过
- 解释为什么 Python 中默认参数不能是可变对象
版本控制
Git 版本控制与分支模型
围绕真实项目掌握 Git 的核心模型:commit、branch、tag、父提交、共同祖先、历史分叉与安全迁移。
建议预留 60 分钟
如何检验理解
- 在真实工业项目中定位东山旧线与 Gitea main 的历史分叉
- 设计并验证从新 main 派生版本分支的方案
Python 基础
迭代器、生成器与 yield
掌握迭代器协议、生成器与 yield/yield from、惰性求值:这是 LLM 流式输出与流式管道的语言级地基。
建议预留 120 分钟
学习目标
- 能写出一个生成器并解释其惰性求值
- 能用生成器实现流式数据管道
关键概念
- 迭代器协议
- 生成器与 yield
- 惰性求值与内存收益
为什么学习
- LLM 流式输出、SSE、LangChain streaming 全部建立在生成器之上,也是 asyncio 异步流的前置。
如何检验理解
- 用生成器实现一个逐行处理大文件的管道并对比内存占用
- 解释 yield 与 return 在函数执行上的本质差异
Python 基础
Python 语法快速入门(面向有经验者)
针对已有 JS/TS 经验的学习者,快速建立 Python 语法心智:缩进、内置类型、流程控制与标准库习惯。
建议预留 90 分钟
学习目标
- 能用 Python 写出与 JS 等价的基础逻辑(循环、条件、dict/list 操作)
- 能读懂并改写一段中等复杂度的 Python 代码
关键概念
- 缩进与代码块
- 内置类型 dict/list/tuple/set
- 标准库 os/json/pathlib
为什么学习
- 本节点是全部后续学习的语法地基;学习者已有编程经验,重点在差异而非从零教学。
如何检验理解
- 把一段 JS 函数改写为等价的 Python 实现并跑通
- 解释 Python 缩进与 JS 花括号在作用域语义上的区别
FastAPI
Pydantic 模型与输入校验
理解 Pydantic v2 模型:字段校验、类型转换、嵌套模型、Field 约束与自定义验证器。
建议预留 120 分钟
学习目标
- 能定义带校验规则的嵌套模型
- 能写自定义验证器处理特殊业务规则
关键概念
- Pydantic BaseModel
- 字段约束与 Field
- 嵌套模型与序列化
为什么学习
- Agent 的工具契约、结构化输出解析都以 Pydantic 为基石,是本树最常用库之一。
如何检验理解
- 定义一个带约束的嵌套模型并演示校验失败
- 解释 FastAPI 请求体为何等于 Pydantic 模型
FastAPI
FastAPI 测试:pytest/TestClient
掌握 FastAPI 测试方法:TestClient、依赖覆盖、异步接口测试、pytest fixture 体系。
建议预留 150 分钟
学习目标
- 能为接口写单元与集成测试
- 能用依赖覆盖替换真实依赖进行测试
关键概念
- pytest 与 fixture
- TestClient 与依赖覆盖
- 异步测试
为什么学习
- Agent 应用评测依赖可靠的测试基础,先建立测试习惯再进入 Agent 阶段。
如何检验理解
- 为 /items 接口写 3 个测试用例并跑通
- 用依赖覆盖测试鉴权失败的路径
FastAPI
流式响应与 SSE
掌握在 FastAPI 中实现流式输出:SSE 与 StreamingResponse、异步生成器,这是 LLM 聊天接口的核心形态。
建议预留 150 分钟
学习目标
- 能实现一个 SSE 流式聊天接口
- 能解释流式响应与普通 JSON 响应的区别
关键概念
- SSE 协议
- StreamingResponse
- 异步生成器
为什么学习
- LLM 输出天然是流式的,所有 Agent 服务最终都要面对流式协议。
如何检验理解
- 实现 /chat/stream 接口并用 curl 观察增量输出
- 解释为什么流式体验对 LLM 应用至关重要
框架核心
Nest 应用启动与平台适配器
学习 Nest 应用启动与平台适配器,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“Nest 应用启动与平台适配器”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Nest 应用启动与平台适配器”的最小闭环
关键概念
- Nest 应用启动与平台适配器
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“Nest 应用启动与平台适配器”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Nest 应用启动与平台适配器”的最小闭环
- 能独立完成「Nest 应用启动与平台适配器」的最小可运行实现,并用测试、请求或日志证明其行为
FastAPI
FastAPI 路由与请求处理
掌握 FastAPI 基础:路径/查询参数、请求体、响应模型、异常处理,与 NestJS 路由对照理解。
建议预留 120 分钟
学习目标
- 能写一个带路径/查询参数与请求体的 CRUD 接口
- 能解释 FastAPI 如何自动生成 OpenAPI 文档
关键概念
- 路径与查询参数
- 请求/响应模型
- OpenAPI 自动文档
为什么学习
- FastAPI 是 Agent 服务对外的 HTTP 载体,其 Pydantic 模型体系与 NestJS DTO 概念同构。
如何检验理解
- 实现一个 /items CRUD 接口并在 /docs 验证
- 对照 NestJS 解释 FastAPI 的参数校验方式
FastAPI
依赖注入与中间件
理解 FastAPI 依赖注入系统与中间件机制:Depends、作用域、异常处理,与 NestJS DI 的对照。
建议预留 120 分钟
学习目标
- 能用 Depends 实现共享依赖(如 DB 连接、当前用户)
- 能写一个记录请求耗时的中间件
关键概念
- Depends 与依赖作用域
- 中间件与异常处理
- 与 NestJS DI 的对照
为什么学习
- 依赖注入决定 Agent 服务的扩展方式(模型客户端、存储、鉴权都是可注入依赖)。
如何检验理解
- 用 Depends 注入一个可复用的鉴权依赖
- 画图对比 FastAPI 与 NestJS 的 DI 差异
FastAPI
异步状态管理与数据库(了解)
【了解·Nest 可对照】Python 生态的异步存储概览:SQLAlchemy async、Redis、Agent 会话持久化模式;细节在 Nest 项目深入。
建议预留 90 分钟
学习目标
- 能说出 Python 生态的异步存储方案
- 能理解 Agent 会话持久化的基本模式
关键概念
- SQLAlchemy async 概览
- Redis 与缓存
- 会话状态持久化模式
为什么学习
- 通用知识:与 NestJS 的 TypeORM/Redis 实践同构;此节点只需建立选型认知,后端细节不在此深入。
如何检验理解
- 画图对比 Python 与 NestJS 的存储方案选型
- 说明 Agent 会话持久化为什么用 thread_id + 数据库
FastAPI
Pydantic v2 深入:validator/泛型/序列化
深入 Pydantic v2:field_validator/model_validator、泛型模型、model_dump/model_validate、序列化与解析全貌。
建议预留 150 分钟
学习目标
- 能写交叉字段校验的 validator
- 能用泛型模型复用复杂结构
关键概念
- field/model_validator
- 泛型模型 Generic
- 序列化与解析
为什么学习
- Agent 工具契约、结构化输出、配置管理都建立在 Pydantic 之上;深挖是阅读 LangChain 源码的基础。
如何检验理解
- 定义带交叉字段校验的嵌套模型并演示失败路径
- 用泛型模型处理 API 响应并解析
数据一致性
PostgreSQL 与关系建模
学习 PostgreSQL 与关系建模,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“PostgreSQL 与关系建模”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“PostgreSQL 与关系建模”的最小闭环
关键概念
- PostgreSQL 与关系建模
- NestJS
- 生产级后端
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“PostgreSQL 与关系建模”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“PostgreSQL 与关系建模”的最小闭环
- 能画出或口述「PostgreSQL 与关系建模」的关键机制,解释边界并诊断一个典型错误
LLM API
Prompt 工程:可复现与结构化输出
提示工程系统化:指令与角色设计、few-shot、CoT 推理引导、格式约束、输出校验循环与调试方法论。
建议预留 180 分钟
学习目标
- 能稳定产出结构化输出
- 能系统调试 prompt 而非盲目修改
关键概念
- 指令与 few-shot 设计
- CoT 与推理引导
- 输出校验与重试循环
为什么学习
- 提示是 Agent 行为的唯一可编程接口,提示工程质量直接决定 Agent 可用性。
如何检验理解
- 把同一任务用 3 种 prompt 写法对比输出质量并给出选择
- 设计一个稳定输出 JSON 的 prompt 与校验机制
LLM API
Prompt 缓存与成本优化
掌握 prompt caching 机制与收益模型:缓存结构要求、命中率优化、与工具裁剪/历史压缩的组合策略。
建议预留 120 分钟
学习目标
- 能设计提升缓存命中率的 prompt 结构
- 能估算缓存带来的成本节省
关键概念
- prompt caching 机制
- 缓存结构设计
- 成本估算与优化
为什么学习
- Agent 每轮循环都消费 token,成本失控是第一生产事故;缓存是最大的成本杠杆。
如何检验理解
- 设计一个缓存友好的 system prompt 结构并实测命中率
- 计算一个高频会话启用缓存前后的成本差
LLM API
流式与事件 API
掌握流式响应协议:SSE、SDK 流式事件(message_start/content_block_delta 等)、增量处理与中断。
建议预留 120 分钟
学习目标
- 能实现流式对话并处理增量事件
- 能解释流式与一次性响应的差异
关键概念
- SSE 流式协议
- SDK 流式事件
- 增量渲染与中断
为什么学习
- LLM 输出天然流式;用户体感与长任务体验依赖流式实现。
如何检验理解
- 用 SDK 流式输出并逐事件打印
- 解释中断一个流式请求时会发生什么
LLM API
OpenAI 兼容协议与多供应商抽象
理解 OpenAI 兼容协议与供应商抽象:base_url、模型映射、多供应商切换模式。
建议预留 120 分钟
学习目标
- 能通过 OpenAI 兼容接口调用非 OpenAI 模型
- 能设计一个供应商抽象层
关键概念
- OpenAI 兼容协议
- base_url 与模型映射
- 供应商抽象
为什么学习
- 生产环境必然面对多供应商;理解兼容协议避免被单一供应商锁定。
如何检验理解
- 用兼容协议把同一个调用切到两个不同供应商
- 列出兼容协议与原生协议的主要差异
LLM API
Token、上下文窗口与计费模型
理解 token 计费模型、上下文预算与成本估算:输入/输出 token 定价、缓存、上下文膨胀控制。
建议预留 120 分钟
学习目标
- 能估算一个请求的 token 与成本
- 能设计控制上下文膨胀的策略
关键概念
- token 计费与定价
- 上下文预算
- prompt caching
为什么学习
- Agent 的每一轮循环都消耗 token,成本失控是 Agent 应用的第一生产事故。
如何检验理解
- 计算一个典型对话场景的 token 成本并设计压缩策略
- 解释 prompt caching 的适用场景
LLM API
LLM 原理:Transformer 到生成机制
建立大模型心智模型:token 与自回归生成、Transformer/注意力概览、预训练/指令微调/RLHF 各解决什么问题。
建议预留 150 分钟
学习目标
- 能解释 token 与自回归生成机制
- 能解释预训练、指令微调与 RLHF 的作用
关键概念
- token 与自回归
- Transformer 与注意力概览
- 预训练、微调与 RLHF
为什么学习
- 所有 Agent 行为都是模型能力的投影,先懂模型才能设计可靠的 Agent;这是社区路线的第一步。
如何检验理解
- 用自己的话解释 LLM 生成一句话的完整机制
- 解释为什么同样的 prompt 输出不稳定
LLM API
采样与推理参数
掌握推理参数:temperature/top_p/top_k/seed/stop 的作用与调优、结构化解码的底层机制。
建议预留 120 分钟
学习目标
- 能解释各采样参数对输出的影响
- 能按任务类型选择合适的参数组合
关键概念
- 采样策略 temperature/top_p
- seed 与可复现性
- 停止条件与结构化约束
为什么学习
- 生产调优的第一现场;Agent 循环的决策质量直接受采样参数影响。
如何检验理解
- 同一 prompt 用不同 temperature 对比输出差异并解释原因
- 为工具调用场景设计参数组合
LLM API
Anthropic Messages API 深度
掌握 Anthropic Messages API 完整形态:角色与消息结构、system prompt、工具定义、stop_reason、多轮历史。
建议预留 180 分钟
学习目标
- 能用 SDK 完成多轮对话与工具调用
- 能解释 stop_reason 与消息流的完整生命周期
关键概念
- Messages API 与角色
- stop_reason 与流程控制
- Python SDK 与工具绑定
为什么学习
- 直接调用官方 SDK 是理解 Agent 循环的最短路径,也是后续框架的底层依赖。
如何检验理解
- 用 SDK 完成一次带工具调用的完整会话并打印消息流
- 解释 stop_reason 各取值对应什么场景
框架核心
装饰器、元数据与反射
学习 装饰器、元数据与反射,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“装饰器、元数据与反射”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“装饰器、元数据与反射”的最小闭环
关键概念
- 装饰器、元数据与反射
- NestJS
- 生产级后端
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“装饰器、元数据与反射”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“装饰器、元数据与反射”的最小闭环
- 能画出或口述「装饰器、元数据与反射」的关键机制,解释边界并诊断一个典型错误
Agent 核心
结构化输出与工具契约设计
掌握强制结构化输出:JSON mode、工具约束、Pydantic 输出解析,工具/输出契约的类型设计。
建议预留 150 分钟
学习目标
- 能强制模型输出符合 schema 的结构化数据
- 能设计工具/输出的类型契约
关键概念
- JSON mode 与工具约束
- Pydantic 输出解析
- 输出校验与重试
为什么学习
- 不可靠输出是 Agent 失败主因之一;结构化契约是把 Agent 接入系统的前提。
如何检验理解
- 让模型输出严格符合 Pydantic schema 并校验
- 设计重试机制处理解析失败
API 契约与序列化
角色卡格式:Schema、容器与规范化
理解 PNG、JSON、CHARX 是承载角色卡数据的不同容器,V1、V2、V3 是版本化字段规范;导入时先解析、校验并规范化为内部契约,再由运行时选择字段编译,不能把原始文件或未知扩展直接当作可执行内容。
建议预留 100 分钟
学习目标
- 能区分 PNG/JSON/CHARX 容器与 V1/V2/V3 数据规范
- 能描述角色卡导入到内部模型的解析、校验、规范化流程
- 能解释为什么未知字段应保留但不能直接执行
关键概念
- 角色卡 Schema
- PNG 元数据容器
- V1/V2/V3 版本兼容
- CHARX 打包格式
- 解析、校验与规范化
为什么学习
- 这是理解角色卡生态和安全导入的基础,重点是区分文件容器、数据规范与运行时执行。
如何检验理解
- 画出“原始文件→解析→规范化契约→Prompt 编译”的流程;拿一张角色卡指出哪些是字段、哪些只是容器或元数据
Agent 核心
Agent 心智模型:workflow vs agent
以 Anthropic《Building Effective Agents》为骨架,建立 workflow 与 agent 的心智模型、5 类 workflow 与选型框架。
建议预留 150 分钟
学习目标
- 能区分 workflow 与 agent 并给出各自适用场景
- 能画出 agent 循环的状态图
关键概念
- workflow vs agent
- 5 类 workflow 模式
- agent 循环:模型+工具+观察
为什么学习
- 这是本树的概念核心,选型比实现更重要;官方推荐先读此篇再学任何框架。
如何检验理解
- 用自己的话总结 Building Effective Agents 的 5 类 workflow
- 给一个真实任务判断该用 workflow 还是 agent
Agent 核心
MCP 协议:架构与概念
理解 Model Context Protocol:动机、客户端-服务器架构、三类原语(工具/资源/提示)、传输与认证。
建议预留 150 分钟
学习目标
- 能解释 MCP 解决什么问题
- 能区分工具/资源/提示三类原语
关键概念
- MCP 架构与动机
- 工具/资源/提示原语
- 客户端-服务器与传输
为什么学习
- MCP 是 2026 年 Agent 生态的核心协议,官方课程与社区路线均独立成模块。
如何检验理解
- 画图解释 MCP 客户端-服务器交互
- 对比 MCP 工具与原生 function calling 的取舍
框架核心
模块与依赖图
学习 模块与依赖图,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“模块与依赖图”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“模块与依赖图”的最小闭环
关键概念
- 模块与依赖图
- NestJS
- 生产级后端
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“模块与依赖图”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“模块与依赖图”的最小闭环
- 能画出或口述「模块与依赖图」的关键机制,解释边界并诊断一个典型错误
Agent 核心
MCP 实战:自建 MCP Server
用 MCP Python SDK 实现 Server:工具注册、参数 schema、资源暴露、与客户端连接调试。
建议预留 180 分钟
学习目标
- 能实现一个可用的 MCP Server
- 能从客户端调用自建工具
关键概念
- MCP Python SDK
- 工具与资源实现
- 本地与远程连接
为什么学习
- 生产 Agent 的工具生态正在向 MCP 迁移,动手实现是掌握协议的最佳路径。
如何检验理解
- 实现一个含 2 个工具的 MCP Server 并接入客户端调用
- 给工具加输入校验与错误处理
Agent 核心
工具调用协议深度
深入理解工具调用协议:工具定义 schema、tool_use/tool_result 消息往返、多工具并行、失败与异常处理。
建议预留 180 分钟
学习目标
- 能实现从工具定义到结果回填的完整调用链
- 能处理工具调用失败与异常输入
关键概念
- 工具定义 schema
- tool_use 与 tool_result 往返
- 并行工具调用与失败处理
为什么学习
- 工具调用是 Agent 与外部世界交互的唯一通道,所有框架都建立在这条协议之上。
如何检验理解
- 裸 SDK 实现一次完整工具调用链(不经框架)
- 设计一个工具并演示异常输入的处理
Agent 核心
手写 Agent 循环与终止保护
手写最小 Agent 循环:模型决策 → 执行工具 → 观察结果 → 再次决策;循环终止条件与最大步数保护。
建议预留 180 分钟
学习目标
- 能手写一个最小 Agent 循环并跑通真实任务
- 能设计循环终止与最大轮数保护
关键概念
- 循环结构与终止条件
- 最大步数与超时保护
- 观察回填
为什么学习
- 框架只是把这条循环工程化;手写一遍才能真正理解 LangGraph 在做什么。
如何检验理解
- 手写 30 行以内的 agent 循环完成一个真实任务
- 解释循环为什么必须有终止保护
LLM API
角色卡:字段分层与 Prompt 编译
角色卡不是一段天然会被模型看到的 Prompt,而是由字段、元数据和运行配置组成的数据对象。运行时应把 name、外在与经历、性格、scenario、开场白、示例对话等字段先规范化,再按明确顺序编译为 system、assistant 开场消息、few-shot 示例和历史消息;字段是否进入 Prompt、位于哪里、是否每轮重放,都由编译策略决定。
建议预留 120 分钟
学习目标
- 能把角色卡字段分成设定、开场、示例、平台控制和元数据几类
- 能画出角色卡到最终 Chat Completions 消息序列的编译流程
- 能解释为什么 first_mes 不应作为每轮重复注入的系统提示
- 能通过可视化的最终 Prompt 判断 original、覆盖和追加策略的影响
关键概念
- 角色卡字段语义
- Prompt 编译器
- system_prompt 与 post-history 指令
- first_mes 开场消息
- mes_example few-shot
- 字段到消息序列的映射
为什么学习
- 理解角色卡真正如何影响模型,需要把字段语义和最终消息序列对应起来,并能审计每个字段的注入位置。
如何检验理解
- 给定一张角色卡,逐字段标注“进入哪条消息、插入深度、是否重复、是否仅供 UI 使用”,并能解释一次编译结果
Agent 核心
Agent 安全:注入与权限边界
理解 prompt injection、工具滥用与不可信内容:隔离策略、权限最小化、输出处理与审计。
建议预留 150 分钟
学习目标
- 能识别并防御常见注入攻击
- 能设计工具执行的权限边界
关键概念
- prompt injection
- 工具权限最小化
- 不可信内容隔离
为什么学习
- Agent 会执行工具,安全边界从第一天就要建立,不能等上线后补救。
如何检验理解
- 演示一个注入攻击并给出防御方案
- 给工具设计权限清单并解释每项的理由
LangChain
Tools 与 Toolkits 深度
掌握 @tool 装饰器体系:参数校验、异步工具、错误处理策略、ToolNode 与工具生命周期。
建议预留 180 分钟
学习目标
- 能写带复杂参数校验与错误处理的工具
- 能组合多个工具成 Toolkits 并在 Agent 中使用
关键概念
- @tool 与参数 schema
- 异步工具与超时
- 工具错误处理与重试
为什么学习
- 工具质量直接决定 Agent 能力边界,官方文档与社区都强调工具是 Agent 应用的核心资产。
如何检验理解
- 实现 3 个生产级工具(含校验、重试、日志)
- 用一个 Agent 组合调用多个工具完成任务
LangChain
create_agent 与生产配置
使用 LangChain 高层 Agent 构造器:create_agent/create_react_agent,理解其内部如何组合 LCEL、工具与记忆。
建议预留 180 分钟
学习目标
- 能用 create_agent 快速构造可用 Agent
- 能读懂其生成的内部结构与执行流程
关键概念
- create_agent API
- 内部组件组合
- 生产参数调优
为什么学习
- 高层 API 是脚手架,读懂内部结构才是深度所在;两者都掌握才算会用。
如何检验理解
- 用 create_agent 构造工具型 Agent 并演示完整流程
- 剖析其内部执行链并解释每层职责
Agent 核心
生成钩子:Author’s Note、变量与扩展拦截器
酒馆式运行时会在模型调用前后提供多个可控插入点:Author’s Note 按深度和频率插入当前提醒,Character’s Note 把角色相关提醒放在历史附近,聊天变量保存会话级状态,STscript 与扩展则可在生成前改写上下文、在生成后处理结果或维护状态。它们不是同一种 Prompt,而是一组生成管线钩子;每个钩子都应有顺序、作用域、持久化策略和可观测的最终输出。
建议预留 120 分钟
学习目标
- 能区分固定字段、按深度插入的提醒、会话变量和扩展拦截器
- 能描述一次生成请求经过哪些钩子以及各钩子的执行顺序
- 能为扩展设计作用域、权限、超时和失败隔离
- 能通过最终 Prompt 预览验证钩子是否造成重复注入或上下文污染
关键概念
- 生成前钩子
- Author’s Note 深度与频率
- Character’s Note
- 聊天变量
- STscript
- 扩展拦截器
- Prompt 可观测性
为什么学习
- 先建立“生成管线有多个插入点”的心智模型,再分别学习提示词位置、变量作用域和扩展权限。
如何检验理解
- 画出“卡片字段→历史拼装→Author’s Note/Character’s Note→扩展钩子→模型”的管线,并为每个节点标注输入、输出和状态归属
LangChain
Runnable 高级:并行、批处理与回退
掌握 Runnable 的并发原语:RunnableParallel、RunnableMap、RunnableLambda 与重试/回退机制。
建议预留 180 分钟
学习目标
- 能用 RunnableParallel 并行调用多个模型或检索器
- 能配置 fallback 链保证服务可用性
关键概念
- RunnableParallel 并行
- RunnableLambda 适配
- 重试与 fallback
为什么学习
- 生产 Agent 的延迟与可用性优化全部依赖这些原语,浅尝辄止无法写出稳定应用。
如何检验理解
- 实现并行『摘要+关键词』双路调用并合并结果
- 配置带 fallback 的模型调用链
LangChain
Prompt Templates 深入
掌握提示模板工程:ChatPromptTemplate、MessagePlaceholder、部分填充、模板版本化与提示管理。
建议预留 150 分钟
学习目标
- 能用 MessagePlaceholder 构造动态工具历史
- 能设计可版本化的提示模板体系
关键概念
- ChatPromptTemplate 与占位符
- 提示版本管理与回滚
- 模板与函数组合
为什么学习
- 提示是 Agent 的灵魂,社区实践强调模板必须可版本化、可测试,与代码同生命周期。
如何检验理解
- 实现带会话历史占位的提示模板
- 为提示模板写单元测试并演示回滚场景
LangChain
输出解析与 with_structured_output
掌握结构化输出:PydanticOutputParser、with_structured_output、JSON 修复(输出修复器)与类型保障。
建议预留 180 分钟
学习目标
- 能让模型稳定输出 Pydantic 校验通过的对象
- 能处理模型输出格式错误的恢复流程
关键概念
- with_structured_output
- 输出修复与重试
- JSON Schema 与 Pydantic
为什么学习
- Agent 与外部系统(工具、数据库、前端)的接口全部依赖结构化输出,是生产级的硬要求。
如何检验理解
- 实现模型→Pydantic 模型的强制结构化输出
- 演示一次格式错误后的自动修复流程
LangChain
Memory 体系:会话记忆
理解对话记忆机制:消息历史、摘要压缩、长期向量记忆与记忆的持久化边界(与 Chat History 存储分离)。
建议预留 120 分钟
学习目标
- 能设计会话记忆的存取与清理策略
- 能区分短期上下文与长期记忆的存储选择
关键概念
- 消息历史管理
- 摘要与压缩策略
- 向量记忆与持久化
为什么学习
- 记忆是 Agent 体验的关键,但滥用会导致上下文爆炸与成本失控,需要明确边界。
如何检验理解
- 实现带摘要压缩的多轮记忆会话
- 分析长对话下记忆方案的取舍并给出方案
LangChain
Model Routing 与多模型编排
理解多模型路由:按任务/成本/延迟选择模型、模型降级策略与 LangChain 的模型路由能力。
建议预留 120 分钟
学习目标
- 能设计按任务类型路由模型的策略
- 能解释模型降级对可用性的意义
关键概念
- 模型路由策略
- 成本与延迟权衡
- 降级与容错
为什么学习
- 生产应用必然面临多模型编排与降级问题,这是 190 小时主线中衔接『工程化』的一环。
如何检验理解
- 设计一个任务→模型路由表并论证选择
- 实现简单降级链并测试故障切换
LangChain
LangChain 架构与组件分层
理解 LangChain 的整体架构:Model I/O、Retrieval、Memory、Agent、Callbacks 五大模块的职责与协作。
建议预留 150 分钟
学习目标
- 能画出 LangChain 六大核心组件的协作图
- 能说出每个组件解决的具体问题
关键概念
- 模型 I/O 层
- 检索层与记忆层
- 回调与可观测性
为什么学习
- LangChain 是 2026 年 Agent 应用最主流的框架,理解其分层才能读懂生态文档与生产事故排查。
如何检验理解
- 画组件分层图并标注数据流向
- 对比 LangChain 各层与 FastAPI 中间件/路由的职责划分
框架核心
Provider 与依赖注入
学习 Provider 与依赖注入,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“Provider 与依赖注入”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Provider 与依赖注入”的最小闭环
关键概念
- Provider 与依赖注入
- NestJS
- 生产级后端
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“Provider 与依赖注入”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Provider 与依赖注入”的最小闭环
- 能画出或口述「Provider 与依赖注入」的关键机制,解释边界并诊断一个典型错误
LangChain
Chat Models 深入:消息角色与绑定工具
深入 Chat Models 接口:消息角色语义(system/user/assistant/tool)、bind_tools、多模型切换与供应商差异。
建议预留 180 分钟
学习目标
- 能构造多角色对话消息并解释工具调用消息流
- 能在同一接口下切换不同供应商模型
关键概念
- 消息角色与对话状态
- bind_tools 工具绑定
- 模型供应商适配层
为什么学习
- 工具调用消息流是 Agent 循环的基础,角色语义理解错误会导致最隐蔽的 bug。
如何检验理解
- 实现带工具回调的多轮对话并观察消息历史
- 对比两个供应商模型在同一接口下的行为差异
LangChain
LCEL 与 Runnable 协议
掌握 LCEL 声明式组合与 Runnable 协议:invoke/batch/stream、管道运算符、异步变体、与旧版 Chain 的本质区别。
建议预留 180 分钟
学习目标
- 能写出一个可运行、可流式、可批处理的 LCEL 管道
- 能解释 LCEL 与函数式调用在设计上的区别
关键概念
- Runnable 协议与 invoke/batch/stream
- 管道组合与重试
- 流式与异步接口
为什么学习
- LCEL 是 LangChain v1 的架构核心,社区路线普遍认为这是 LangChain 最值得深挖的部分。
如何检验理解
- 用 LCEL 组合『检索→提示→模型→解析』管道并流式输出
- 给管道加错误重试与超时配置
LangGraph
Subgraph:子图与图组合
理解子图机制:把复杂图拆成可复用子图、父子图状态映射、跨图共享 checkpoint。
建议预留 150 分钟
学习目标
- 能把大图拆分为带清晰接口的子图
- 能解释子图间状态映射规则
关键概念
- 子图定义与嵌套
- 父子状态映射
- 子图复用与测试
为什么学习
- 复杂 Agent 必然需要模块化,子图是 LangGraph 的工程化核心,社区路线明确列为深挖点。
如何检验理解
- 把 ReAct 循环封装为子图并在两个父图中复用
- 绘制父子图的状态流图
LangGraph
interrupt:人机交互断点
掌握 interrupt 机制:让图在关键步骤暂停等待人工确认(审批、纠错、敏感操作确认)。
建议预留 120 分钟
学习目标
- 能实现人工审批节点并恢复执行
- 能区分 interrupt 与普通等待的区别
关键概念
- interrupt 与恢复
- 人工审批流程
- 敏感操作确认
为什么学习
- Agent 不能完全无人值守,人工介入点是生产部署的必备能力(如转账审批)。
如何检验理解
- 实现一个需要人工确认后才能继续的工具调用
- 演示中断后恢复执行的全过程
LangGraph
多 Agent 编排
理解多 Agent 编排模式:主管-工人、网状协作、队列任务分发与共享状态设计。
建议预留 150 分钟
学习目标
- 能实现主管-工人多 Agent 架构
- 能设计多 Agent 间的任务划分与状态共享
关键概念
- 主管-工人模式
- 多 Agent 状态共享
- 任务分发与合并
为什么学习
- 复杂任务必然拆分为多 Agent 协作,官方文档有完整设计模式章节。
如何检验理解
- 实现『主管调度+两个工人 Agent』的协作系统
- 画出任务分发与结果合并的数据流
LangGraph
流式事件与逐步调试
掌握 astream_events/astream 系列 API:观察节点级事件流、调试图执行、流式输出给前端。
建议预留 120 分钟
学习目标
- 能流式接收节点级事件并转发给前端
- 能用事件流定位执行顺序问题
关键概念
- astream_events 事件流
- 节点级调试
- 前后端流式对接
为什么学习
- 生产 Agent 的前端体验与排障全部依赖事件流,这是从玩具到产品的分水岭。
如何检验理解
- 把图的事件流转发给前端实现打字机效果
- 用事件流排查一次节点执行顺序异常
LangGraph
节点、边与条件路由
掌握图的连接方式:普通边、条件边、START/END 节点、路由函数与循环控制的正确姿势。
建议预留 180 分钟
学习目标
- 能实现条件路由实现『工具→结果→决策』循环
- 能设计避免死循环的终止条件
关键概念
- 普通边与条件边
- 路由函数与决策逻辑
- 循环与终止控制
为什么学习
- Agent 的本质是有环图,条件路由是让图『活』起来的关键机制。
如何检验理解
- 实现一个带工具循环的 ReAct 风格图
- 给图加循环上限与异常分支
LangGraph
Time Travel:时间旅行调试
理解基于 checkpoint 的时间旅行:回滚到任意历史状态、分叉调试与状态回溯。
建议预留 90 分钟
学习目标
- 能回滚到历史节点并重放
- 能利用分叉机制调试 Agent 决策
关键概念
- 状态回溯与回滚
- 分叉调试
- checkpoint 版本管理
为什么学习
- 时间旅行是 LangGraph 独有的调试利器,能大幅降低 Agent 行为调试成本。
如何检验理解
- 演示一次完整的时间旅行调试过程
- 解释分叉状态在审计中的意义
LangGraph
Checkpoint:状态持久化
理解 Checkpointer 机制:状态快照、线程(thread_id)、断点恢复与持久化后端选择。
建议预留 120 分钟
学习目标
- 能用 thread_id 实现会话级状态隔离
- 能解释 checkpoint 与数据库存状态的取舍
关键概念
- checkpointer 与线程
- 状态快照与恢复
- 持久化后端
为什么学习
- 生产 Agent 必须支持恢复与审计,checkpoint 是 LangGraph 区别于其他编排框架的核心特性。
如何检验理解
- 实现多线程会话各自独立的对话状态
- 模拟进程重启后从 checkpoint 恢复对话
框架核心
Controller 与路由
学习 Controller 与路由,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“Controller 与路由”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Controller 与路由”的最小闭环
关键概念
- Controller 与路由
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“Controller 与路由”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Controller 与路由”的最小闭环
- 能独立完成「Controller 与路由」的最小可运行实现,并用测试、请求或日志证明其行为
LangGraph
LangGraph 入门:StateGraph 与状态
理解 LangGraph 核心概念:状态定义(State)、节点函数、图的构建与编译、与 LCEL 管道的区别。
建议预留 150 分钟
学习目标
- 能定义带 TypedDict 状态的图并运行
- 能解释状态在节点间的传递方式
关键概念
- StateGraph 与 TypedDict 状态
- 节点函数契约
- 图编译与执行
为什么学习
- LangGraph 是 2026 年构建生产级 Agent 的主流底层框架,官方教程已将其作为默认 Agent 构建方式。
如何检验理解
- 实现一个 3 节点的状态图并打印每步状态
- 对比 LangGraph 图与 LCEL 管道的适用场景
API边界
配置、环境与秘密
学习 配置、环境与秘密,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“配置、环境与秘密”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“配置、环境与秘密”的最小闭环
关键概念
- 配置、环境与秘密
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“配置、环境与秘密”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“配置、环境与秘密”的最小闭环
- 能独立完成「配置、环境与秘密」的最小可运行实现,并用测试、请求或日志证明其行为
Agent 综合实战
Agent 综合实战(一):工具型 Agent 应用
综合运用 LangGraph + MCP + 结构化输出,构建一个完成真实业务任务(如智能客服/数据查询)的工具型 Agent。
建议预留 420 分钟
学习目标
- 交付一个可演示的完整 Agent 应用
- 具备工具调用、记忆、人工介入、流式输出全部能力
关键概念
- 完整 Agent 应用架构
- 工具集成与记忆
- 生产级打磨
为什么学习
- 所有深度理解都要在综合实战中落地,本节点是主线的第一个大型交付物。
如何检验理解
- 交付含 5+ 工具、记忆、流式输出的完整应用
- 编写项目 README 与架构说明
Agent 模式
多 Agent 协作深入:编排模式对比
对比多 Agent 工作流五大模式:路由、并行化、编排者-工作者、评估者-优化者、自主协作的选型与代价。
建议预留 150 分钟
学习目标
- 能根据任务特征选择多 Agent 模式
- 能说清每个模式的适用边界
关键概念
- 五大协作模式
- 模式选型与代价
- 自主协作的失控风险
为什么学习
- Anthropic 官方《Building Effective Agents》明确强调『简单优先』,模式选型是高级决策能力。
如何检验理解
- 为 3 个具体任务做模式选型并论证
- 分析自主多 Agent 协作的失控风险与缓解
Agent 模式
ReAct 模式深入
深入 ReAct(Reason+Act)模式:思考-行动-观察循环的完整闭环、何时需要循环、何时停止。
建议预留 180 分钟
学习目标
- 能手工实现 ReAct 循环并解释每一步
- 能设计循环终止与防死循环策略
关键概念
- Reason+Act 循环
- 思考-行动-观察闭环
- 终止条件设计
为什么学习
- ReAct 是所有工具型 Agent 的理论基础,官方教程与论文都把它作为第一课。
如何检验理解
- 不依赖框架手写一个 ReAct 循环
- 对比手写循环与 LangGraph 实现的异同
Agent 模式
Planning 规划模式
理解规划模式:任务分解(plan-then-execute)、规划器-执行器分离与规划失败时的重新规划。
建议预留 150 分钟
学习目标
- 能实现 plan-then-execute 架构
- 能处理规划执行中的偏差与重新规划
关键概念
- plan-then-execute
- 任务分解与执行
- 重规划策略
为什么学习
- 复杂任务的可靠完成依赖规划,Anthropic 官方教程将其列为多智能体工作流核心模式。
如何检验理解
- 实现『规划器→执行器』并处理一次执行失败后的重规划
- 对比规划模式与直接 ReAct 的适用场景
Agent 模式
Reflection 反思模式
理解反思模式:生成→自我批评→改进的迭代循环、Critique 设计方法与质量提升的边界。
建议预留 150 分钟
学习目标
- 能实现生成-批评-改进循环
- 能设计有效的批评提示
关键概念
- 生成-批评-改进循环
- critique 设计
- 质量边界与成本
为什么学习
- 反思是提升输出质量的通用手段,社区共识认为成本与收益需要明确边界。
如何检验理解
- 对一次代码生成任务应用反思循环并对比前后质量
- 评估反思循环的成本收益
Agent 综合实战
实战复盘:架构评审与迭代
复盘实战一:架构决策评审、性能与成本分析、失败案例整理、明确下一实战的改进点。
建议预留 180 分钟
学习目标
- 能对自己的架构做批判性评审
- 能整理出可复用的模式与教训
关键概念
- 架构评审方法
- 成本与性能复盘
- 经验沉淀
为什么学习
- 复盘是深度学习的放大器,社区大佬的学习路线普遍强调『做完必须复盘』。
如何检验理解
- 输出一份架构评审报告
- 列出下一实战的 5 个改进点
框架核心
Service 与业务边界
学习 Service 与业务边界,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“Service 与业务边界”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Service 与业务边界”的最小闭环
关键概念
- Service 与业务边界
- NestJS
- 生产级后端
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“Service 与业务边界”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Service 与业务边界”的最小闭环
- 能画出或口述「Service 与业务边界」的关键机制,解释边界并诊断一个典型错误
框架核心
请求生命周期全景
学习 请求生命周期全景,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“请求生命周期全景”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“请求生命周期全景”的最小闭环
关键概念
- 请求生命周期全景
- NestJS
- 生产级后端
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“请求生命周期全景”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“请求生命周期全景”的最小闭环
- 能画出或口述「请求生命周期全景」的关键机制,解释边界并诊断一个典型错误
ML 基础
机器学习基础概念(了解)
了解 ML 基础术语:模型、训练/推理、过拟合、损失函数、监督/无监督/强化学习的边界。
建议预留 120 分钟
学习目标
- 能看懂 LLM 论文与文档中的 ML 术语
- 能说清训练与推理的区别
关键概念
- 训练与推理
- 过拟合与损失函数
- 监督/无监督/RL 边界
为什么学习
- 本节点只建认知不深入——Nest 后端经验里的『模型=API』心智在此补全,为理解采样、微调与评测打底。
如何检验理解
- 用自己的话解释训练与推理的区别
- 给 3 个术语写一句话定义(训练/过拟合/损失)
ML 基础
模型微调概览(了解)
了解微调(Fine-tuning)的动机、流程与代价:为什么先提示工程后微调、RAG 与微调的分工。
建议预留 90 分钟
学习目标
- 能说清微调与提示工程的适用边界
- 能评估一个场景是否需要微调
关键概念
- 微调流程与数据
- 与提示工程/RAG 的分工
- 成本与维护代价
为什么学习
- 生产决策常涉及『要不要微调』,了解边界即可,深入微调属于后续主线。
如何检验理解
- 为一个场景论证『应微调还是用 RAG/提示』
- 列出微调的三大成本
ML 基础
向量与嵌入(了解)
了解嵌入(Embedding)的概念:文本如何变成向量、语义相似度计算、维度与模型选型的直觉。
建议预留 120 分钟
学习目标
- 能解释嵌入在高维空间中的语义表示
- 能说出相似度计算的直觉原理
关键概念
- 嵌入与语义空间
- 余弦相似度
- 嵌入模型选型
为什么学习
- 嵌入是 RAG 与向量记忆的基石,只要求建立直觉不要求推导数学。
如何检验理解
- 用两个相似句子的向量演示语义相近
- 解释为什么嵌入比词频更能代表语义
数据一致性
ORM 集成与 Repository 边界
学习 ORM 集成与 Repository 边界,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“ORM 集成与 Repository 边界”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“ORM 集成与 Repository 边界”的最小闭环
关键概念
- ORM 集成与 Repository 边界
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“ORM 集成与 Repository 边界”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“ORM 集成与 Repository 边界”的最小闭环
- 能独立完成「ORM 集成与 Repository 边界」的最小可运行实现,并用测试、请求或日志证明其行为
RAG
文档解析与分块策略
掌握文档解析与分块:Markdown/PDF 解析器选择、按标题/语义/固定长度的分块策略与元数据保留。
建议预留 180 分钟
学习目标
- 能针对不同文档类型选择解析与分块方案
- 能论证分块大小对检索质量的影响
关键概念
- 文档解析器
- 分块策略与元数据
- 分块质量评估
为什么学习
- 分块质量直接决定检索质量,是 RAG 中最容易被忽视却最影响效果的工程环节。
如何检验理解
- 对同一文档用 3 种分块策略检索对比质量
- 实现保留标题层级的分块
RAG
Prompt 组装与引用溯源
掌握生成侧工程:上下文组装、引用标注、『不知道就说不知道』的拒答设计与人机可验证性。
建议预留 150 分钟
学习目标
- 能实现带引用标注的回答
- 能设计拒绝回答与来源冲突处理
关键概念
- 上下文组装与截断
- 引用溯源
- 拒答设计
为什么学习
- RAG 的回答必须可溯源,这是生产产品与 Demo 的核心区别,也直接关系可信度。
如何检验理解
- 实现带引用标注的问答应用
- 设计来源冲突时的处理策略
RAG
Embedding 与向量数据库
掌握向量检索实践:嵌入模型选型、向量数据库(Chroma/Qdrant)接入、索引参数与过滤条件。
建议预留 180 分钟
学习目标
- 能完成文档入库与相似度检索全流程
- 能结合元数据过滤做精确检索
关键概念
- 向量库接入
- 索引与搜索参数
- 元数据过滤
为什么学习
- 向量库是 RAG 的存储核心,选型与参数直接影响检索质量与成本。
如何检验理解
- 用向量库实现含元数据过滤的检索服务
- 对比不同距离度量的检索结果差异
RAG
混合检索与重排序
掌握混合检索(关键词+向量)与重排序(RRF 融合、cross-encoder reranker)的完整链路。
建议预留 180 分钟
学习目标
- 能实现混合检索与结果融合
- 能接入 reranker 并评估质量提升
关键概念
- 混合检索与 RRF
- cross-encoder reranker
- 检索质量评估
为什么学习
- 社区共识:纯向量检索难以满足生产质量,混合检索+重排是 2026 年的标准配置。
如何检验理解
- 实现混合检索并量化对比纯向量检索
- 接入 reranker 前后做一次质量对比
RAG
RAG 评估与 RAGAS
掌握 RAG 评估体系:RAGAS 指标(忠实度/相关性/上下文精度/召回)、评估集构建与回归测试。
建议预留 180 分钟
学习目标
- 能用 RAGAS 对 RAG 系统打分
- 能构建评估集并建立回归机制
关键概念
- RAGAS 四大指标
- 评估集构建
- 评估自动化
为什么学习
- 没有评估就没有优化依据,社区路线明确把 RAG 评估列为深挖点,是工程师与玩具开发者的分界。
如何检验理解
- 用 RAGAS 评估自己的 RAG 系统并给出优化点
- 构建 20 条评估集并跑回归
RAG
查询改写与多查询检索
理解查询侧优化:查询改写(Rewrite)、多查询分解(Multi-Query)、HyDE 与查询意图理解。
建议预留 120 分钟
学习目标
- 能实现查询改写与多查询扩展
- 能评估查询优化带来的收益
关键概念
- 查询改写
- 多查询分解
- HyDE 与意图理解
为什么学习
- 用户查询与文档语言差异是检索失配的主因,查询侧优化是低成本高收益的杠杆。
如何检验理解
- 实现改写+多查询并对比单查询检索质量
- 分析一次失配检索的根因
RAG
Agentic RAG:检索进入 Agent 循环
理解 Agentic RAG:LLM 自主决定检索时机、检索工具化、多轮检索与自反思式检索(Self-RAG 思路)。
建议预留 150 分钟
学习目标
- 能把检索封装为工具并接入 Agent 循环
- 能设计『先查再答』的自主决策流程
关键概念
- 检索工具化
- 自主检索决策
- Self-RAG 思路
为什么学习
- 固定流程 RAG 无法应对复杂问题,Agentic RAG 是 2026 年社区公认的进阶方向。
如何检验理解
- 实现检索工具接入 LangGraph 的 Agent
- 对比固定流程与自主检索的问答质量
RAG
RAG 综合实战:知识问答 Agent
综合运用 RAG 全链路(解析→分块→混合检索→重排→生成→溯源)+ RAGAS 评估,构建文档问答 Agent。
建议预留 420 分钟
学习目标
- 交付带评估报告的完整 RAG 问答系统
- 具备混合检索、溯源、拒答全部能力
关键概念
- 全链路集成
- 评估与迭代闭环
- 工程化打磨
为什么学习
- 主线的第二个大型交付物,要求『先评估后优化』的工程闭环。
如何检验理解
- 交付完整 RAG 问答应用+评估报告
- 附 3 轮迭代的指标变化记录
RAG
RAG 架构与完整流程
理解 RAG 全流程:索引(解析→分块→嵌入→入库)与检索(查询→召回→重排→生成),以及各环节的失效风险。
建议预留 120 分钟
学习目标
- 能画出 RAG 完整架构图
- 能指出每个环节可能失效的位置
关键概念
- 索引流水线
- 检索-生成闭环
- 失效风险分布
为什么学习
- RAG 是知识型 Agent 应用的事实标准,官方课程与社区路线均独立成章且标注为深挖重点。
如何检验理解
- 画 RAG 全流程图并标注每环节风险
- 分析一个真实 RAG 产品的环节缺陷
API边界
Middleware
学习 Middleware,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“Middleware”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Middleware”的最小闭环
关键概念
- Middleware
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“Middleware”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Middleware”的最小闭环
- 能独立完成「Middleware」的最小可运行实现,并用测试、请求或日志证明其行为
RAG
RAG 失败模式与调优
掌握 RAG 的典型失败模式:召回不全、上下文冲突、幻觉残留、时序错乱,以及对应的调优手段。
建议预留 120 分钟
学习目标
- 能诊断 RAG 失败并定位环节
- 能给出针对性的调优方案
关键概念
- 失败模式分类
- 逐环节调优
- 效果验证方法
为什么学习
- 生产 RAG 问题大多可归因于少数已知模式,学会系统诊断比堆功能更有价值。
如何检验理解
- 为 3 个失败案例做诊断并给出调优方案
- 总结自己的 RAG 调优检查清单
API边界
DTO、Pipe、验证与转换
学习 DTO、Pipe、验证与转换,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“DTO、Pipe、验证与转换”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“DTO、Pipe、验证与转换”的最小闭环
关键概念
- DTO、Pipe、验证与转换
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“DTO、Pipe、验证与转换”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“DTO、Pipe、验证与转换”的最小闭环
- 能独立完成「DTO、Pipe、验证与转换」的最小可运行实现,并用测试、请求或日志证明其行为
API边界
Guard 与访问决策
学习 Guard 与访问决策,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“Guard 与访问决策”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Guard 与访问决策”的最小闭环
关键概念
- Guard 与访问决策
- NestJS
- 生产级后端
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“Guard 与访问决策”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Guard 与访问决策”的最小闭环
- 能画出或口述「Guard 与访问决策」的关键机制,解释边界并诊断一个典型错误
数据一致性
Migration、Seed 与 Schema 演进
学习 Migration、Seed 与 Schema 演进,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“Migration、Seed 与 Schema 演进”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Migration、Seed 与 Schema 演进”的最小闭环
关键概念
- Migration、Seed 与 Schema 演进
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“Migration、Seed 与 Schema 演进”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Migration、Seed 与 Schema 演进”的最小闭环
- 能独立完成「Migration、Seed 与 Schema 演进」的最小可运行实现,并用测试、请求或日志证明其行为
生产工程
模块化单体与领域边界
学习 模块化单体与领域边界,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“模块化单体与领域边界”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“模块化单体与领域边界”的最小闭环
关键概念
- 模块化单体与领域边界
- NestJS
- 生产级后端
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“模块化单体与领域边界”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“模块化单体与领域边界”的最小闭环
- 能画出或口述「模块化单体与领域边界」的关键机制,解释边界并诊断一个典型错误
API边界
异常与 Exception Filter
学习 异常与 Exception Filter,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“异常与 Exception Filter”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“异常与 Exception Filter”的最小闭环
关键概念
- 异常与 Exception Filter
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“异常与 Exception Filter”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“异常与 Exception Filter”的最小闭环
- 能独立完成「异常与 Exception Filter」的最小可运行实现,并用测试、请求或日志证明其行为
生产化
性能优化与成本治理
掌握 LLM 应用性能与成本:缓存(语义缓存/前缀缓存)、批处理、模型分级与用量治理。
建议预留 120 分钟
学习目标
- 能设计缓存与批处理优化方案
- 能建立成本治理机制
关键概念
- 语义与前缀缓存
- 批处理与并发
- 成本治理与配额
为什么学习
- LLM 应用的边际成本显著,成本治理是生产应用能否持续运营的关键。
如何检验理解
- 为已有应用设计缓存与分级方案
- 制定月度成本预算与超支告警
生产化
可观测性与日志追踪
理解 Agent 应用的可观测性:Token 用量与成本日志、LangSmith 类追踪、请求链路与异常监控。
建议预留 120 分钟
学习目标
- 能追踪一次 Agent 调用的完整链路
- 能设计成本与用量监控面板
关键概念
- 链路追踪(LangSmith 等)
- 成本与用量监控
- 异常与告警
为什么学习
- Agent 应用是异步多跳系统,没有可观测性就无法定位问题,与 NestJS 日志体系思路相通。
如何检验理解
- 接入追踪工具查看一次调用的完整链路
- 设计成本告警规则
生产化
评测工程化:离线与在线评估
掌握评测体系工程化:评估集管理、回归流水线、Golden Set、在线 A/B 与上线门槛。
建议预留 150 分钟
学习目标
- 能搭建自动化评测流水线
- 能制定上线质量门槛
关键概念
- 回归流水线与 Golden Set
- 在线 A/B 评估
- 上线门槛设计
为什么学习
- 从『能跑』到『能上线』的分界是评测体系,这是生产级工程师的必备能力。
如何检验理解
- 为已有应用搭建评测回归流水线
- 制定一份上线检查清单
生产化
生产安全与合规(了解)
了解 AI 应用的安全与合规基线:数据脱敏、日志隐私、内容过滤与合规红线(与后端安全课的对照)。
建议预留 90 分钟
学习目标
- 能识别常见隐私与合规风险
- 能说出安全基线清单
关键概念
- 数据脱敏与隐私
- 内容安全过滤
- 合规红线
为什么学习
- 安全要求已在 Agent 安全节点与 NestJS 课程覆盖细节,这里聚焦部署侧基线。
如何检验理解
- 为应用做一次安全基线检查并输出清单
- 列出 5 条合规红线
生产化
生产部署(了解)
了解生产部署要点:Docker 化、FastAPI 部署、并发与长连接、限流与扩容的基本思路。
建议预留 120 分钟
学习目标
- 能理解部署拓扑并完成基础容器化
- 能说出限流与扩容的基本策略
关键概念
- 容器化与部署
- 限流与扩容
- 与 NestJS 部署的对照
为什么学习
- 部署细节在 NestJS 项目深入,本节点建立 Python 侧的部署对照认知即可。
如何检验理解
- 完成应用的 Docker 化并本地跑通
- 对照 NestJS 部署列出异同表
毕业项目
项目复盘与毕业评估
系统复盘整个学习路径:各节点知识在毕业项目中的落点、薄弱环节识别、后续学习路线规划。
建议预留 180 分钟
学习目标
- 能评估自己各领域的真实掌握程度
- 能制定下一阶段学习计划
关键概念
- 知识落点复盘
- 薄弱环节识别
- 后续路线规划
为什么学习
- 复盘是主线收尾:把 74 个节点映射到项目中的实际落点,形成下一阶段路线。
如何检验理解
- 输出学习复盘报告
- 制定下一阶段 4 周学习计划
生产化
LLM 应用安全加固
综合应用安全实践:输入净化、输出审核、工具白名单、敏感操作二次确认与审计日志。
建议预留 120 分钟
学习目标
- 能为 Agent 应用做端到端安全加固
- 能设计安全测试方案
关键概念
- 输入净化与输出审核
- 工具白名单与二次确认
- 审计与追溯
为什么学习
- 把安全节点学到的原理落实为完整的生产加固方案,是交付前的必做项。
如何检验理解
- 为实战应用做安全加固并演示攻击失败
- 输出安全加固文档
毕业项目
毕业项目:成熟 AI Agent 应用
独立完成毕业项目:综合 Agent 核心 + MCP + LangGraph + RAG + 评测 + 生产化,交付一个成熟的 AI 应用。
建议预留 600 分钟
学习目标
- 交付完整可部署的应用与文档
- 具备评估报告与安全加固
- 架构决策有依据
关键概念
- 端到端产品设计
- 全部技术栈综合运用
- 工程文档与交付
为什么学习
- 毕业项目是 2 个月主线的验收物:能用全部所学独立交付一个成熟 AI Agent 应用。
如何检验理解
- 交付完整项目(代码+文档+评估报告+部署方案)
- 做一次 15 分钟项目答辩演示
安全与测试
单元测试与依赖替换
学习 单元测试与依赖替换,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“单元测试与依赖替换”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“单元测试与依赖替换”的最小闭环
关键概念
- 单元测试与依赖替换
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“单元测试与依赖替换”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“单元测试与依赖替换”的最小闭环
- 能独立完成「单元测试与依赖替换」的最小可运行实现,并用测试、请求或日志证明其行为
API边界
Interceptor 与 AOP
学习 Interceptor 与 AOP,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“Interceptor 与 AOP”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Interceptor 与 AOP”的最小闭环
关键概念
- Interceptor 与 AOP
- NestJS
- 生产级后端
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“Interceptor 与 AOP”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Interceptor 与 AOP”的最小闭环
- 能画出或口述「Interceptor 与 AOP」的关键机制,解释边界并诊断一个典型错误
API边界
REST 资源建模与 API 契约
学习 REST 资源建模与 API 契约,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“REST 资源建模与 API 契约”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“REST 资源建模与 API 契约”的最小闭环
关键概念
- REST 资源建模与 API 契约
- NestJS
- 生产级后端
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“REST 资源建模与 API 契约”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“REST 资源建模与 API 契约”的最小闭环
- 能画出或口述「REST 资源建模与 API 契约」的关键机制,解释边界并诊断一个典型错误
生产工程
结构化日志与请求关联
学习 结构化日志与请求关联,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“结构化日志与请求关联”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“结构化日志与请求关联”的最小闭环
关键概念
- 结构化日志与请求关联
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“结构化日志与请求关联”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“结构化日志与请求关联”的最小闭环
- 能独立完成「结构化日志与请求关联」的最小可运行实现,并用测试、请求或日志证明其行为
API边界
自定义装饰器与 ExecutionContext
学习 自定义装饰器与 ExecutionContext,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“自定义装饰器与 ExecutionContext”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“自定义装饰器与 ExecutionContext”的最小闭环
关键概念
- 自定义装饰器与 ExecutionContext
- NestJS
- 生产级后端
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“自定义装饰器与 ExecutionContext”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“自定义装饰器与 ExecutionContext”的最小闭环
- 能画出或口述「自定义装饰器与 ExecutionContext」的关键机制,解释边界并诊断一个典型错误
API边界
OpenAPI / Swagger
学习 OpenAPI / Swagger,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“OpenAPI / Swagger”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“OpenAPI / Swagger”的最小闭环
关键概念
- OpenAPI / Swagger
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“OpenAPI / Swagger”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“OpenAPI / Swagger”的最小闭环
- 能独立完成「OpenAPI / Swagger」的最小可运行实现,并用测试、请求或日志证明其行为
数据一致性
事务、并发与幂等
学习 事务、并发与幂等,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“事务、并发与幂等”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“事务、并发与幂等”的最小闭环
关键概念
- 事务、并发与幂等
- NestJS
- 生产级后端
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 能够用自己的话解释“事务、并发与幂等”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“事务、并发与幂等”的最小闭环
- 能在约束变化或故障注入后重新设计「事务、并发与幂等」,并用自动化证据验证关键性质
数据一致性
序列化与数据泄漏防护
学习 序列化与数据泄漏防护,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“序列化与数据泄漏防护”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“序列化与数据泄漏防护”的最小闭环
关键概念
- 序列化与数据泄漏防护
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“序列化与数据泄漏防护”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“序列化与数据泄漏防护”的最小闭环
- 能独立完成「序列化与数据泄漏防护」的最小可运行实现,并用测试、请求或日志证明其行为
生产工程
外部 HTTP 集成与韧性
学习 外部 HTTP 集成与韧性,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“外部 HTTP 集成与韧性”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“外部 HTTP 集成与韧性”的最小闭环
关键概念
- 外部 HTTP 集成与韧性
- NestJS
- 生产级后端
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 能够用自己的话解释“外部 HTTP 集成与韧性”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“外部 HTTP 集成与韧性”的最小闭环
- 能在约束变化或故障注入后重新设计「外部 HTTP 集成与韧性」,并用自动化证据验证关键性质
安全与测试
身份认证:密码与 JWT
学习 身份认证:密码与 JWT,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“身份认证:密码与 JWT”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“身份认证:密码与 JWT”的最小闭环
关键概念
- 身份认证:密码与 JWT
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“身份认证:密码与 JWT”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“身份认证:密码与 JWT”的最小闭环
- 能独立完成「身份认证:密码与 JWT」的最小可运行实现,并用测试、请求或日志证明其行为
安全与测试
数据库集成测试
学习 数据库集成测试,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“数据库集成测试”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“数据库集成测试”的最小闭环
关键概念
- 数据库集成测试
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“数据库集成测试”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“数据库集成测试”的最小闭环
- 能独立完成「数据库集成测试」的最小可运行实现,并用测试、请求或日志证明其行为
生产工程
事件、定时任务与后台队列
学习 事件、定时任务与后台队列,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“事件、定时任务与后台队列”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“事件、定时任务与后台队列”的最小闭环
关键概念
- 事件、定时任务与后台队列
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“事件、定时任务与后台队列”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“事件、定时任务与后台队列”的最小闭环
- 能独立完成「事件、定时任务与后台队列」的最小可运行实现,并用测试、请求或日志证明其行为
生产工程
缓存与 Redis
学习 缓存与 Redis,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“缓存与 Redis”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“缓存与 Redis”的最小闭环
关键概念
- 缓存与 Redis
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“缓存与 Redis”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“缓存与 Redis”的最小闭环
- 能独立完成「缓存与 Redis」的最小可运行实现,并用测试、请求或日志证明其行为
延后分支
高级 DI、动态模块与作用域
按真实项目需求进入的高级分支:高级 DI、动态模块与作用域,不阻塞模块化单体主线。
建议预留 180 分钟
学习目标
- 能够用自己的话解释“高级 DI、动态模块与作用域”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“高级 DI、动态模块与作用域”的最小闭环
关键概念
- 高级 DI、动态模块与作用域
- NestJS
- 条件性高级能力
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“高级 DI、动态模块与作用域”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“高级 DI、动态模块与作用域”的最小闭环
- 能画出或口述「高级 DI、动态模块与作用域」的关键机制,解释边界并诊断一个典型错误
延后分支
Hexagonal Architecture 与 DDD
按真实项目需求进入的高级分支:Hexagonal Architecture 与 DDD,不阻塞模块化单体主线。
建议预留 180 分钟
学习目标
- 能够用自己的话解释“Hexagonal Architecture 与 DDD”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Hexagonal Architecture 与 DDD”的最小闭环
关键概念
- Hexagonal Architecture 与 DDD
- NestJS
- 条件性高级能力
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“Hexagonal Architecture 与 DDD”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Hexagonal Architecture 与 DDD”的最小闭环
- 能画出或口述「Hexagonal Architecture 与 DDD」的关键机制,解释边界并诊断一个典型错误
产品后端能力
模块边界、业务用例与 API 契约
把用户、会话、Agent 运行、工具、用量等能力分开;明确 HTTP 资源、状态码、分页、版本和稳定错误格式。 Controller、数据库与第三方 SDK 互相缠绕;一次模型或数据库变更扩散全局;客户端无法稳定集成。
建议预留 120 分钟
学习目标
- 主要模块只有显式导出
- 业务规则可脱离 HTTP 测试
- OpenAPI 可驱动关键用户旅程
- 破坏性契约变更会被测试阻止。
关键概念
- A1
- 模块边界、业务用例与 API 契约
- 产品后端能力
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 主要模块只有显式导出
- 业务规则可脱离 HTTP 测试
- OpenAPI 可驱动关键用户旅程
- 破坏性契约变更会被测试阻止。
- 能在约束变化或故障注入后重新设计「模块边界、业务用例与 API 契约」,并用自动化证据验证关键性质
产品后端能力
输入验证、输出序列化与一致错误语义
把网络输入视为不可信;拒绝未知字段、限制大小和格式;不返回密码、密钥、内部堆栈或跨用户数据。 脏数据进入数据库;mass assignment;内部细节泄露;前端无法区分业务拒绝、暂时失败和系统故障。
建议预留 120 分钟
学习目标
- 无效、超长和多余字段有负向测试
- 错误响应含稳定 code/correlation id
- 敏感字段永不出现在 API 与日志快照中。
关键概念
- A3
- 输入验证、输出序列化与一致错误语义
- 产品后端能力
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 无效、超长和多余字段有负向测试
- 错误响应含稳定 code/correlation id
- 敏感字段永不出现在 API 与日志快照中。
- 能画出或口述「输入验证、输出序列化与一致错误语义」的关键机制,解释边界并诊断一个典型错误
产品后端能力
关系数据建模、约束、事务与迁移
可靠保存用户、会话、run、消息、工具调用、用量和审计记录;用约束和事务维护跨表不变量。 重复扣费、孤儿消息、run 状态矛盾、并发更新丢失;生产数据库无法安全升级或回滚。
建议预留 120 分钟
学习目标
- 空库可由 migration 重建
- 并发测试证明唯一约束和状态转换有效
- 故意中断事务后无半成品
- 慢查询可由执行计划解释。
关键概念
- A4
- 关系数据建模、约束、事务与迁移
- 产品后端能力
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 空库可由 migration 重建
- 并发测试证明唯一约束和状态转换有效
- 故意中断事务后无半成品
- 慢查询可由执行计划解释。
- 能在约束变化或故障注入后重新设计「关系数据建模、约束、事务与迁移」,并用自动化证据验证关键性质
安全与测试
Refresh Token、Session 与撤销
学习 Refresh Token、Session 与撤销,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“Refresh Token、Session 与撤销”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Refresh Token、Session 与撤销”的最小闭环
关键概念
- Refresh Token、Session 与撤销
- NestJS
- 生产级后端
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“Refresh Token、Session 与撤销”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Refresh Token、Session 与撤销”的最小闭环
- 能画出或口述「Refresh Token、Session 与撤销」的关键机制,解释边界并诊断一个典型错误
安全与测试
授权:RBAC、Claims 与资源权限
学习 授权:RBAC、Claims 与资源权限,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“授权:RBAC、Claims 与资源权限”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“授权:RBAC、Claims 与资源权限”的最小闭环
关键概念
- 授权:RBAC、Claims 与资源权限
- NestJS
- 生产级后端
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“授权:RBAC、Claims 与资源权限”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“授权:RBAC、Claims 与资源权限”的最小闭环
- 能画出或口述「授权:RBAC、Claims 与资源权限」的关键机制,解释边界并诊断一个典型错误
生产工程
健康检查、生命周期与优雅停机
学习 健康检查、生命周期与优雅停机,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“健康检查、生命周期与优雅停机”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“健康检查、生命周期与优雅停机”的最小闭环
关键概念
- 健康检查、生命周期与优雅停机
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“健康检查、生命周期与优雅停机”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“健康检查、生命周期与优雅停机”的最小闭环
- 能独立完成「健康检查、生命周期与优雅停机」的最小可运行实现,并用测试、请求或日志证明其行为
延后分支
CQRS 与领域事件
按真实项目需求进入的高级分支:CQRS 与领域事件,不阻塞模块化单体主线。
建议预留 180 分钟
学习目标
- 能够用自己的话解释“CQRS 与领域事件”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“CQRS 与领域事件”的最小闭环
关键概念
- CQRS 与领域事件
- NestJS
- 条件性高级能力
为什么学习
- 该节点在当前路线中主要用于建立边界意识;现阶段应能识别它何时需要、何时可以延后。
如何检验理解
- 能够用自己的话解释“CQRS 与领域事件”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“CQRS 与领域事件”的最小闭环
- 面对需求或架构图时,能指出「CQRS 与领域事件」的用途、触发条件和可延后边界
延后分支
Nest Microservice 基础
按真实项目需求进入的高级分支:Nest Microservice 基础,不阻塞模块化单体主线。
建议预留 180 分钟
学习目标
- 能够用自己的话解释“Nest Microservice 基础”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Nest Microservice 基础”的最小闭环
关键概念
- Nest Microservice 基础
- NestJS
- 条件性高级能力
为什么学习
- 该节点在当前路线中主要用于建立边界意识;现阶段应能识别它何时需要、何时可以延后。
如何检验理解
- 能够用自己的话解释“Nest Microservice 基础”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Nest Microservice 基础”的最小闭环
- 面对需求或架构图时,能指出「Nest Microservice 基础」的用途、触发条件和可延后边界
安全与测试
Web 安全基线
学习 Web 安全基线,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“Web 安全基线”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Web 安全基线”的最小闭环
关键概念
- Web 安全基线
- NestJS
- 生产级后端
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“Web 安全基线”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Web 安全基线”的最小闭环
- 能画出或口述「Web 安全基线」的关键机制,解释边界并诊断一个典型错误
安全与测试
E2E 与契约测试
学习 E2E 与契约测试,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“E2E 与契约测试”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“E2E 与契约测试”的最小闭环
关键概念
- E2E 与契约测试
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“E2E 与契约测试”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“E2E 与契约测试”的最小闭环
- 能独立完成「E2E 与契约测试」的最小可运行实现,并用测试、请求或日志证明其行为
生产工程
Metrics、Tracing 与可观测性
学习 Metrics、Tracing 与可观测性,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“Metrics、Tracing 与可观测性”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Metrics、Tracing 与可观测性”的最小闭环
关键概念
- Metrics、Tracing 与可观测性
- NestJS
- 生产级后端
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 能够用自己的话解释“Metrics、Tracing 与可观测性”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“Metrics、Tracing 与可观测性”的最小闭环
- 能在约束变化或故障注入后重新设计「Metrics、Tracing 与可观测性」,并用自动化证据验证关键性质
延后分支
消息语义与 Broker 可靠性
按真实项目需求进入的高级分支:消息语义与 Broker 可靠性,不阻塞模块化单体主线。
建议预留 180 分钟
学习目标
- 能够用自己的话解释“消息语义与 Broker 可靠性”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“消息语义与 Broker 可靠性”的最小闭环
关键概念
- 消息语义与 Broker 可靠性
- NestJS
- 条件性高级能力
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 能够用自己的话解释“消息语义与 Broker 可靠性”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“消息语义与 Broker 可靠性”的最小闭环
- 能画出或口述「消息语义与 Broker 可靠性」的关键机制,解释边界并诊断一个典型错误
安全与测试
限流与滥用防护
学习 限流与滥用防护,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“限流与滥用防护”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“限流与滥用防护”的最小闭环
关键概念
- 限流与滥用防护
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“限流与滥用防护”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“限流与滥用防护”的最小闭环
- 能独立完成「限流与滥用防护」的最小可运行实现,并用测试、请求或日志证明其行为
生产工程
性能、Fastify 与负载测试
学习 性能、Fastify 与负载测试,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“性能、Fastify 与负载测试”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“性能、Fastify 与负载测试”的最小闭环
关键概念
- 性能、Fastify 与负载测试
- NestJS
- 生产级后端
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 能够用自己的话解释“性能、Fastify 与负载测试”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“性能、Fastify 与负载测试”的最小闭环
- 能在约束变化或故障注入后重新设计「性能、Fastify 与负载测试」,并用自动化证据验证关键性质
延后分支
WebSocket 与 SSE
按真实项目需求进入的高级分支:WebSocket 与 SSE,不阻塞模块化单体主线。
建议预留 180 分钟
学习目标
- 能够用自己的话解释“WebSocket 与 SSE”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“WebSocket 与 SSE”的最小闭环
关键概念
- WebSocket 与 SSE
- NestJS
- 条件性高级能力
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“WebSocket 与 SSE”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“WebSocket 与 SSE”的最小闭环
- 能独立完成「WebSocket 与 SSE」的最小可运行实现,并用测试、请求或日志证明其行为
延后分支
GraphQL 与 Federation
按真实项目需求进入的高级分支:GraphQL 与 Federation,不阻塞模块化单体主线。
建议预留 180 分钟
学习目标
- 能够用自己的话解释“GraphQL 与 Federation”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“GraphQL 与 Federation”的最小闭环
关键概念
- GraphQL 与 Federation
- NestJS
- 条件性高级能力
为什么学习
- 该节点在当前路线中主要用于建立边界意识;现阶段应能识别它何时需要、何时可以延后。
如何检验理解
- 能够用自己的话解释“GraphQL 与 Federation”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“GraphQL 与 Federation”的最小闭环
- 面对需求或架构图时,能指出「GraphQL 与 Federation」的用途、触发条件和可延后边界
延后分支
gRPC 与类型化服务契约
按真实项目需求进入的高级分支:gRPC 与类型化服务契约,不阻塞模块化单体主线。
建议预留 180 分钟
学习目标
- 能够用自己的话解释“gRPC 与类型化服务契约”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“gRPC 与类型化服务契约”的最小闭环
关键概念
- gRPC 与类型化服务契约
- NestJS
- 条件性高级能力
为什么学习
- 该节点在当前路线中主要用于建立边界意识;现阶段应能识别它何时需要、何时可以延后。
如何检验理解
- 能够用自己的话解释“gRPC 与类型化服务契约”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“gRPC 与类型化服务契约”的最小闭环
- 面对需求或架构图时,能指出「gRPC 与类型化服务契约」的用途、触发条件和可延后边界
产品后端能力
身份认证、授权与多用户数据隔离
确认“谁在调用”、能操作哪个资源;每次查询和写入都受资源所有权或角色/权限约束。 跨用户读取会话、越权调用工具、普通用户执行管理操作;AI 的 system prompt 不能弥补这些漏洞。
建议预留 120 分钟
学习目标
- 缺失/过期/伪造凭证均被拒
- 用户 A 无法用枚举 ID 访问用户 B 的会话和运行
- 工具端再次校验权限而非信任模型决定。
关键概念
- A2
- 身份认证、授权与多用户数据隔离
- 产品后端能力
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 缺失/过期/伪造凭证均被拒
- 用户 A 无法用枚举 ID 访问用户 B 的会话和运行
- 工具端再次校验权限而非信任模型决定。
- 能在约束变化或故障注入后重新设计「身份认证、授权与多用户数据隔离」,并用自动化证据验证关键性质
产品后端能力
配置、密钥与环境隔离
让同一构建产物安全运行于开发、测试、预发布和生产;密钥由外部注入并可轮换。 密钥进 Git/镜像/日志;错误环境连接生产库;缺配置后以隐蔽方式运行到一半才失败。
建议预留 120 分钟
学习目标
- 缺必需配置时启动即失败
- 仓库与镜像扫描不含秘密
- 轮换模型/API 密钥无需重新编译
- 测试环境不能访问生产资源。
关键概念
- A5
- 配置、密钥与环境隔离
- 产品后端能力
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 缺必需配置时启动即失败
- 仓库与镜像扫描不含秘密
- 轮换模型/API 密钥无需重新编译
- 测试环境不能访问生产资源。
- 能独立完成「配置、密钥与环境隔离」的最小可运行实现,并用测试、请求或日志证明其行为
产品后端能力
可观测性、健康检查与故障诊断
回答“哪个用户请求、哪个 run、哪次模型/工具调用在哪里慢或失败”;区分存活与就绪。 线上只能猜;日志无法关联;实例失去数据库/队列后仍接流量;故障发现晚、恢复慢。
建议预留 120 分钟
学习目标
- 一次用户请求可沿 HTTP→DB→模型→工具完整追踪
- 仪表盘呈现错误率、p95、队列深度
- 依赖失效会让 readiness 失败并触发告警。
关键概念
- A8
- 可观测性、健康检查与故障诊断
- 产品后端能力
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 一次用户请求可沿 HTTP→DB→模型→工具完整追踪
- 仪表盘呈现错误率、p95、队列深度
- 依赖失效会让 readiness 失败并触发告警。
- 能在约束变化或故障注入后重新设计「可观测性、健康检查与故障诊断」,并用自动化证据验证关键性质
生产工程
构建、Docker、CI/CD 与部署
学习 构建、Docker、CI/CD 与部署,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 90 分钟
学习目标
- 能够用自己的话解释“构建、Docker、CI/CD 与部署”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“构建、Docker、CI/CD 与部署”的最小闭环
关键概念
- 构建、Docker、CI/CD 与部署
- NestJS
- 生产级后端
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- 能够用自己的话解释“构建、Docker、CI/CD 与部署”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“构建、Docker、CI/CD 与部署”的最小闭环
- 能独立完成「构建、Docker、CI/CD 与部署」的最小可运行实现,并用测试、请求或日志证明其行为
产品后端能力
外部依赖可靠性:超时、退避重试、幂等与故障隔离
数据库、模型、支付、邮件和外部工具都会超时、限流或部分失败;请求必须有截止时间并安全重试。 请求无限挂起;重试风暴;同一工具动作执行两次;依赖故障拖垮全部 worker。
建议预留 120 分钟
学习目标
- 注入 timeout、429、5xx、连接中断后在预算时间内结束
- 重放相同 key 不产生重复副作用
- 重试次数和最终原因进入指标。
关键概念
- A6
- 外部依赖可靠性:超时、退避重试、幂等与故障隔离
- 产品后端能力
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 注入 timeout、429、5xx、连接中断后在预算时间内结束
- 重放相同 key 不产生重复副作用
- 重试次数和最终原因进入指标。
- 能在约束变化或故障注入后重新设计「外部依赖可靠性:超时、退避重试、幂等与故障隔离」,并用自动化证据验证关键性质
产品后端能力
限流、配额与滥用防护
限制单用户、单 IP、单组织的请求、并发、工具动作和资源消耗,保护共享容量与预算。 一个用户耗尽模型配额;暴力登录;无限循环工具调用造成成本或下游破坏。
建议预留 120 分钟
学习目标
- 超限得到可解释 429 与重试信息
- 用户 A 的配额不影响 B
- 管理员可查看并冻结异常主体
- 压力测试下系统有界退化。
关键概念
- A7
- 限流、配额与滥用防护
- 产品后端能力
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 超限得到可解释 429 与重试信息
- 用户 A 的配额不影响 B
- 管理员可查看并冻结异常主体
- 压力测试下系统有界退化。
- 能在约束变化或故障注入后重新设计「限流、配额与滥用防护」,并用自动化证据验证关键性质
生产工程
生产级后端综合项目
学习 生产级后端综合项目,建立可测试、可维护、可部署的 NestJS 后端能力。
建议预留 480 分钟
学习目标
- 能够用自己的话解释“生产级后端综合项目”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“生产级后端综合项目”的最小闭环
关键概念
- 生产级后端综合项目
- NestJS
- 生产级后端
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 能够用自己的话解释“生产级后端综合项目”解决的问题与适用边界
- 能够在 NestJS 后端中实现并验证“生产级后端综合项目”的最小闭环
- 能在约束变化或故障注入后重新设计「生产级后端综合项目」,并用自动化证据验证关键性质
测试与质量门禁
真实 UI、网络帧、日志与数据库事件的证据链
API 返回 200 不等于用户界面真的可用。真实验收要从 DOM 识别和点击开始,发送实际消息,抓 WebSocket/SSE 网络帧,再把请求、Session CID、Pi PID、服务日志、session_events 和页面状态串成一条证据链。还要识别日志语义的误导,例如主动 kill 产生的退出码 143 可能被旧代码记录成 pi_crash,不能直接当成系统崩溃。
建议预留 120 分钟
学习目标
- 能用真实浏览器完成 DOM/UI 级端到端测试
- 能把一次用户操作关联到网络帧、服务日志、进程和数据库事件
- 能区分真实崩溃、主动 TTL 回收、OOM/SIGKILL 和连接重连
关键概念
- Browser Harness 与真实 DOM
- 网络帧/日志/数据库事件关联
- 故障语义与可观测性
为什么学习
- 该能力要求把浏览器、后端进程、持久化事件和日志关联起来,适合用真实故障复现而不是只看接口返回。
如何检验理解
- 能抓到浏览器周期性 ping 并与服务端 timeout 时间对齐
- 能从 session_events 解释 Pi timeout 与 code 143 的关系
- 能在不依赖 API 直测的情况下证明标题、消息和连接状态在真实 UI 中正确
产品后端能力
自动化测试、供应链门禁、可重复部署与回滚
每次变更都能验证类型、业务规则、数据库集成、关键 E2E 和安全边界;部署失败可恢复。 只能手工点页面;mock 掉所有真实边界;依赖投毒;线上版本不可复现、无法回滚。
建议预留 120 分钟
学习目标
- CI 从干净环境重建并跑完整测试
- 关键负向权限路径受 E2E 覆盖
- 发布可追溯到 commit
- 失败部署和数据库变更有演练过的回滚/前滚路径。
关键概念
- A10
- 自动化测试、供应链门禁、可重复部署与回滚
- 产品后端能力
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- CI 从干净环境重建并跑完整测试
- 关键负向权限路径受 E2E 覆盖
- 发布可追溯到 commit
- 失败部署和数据库变更有演练过的回滚/前滚路径。
- 能在约束变化或故障注入后重新设计「自动化测试、供应链门禁、可重复部署与回滚」,并用自动化证据验证关键性质
产品后端能力
数据生命周期、审计、备份与恢复
定义会话、prompt、工具参数、上传文件、审计记录保存多久;支持导出/删除;数据库误删或损坏后恢复。 敏感数据无限保留;无法回应删除请求或调查事故;有备份却从未验证可恢复。
建议预留 120 分钟
学习目标
- 用户删除流程覆盖主库、对象和索引
- 审计能回答谁在何时执行何工具
- 从备份恢复到新环境并验证 RPO/RTO。
关键概念
- A9
- 数据生命周期、审计、备份与恢复
- 产品后端能力
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 用户删除流程覆盖主库、对象和索引
- 审计能回答谁在何时执行何工具
- 从备份恢复到新环境并验证 RPO/RTO。
- 能在约束变化或故障注入后重新设计「数据生命周期、审计、备份与恢复」,并用自动化证据验证关键性质
AI运行时必需
模型网关与供应商隔离
在业务用例和模型 SDK 之间建立稳定接口,统一认证、模型选择、参数、错误、用量和供应商能力差异。 供应商 SDK 渗透所有模块;模型弃用或区域故障时全局重写;无法比较模型版本的质量、成本和延迟。
建议预留 120 分钟
学习目标
- 业务服务不导入供应商 SDK
- fake adapter 可测试
- 一次配置切换能做小流量模型版本对比且记录实际 model id。
关键概念
- B1
- 模型网关与供应商隔离
- AI运行时必需
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 业务服务不导入供应商 SDK
- fake adapter 可测试
- 一次配置切换能做小流量模型版本对比且记录实际 model id。
- 能画出或口述「模型网关与供应商隔离」的关键机制,解释边界并诊断一个典型错误
生产工程
镜像与运行时数据迁移边界
生产部署不是只复制源码或镜像;必须区分不可变镜像、运行容器和外置 runtime-data。镜像包含程序与依赖,server.db、global_config 中的 agents_prefix_global、Provider/模型配置、MCP、密钥、uploads、skills 等由挂载或外部注入提供。运行数据库漏迁移会导致版本正确,但提示词、模型、工具、文件或历史行为不一致。
建议预留 120 分钟
为什么学习
- 这是把构建、配置隔离、数据迁移和真实部署验收串成闭环的生产能力;需要在理解基础部署后,能迁移到新环境并处理约束变化。
如何检验理解
- 能画出源码、镜像、容器和 runtime-data 的边界并说明遗漏后果
- 能完成一次不复制敏感业务数据的跨环境迁移清单
- 能用脱敏证据核对镜像 digest、实际挂载、关键配置键和真实业务冒烟
- 能说明为什么 seed 不是历史配置迁移工具,并设计失败后的回滚组合
生产工程
Agent 平台完整迁移与现场验收
完整迁移不是只复制源码、Docker 镜像或正在运行的容器。必须分别核对不可变镜像及 digest、Compose/启动参数、容器资源限制、外置 runtime-data(server.db、uploads、logs、skills、MCP 配置、加密密钥)、环境注入、端口与 FRP/反向代理,并确认测试实例与生产实例的数据和凭据隔离。迁移后要用 docker inspect、健康检查、真实浏览器冒烟、服务日志和数据库事件做证据闭环,并保留可执行回滚组合。
建议预留 150 分钟
学习目标
- 能画出源码、镜像、容器、runtime-data、网络入口和主机资源的边界
- 能编写不复制秘密和生产业务数据的完整迁移清单
- 能用镜像 digest、挂载、端口、健康检查和真实 UI 冒烟证明迁移结果
关键概念
- 镜像/容器/runtime-data 分层
- 配置、密钥与业务数据隔离
- 迁移验收与回滚组合
为什么学习
- 这是从“能部署”走向“能可靠迁移和验收”的生产工程能力,必须在环境边界和故障证据上复用。
如何检验理解
- 能说明只换镜像为什么不会迁移 server.db、uploads、skills 或 Provider 配置
- 能核对测试容器与生产容器的端口、内存上限和挂载路径
- 能在迁移失败时按 release、镜像、Compose 和 runtime 备份恢复
生产工程
容器资源边界:主机、Docker VM 与 Container
资源限制至少有三层:Mac 主机物理内存、Docker Desktop/虚拟机上限、单个容器的 hard limit/reservation。容器的 6 GiB 或 3 GiB 上限是该容器可使用的天花板,不代表主机一定预留同等内存;多个容器会动态争用 Docker VM 的可用资源。并发容量更接近同时运行的 Agent Run 数,而不是打开的 WebSocket 或 Session 数。
建议预留 110 分钟
学习目标
- 能区分主机、Docker VM 和容器三层资源上限
- 能用 docker inspect 与 docker stats 区分配置上限和实时占用
- 能用 Active Runs、内存、CPU 和外部 Provider 延迟估算并发风险
关键概念
- hard limit 与 reservation
- Docker VM 动态资源分配
- Active Runs 与并发容量
为什么学习
- 该节点把 Docker 资源配置和 Agent 运行时并发联系起来,是压测前判断“上限、保留和实际占用”差异的基础。
如何检验理解
- 能解释为什么关闭浏览器标签不会释放服务端 Agent Process
- 能核对 6 GiB 生产上限与 3 GiB 测试上限是否真实生效
- 能在压测中关联容器资源、Pi 进程数、请求延迟和 OOM/SIGKILL 日志
AI运行时必需
Prompt、上下文预算与结构化输出
可版本化地组装 system 指令、用户输入、历史、检索内容和工具结果;在上下文窗口内获得机器可校验输出。 prompt 改动不可追溯;历史无限增长;文本解析脆弱;模型输出直接进入数据库或工具执行。
建议预留 120 分钟
学习目标
- 每次 run 记录 prompt/config 版本但不泄露秘密
- 超预算有确定裁剪策略
- 无效结构无法进入业务层
- 回归集能对比版本。
关键概念
- B2
- Prompt、上下文预算与结构化输出
- AI运行时必需
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 每次 run 记录 prompt/config 版本但不泄露秘密
- 超预算有确定裁剪策略
- 无效结构无法进入业务层
- 回归集能对比版本。
- 能在约束变化或故障注入后重新设计「Prompt、上下文预算与结构化输出」,并用自动化证据验证关键性质
AI运行时必需
流式事件协议与连接生命周期
把 token、工具开始/结束、阶段进度、错误和最终结果增量传给客户端;处理断线、取消、背压和最终一致状态。 长响应像“卡死”;断线后后台继续烧钱;客户端把半截输出当成功;代理缓冲或事件丢失难排查。
建议预留 120 分钟
学习目标
- 客户端中断会取消或转后台策略
- 事件序号单调且只有一个终态
- 慢消费者不致内存无限增长
- 重连后可查询最终 run。
关键概念
- B3
- 流式事件协议与连接生命周期
- AI运行时必需
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 客户端中断会取消或转后台策略
- 事件序号单调且只有一个终态
- 慢消费者不致内存无限增长
- 重连后可查询最终 run。
- 能在约束变化或故障注入后重新设计「流式事件协议与连接生命周期」,并用自动化证据验证关键性质
条件能力
计费、订阅、权益与用量结算
商业产品按席位、请求、token、功能层级或额度收费。 重复扣费;支付成功但未开权益;成本与收入脱节;客户端伪造付费状态。
建议预留 150 分钟
学习目标
- 重复/乱序 webhook 结果一致
- 权益由服务端判断
- 用量可对账
- 退款/降级有确定状态转换。
关键概念
- C3
- 计费、订阅、权益与用量结算
- 条件能力
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 重复/乱序 webhook 结果一致
- 权益由服务端判断
- 用量可对账
- 退款/降级有确定状态转换。
- 能在约束变化或故障注入后重新设计「计费、订阅、权益与用量结算」,并用自动化证据验证关键性质
AI运行时必需
持久化会话、Run 与工具调用状态机
明确 run 的 queued/running/waiting-approval/succeeded/failed/cancelled 等状态及合法转换;会话历史与执行状态可恢复。 刷新页面丢进度;同一 run 重复执行;失败后无法判断发生到哪一步;内存中的状态随进程重启消失。
建议预留 120 分钟
学习目标
- 非法状态转换被拒
- 进程在任意 step 崩溃后可恢复或明确失败
- 相同 run id 不会产生两个并行执行
- 用户可查询完整时间线。
关键概念
- B4
- 持久化会话、Run 与工具调用状态机
- AI运行时必需
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 非法状态转换被拒
- 进程在任意 step 崩溃后可恢复或明确失败
- 相同 run id 不会产生两个并行执行
- 用户可查询完整时间线。
- 能在约束变化或故障注入后重新设计「持久化会话、Run 与工具调用状态机」,并用自动化证据验证关键性质
AI运行时必需
动态上下文:静态设定、会话状态与 Prompt 投影
动态场景不应靠模型反复改写原始 scenario 字符串来维持。更稳的模型是:角色卡和初始 scenario 作为不可变基线;会话状态保存地点、人物关系、任务、物品、已知事实等可变事实;每轮由运行时把基线、状态、摘要和最近消息投影成当前 Prompt。模型只能提出结构化 state_delta,服务端校验后提交状态,再生成下一轮投影。
建议预留 150 分钟
学习目标
- 能区分 card/scenario 基线、session state 和当前 Prompt 投影
- 能设计一个包含事实、事件和版本号的会话状态
- 能让模型只提出结构化状态增量而不是直接改写权威状态
- 能在上下文裁剪或 Worker 回收后依据持久化状态重建同一会话
关键概念
- 不可变初始设定
- 会话状态
- 状态增量 state_delta
- 每轮上下文投影
- 历史与摘要
- 服务端校验与提交
为什么学习
- 这是从静态角色卡走向可持续模拟器的核心运行时抽象,需要同时理解状态所有权、上下文预算和模型不可靠性。
如何检验理解
- 画出“用户输入→读取状态→编译上下文→模型输出→解析增量→校验提交→下一轮”的闭环,并说明 scenario 原文、状态和投影各自是否可变
Agent 运行时
WebSocket 心跳、连接状态与 Agent TTL
WebSocket 是浏览器与服务端的双向长连接,SSE 更接近服务端单向事件流;连接层的 ping 只证明传输仍在,不等于用户发起了业务请求,也不等于 Agent 正在运行。若服务端先 resetTimeout 再判断 ping,浏览器每 30 秒的心跳就会不断延长 Pi 的 TTL;正确做法是过滤 ping 后只让真实 prompt 或明确的运行时活动刷新回收计时器。页面连接可以继续存在,而 Pi 子进程已经因 TTL 退出,下一条消息再按需恢复。
建议预留 120 分钟
学习目标
- 能区分 WebSocket/SSE 的连接语义、ping 心跳和 Agent Run
- 能解释为什么 ping 不应延长 Agent Process 的业务 TTL
- 能设计断线、重连、Pi 退出后会话恢复的测试
关键概念
- WebSocket 双向连接与 ping
- 业务活动与连接保活分离
- Pi Process TTL 与懒启动
为什么学习
- 该概念需要把传输协议、Agent 生命周期和资源回收放在同一条证据链中分析,并能用真实浏览器复现与验证。
如何检验理解
- 能从真实浏览器网络事件抓到周期性 ping
- 能从服务端日志看到 300 秒 timeout 后 Pi 退出且 Session 保留
- 能证明页面 WebSocket 保持连接不代表 Pi 子进程仍在运行
AI运行时必需
异步任务、重试、死信、取消与资源控制
长模型调用、资料处理和工具工作不能绑定单次 HTTP 生命周期;任务需排队、限并发、续租、取消和人工重放。 请求超时但任务仍运行;进程重启丢任务;毒任务无限重试;高峰压垮模型和数据库。
建议预留 120 分钟
学习目标
- API 快速返回 run id
- 杀死 worker 后任务可安全重取
- 超过重试阈值进入 DLQ
- 用户取消能阻止未开始步骤并停止可中断调用。
关键概念
- B5
- 异步任务、重试、死信、取消与资源控制
- AI运行时必需
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- API 快速返回 run id
- 杀死 worker 后任务可安全重取
- 超过重试阈值进入 DLQ
- 用户取消能阻止未开始步骤并停止可中断调用。
- 能在约束变化或故障注入后重新设计「异步任务、重试、死信、取消与资源控制」,并用自动化证据验证关键性质
AI运行时必需
工具契约、执行隔离与确定性授权
工具拥有严格 schema、最小功能和最小权限;模型只“提议”调用,后端在执行前校验身份、参数、策略和资源归属。 模型幻觉或注入导致删数据、发消息、越权读取;通用 shell/SQL 工具把模型错误放大成系统事故。
建议预留 120 分钟
学习目标
- 未授权工具与参数在模型之外被拒
- 凭证是用户/工具最小 scope
- 每次调用关联 user/run/decision
- 故障工具不会终止整个 worker。
关键概念
- B6
- 工具契约、执行隔离与确定性授权
- AI运行时必需
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 未授权工具与参数在模型之外被拒
- 凭证是用户/工具最小 scope
- 每次调用关联 user/run/decision
- 故障工具不会终止整个 worker。
- 能在约束变化或故障注入后重新设计「工具契约、执行隔离与确定性授权」,并用自动化证据验证关键性质
AI运行时必需
高风险动作确认、审批与补偿
把“读”和“写/支付/删除/发送/发布”分级;高影响动作必须展示将发生什么并由人确认;失败后可补偿或人工处置。 模型在不确定或被操纵时直接产生不可逆副作用;用户不知道实际执行内容;重试造成重复动作。
建议预留 120 分钟
学习目标
- 危险工具在无审批时绝不执行
- 确认页展示规范化参数
- 审批过期或参数变化需重新确认
- 重复确认只执行一次。
关键概念
- B7
- 高风险动作确认、审批与补偿
- AI运行时必需
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 危险工具在无审批时绝不执行
- 确认页展示规范化参数
- 审批过期或参数变化需重新确认
- 重复确认只执行一次。
- 能在约束变化或故障注入后重新设计「高风险动作确认、审批与补偿」,并用自动化证据验证关键性质
条件能力
文件/媒体摄取与对象存储
用户上传文档、图片、音频或需要保存大型生成物。 大文件压垮 API 内存;恶意文件;对象越权访问;数据库膨胀;处理状态和原文件失配。
建议预留 150 分钟
学习目标
- API 不代理大文件主体
- 对象 key 不可枚举越权
- 超限/恶意文件被拒
- 删除和生命周期策略可验证。
关键概念
- C2
- 文件/媒体摄取与对象存储
- 条件能力
为什么学习
- 该节点是可重复使用的工程能力;学习终点是脱离逐行照抄后仍能按可靠模式完成实现。
如何检验理解
- API 不代理大文件主体
- 对象 key 不可枚举越权
- 超限/恶意文件被拒
- 删除和生命周期策略可验证。
- 能独立完成「文件/媒体摄取与对象存储」的最小可运行实现,并用测试、请求或日志证明其行为
规模化高级
服务拆分、事件驱动、CQRS/Saga 与多团队边界
独立部署/扩缩容/故障隔离或团队所有权已成为可测瓶颈;模块化单体不能满足。 消息契约、outbox、at-least-once 下的幂等、schema evolution、事件最终一致性、补偿流程。 网络和消息新增大量失败模式;本地事务变成分布式一致性问题;运维负担上升。
建议预留 180 分钟
学习目标
- 拆分理由有指标
- 契约兼容测试
- 重复/乱序/延迟消息测试
- 端到端 trace
- 故障隔离演练。
关键概念
- D2
- 服务拆分、事件驱动、CQRS/Saga 与多团队边界
- 规模化高级
为什么学习
- 该节点涉及系统级权衡与规模化演进;需要能分析底层机制、比较方案并用实验支撑重新设计。
如何检验理解
- 拆分理由有指标
- 契约兼容测试
- 重复/乱序/延迟消息测试
- 端到端 trace
- 故障隔离演练。
- 能为「服务拆分、事件驱动、CQRS/Saga 与多团队边界」比较至少两种方案,完成简化实现或容量/故障实验,并说明权衡
AI运行时必需
Prompt injection、不可信内容隔离与输出处理
用户输入、网页、邮件、文档和工具结果都可能携带恶意指令;模型输出也必须像外部输入一样验证后再渲染或执行。 间接注入窃取会话/秘密、调用越权工具;模型生成 HTML/SQL/命令被盲目执行;RAG 和 fine-tuning 不能自动消除风险。
建议预留 120 分钟
学习目标
- 注入攻击集不能越过工具授权
- 外部文本无论措辞都不能提升权限
- 恶意输出在 sink 前被拒
- 红队用例纳入 CI/定期评测。
关键概念
- B8
- Prompt injection、不可信内容隔离与输出处理
- AI运行时必需
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 注入攻击集不能越过工具授权
- 外部文本无论措辞都不能提升权限
- 恶意输出在 sink 前被拒
- 红队用例纳入 CI/定期评测。
- 能在约束变化或故障注入后重新设计「Prompt injection、不可信内容隔离与输出处理」,并用自动化证据验证关键性质
AI运行时必需
AI 评测、回归门禁与线上反馈闭环
模型是非确定依赖,普通单元测试不足以证明正确性;prompt/model/tool 变化需在代表性任务集上比较质量与安全。 模型升级悄悄降低任务成功率;只凭几个 demo 判断;安全回归直到用户事故才被发现。
建议预留 120 分钟
学习目标
- 每次 prompt/model 变更生成质量、安全、延迟和成本报告
- 关键阈值阻止发布
- 线上失败可回放为新回归样本。
关键概念
- B10
- AI 评测、回归门禁与线上反馈闭环
- AI运行时必需
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 每次 prompt/model 变更生成质量、安全、延迟和成本报告
- 关键阈值阻止发布
- 线上失败可回放为新回归样本。
- 能在约束变化或故障注入后重新设计「AI 评测、回归门禁与线上反馈闭环」,并用自动化证据验证关键性质
AI运行时必需
内容安全、隐私与数据最小化
按产品政策处理伤害性内容、PII/秘密、未成年人或高风险领域;只把完成任务所需数据发送给模型和工具。 敏感数据泄露给模型供应商、日志或其他用户;不合规输出;安全策略只写在 system prompt 中而可绕过。
建议预留 120 分钟
学习目标
- 明确测试集覆盖允许/拒绝/升级人工
- 敏感字段不进入 prompt/trace
- 用户可获知数据用途
- 策略决策可审计且有误杀处理。
关键概念
- B9
- 内容安全、隐私与数据最小化
- AI运行时必需
为什么学习
- 该节点会影响架构边界或故障判断;不能只会调 API,还要能解释核心机制、边界与典型错误。
如何检验理解
- 明确测试集覆盖允许/拒绝/升级人工
- 敏感字段不进入 prompt/trace
- 用户可获知数据用途
- 策略决策可审计且有误杀处理。
- 能画出或口述「内容安全、隐私与数据最小化」的关键机制,解释边界并诊断一个典型错误
条件能力
代码、浏览器与远程工具沙箱
Agent 要执行不可信代码、访问网页、文件系统或用户网络资源。 远程代码执行、SSRF、凭证/文件窃取、持久化恶意进程、资源耗尽。
建议预留 150 分钟
学习目标
- 逃逸、内网探测、fork bomb、超时和秘密读取测试被阻止
- 环境任务后销毁
- 完整审计记录不含秘密。
关键概念
- C6
- 代码、浏览器与远程工具沙箱
- 条件能力
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 逃逸、内网探测、fork bomb、超时和秘密读取测试被阻止
- 环境任务后销毁
- 完整审计记录不含秘密。
- 能在约束变化或故障注入后重新设计「代码、浏览器与远程工具沙箱」,并用自动化证据验证关键性质
AI运行时必需
Token、成本、延迟与 AI 专属追踪
按用户/run/model/工具记录 token、请求数、延迟、重试和成本;定位慢在模型、检索、队列还是工具。 账单暴涨才发现循环;无法设置预算或解释用户体验;通用 HTTP 日志看不见 Agent 内部步骤。
建议预留 120 分钟
学习目标
- 一个 run 的供应商用量与内部账本可对账
- 达到预算立即停止或降级
- trace 展示每步耗时和 token
- 无 prompt 明文泄露。
关键概念
- B11
- Token、成本、延迟与 AI 专属追踪
- AI运行时必需
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 一个 run 的供应商用量与内部账本可对账
- 达到预算立即停止或降级
- trace 展示每步耗时和 token
- 无 prompt 明文泄露。
- 能在约束变化或故障注入后重新设计「Token、成本、延迟与 AI 专属追踪」,并用自动化证据验证关键性质
条件能力
RAG:摄取、检索、权限过滤、出处与删除传播
产品承诺回答私有/动态知识,而不是只依赖模型已有知识。 过时或跨用户文档被检索;答案无出处;原文删除后向量仍可被召回;检索内容携带间接注入。
建议预留 150 分钟
学习目标
- 用户 A 永不检索 B 的文档
- 答案可追到 chunk/版本
- 删除会传播到对象、元数据和索引
- 检索质量有离线集合。
关键概念
- C1
- RAG:摄取、检索、权限过滤、出处与删除传播
- 条件能力
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 用户 A 永不检索 B 的文档
- 答案可追到 chunk/版本
- 删除会传播到对象、元数据和索引
- 检索质量有离线集合。
- 能在约束变化或故障注入后重新设计「RAG:摄取、检索、权限过滤、出处与删除传播」,并用自动化证据验证关键性质
条件能力
实时语音、双向交互或多人协作
产品需要低延迟语音、打断、双向事件或共享房间;普通文字流式不需要。 连接状态与业务状态混淆;重连重复事件;音频成本无界;水平扩展后房间状态丢失。
建议预留 150 分钟
学习目标
- 重连、乱序、打断和多端登录测试通过
- 连接断开不破坏持久 run
- 延迟与每分钟成本可观察。
关键概念
- C4
- 实时语音、双向交互或多人协作
- 条件能力
为什么学习
- 该节点是生产级后端的关键能力;需要在需求、流量、失败或安全约束改变时重新应用和验证。
如何检验理解
- 重连、乱序、打断和多端登录测试通过
- 连接断开不破坏持久 run
- 延迟与每分钟成本可观察。
- 能在约束变化或故障注入后重新设计「实时语音、双向交互或多人协作」,并用自动化证据验证关键性质
条件能力
多 Agent 编排
单 Agent 因工具过载、不同安全边界或真正可并行的专门任务无法可靠满足需求;“更酷”不是理由。 协调、延迟、成本和失败面成倍增加;Agent 互相传递不可信内容;责任与权限边界模糊。
建议预留 150 分钟
学习目标
- 基准证明优于单 Agent
- 任一步可独立重试/超时
- 循环受最大步数限制
- handoff 有 schema 和身份/权限上下文。
关键概念
- C5
- 多 Agent 编排
- 条件能力
为什么学习
- 该节点在当前路线中主要用于建立边界意识;现阶段应能识别它何时需要、何时可以延后。
如何检验理解
- 基准证明优于单 Agent
- 任一步可独立重试/超时
- 循环受最大步数限制
- handoff 有 schema 和身份/权限上下文。
- 面对需求或架构图时,能指出「多 Agent 编排」的用途、触发条件和可延后边界
规模化高级
缓存、批处理、动态路由与容量工程
已有流量、延迟和成本基线显示重复工作或供应商容量成为瓶颈。 语义/普通缓存的安全 key 与失效;prompt caching;批处理;模型按任务路由;load test 和容量模型。 缓存跨用户泄漏或过期答案;路由降低质量;优化复杂度超过收益。
建议预留 180 分钟
学习目标
- 真实基准显示 SLO/成本改善
- 缓存包含 tenant/权限/版本维度
- 质量 eval 证明路由不退化。
关键概念
- D1
- 缓存、批处理、动态路由与容量工程
- 规模化高级
为什么学习
- 该节点涉及系统级权衡与规模化演进;需要能分析底层机制、比较方案并用实验支撑重新设计。
如何检验理解
- 真实基准显示 SLO/成本改善
- 缓存包含 tenant/权限/版本维度
- 质量 eval 证明路由不退化。
- 能为「缓存、批处理、动态路由与容量工程」比较至少两种方案,完成简化实现或容量/故障实验,并说明权衡
规模化高级
多实例/多区域高可用、灾难恢复与合规隔离
明确 SLO、RTO/RPO、地域/数据驻留、峰值容量或企业合规要求。 无状态水平扩展、分区/副本、跨区故障转移、流量切换、灾难恢复、降级模式、混沌/恢复演练。 跨区域数据一致性与成本激增;未经演练的“高可用”只是架构图。
建议预留 180 分钟
学习目标
- 容量与故障注入验证 SLO
- 区域故障演练在 RTO 内恢复
- 备份满足 RPO
- 依赖不可用时有明确降级。
关键概念
- D3
- 多实例/多区域高可用、灾难恢复与合规隔离
- 规模化高级
为什么学习
- 该节点涉及系统级权衡与规模化演进;需要能分析底层机制、比较方案并用实验支撑重新设计。
如何检验理解
- 容量与故障注入验证 SLO
- 区域故障演练在 RTO 内恢复
- 备份满足 RPO
- 依赖不可用时有明确降级。
- 能为「多实例/多区域高可用、灾难恢复与合规隔离」比较至少两种方案,完成简化实现或容量/故障实验,并说明权衡
前置关系与知识联系
- 模型网关与供应商隔离 → 流式事件协议与连接生命周期
- Metrics、Tracing 与可观测性 → 性能、Fastify 与负载测试
- 外部依赖可靠性:超时、退避重试、幂等与故障隔离 → 流式事件协议与连接生命周期
- Metrics、Tracing 与可观测性 → AI 评测、回归门禁与线上反馈闭环
- 采样与推理参数 → Anthropic Messages API 深度
- 事务、并发与幂等 → Refresh Token、Session 与撤销
- DTO、Pipe、验证与转换 → 模块边界、业务用例与 API 契约
- Migration、Seed 与 Schema 演进 → 事务、并发与幂等
- Nest Microservice 基础 → 服务拆分、事件驱动、CQRS/Saga 与多团队边界
- 限流、配额与滥用防护 → Token、成本、延迟与 AI 专属追踪
- 数据生命周期、审计、备份与恢复 → 持久化会话、Run 与工具调用状态机
- 装饰器、元数据与反射 → DTO、Pipe、验证与转换
- 自定义装饰器与 ExecutionContext → GraphQL 与 Federation
- Token、上下文窗口与计费模型 → Prompt 缓存与成本优化
- 消息语义与 Broker 可靠性 → gRPC 与类型化服务契约
- 身份认证:密码与 JWT → 身份认证、授权与多用户数据隔离
- 配置、密钥与环境隔离 → 代码、浏览器与远程工具沙箱
- 自定义装饰器与 ExecutionContext → 工具契约、执行隔离与确定性授权
- 构建、Docker、CI/CD 与部署 → 数据生命周期、审计、备份与恢复
- 角色卡:字段分层与 Prompt 编译 → 生成钩子:Author’s Note、变量与扩展拦截器
- 身份认证、授权与多用户数据隔离 → 工具契约、执行隔离与确定性授权
- 关系数据建模、约束、事务与迁移 → 服务拆分、事件驱动、CQRS/Saga 与多团队边界
- Token、成本、延迟与 AI 专属追踪 → 多实例/多区域高可用、灾难恢复与合规隔离
- 工具契约、执行隔离与确定性授权 → 代码、浏览器与远程工具沙箱
- Nest 应用启动与平台适配器 → 装饰器、元数据与反射
- Migration、Seed 与 Schema 演进 → 数据生命周期、审计、备份与恢复
- 健康检查、生命周期与优雅停机 → 可观测性、健康检查与故障诊断
- Prompt Templates 深入 → 输出解析与 with_structured_output
- 缓存与 Redis → 生产级后端综合项目
- MCP 实战:自建 MCP Server → Tools 与 Toolkits 深度
- 事件、定时任务与后台队列 → 健康检查、生命周期与优雅停机
- Prompt 缓存与成本优化 → 性能优化与成本治理
- 性能、Fastify 与负载测试 → 实时语音、双向交互或多人协作
- Subgraph:子图与图组合 → 多 Agent 编排
- 性能、Fastify 与负载测试 → 限流、配额与滥用防护
- 消息语义与 Broker 可靠性 → 服务拆分、事件驱动、CQRS/Saga 与多团队边界
- 混合检索与重排序 → RAG 综合实战:知识问答 Agent
- Provider 与依赖注入 → 高级 DI、动态模块与作用域
- ORM 集成与 Repository 边界 → 身份认证、授权与多用户数据隔离
- 事务、并发与幂等 → 关系数据建模、约束、事务与迁移
- 限流、配额与滥用防护 → 缓存、批处理、动态路由与容量工程
- 机器学习基础概念(了解) → RAG 架构与完整流程
- 可观测性、健康检查与故障诊断 → 缓存、批处理、动态路由与容量工程
- 工具契约、执行隔离与确定性授权 → 高风险动作确认、审批与补偿
- 评测工程化:离线与在线评估 → 可观测性与日志追踪
- FastAPI 路由与请求处理 → 依赖注入与中间件
- 外部依赖可靠性:超时、退避重试、幂等与故障隔离 → 异步任务、重试、死信、取消与资源控制
- Refresh Token、Session 与撤销 → Web 安全基线
- gRPC 与类型化服务契约 → 服务拆分、事件驱动、CQRS/Saga 与多团队边界
- Tools 与 Toolkits 深度 → create_agent 与生产配置
- 可观测性与日志追踪 → 生产部署(了解)
- 模型网关与供应商隔离 → 持久化会话、Run 与工具调用状态机
- LLM 应用安全加固 → 毕业项目:成熟 AI Agent 应用
- 流式事件协议与连接生命周期 → 持久化会话、Run 与工具调用状态机
- 结构化日志与请求关联 → Token、成本、延迟与 AI 专属追踪
- LLM 原理:Transformer 到生成机制 → 机器学习基础概念(了解)
- 模块化单体与领域边界 → Hexagonal Architecture 与 DDD
- OpenAPI / Swagger → E2E 与契约测试
- 节点、边与条件路由 → 流式事件与逐步调试
- Provider 与依赖注入 → 模型网关与供应商隔离
- 身份认证:密码与 JWT → 授权:RBAC、Claims 与资源权限
- Controller 与路由 → Service 与业务边界
- Service 与业务边界 → 模块边界、业务用例与 API 契约
- 函数、闭包与装饰器工厂 → 迭代器、生成器与 yield
- 单元测试与依赖替换 → 数据库集成测试
- ReAct 模式深入 → Reflection 反思模式
- E2E 与契约测试 → GraphQL 与 Federation
- Token、成本、延迟与 AI 专属追踪 → 实时语音、双向交互或多人协作
- 异常与 Exception Filter → REST 资源建模与 API 契约
- 后端请求链路与 Node 运行时 → Nest 应用启动与平台适配器
- ORM 集成与 Repository 边界 → 缓存与 Redis
- Session、Run、Agent Process 与 Runtime 的边界 → 持久化会话、Run 与工具调用状态机
- Chat Models 深入:消息角色与绑定工具 → Tools 与 Toolkits 深度
- 模块边界、业务用例与 API 契约 → 流式事件协议与连接生命周期
- 外部 HTTP 集成与韧性 → Metrics、Tracing 与可观测性
- 身份认证:密码与 JWT → Refresh Token、Session 与撤销
- 配置、密钥与环境隔离 → 内容安全、隐私与数据最小化
- 虚拟环境与工程结构 → 异常处理与日志体系
- 流式事件协议与连接生命周期 → 实时语音、双向交互或多人协作
- 数据生命周期、审计、备份与恢复 → 文件/媒体摄取与对象存储
- asyncio 深入:事件循环与并发原语 → 异步状态管理与数据库(了解)
- RAG 评估与 RAGAS → RAG 失败模式与调优
- 生产部署(了解) → 生产安全与合规(了解)
- 序列化与数据泄漏防护 → 身份认证:密码与 JWT
- ORM 集成与 Repository 边界 → 身份认证:密码与 JWT
- 迭代器、生成器与 yield → 流式响应与 SSE
- Python 语法快速入门(面向有经验者) → FastAPI 路由与请求处理
- 构建、Docker、CI/CD 与部署 → 多实例/多区域高可用、灾难恢复与合规隔离
- 异常与 Exception Filter → Interceptor 与 AOP
- 镜像与运行时数据迁移边界 → Agent 平台完整迁移与现场验收
- 数据生命周期、审计、备份与恢复 → 镜像与运行时数据迁移边界
- 请求生命周期全景 → Guard 与访问决策
- 容器资源边界:主机、Docker VM 与 Container → 性能、Fastify 与负载测试
- Provider 与依赖注入 → Service 与业务边界
- Web 安全基线 → 配置、密钥与环境隔离
- Provider 与依赖注入 → ORM 集成与 Repository 边界
- 工具调用协议深度 → MCP 协议:架构与概念
- Nest Microservice 基础 → 消息语义与 Broker 可靠性
- Interceptor 与 AOP → 序列化与数据泄漏防护
- Interceptor 与 AOP → 外部 HTTP 集成与韧性
- E2E 与契约测试 → 生产级后端综合项目
- 健康检查、生命周期与优雅停机 → Metrics、Tracing 与可观测性
- 配置、密钥与环境隔离 → 多实例/多区域高可用、灾难恢复与合规隔离
- 身份认证:密码与 JWT → WebSocket 与 SSE
- Agent 心智模型:workflow vs agent → LangChain 架构与组件分层
- 生产安全与合规(了解) → LLM 应用安全加固
- 模块与依赖图 → 配置、环境与秘密
- 身份认证:密码与 JWT → Web 安全基线
- 数据库集成测试 → 自动化测试、供应链门禁、可重复部署与回滚
- Token、成本、延迟与 AI 专属追踪 → 多 Agent 编排
- 配置、环境与秘密 → Prompt、上下文预算与结构化输出
- Prompt injection、不可信内容隔离与输出处理 → RAG:摄取、检索、权限过滤、出处与删除传播
- Anthropic Messages API 深度 → 流式与事件 API
- WebSocket 与 SSE → 流式事件协议与连接生命周期
- Web 安全基线 → Prompt injection、不可信内容隔离与输出处理
- 事件、定时任务与后台队列 → CQRS 与领域事件
- RAG 综合实战:知识问答 Agent → 评测工程化:离线与在线评估
- DTO、Pipe、验证与转换 → 输入验证、输出序列化与一致错误语义
- Prompt 缓存与成本优化 → Model Routing 与多模型编排
- 事件、定时任务与后台队列 → 文件/媒体摄取与对象存储
- Anthropic Messages API 深度 → 工具调用协议深度
- 限流与滥用防护 → 外部依赖可靠性:超时、退避重试、幂等与故障隔离
- MCP 协议:架构与概念 → MCP 实战:自建 MCP Server
- 身份认证:密码与 JWT → 限流与滥用防护
- AI 评测、回归门禁与线上反馈闭环 → RAG:摄取、检索、权限过滤、出处与删除传播
- Guard 与访问决策 → 工具契约、执行隔离与确定性授权
- 可观测性、健康检查与故障诊断 → 多实例/多区域高可用、灾难恢复与合规隔离
- Controller 与路由 → 模块边界、业务用例与 API 契约
- 持久化会话、Run 与工具调用状态机 → 服务拆分、事件驱动、CQRS/Saga 与多团队边界
- 流式响应与 SSE → 流式与事件 API
- 函数、闭包与装饰器工厂 → 依赖注入与中间件
- REST 资源建模与 API 契约 → 事务、并发与幂等
- 高风险动作确认、审批与补偿 → 代码、浏览器与远程工具沙箱
- 请求生命周期全景 → Middleware
- 手写 Agent 循环与终止保护 → 结构化输出与工具契约设计
- 事务、并发与幂等 → 数据库集成测试
- Python 语法快速入门(面向有经验者) → 虚拟环境与工程结构
- 持久化会话、Run 与工具调用状态机 → 多 Agent 编排
- 机器学习基础概念(了解) → 向量与嵌入(了解)
- 配置、环境与秘密 → 配置、密钥与环境隔离
- 单元测试与依赖替换 → Hexagonal Architecture 与 DDD
- 持久化会话、Run 与工具调用状态机 → 异步任务、重试、死信、取消与资源控制
- 异步任务、重试、死信、取消与资源控制 → 多 Agent 编排
- 限流与滥用防护 → 生产级后端综合项目
- 身份认证、授权与多用户数据隔离 → 文件/媒体摄取与对象存储
- 身份认证、授权与多用户数据隔离 → RAG:摄取、检索、权限过滤、出处与删除传播
- LLM 原理:Transformer 到生成机制 → 采样与推理参数
- Anthropic Messages API 深度 → Chat Models 深入:消息角色与绑定工具
- 可观测性、健康检查与故障诊断 → 服务拆分、事件驱动、CQRS/Saga 与多团队边界
- LCEL 与 Runnable 协议 → Runnable 高级:并行、批处理与回退
- OpenAPI / Swagger → 生产级后端综合项目
- Nest Microservice 基础 → gRPC 与类型化服务契约
- 异步任务、重试、死信、取消与资源控制 → 文件/媒体摄取与对象存储
- 流式事件与逐步调试 → Subgraph:子图与图组合
- 多 Agent 协作深入:编排模式对比 → Agent 综合实战(一):工具型 Agent 应用
- DTO、Pipe、验证与转换 → 序列化与数据泄漏防护
- Interceptor 与 AOP → 输入验证、输出序列化与一致错误语义
- 事件、定时任务与后台队列 → WebSocket 与 SSE
- 工具契约、执行隔离与确定性授权 → Prompt injection、不可信内容隔离与输出处理
- 构建、Docker、CI/CD 与部署 → 容器资源边界:主机、Docker VM 与 Container
- Pydantic 模型与输入校验 → FastAPI 测试:pytest/TestClient
- 配置、环境与秘密 → 外部 HTTP 集成与韧性
- E2E 与契约测试 → AI 评测、回归门禁与线上反馈闭环
- AI 评测、回归门禁与线上反馈闭环 → Token、成本、延迟与 AI 专属追踪
- DTO、Pipe、验证与转换 → REST 资源建模与 API 契约
- 自定义装饰器与 ExecutionContext → 授权:RBAC、Claims 与资源权限
- 事件、定时任务与后台队列 → 消息语义与 Broker 可靠性
- 事件、定时任务与后台队列 → RAG:摄取、检索、权限过滤、出处与删除传播
- 限流、配额与滥用防护 → 计费、订阅、权益与用量结算
- 可观测性、健康检查与故障诊断 → Token、成本、延迟与 AI 专属追踪
- Web 安全基线 → 限流与滥用防护
- LLM 原理:Transformer 到生成机制 → Token、上下文窗口与计费模型
- DTO、Pipe、验证与转换 → Prompt、上下文预算与结构化输出
- 事务、并发与幂等 → 外部依赖可靠性:超时、退避重试、幂等与故障隔离
- 健康检查、生命周期与优雅停机 → gRPC 与类型化服务契约
- 身份认证、授权与多用户数据隔离 → 计费、订阅、权益与用量结算
- 数据生命周期、审计、备份与恢复 → 计费、订阅、权益与用量结算
- 配置、环境与秘密 → Web 安全基线
- 事务、并发与幂等 → 事件、定时任务与后台队列
- 外部依赖可靠性:超时、退避重试、幂等与故障隔离 → 模型网关与供应商隔离
- 工具调用协议深度 → 手写 Agent 循环与终止保护
- 事务、并发与幂等 → Hexagonal Architecture 与 DDD
- 实战复盘:架构评审与迭代 → 毕业项目:成熟 AI Agent 应用
- 单元测试与依赖替换 → 自动化测试、供应链门禁、可重复部署与回滚
- 事务、并发与幂等 → 消息语义与 Broker 可靠性
- Hexagonal Architecture 与 DDD → CQRS 与领域事件
- PostgreSQL 与关系建模 → 关系数据建模、约束、事务与迁移
- 外部依赖可靠性:超时、退避重试、幂等与故障隔离 → 计费、订阅、权益与用量结算
- 高风险动作确认、审批与补偿 → Prompt injection、不可信内容隔离与输出处理
- Token、成本、延迟与 AI 专属追踪 → 缓存、批处理、动态路由与容量工程
- Hexagonal Architecture 与 DDD → 服务拆分、事件驱动、CQRS/Saga 与多团队边界
- Migration、Seed 与 Schema 演进 → 构建、Docker、CI/CD 与部署
- Service 与业务边界 → 事件、定时任务与后台队列
- LCEL 与 Runnable 协议 → Prompt Templates 深入
- Interceptor 与 AOP → 自定义装饰器与 ExecutionContext
- Planning 规划模式 → Agent 综合实战(一):工具型 Agent 应用
- Nest 应用启动与平台适配器 → 模块与依赖图
- 配置、密钥与环境隔离 → 模型网关与供应商隔离
- 模块与依赖图 → 模块化单体与领域边界
- 健康检查、生命周期与优雅停机 → 构建、Docker、CI/CD 与部署
- 异常与 Exception Filter → 结构化日志与请求关联
- 模块化单体与领域边界 → 生产级后端综合项目
- 持久化会话、Run 与工具调用状态机 → Token、成本、延迟与 AI 专属追踪
- 自定义装饰器与 ExecutionContext → Nest Microservice 基础
- 授权:RBAC、Claims 与资源权限 → 工具契约、执行隔离与确定性授权
- 配置、环境与秘密 → 健康检查、生命周期与优雅停机
- 模块与依赖图 → 模块边界、业务用例与 API 契约
- WebSocket 与 SSE → 实时语音、双向交互或多人协作
- LangGraph 入门:StateGraph 与状态 → 节点、边与条件路由
- 模块化单体与领域边界 → 模块边界、业务用例与 API 契约
- 授权:RBAC、Claims 与资源权限 → E2E 与契约测试
- 事务、并发与幂等 → 持久化会话、Run 与工具调用状态机
- 结构化日志与请求关联 → 健康检查、生命周期与优雅停机
- 序列化与数据泄漏防护 → 输入验证、输出序列化与一致错误语义
- 限流与滥用防护 → 限流、配额与滥用防护
- REST 资源建模与 API 契约 → OpenAPI / Swagger
- 构建、Docker、CI/CD 与部署 → 生产级后端综合项目
- Chat Models 深入:消息角色与绑定工具 → Memory 体系:会话记忆
- 混合检索与重排序 → Prompt 组装与引用溯源
- 事务、并发与幂等 → 身份认证、授权与多用户数据隔离
- Prompt、上下文预算与结构化输出 → 工具契约、执行隔离与确定性授权
- 身份认证、授权与多用户数据隔离 → 内容安全、隐私与数据最小化
- 关系数据建模、约束、事务与迁移 → RAG:摄取、检索、权限过滤、出处与删除传播
- 装饰器、元数据与反射 → 模块与依赖图
- 缓存与 Redis → 性能、Fastify 与负载测试
- Service 与业务边界 → 单元测试与依赖替换
- 事件、定时任务与后台队列 → 生产级后端综合项目
- Anthropic Messages API 深度 → OpenAI 兼容协议与多供应商抽象
- Metrics、Tracing 与可观测性 → WebSocket 与 SSE
- ORM 集成与 Repository 边界 → Migration、Seed 与 Schema 演进
- 身份认证、授权与多用户数据隔离 → 代码、浏览器与远程工具沙箱
- 模块边界、业务用例与 API 契约 → 模型网关与供应商隔离
- 数据生命周期、审计、备份与恢复 → RAG:摄取、检索、权限过滤、出处与删除传播
- Agent Runtime:进程生命周期与按需启动 → Session、Run、Agent Process 与 Runtime 的边界
- 可观测性、健康检查与故障诊断 → 真实 UI、网络帧、日志与数据库事件的证据链
- ORM 集成与 Repository 边界 → 文件/媒体摄取与对象存储
- Metrics、Tracing 与可观测性 → 生产级后端综合项目
- 缓存与 Redis → 缓存、批处理、动态路由与容量工程
- AI 评测、回归门禁与线上反馈闭环 → 多 Agent 编排
- 外部依赖可靠性:超时、退避重试、幂等与故障隔离 → 服务拆分、事件驱动、CQRS/Saga 与多团队边界
- 授权:RBAC、Claims 与资源权限 → GraphQL 与 Federation
- LCEL 与 Runnable 协议 → LangGraph 入门:StateGraph 与状态
- 请求生命周期全景 → DTO、Pipe、验证与转换
- 异步任务、重试、死信、取消与资源控制 → 多实例/多区域高可用、灾难恢复与合规隔离
- Guard 与访问决策 → 限流与滥用防护
- 模块与依赖图 → Provider 与依赖注入
- 身份认证:密码与 JWT → E2E 与契约测试
- Agent 安全:注入与权限边界 → LLM 应用安全加固
- AI 评测、回归门禁与线上反馈闭环 → 缓存、批处理、动态路由与容量工程
- 生产级 Agent AI 应用后端全景 → 后端请求链路与 Node 运行时
- 结构化日志与请求关联 → 数据生命周期、审计、备份与恢复
- 事件、定时任务与后台队列 → 持久化会话、Run 与工具调用状态机
- Agent 综合实战(一):工具型 Agent 应用 → 实战复盘:架构评审与迭代
- Prompt 组装与引用溯源 → Agentic RAG:检索进入 Agent 循环
- LCEL 与 Runnable 协议 → Chat Models 深入:消息角色与绑定工具
- 节点、边与条件路由 → Checkpoint:状态持久化
- DTO、Pipe、验证与转换 → Prompt injection、不可信内容隔离与输出处理
- Web 安全基线 → 身份认证、授权与多用户数据隔离
- 模块与依赖图 → Controller 与路由
- E2E 与契约测试 → 真实 UI、网络帧、日志与数据库事件的证据链
- Interceptor 与 AOP → 缓存与 Redis
- OpenAI 兼容协议与多供应商抽象 → Prompt 工程:可复现与结构化输出
- Provider 与依赖注入 → 单元测试与依赖替换
- 事务、并发与幂等 → 缓存与 Redis
- 函数、闭包与装饰器工厂 → 异常处理与日志体系
- CQRS 与领域事件 → 服务拆分、事件驱动、CQRS/Saga 与多团队边界
- 持久化会话、Run 与工具调用状态机 → AI 评测、回归门禁与线上反馈闭环
- Pydantic v2 深入:validator/泛型/序列化 → 输出解析与 with_structured_output
- ReAct 模式深入 → Planning 规划模式
- 构建、Docker、CI/CD 与部署 → Agent 平台完整迁移与现场验收
- 关系数据建模、约束、事务与迁移 → 持久化会话、Run 与工具调用状态机
- 向量与嵌入(了解) → 模型微调概览(了解)
- 外部 HTTP 集成与韧性 → 生产级后端综合项目
- Guard 与访问决策 → 自定义装饰器与 ExecutionContext
- 镜像与运行时数据迁移边界 → 自动化测试、供应链门禁、可重复部署与回滚
- 序列化与数据泄漏防护 → 数据生命周期、审计、备份与恢复
- Python 语法快速入门(面向有经验者) → 类型系统与数据结构
- Embedding 与向量数据库 → 混合检索与重排序
- Nest Microservice 基础 → 多 Agent 编排
- 模型网关与供应商隔离 → Token、成本、延迟与 AI 专属追踪
- Guard 与访问决策 → 授权:RBAC、Claims 与资源权限
- 模块化单体与领域边界 → 高级 DI、动态模块与作用域
- Migration、Seed 与 Schema 演进 → 数据库集成测试
- FastAPI 路由与请求处理 → FastAPI 测试:pytest/TestClient
- 工具契约、执行隔离与确定性授权 → 多 Agent 编排
- 结构化输出与工具契约设计 → Agent 安全:注入与权限边界
- Token、上下文窗口与计费模型 → Anthropic Messages API 深度
- REST 资源建模与 API 契约 → 流式事件协议与连接生命周期
- Agent 心智模型:workflow vs agent → Agentic RAG:检索进入 Agent 循环
- Memory 体系:会话记忆 → create_agent 与生产配置
- 事务、并发与幂等 → 数据生命周期、审计、备份与恢复
- Anthropic Messages API 深度 → Prompt 缓存与成本优化
- Web 安全基线 → 工具契约、执行隔离与确定性授权
- Migration、Seed 与 Schema 演进 → 镜像与运行时数据迁移边界
- Metrics、Tracing 与可观测性 → 可观测性、健康检查与故障诊断
- Prompt、上下文预算与结构化输出 → RAG:摄取、检索、权限过滤、出处与删除传播
- ORM 集成与 Repository 边界 → 序列化与数据泄漏防护
- 角色卡格式:Schema、容器与规范化 → 角色卡:字段分层与 Prompt 编译
- LangChain 架构与组件分层 → LCEL 与 Runnable 协议
- 限流、配额与滥用防护 → 异步任务、重试、死信、取消与资源控制
- Reflection 反思模式 → Agent 综合实战(一):工具型 Agent 应用
- 文档解析与分块策略 → Embedding 与向量数据库
- E2E 与契约测试 → 自动化测试、供应链门禁、可重复部署与回滚
- 缓存与 Redis → RAG:摄取、检索、权限过滤、出处与删除传播
- Guard 与访问决策 → 单元测试与依赖替换
- asyncio 深入:事件循环与并发原语 → LLM 原理:Transformer 到生成机制
- ORM 集成与 Repository 边界 → 关系数据建模、约束、事务与迁移
- Prompt injection、不可信内容隔离与输出处理 → 内容安全、隐私与数据最小化
- E2E 与契约测试 → 构建、Docker、CI/CD 与部署
- 输入验证、输出序列化与一致错误语义 → 工具契约、执行隔离与确定性授权
- 类型系统与数据结构 → 函数、闭包与装饰器工厂
- 持久化会话、Run 与工具调用状态机 → 高风险动作确认、审批与补偿
- 外部 HTTP 集成与韧性 → 模型网关与供应商隔离
- 关系数据建模、约束、事务与迁移 → 计费、订阅、权益与用量结算
- 授权:RBAC、Claims 与资源权限 → 生产级后端综合项目
- 消息语义与 Broker 可靠性 → 多 Agent 编排
- 性能、Fastify 与负载测试 → 构建、Docker、CI/CD 与部署
- 虚拟环境与工程结构 → FastAPI 路由与请求处理
- 配置、环境与秘密 → 结构化日志与请求关联
- 迭代器、生成器与 yield → asyncio 深入:事件循环与并发原语
- 毕业项目:成熟 AI Agent 应用 → 项目复盘与毕业评估
- 构建、Docker、CI/CD 与部署 → 镜像与运行时数据迁移边界
- 模型网关与供应商隔离 → 缓存、批处理、动态路由与容量工程
- Prompt 工程:可复现与结构化输出 → Agent 心智模型:workflow vs agent
- 外部 HTTP 集成与韧性 → 外部依赖可靠性:超时、退避重试、幂等与故障隔离
- 自定义装饰器与 ExecutionContext → WebSocket 与 SSE
- Interceptor 与 AOP → 流式事件协议与连接生命周期
- 配置、环境与秘密 → 事件、定时任务与后台队列
- Prompt 工程:可复现与结构化输出 → 角色卡:字段分层与 Prompt 编译
- Checkpoint:状态持久化 → interrupt:人机交互断点
- DTO、Pipe、验证与转换 → GraphQL 与 Federation
- 身份认证、授权与多用户数据隔离 → 实时语音、双向交互或多人协作
- WebSocket 与 SSE → WebSocket 心跳、连接状态与 Agent TTL
- 向量与嵌入(了解) → Embedding 与向量数据库
- 输入验证、输出序列化与一致错误语义 → Prompt injection、不可信内容隔离与输出处理
- Service 与业务边界 → 模块化单体与领域边界
- 自动化测试、供应链门禁、可重复部署与回滚 → AI 评测、回归门禁与线上反馈闭环
- Provider 与依赖注入 → 模块边界、业务用例与 API 契约
- 数据库集成测试 → E2E 与契约测试
- Prompt injection、不可信内容隔离与输出处理 → AI 评测、回归门禁与线上反馈闭环
- 多 Agent 编排 → 多 Agent 协作深入:编排模式对比
- RAG 评估与 RAGAS → RAG 综合实战:知识问答 Agent
- 异常与 Exception Filter → 外部 HTTP 集成与韧性
- RAG 综合实战:知识问答 Agent → 毕业项目:成熟 AI Agent 应用
- DTO、Pipe、验证与转换 → 异常与 Exception Filter
- Service 与业务边界 → 请求生命周期全景
- 授权:RBAC、Claims 与资源权限 → 身份认证、授权与多用户数据隔离
- 身份认证:密码与 JWT → 限流、配额与滥用防护
- 配置、环境与秘密 → 身份认证:密码与 JWT
- 后端请求链路与 Node 运行时 → PostgreSQL 与关系建模
- Pydantic 模型与输入校验 → Pydantic v2 深入:validator/泛型/序列化
- WebSocket 心跳、连接状态与 Agent TTL → 持久化会话、Run 与工具调用状态机
- Metrics、Tracing 与可观测性 → Token、成本、延迟与 AI 专属追踪
- 请求生命周期全景 → 异常与 Exception Filter
- RAG 评估与 RAGAS → 评测工程化:离线与在线评估
- 持久化会话、Run 与工具调用状态机 → 工具契约、执行隔离与确定性授权
- 角色卡:字段分层与 Prompt 编译 → 动态上下文:静态设定、会话状态与 Prompt 投影
- 模块边界、业务用例与 API 契约 → 服务拆分、事件驱动、CQRS/Saga 与多团队边界
- 构建、Docker、CI/CD 与部署 → 自动化测试、供应链门禁、可重复部署与回滚
- 授权:RBAC、Claims 与资源权限 → 高风险动作确认、审批与补偿
- 数据生命周期、审计、备份与恢复 → 多实例/多区域高可用、灾难恢复与合规隔离
- 性能优化与成本治理 → 毕业项目:成熟 AI Agent 应用
- ReAct 模式深入 → Agent 综合实战(一):工具型 Agent 应用
- Session、Run、Agent Process 与 Runtime 的边界 → WebSocket 心跳、连接状态与 Agent TTL
- 模块化单体与领域边界 → Nest Microservice 基础
- Middleware → 结构化日志与请求关联
- 装饰器、元数据与反射 → 自定义装饰器与 ExecutionContext
- Controller 与路由 → REST 资源建模与 API 契约
- 健康检查、生命周期与优雅停机 → 多实例/多区域高可用、灾难恢复与合规隔离
- Refresh Token、Session 与撤销 → 生产级后端综合项目
- 异常与 Exception Filter → 输入验证、输出序列化与一致错误语义
- OpenAPI / Swagger → 模块边界、业务用例与 API 契约
- 序列化与数据泄漏防护 → Prompt injection、不可信内容隔离与输出处理
- RAG 失败模式与调优 → RAG 综合实战:知识问答 Agent
- 结构化日志与请求关联 → 可观测性、健康检查与故障诊断
- ORM 集成与 Repository 边界 → 数据库集成测试
- 可观测性、健康检查与故障诊断 → 流式事件协议与连接生命周期
- Guard 与访问决策 → 身份认证:密码与 JWT
- 输出解析与 with_structured_output → Tools 与 Toolkits 深度
- 自定义装饰器与 ExecutionContext → 高级 DI、动态模块与作用域
- RAG 架构与完整流程 → 查询改写与多查询检索
- 异步任务、重试、死信、取消与资源控制 → 代码、浏览器与远程工具沙箱
- Controller 与路由 → 请求生命周期全景
- 类型系统与数据结构 → Pydantic 模型与输入校验
- 关系数据建模、约束、事务与迁移 → 高风险动作确认、审批与补偿
- PostgreSQL 与关系建模 → 事务、并发与幂等
- DTO、Pipe、验证与转换 → 单元测试与依赖替换
- 性能、Fastify 与负载测试 → 缓存、批处理、动态路由与容量工程
- Migration、Seed 与 Schema 演进 → 关系数据建模、约束、事务与迁移
- Embedding 与向量数据库 → RAG 评估与 RAGAS
- Prompt、上下文预算与结构化输出 → 动态上下文:静态设定、会话状态与 Prompt 投影
- 数据生命周期、审计、备份与恢复 → 内容安全、隐私与数据最小化
- Web 安全基线 → 构建、Docker、CI/CD 与部署
- ORM 集成与 Repository 边界 → 模块化单体与领域边界
- 节点、边与条件路由 → ReAct 模式深入
- DTO、Pipe、验证与转换 → OpenAPI / Swagger
- Checkpoint:状态持久化 → Time Travel:时间旅行调试
- 事件、定时任务与后台队列 → Nest Microservice 基础
- ORM 集成与 Repository 边界 → GraphQL 与 Federation
- Service 与业务边界 → ORM 集成与 Repository 边界
- 事件、定时任务与后台队列 → 异步任务、重试、死信、取消与资源控制
- E2E 与契约测试 → 性能、Fastify 与负载测试
- MCP 实战:自建 MCP Server → Agent 综合实战(一):工具型 Agent 应用
- PostgreSQL 与关系建模 → ORM 集成与 Repository 边界
- 评测工程化:离线与在线评估 → 毕业项目:成熟 AI Agent 应用
- 模型网关与供应商隔离 → Prompt、上下文预算与结构化输出
- 配置、密钥与环境隔离 → 镜像与运行时数据迁移边界
- 单元测试与依赖替换 → AI 评测、回归门禁与线上反馈闭环
- 输入验证、输出序列化与一致错误语义 → Prompt、上下文预算与结构化输出
- CQRS 与领域事件 → 多 Agent 编排
- Provider 与依赖注入 → 配置、环境与秘密
- Prompt injection、不可信内容隔离与输出处理 → 代码、浏览器与远程工具沙箱
- 结构化日志与请求关联 → Metrics、Tracing 与可观测性
- Provider 与依赖注入 → Controller 与路由
- 自动化测试、供应链门禁、可重复部署与回滚 → 多实例/多区域高可用、灾难恢复与合规隔离
- 结构化输出与工具契约设计 → 动态上下文:静态设定、会话状态与 Prompt 投影
- 缓存与 Redis → 限流、配额与滥用防护
- 事务、并发与幂等 → 高风险动作确认、审批与补偿
- ORM 集成与 Repository 边界 → RAG:摄取、检索、权限过滤、出处与删除传播
- REST 资源建模与 API 契约 → 模块边界、业务用例与 API 契约
- 手写 Agent 循环与终止保护 → ReAct 模式深入
- 异步任务、重试、死信、取消与资源控制 → 服务拆分、事件驱动、CQRS/Saga 与多团队边界
- ORM 集成与 Repository 边界 → 事务、并发与幂等
- RAG 架构与完整流程 → 文档解析与分块策略
- 请求生命周期全景 → Interceptor 与 AOP
- Prompt、上下文预算与结构化输出 → AI 评测、回归门禁与线上反馈闭环
结合互动地图查看具体关系类型,再选择下一步。