无尘阁日记

无尘阁日记

零基础开发AI Agent:把工作流拼起来,就等于会做 Agent 了吗?
silcano

微信读书《零基础开发AI Agent——手把手教你用扣子做智能体》(管错、张心雨著)· 本篇读第 5 章后半至第 6 章(工作流、图像流、知识库、变量、数据库、长期记忆、卡片、对话体验),对应 p0137–p0256,共 120 屏。
抽样说明:我抽读了 p0140(插件输出参数与调试)、p0143–p0144(工作流节点与参数类型)、p0152(大模型节点试运行)、p0160(意图识别 + 知识库 + 联网搜索三件套)、p0172(变量节点取值)、p0182(图像流五类工具)、p0208(知识库五步法)、p0238(数据表结构与两种模式)、p0248(长期记忆与变量、知识库的差别)、p0254–p0256(快捷指令),共 12 张。
这本书我此前发过上篇,读的是 p0001–p0136(第 1–4 章加插件入门),本篇只写它之后的部分,不重复。所有引文、参数名、工具名、界面文案都来自这 12 张截图;凡属我的推断或批评,文中单独标出,不冒充书里的观点。

先说结论:这一百二十屏,把扣子的操作面完整摊开了一遍,却没把知识面交出来。

摊得确实完整。工作流有几个节点、参数有几种类型、知识库分几步建、图像流有哪些按钮、数据表怎么设字段、长期记忆和变量差在哪——你照着点,每一步都能落地。

但交不出来的东西也很明确:为什么这个流程要拆成五个节点而不是三个、切块到底该切多大、图像流那十一个"智能编辑"按钮在什么场景下该用哪个、多用户模式下权限到底怎么兜住。这些不是细节,这些恰恰是从"能跑通"到"敢上线"之间那道沟。这本书站在沟的这一边,把手上的积木数给你听,然后说:拼吧。

一、工作流:十五个节点,难的是删掉十二个

书里在 p0143 把工作流讲得很清楚:架构里"始终存在一个开始节点和一个结束节点",开始节点是入口、允许用户输入必要信息,结束节点代表流程结束、负责输出最终成果。中间可选的有:插件、大模型、代码、知识库、工作流、图像流、选择器、意图识别、文本处理、消息、问答、变量、数据库。

我数了一下,连头带尾十五种。

这一页的信息量其实不小,但它给出的是"清单",不是"取舍"。清单告诉你有什么,取舍才告诉你该怎么用。一个真实业务进来,第一件难事从来不是"有哪些节点",而是"我要用几个"。五个节点能跑通的事,非要用十个——每一层都多一点延迟、多一点失败率、多一点日后没人看得懂的连线路由。反过来,为了省事把三个节点的活压进一个大模型节点的提示词里,你就再也测不出问题出在哪一环。

书里给的例子是顺着来的:先讲节点,再讲参数,再给图。没有一处停下来问:"这个案例如果砍掉一个节点会怎样?"——而这个问题,是工作流设计的全部。

我自己的判断是:扣子这类平台真正降低的门槛是"能搭起来",没有降低的门槛是"搭得对"。前者靠界面,后者靠判断力,而判断力只能从失败里长出来。这本书只写了成功的那条线。

同一页还给了一条容易被忽略的规则:输入参数的变量值分"引用"和"输入"两类,"引用"指引用前面节点的参数值,"输入"指自定义参数值。这句话短得像脚注,实际是工作流最常断的地方,下一节单独说。

二、"引用"和"输入":一条没人提醒的暗沟

先看 p0140,这是插件做完之后的最后一步:"配置输出参数"与"调试与校验"。参数表里一列列写着 shangqi_res_code(Number)、shangqi_fee_sum(Number)、shangqi_res_body(Object)、ret_code(Number)、poi(Object,下挂 poiid 是 String)、area_code(String),每一项都标着"请选入参格式",后面跟一个开关。

然后调试:在输入参数里填一个城市名,比如"北京",点"运行",右侧弹出两个选项卡——Request(请求)和 Response(回复)。如果显示"调试通过",说明这个工具添加成功。

