LangChain 02:模型、消息与结构化输出
1、本篇任务:让模型输出成为程序可以依赖的合同 上一课只证明 Agent 能运行。本课暂时不接业务工具,只完成一个“客服分诊器”:输入用户问题,输出意图、紧急程度、是否需要人工和给用户的答复。 本课的核心不是学更多模型参数,而是理解三层合同:消息决定模型看到了什么;schema 决定程序期待什么;业务校验决定结果是否真的可用。 2、消息不是一段字符串,而是一条执行记录 一次工具型对话通常包含四种消息: | 类型 | 由谁产生 | 作用...
LangChain 03:工具与 Agent——从函数到可控行动
1、本篇任务:让 Agent 安全地读取订单 上一课得到结构化分诊结果,但模型不知道真实订单。本课增加一个只读工具 ,走通完整 Agent 循环,并把模型、工具包装和领域服务的责任分开。 完成后,用户问“我的 A100 发货了吗”,Agent 会选择工具;工具只按当前登录用户查询;模型基于工具结果回答。它仍然不能退款,因为我们没有提供写工具。 2、工具的本质是受 schema 约束的应用函数 一个好工具需要:稳定名称、清楚描述、窄输入...
LangChain 04:RAG 知识库实战(Python + TypeScript)
1、本篇任务:回答退款政策,并且能指出证据 上一课的订单工具能查询业务事实,却不知道政策文本。本课构建一条完整 RAG:离线索引政策文档;在线检索相关片段;只依据证据回答;证据不足时拒答。 RAG 不是“向量数据库 + 大模型”两个词。它有两条独立管线:索引管线决定知识怎样进入系统;查询管线决定问题怎样找到证据。任何一条出错,最终回答都会错。 2、先定义文档与 chunk 合同 每个 chunk 至少保存: 引用依赖 metadata,...
LangChain 05:记忆、流式、人工审批与生产治理
1、本篇任务:把“退款建议”变成可恢复、可审批的流程 现在我们有政策检索和订单查询。本课增加三项产品能力:同一会话记住之前的订单;运行过程实时显示;真正提交退款前暂停并等待人工决定。 这三项能力共享同一个基础: 运行状态必须在服务端持久化。 浏览器内的聊天数组不是记忆,逐 token 显示不是恢复,确认按钮也不是权限系统。 2、先区分三种状态 | 状态 | 例子 | 保存位置 | | | | | | 短期会话状态 | 消息、工具结果、当...
LangChain 06:端到端项目蓝图——把知识库客服做成可上线服务
1、本篇任务:把前五课装成一个能维护的后端 这一篇不再介绍新概念,而是给出项目边界、目录、API 和迭代顺序。目标是把退款政策与订单助手做成可运行服务,而不是继续在 Notebook 中调用 。 2、先确定第一版做什么、不做什么 第一版支持:政策 RAG、当前用户订单查询、结构化回答、SSE 流式事件、退款草案与审批、会话恢复、trace 和最小评测。 第一版不做:多渠道、语音、自动退款、多 Agent、任意 MCP、自动学习所有用户信...
LangChain 07:前端实时 Agent 界面——消息、工具、审批与会话
1、本篇任务:做一个能解释运行状态的 Agent 界面 前端不只是逐字显示模型答案。它必须表示会话、run、消息、工具执行和审批状态,并在刷新或断线后恢复。 后端已在上一课定义公共事件。本课只依赖该合同,不直接依赖 LangGraph 内部节点名。 2、先定义 UI 状态机 不允许从 再接收 text delta,也不允许在 时显示“操作已完成”。状态机能阻止乱序事件让界面说谎。 3、用 reducer 消费事件 sequence 去除...
LangChain 08:上下文工程、Runtime 与 MCP
1、本篇任务:只在正确时刻给 Agent 正确的信息和能力 Agent 变差经常不是模型不够强,而是上下文里混入太多旧消息、无关文档、危险工具或伪造身份。本课建立上下文工程方法,并把 MCP 当作外部能力适配器接入。 2、上下文有四种来源 | 来源 | 示例 | 信任级别 | | | | | | 静态规则 | 角色、不可违反的业务边界 | 应用控制 | | Runtime context | 当前 user、tenant、role、re...
LangGraph 01:图、State 与节点——从工作流原理到代码
1、本篇任务:把退款问答拆成显式工作流 LangChain Agent 的循环适合模型自主选择工具,但“先验证输入、再并行查订单和政策、证据不足则拒答、最后生成结果”更适合显式图。本课只学习四个概念:State、Node、Edge、Reducer。 2、图的心智模型 State 是当前运行快照;Node 是读取 state 并返回局部更新的函数;Edge 决定下一个节点;Reducer 决定多个更新怎样合并。节点可以调用模型,也可以是普...
LangGraph 02:路由、循环、并发与 Command
1、本篇任务:让控制流明确、有限且可预测 上一课的图会在输入非法时继续查询。本课增加四类控制:条件路由决定走哪条边;循环允许有限重试;并发加速多个独立检索; 将状态更新与跳转绑定。 2、条件路由用于确定性业务判断 权限、金额、订单状态、重试次数等确定性条件用代码。模型只在“用户意图是什么、证据如何概括”这类语义任务中提供结构化枚举,路由函数再根据枚举跳转。 3、循环必须先写退出条件 检索不足时可以改写 query 再检索,但循环至少有四...