KEEL · 龙骨 · A CURRICULUM FOR THE AI ERA
Advanced Agent Systems — keel 龙骨
这门课把前面几门课程的“单次运行边界”推进到长周期系统。主线不是采用某个框架,而是让读者能够用事件、状态、租约、证据和指标解释一次真实运行。
这门课把前面几门课程的“单次运行边界”推进到长周期系统。主线不是采用某个框架,而是让读者能够用事件、状态、租约、证据和指标解释一次真实运行。
章节目录
- 01. Durable Execution 到底持久化什么? — 普通 Agent 的“运行状态”通常是一段 Python 对象:进程还在,它就能继续;进程挂掉,系统只能重新问模型。长任务、审批、定时等待和外部副作用不能接受这种语义。
- 02. Wake-up、Signal、Timer 和 Task 有什么区别? — 长周期 Agent 不能靠一个常驻 Python 线程“等着”。进程会重启、机器会缩容、用户输入会延迟,等待本身必须成为持久化状态。课程把各种继续运行的原因统一建模为 WakeupRequest,但保留它们的来源和取消语义。
- 03. 租约、幂等和重复投递怎样一起工作? — 可靠投递通常是 at-least-once:消息可能重复,worker 可能在外部调用成功后崩溃,旧 worker 还可能在新 worker 接管后迟到。专业系统不假设“恰好一次”,而是让重复和迟到都变成可验证的状态转换。
- 04. 知识库怎样从“能搜到”走向可引用? — 企业知识库的难点不是把字符串放进向量库,而是让结果同时满足租户隔离、主体权限、版本一致性和可审计引用。检索排序不能成为权限边界。
- 05. Context Engineering 怎样连接检索和压缩? — 上下文不是“把历史全部拼接起来”。它是一次有预算、有来源、有权限和有目的的装配结果:系统决定此刻模型真正需要看到哪些事实,哪些内容应 JIT 读取,哪些内容可以压缩或归档。Anthropic 的 context engineering 讨论把目标概括为最小的高信号 token 集合,并把 JIT retrieval、compaction 和 structured note-taking 放进同一个循环。
- 06. MCP Tasks 扩展和异步工具怎样接回 Harness? — 普通 tool calling 假设调用在一次模型回合内返回;报表导出、批量扫描和人工审批则可能运行数分钟甚至数小时。此时工具调用必须变成可轮询、可取消、可恢复的任务,而不是让模型一直占着 context 等待。
- 07. 怎样建立 Agent 的质量门禁? — “回答看起来不错”不是生产验收。长上下文、检索、compaction、工具和恢复会互相影响,必须有固定数据集、基线、成本和失败门禁,才能证明优化真的带来提升。
- 08. 完成一个可恢复的知识驱动诊断 Agent — 结课项目场景:用户提交支付服务故障。Agent 需要读取当前知识库、查询只读监控工具、等待外部部署状态、在必要时 compaction,并给出带引用的结论。worker 随时可能重启,旧事件可能重复投递。