这一页其实很关键,因为它是全书少数让你"看见接口"的地方。Request 和 Response 一左一右摆着,等于把黑盒掀开一条缝:你能看到自己传出去的到底是什么形状的 JSON,也能看到对面还回来什么。这是排错的正道。可惜书里只把它当成一个"验证成功"的仪式,没告诉你这两栏才是你之后每天要看的东西。

真实情况是:接口改字段、对面限流、返回 200 但 body 里是错误码——这些都只能靠 Request/Response 抓。你把这一页当"做完就过",遇到问题时你手上什么线索都没有。

p0144 讲参数类型,六种:String(字符串,例如 Name="宋江")、Number(数值,含整数浮点,例如 Number=10.3)、Integer(整数,例如 Integer=10)、Boolean(布尔,例如 isAdult=true)、Object(对象,"一个对象可以被看作一个无序的键/值对的集合",例如 student={name:"小明", age:15})、Array(数组,例如 numbers=[1,2,3,4,5])。

写得规整,例子也贴切。但我读到这里的第一反应不是"学会了",而是"这里会死很多人"。

因为在这类可视化工作流里,报错信息通常只告诉你"参数类型不匹配",不会告诉你"你在第三步把 Object 当 String 传了"。String 和 Integer 混用、Array 里塞 Object、布尔值被当成字符串 "true" 传下去——这些错在界面上看不出任何异样,连线是绿的,节点是通的,只有结果不对。而结果不对的时候,新手第一反应往往是去改提示词,越改越远。

书里给了类型表,没给排错路径。这是这本教程最典型的缺口:它把"正确"讲得很细,把"不正确长什么样"完全省略了。

p0152 是一段看着很舒服的示范:在大模型节点里输入"早上好",点"试运行",界面显示"运行成功(3.90s)",输出是一段分了六个时段、六种语气的问候——清晨、上午、中午、下午、傍晚、深夜各一句。同一页还提到,可以把输出和预期做对比来优化。

这个案例好在哪?它把"试运行"这个动作的必要性说透了:不试运行就发版,等于闭着眼睛上线。但它也暴露了一个结构性缺陷——试运行只验一次输入。真实的 Agent 上线后,用户输入是长尾的,你试的那一句"早上好"永远是最乖的那一句。书里没有一句关于"边界输入怎么造"的话,而这才是 Prompt 工程真正花时间的地方。

p0160 是我在这一章里看到最"工程"的一页:一个意图识别节点,后面并着知识库节点和联网搜索插件。意图节点的模型是 Doubao-pro-12k-functioncall-preview,配了置信度阈值;知识库节点里设了"公司介绍"这个库、检索方式为"语义"、最大召回数 20;联网搜索则挂着 freshness、count、offset 这几个参数。

注意那个模型名——functioncall。这说明平台内部是把"意图分类"当成一次工具调用来实现的:不让你训分类器,让大模型在几个候选意图里选一个,用 function calling 的格式吐出来。这个做法省事,也带来了一个书里没提的后果:意图节点和后面的大模型节点在抢同一个模型的判断力,一旦意图判断错,后面全错,而错误会被包装成"检索不到"的样子。

这页还藏着一个设计上的野心:意图识别 → 知识库 → 联网搜索,其实是一条"先查内部、查不到再查外部"的降级链。这是很成熟的 RAG 架构。可惜书里只把它当截图展示,没有把"为什么是这个顺序、什么情况下该反过来"讲出来。

p0172 是个小例子:在工作流里加一个变量节点,试运行输入"贾宝玉",成功取到用户名。这类"把一句话里的名字抠出来存成变量"的动作,是所有个性化 Agent 的第一步。书里给的操作是对的,但它没提醒一句更要紧的话——变量是会被带进上下文的,带得越多,后面每一轮都越贵。

三、图像流:把修图软件塞进画布

p0182 给出图像流的工具分类,五类:

智能生成(图像生成、图像参考);风格模板(风格滤镜、宠物风格化);智能编辑(提示词推理、提示词优化、智能换脸、背景替换、光影融合、智能扩图、智能抠图、画质提升、美颜、拉伸修复、透视矫正);基础编辑(裁剪、添加文字、叠图、亮度、对比度、旋转、缩放);通用工具。

