连载中 · 共 16 篇

从零开始 AI Agent 实战

把一个真实的钉钉问题群和一堆官方文档,做成能追问、能引用、能转工单的智能客服 Agent。基础设施不预先铺垫,每一次升级都由 Agent 暴露的具体问题逼出来。

  1. 总览从零开始 AI Agent 实战:这个项目要做什么,以及为什么这样学把一个真实的钉钉问题群和一堆官方文档,做成能追问、能引用、能转工单的智能客服 Agent。
  2. 第 1 篇从零开始 AI Agent 实战(一):项目骨架、领域模型与可替换存储从空目录搭建问题工单服务,先稳定领域模型和存储边界,为后续替换 PostgreSQL 留出真实的工程回报。
  3. 第 2 篇从零开始 AI Agent 实战(二):Provider 抽象与可取消的流式对话用统一 Provider 接口接入 OpenAI-compatible 模型和 MockProvider,完成带会话 ID、心跳和取消语义的 SSE 对话。
  4. 第 3 篇从零开始 AI Agent 实战(三):工具调用循环,从会聊天到能查工单实现第一个可控的 Agent 循环:模型选择只读工具,服务端校验参数并注入真实结果,超过步数或返回非法 JSON 时安全退出。
  5. 第 4 篇从零开始 AI Agent 实战(四):建立可重复的评测基线用 YAML 用例和断言式评测建立 Agent 基线,量化工具选择、参数正确性、拒答、步数、延迟与成本。
  6. 第 5 篇从零开始 AI Agent 实战(五):当 JSON 文件撑不住时换上 PostgreSQL复现 JSON 存储的并发撞号问题,使用 PostgreSQL、异步 SQLAlchemy、序列和唯一约束完成可替换 Repository,并提前装好 pgvector。
  7. 第 6 篇从零开始 AI Agent 实战(六):认证与 RBAC,检索侧和工具侧都要拦加入用户、密码哈希和 JWT,把第 3 篇的用户桩替换为真实身份,并在检索侧与工具侧实施双重权限校验。
  8. 第 7 篇从零开始 AI Agent 实战(七):写操作、人工确认与幂等让 Agent 安全执行 create_ticket 和 update_ticket:危险动作先挂起等待确认,重复调用通过幂等键收敛为一次。
  9. 第 8 篇从零开始 AI Agent 实战(八):会话采集与导出协议把聊天客户端的本地库变成可版本化、可增量、可审计的导出包:只读采集、稳定引用、确定性脱敏和 delta 协议。
  10. 第 9 篇从零开始 AI Agent 实战(九):文档导入,解析、清洗与重叠窗口切分从 PDF、DOCX、Markdown、TXT 提取带标题层级的文本,采用重叠窗口切分并异步写入 pgvector,提供 202 与状态轮询接口。
  11. 第 10 篇从零开始 AI Agent 实战(十):群聊变语料,线程重建与统一 chunk聊天记录不是文章:用线程重建替代固定窗口切分,把群聊与文档并进同一张 chunk 表,并处理两个来源说法冲突的情况。
  12. 第 11 篇从零开始 AI Agent 实战(十一):混合召回、查询改写与重排建立可量化的 RAG 检索链路:查询改写、pgvector 向量检索、PostgreSQL 全文检索、RRF 融合和 LLM-as-reranker。
  13. 第 12 篇从零开始 AI Agent 实战(十二):引用、拒答,以及答不出时怎么转工单实现知识库问答的完整业务闭环:引用原文、可靠拒答、多轮收集字段,并在证据不足时转人工工单。
  14. 第 13 篇从零开始 AI Agent 实战(十三):用 LangGraph 重写状态机并恢复中断把手写工具循环和审批挂起重写为 LangGraph 状态图,使用官方 PostgreSQL checkpointer 实现服务重启后的恢复。
  15. 第 14 篇从零开始 AI Agent 实战(十四):React 前端的 SSE 状态机与交互闭环构建可用的 Agent Web 客户端:SSE 增量解析、断线重连去重、工具状态、引用折叠、审批和文档上传进度。
  16. 第 15 篇从零开始 AI Agent 实战(十五):机器人回群、可观测性与部署把 Agent 接回钉钉群完成闭环,并建立 Trace、成本估算、限流降级与 Docker Compose 部署。