五步:设计思路、接入模型、构建工作流、创建智能体、发布。 每一步都有一个「怎么算过」的判据——不是「点了下一步」,是「看到了预期的结果」。 这一节把这五步走完一遍,最后得到一条四节点的链,而它就是后面九个案例的共同骨架。
前五节讲平台,这一节开始动手。这是全书第一个完整流程,走通了后面都是它的变体。 教材在这一节分了五个三级小节,正好对应五步。 这一篇把它们串起来讲,因为拆开看你不知道为什么是这个顺序。 平台步骤会写成「第几步点哪里」,标「平台原样 · 本沙箱不执行」; 其中能算的部分——工作流的结构、节点的输入输出——这里真跑一遍。
一、第一步:设计思路
动手之前先在纸上回答三个问题:输入是什么、中间要查什么、最后交什么。 输入决定开始节点要接几个字段。查什么决定中间要几个节点。交什么决定结束节点输出什么类型。 教材的入门案例是一个「能答公司制度」的小助手。输入一句话,中间查制度,最后交一句带出处的答复。
判据:你能用一句话说出这条链有几个节点、每个节点吃什么吐什么。说不出来就是没想清楚。 这一步花的时间最值。跳过它直接开工作流,会在连到第五个节点时发现自己不知道要什么。
二、第二步:接入大模型
在平台里选模型。教材统一用 DeepSeek,理由是中文够用、支持长上下文、价格低。 选完先别急着配节点,做一件事:在对话框里问一句「你好」,看字回不回来。 这一步看着多余,其实在排掉最常见的三类问题:密钥没配、额度用完、模型名写错。 这三类问题在后面会伪装成「工作流跑不通」,让你查错地方。
判据:对话框里能正常回一句话。回不来就别往下走。
三、第三步:构建工作流
新建一个工作流,出现的是「开始」和「结束」两个节点,中间空的。 把「知识库检索」拖进去,把「大模型」拖进去,然后用线连起来:开始 → 检索 → 大模型 → 结束。 连线的时候要做一件事:把上游的输出接到下游的输入上。平台里叫「引用变量」, 做起来是点一下加号选一个字段。
这一步最容易错的地方是字段没接上。链是连通的,但下游拿到的是空值。 所以判据不是「线连上了」,是「试运行时每个节点都有值」。 演示里跑了一遍:四个节点,每步都有输出,校验通过——无环、无孤儿、只有一个出口。
四、第四步:创建智能体
工作流是能力,智能体是入口。用户不会直接打开一个工作流,他打开的是对话框。 所以这一步要做三件事:写人设(它是谁、管什么、不管什么)、挂工具(把刚才那个工作流挂上)、 写开场白(给三个具体问题,别写「有什么可以帮你」)。 人设里最要紧的一句是「不管什么」:越界的问题该怎么说、答不出来时该怎么答。不写这一句,它就会硬答。
判据:在对话框里问一句,它走对了分支;问一句越界的,它拒绝了。两条都过才算配好。
五、第五步:发布到公众号
平台里的发布是一次授权:选渠道、扫码、确认权限。之后用户在公众号里发消息,就进到这个智能体。 这一步的技术活不多,但有几个坑要说清:公众号的类型决定能不能用、消息有响应时长限制、 回复格式受渠道限制(比如不能直接发卡片)。 判据:用手机在公众号里发一句话,收到回答。到这一步才算真的做完了。
演示里最后一条链只有四个节点。 第 5 章那个汽车客服案例、第 8 到 16 章那九个案例,都是它的变体——节点更多、工具更贵、 提示词更长,骨架没变。
六、动手 Demo:五步走完,得到一条四节点的链
先列五步各产出什么、怎么算过,再真跑一条制度问答的链。 最后把知识库那一节抽掉,看链短了之后答复怎么变。
f = Flow('制度问答')
f.add(
Node('start', 'start', '开始', lambda g: {'q': '年假有几天'}),
Node('kb', 'kb', '知识库检索', lambda g: {'hit': retrieve(g['start.q'])}),
Node('llm', 'llm', '大模型', lambda g: {'a': '按制度,' + g['kb.hit']}),
Node('end', 'end', '结束', lambda g: {'out': g['llm.a']}),
)
f.link('start', 'kb').link('kb', 'llm').link('llm', 'end')
print(f.check()) # 存盘前的校验:有环?孤儿?出口几个?
g, rec = f.run() # 按拓扑序真跑一遍
print(g['end.out'])
实跑输出:
--------------------------------------------------------------------
五步:从空白到一个能用的智能体
--------------------------------------------------------------------
① 五步各产出什么
--------------------------------------------------------------------
| 步 | 做什么 | 产出 | 怎么算过 |
|---:|---|---|---|
| 1 | 设计思路 | 一张步骤图 | 说清输入是什么、要交什么 |
| 2 | 接入大模型 | 模型与参数 | 跑一句「你好」,看到字回来 |
| 3 | 构建工作流 | 节点与连线 | 试运行三个节点,每步都有值 |
| 4 | 创建智能体 | 人设与工具表 | 在对话框里问一句,走对分支 |
| 5 | 发布 | 一个链接或二维码 | 用手机打开,答得出来 |
② 真跑一遍:把五步连成一条链
--------------------------------------------------------------------
存盘前校验:通过(无环、无孤儿、只有一个出口)
| 步 | 节点 | 类型 | 输出端口 | 毫秒 |
|---:|---|---|---|---:|
| 1 | 开始 | 开始 | q | 0.0 |
| 2 | 知识库检索 | 知识库检索 | hit | 0.6 |
| 3 | 大模型 | 大模型 | a | 0.0 |
| 4 | 结束 | 结束 | out | 0.0 |
最终答复:按制度:年假:入职满一年 5 天,满三年 10 天,满十年 15 天。
③ 把「知识库」这一节抽掉再看
--------------------------------------------------------------------
| 步 | 节点 | 类型 | 输出端口 | 毫秒 |
|---:|---|---|---|---:|
| 1 | 开始 | 开始 | q | 0.0 |
| 2 | 大模型 | 大模型 | a | 0.0 |
| 3 | 结束 | 结束 | out | 0.0 |
少一个节点,链短了 1 步,答复从「有出处」变成「没出处」。
! 整条链只有四个节点,这就是第 5 章那个汽车客服案例的骨架。九个案例里七个是它的变体。
①第一张表是五步的产出与判据。注意最后一列:五条判据都是「看到了什么」,不是「点了什么」。 这个区别决定了你是在调试还是在碰运气。 ②演示里那条链四个节点,跑了不到一毫秒。真机上慢的是检索和模型调用,不是节点调度。 ③第二段把知识库抽掉。链从四步变三步,答复从「有出处」变成「没出处」。 功能少一个,可信度掉一档。 ④最后那句不是客套。九个案例的骨架都是这条链,区别只在中间插了几个节点。所以这一节值得反复看。
30 秒实验
- 在纸上画一条你自己的链,标出每个节点吃什么、吐什么。画不出来就先别打开平台。
- 先在对话框里问一句「你好」。这一步排掉的是密钥、额度、模型名三类问题。
- 试运行时逐节点看值,别只看最后一个。空值往往出现在第二个节点。
常见误区
- 「先连起来再说。」链连通不等于数据通。字段没接上时它照样跑,只是下游拿到空值。
- 「人设随便写写。」人设里最要紧的是「不管什么」。不写这句,越界的问题它会硬答。
- 「发布就是点一下。」公众号的类型、响应时长、能发什么格式,都会限制你。 先在手机上进真实渠道试一次。
自测三问(点开对答案)
1. 五步的顺序为什么不能换? —— 输入输出要想清楚才敢连节点;模型通了才知道节点为什么失败;工作流通了智能体才有工具可挂。 2. 工作流跑通的判据是什么? —— 不是线连上了,是试运行时每个节点都有值。空值经常出现在第二个节点。 3. 人设里最要紧的一句是什么? —— 「不管什么」。越界怎么说、答不出来怎么答,不写这句它就会硬答。五步走完,第一个能用的东西有了。 下一章开始拆零件:插件和卡片——一个让它能办事,一个决定办完怎么摆给用户看。
- ☐ (本篇完,下一篇 3.1 什么是插件)
相关笔记
- Agent 开发者如何入局:三条入局路与最小骨架
- 扣子平台的目标群体:三类人的天花板
- 扣子平台架构:五层各管什么
- 🐦 扣子开发 AI Agent · 索引