光"智能编辑"一类就十一个功能。看得出扣子把一整条修图流水线拆成了节点,让你可以像连电路一样把"抠图—换背景—扩图—调色"串起来。这在两三年前是不可想象的:那时候做一张商品图要开 PS、开三四个 AI 网站、来回导文件。

但这里恰恰是全书最该展开、却最敷衍的一节。十一个按钮摆出来,没有一个字讲"什么时候该用哪个"。举个具体的:一张人像发丝边缘有问题,你该用智能抠图重抠,还是用画质提升硬拉?一张图构图太满需要留白,该用智能扩图往外补,还是用背景替换重做?这两条路的成本差一个数量级,效果也差一个量级。书里没有答案。

更没有的是质量判断。图像流跑完,出来一张图,好还是不好,谁来打分?人眼看?那批量处理一百张的时候怎么办?这类"生成式流程"和前面那种"取数—判断—回复"的流程有个根本区别:它的输出没有唯一正确答案,所以它的验收标准必须是概率的、抽检的、带阈值回滚的。书里一个字没提。

说句公道话:这不是作者一个人的问题。整个"低代码 Agent 平台"品类,都在把复杂工具做成按钮,而把判断标准留给用户。按钮越多,越显得平台强,也越容易让人误以为自己已经具备了能力。能力不在按钮里,在"知道哪个按钮不该按"里。

还有一层更少人注意:图像流和文字流在同一个画布上,用的是同一套节点语言,这会让人产生一种错觉——觉得它们可以按同一套标准来设计。其实不行。文字流的每一步都能被读、被审、被改;图像流的中间产物是一张图,你没法"读"它,只能看它。这意味着图像流的调试成本天然高一个量级,你的每一次试错都要用眼睛去验收,而不是用日志。

书里把两类流放在并列的两节讲,格式一致、语气一致,读者很容易把它们的难度也当成一致。这是排版造成的误导,不是作者的主观错误,但后果一样:有人会拿搭文字流的时间预估图像流,然后在第三张图就崩了。

四、知识库五步法:切块才是真功夫

p0208 是这一百二十屏里我认为最值得单独读的一页。它把建知识库拆成五步,而且每一步都讲了"为什么":

(1)上传知识文档,包括文字、数字、视频、图片、音频等大多数格式;(2)转换为文本格式的文档,因为 AI 系统无法直接读取所有格式,这一步叫文档解析,图片转文字、视频转文字、表格转文字;(3)文档切块,"抓取信息与输入问题的匹配度取决于知识的精细度",精细度取决于切块;(4)词嵌入,把自然语言转换为 AI 能理解的数字;(5)创建向量数据库。

这五步写得对,而且是按数据流的顺序写的,不是按界面按钮的顺序写的。这一点值得表扬——大多数同类书会写成"点击左侧知识库→点击新建→填写名称",那叫说明书,不叫教程。这里至少告诉你:你在做的事,本质是把非结构化信息压成向量。

但第三步它只走了半步。

书里把切块的选择摆出来了:按字数(每 100 字切一块)、按句子、按段落、按行数。然后说"不同的切块方式决定了文档语义表达的准确度,也决定了信息抓取的准确度"。这句话是对的,可它把最难的部分一句话带过了:到底该选哪个,凭什么选。

我自己的经验是,这一步没有通用答案,只有三条能落地的判断:一、你的文档是不是"一问一答"结构,是就按段落切,让一个块对应一个完整意思;二、你的问题是不是需要跨段推理,是就把块放大到 300–500 字,宁可召回噪声也别漏掉条件;三、你的文档有没有大量表格和编号条款,有就先按标题层级切,别按字数硬切——按字数切最省事,也最容易把一条法规的"但是"切到下一块去。

这三条书里都没有。它给的是"你可以选",不是"你该怎么选"。而后者才是读者花钱买的东西。

还有一处更隐蔽的省略。五步法里,"文档解析"这一步被写成一个动作,实际上它是整条链上最脏的一段:PDF 里的双栏排版、扫描件的歪斜、表格跨页、图片里的水印——每一样都会让后面所有步骤的精度打折。书里给的例子都是干净文档。教程只给干净样本,等于把读者的第一次翻车推迟到了生产环境。

五、变量、数据表、长期记忆:全书少数讲清概念的地方

读到 p0238 和 p0248,我第一次觉得这本书是有编辑的。

p0238 讲数据表。一张表的结构长这样:字段名(industry、job、question)、字段描述、数据类型(Integer、String)、是否必要。然后是两种模式的区别,写得很干净:

单用户模式:开发者和用户都可以添加记录,但仅能读、修改或删除自己创建的来自同渠道的数据。
多用户模式:开发者和用户都可以读、写、修改或删除表中来自同渠道的任何数据,由业务逻辑控制读写权限。

第二句是全章最该加粗的一句,也是全章最危险的一句。"由业务逻辑控制读写权限"——这七个字,等于把数据安全整个交回给了开发者,而这本书的读者,恰恰是"零基础"的那批人。

多用户模式意味着:只要你的对话流程里有一个能被用户影响的参数,用来决定"查哪条记录",那你就在做一个权限系统。做对了,是多人协作;做错了,是 A 用户能读到 B 用户的资料。这种事在扣子这类平台上出过不止一次,不是平台的问题,是"业务逻辑控制"这六个字太容易被当成"不用管"。

书里没有一节讲这个。它甚至没有一句提醒:"如果你不懂权限,就先用单用户模式。"——而这恰恰是最实用的一句。一本写给零基础读者的教程,把最容易造成真实损失的那个开关,用一行小字解释完了。

p0248 则是另一个方向的好。它做了两组对比,每组都直击混淆点:

第一组,长期记忆与变量的区别——"变量是由 Agent 开发者创建的,可以被应用于各种需要变量的场景。长期记忆是自动生成并且不断累积的,更适用于对话。"

第二组,长期记忆与知识库的区别——"知识库是指提前将特定领域的信息植入 Agent 中,作为其定向信息检索的特定预料。知识库是静态的。长期记忆存储的是用户与 Agent 的对话内容,而且是动态积累和更新的。随着用户使用 Agent 对话增加,记忆会越来越丰富且具有个性化。"

这两段写得好,好在它不是在解释功能,而是在切概念。现实里我见过太多人把这三样当一回事:想记住用户偏好,去建了个知识库;想做一个稳定的人设,去开了长期记忆;该用变量存的东西,硬写进了系统提示词。结果要么记不住,要么记错了,要么每一轮都在烧钱。

书里还配了记忆面板的截图:2024-06-12 记了一条"想尝试一个新的市场营销",2024-07-30 记了一条"最近面试顺利",右下角一个"清空数据"。这两条记录放在一起其实很有意思——它们说明长期记忆是把对话里"看似值得记"的碎片自动沉淀下来,颗粒度由模型判断,不由你决定。

这就是长期记忆的真实代价:它不是一个你可以设计的模块,而是一个会自己长大的东西。你不知道它记了什么、为什么记、什么时候会用错。面板上那个"清空数据"是唯一的手动开关,而它是一键全清,不是逐条删除——这个设计本身就在告诉你:平台也没打算让你精细管理记忆。

这一节我给高分,但要把分扣在一个地方:三个概念讲清了"是什么",没讲"用错会怎样"。而恰恰是后者,才是读者真正会踩的坑。

六、快捷指令:产品经理的活被塞进了开发者界面

p0254–p0256 讲快捷指令,也就是给 Agent 配一批"一句话就能触发"的固定动作:可以挂工具、挂工作流、挂图像流。书里的示范很具体——创建一个"翻译意大利语"的指令,输入"距离最近的公交车站在哪里?",试运行后输出 "Dov'è la stazione degli autobus più vicina?"。下面是 10.5s / 2239 Tokens 的消耗标记。

这个功能的定位其实很微妙。它不是给开发者用的,是给运营用的:把高频需求做成按钮,降低用户开口的成本。所以它天然属于产品经理的活——哪些场景值得做成快捷指令、文案怎么写、图标怎么选、点进去默认填什么。

而这本书把它放在"功能模块详解"里,当成一个技术组件讲。这就是这一百二十屏的结构性问题:它把所有东西都平铺成"功能",于是产品判断、运营判断、工程判断全被压平成"操作步骤"。

那行 2239 Tokens 值得单独说。这是全书极少数露出成本的地方。一次翻译两千多 token,一天一千次就是两百多万 token。这个数字对个人用户无所谓,对企业用户就是一笔预算。书里没有一处算过账——没有 token 成本、没有并发上限、没有响应延迟的分布。一本教人做生产工具的书,不谈账单,等于教人开车不讲油耗。

同一张截图里还有 10.5s 这个延迟数字。一次翻译要十秒,说明这个指令背后挂的是一条完整的模型链,不是查表。十秒在 demo 里毫无问题,在真实对话里就是"用户在等、以为卡了、退出去重发"的三连。书里把它当成成功案例展示,我看到的是一道没人提的验收线:超过三秒的 Agent 动作,都得配一句"我正在做什么"的中间反馈,否则用户体感就是坏的。

七、它的短板

第一,正文密度太低,低到影响学习效率。这一百二十屏里,界面截图大约占七成。很多页的正文只有三四句话,其余全是图。图本身没错,错在文字没有承担起"图之外的信息"——没有一个字讲"如果这一步报错怎么办"、"这一步做错了会有什么现象"。读者翻完会有一种"我都看懂了"的错觉,一上手发现看不懂的是报错。

第二,全书只有顺风路。插件调试一次通过、大模型试运行一次成功、知识库建完就能用、图像流跑完就出好图。真实的第一次,几乎不可能是这样。缺失败案例的教程,会把"我笨"这个错误结论塞给读者,而实际上是书没写这一层。

第三,顺序是倒的。先教点按钮,再讲原理。更有效的顺序应该反过来:先讲"知识库为什么需要切块和嵌入",再让你去点那五个步骤。现在这个顺序培养出来的是"会复刻"的人,不是"会改"的人。而 Agent 这个东西,几乎没有一次搭完不用改的。

第四,也是最要命的一条:它把平台能力当成了通识。工作流节点、图像流按钮、数据表模式、长期记忆面板,全是扣子的实现。换到另一个平台,名词全变,你的经验值要打折。书里没有一处把这些操作抽象成"这一类平台都有的东西",也就没有帮读者建立可迁移的模型。学完之后你会用扣子,但你不一定懂 Agent。

公平地说,这本书的定位可能就是"扣子使用手册",那它完成任务了。但书名里写的是"零基础开发 AI Agent",不是"扣子入门"。名实之间这点差距,读者会用推荐值来投票。

《零基础开发AI Agent》第5章后半至第6章知识图谱
第 5 章后半至第 6 章的知识图谱:拼装台、三块料、我的判断、它的短板

如果只让我留三页,我留这三页:p0143(十五个节点与两条参数来路,唯一需要背的东西)、p0208(知识库五步法,唯一讲了"为什么"的一页)、p0248(变量、知识库、长期记忆的三方切割,唯一讲清了概念边界的一页)。其余可以快翻。

一句话:这一百二十屏把一个平台的操作面完整摊开了,最有价值的是那半页概念切割,最缺的是"错了怎么办";它教会你拼出第一个能跑的 Agent,却把"拼得对"这道题原封不动留给了你和你的生产环境。

阅读记录:《零基础开发AI Agent——手把手教你用扣子做智能体》,管错、张心雨著。本篇为该书续读,覆盖第 5 章后半至第 6 章(p0137–p0256,120 屏),此前已发上篇覆盖 p0001–p0136(第 1–4 章与插件入门)。全书 472 屏,本次抽读 12 张关键页(p0140、p0143、p0144、p0152、p0160、p0172、p0182、p0208、p0238、p0248、p0254、p0256)。引句、参数名、工具名、界面文案均取自上述页面;带"我的判断""我自己的经验"字样的段落为个人分析,非书中观点。书末第 7 章起的实战案例另篇再写。
关于作者 · 江天(楠哥)
AI 实战导师 / 企业 AI 落地顾问 / 智能体工程师,17 年跨界、15,000+ 小时 AI 实操、20+ 套已交付工作流。