Skip to content

第一章:从聊天到行动 ​

“帮我整理这周 Hermes 值得关注的变化,写成一份带来源的简报。”收到这个要求,模型可以马上给出一篇文章。但如果它没有读到这周的发布记录,文章再流畅,也不能证明里面的版本和变化是真的。

问题不只在于模型会不会写,而在于:谁去拿新资料,谁决定下一步查什么,谁确认材料足以支持结论? 本章用这个任务,分清模型、工作流与 Agent 的责任。

1.1 三种方式,都可能写出同一份简报 ​

最直接的方式是聊天:你把发布说明粘贴进去,让模型总结。模型根据这次请求能看到的信息生成回答;如果还缺一份资料,你再手动补上。现在不少聊天产品内置搜索和工具,所以这里说的“聊天回答”特指只围绕已给信息生成文本的过程,而不是对所有聊天产品的分类。

第二种方式是工作流(Workflow):程序先获取发布列表,再提取正文,最后把材料交给模型写摘要。步骤主要由程序预先安排。它也可以包含条件分支、重试和模型判断,并不意味着“只能从头走到尾”。

第三种方式是 Agent(智能体):运行程序给模型目标、当前材料和可用工具。模型发现缺少版本依据,就提出查询请求;看到结果后,再决定是打开源码、继续查证,还是已经可以形成回答。后续行动会根据当前结果调整。

图 1-1 教学示意:主要差异是后续步骤由谁决定,而不是有没有用到大模型。 点击图解可放大
左右滑动查看图解细节
聊天回答、固定工作流和 Agent 的处理方式对照

图 1-1 教学示意:主要差异是后续步骤由谁决定,而不是有没有用到大模型。

因此,不能只看“有没有搜索”来判断它是不是 Agent。一个固定搜索后总结的流程可以是工作流;一个根据搜索结果决定是否继续、换来源或请求澄清的系统,才体现了这里讨论的自主行动。

1.2 Agent 的关键,是把反馈接回下一步 ​

下面是一段教学示意,不是 Hermes 的实测日志:

当前看到的情况下一步可能做什么为什么
只有一句“本周变化”查官方发布记录先确定实际存在的版本
发布摘要提到“工具行为变化”打开相关源码和测试摘要不足以说明具体条件
页面读取失败换官方来源或说明无法核实失败不能当作已经读过
关键结论已有对应证据写出简报并列出限制完成目标需要交付可检查的结果

这就是行动循环(Agent Loop):整理当前信息、判断下一步、执行行动、接收反馈,再继续判断。实际系统也可能一次提出多个工具调用;这里先用串行过程帮助理解。

图 1-2 教学示意:工具返回的成功或错误都会影响下一轮。信息足够或达到运行边界时退出。 点击图解可放大
左右滑动查看图解细节
整理信息、决定下一步、执行工具、接收结果构成反馈循环

图 1-2 教学示意:工具返回的成功或错误都会影响下一轮。信息足够或达到运行边界时退出。

“继续循环”不是越多越好。资料不足却不断重复检索,可能只是在消耗时间;达到权限或预算边界时,说明哪里没有完成,也是一种正确退出。

1.3 模型提出行动,程序负责执行 ​

模型通常不会凭空伸出一只手去访问硬盘。它输出工具名和参数等调用意图,运行程序检查并调用工具,再把返回结果带进后续请求。

这里把组织模型请求、工具执行、历史和限制的软件称为运行程序,英文资料也常称 runtime 或 harness。工具是它接触外部环境的接口,例如检索网页、读取文件、执行命令。

图 1-3 责任示意:模型的决定、程序的执行和结果核实需要分别检查。 点击图解可放大
左右滑动查看图解细节
模型提出行动,运行程序检查和组织执行,工具访问环境并返回结果

图 1-3 责任示意:模型的决定、程序的执行和结果核实需要分别检查。

这也解释了为什么换一个更强的模型不一定能修好所有问题。模型可能选对工具,但程序丢掉了错误信息;工具可能读取成功,但拿到的是过期页面。第十三章会进一步讨论怎样验证最终交付。

1.4 为什么用 Hermes 作为学习样本 ​

在本书核对的版本里,Hermes 将行动循环、工具、上下文管理、持久记忆和技能等机制组织在同一个开源系统中。它让我们能从一个具体任务追问到对应的实现,而不只停留在抽象概念。

OpenClaw 也提供 Agent 运行、会话和工具等能力。两者值得比较的是机制怎样配合、状态放在哪里、边界怎样执行。第一章还不足以判断谁更适合某个场景;后面建立了共同的概念和评估方法,再在第十四章集中对照。

本章先带走一个判断方法:看到 Agent 演示时,别只看最后那段话,沿着“它读到了什么、执行了什么、观察到什么、凭什么结束”追问一遍。

不写代码的小练习 ​

把“固定抓三个网页后总结”和“发现资料缺口后决定另查源码”各画成三四个步骤,标出哪一步由程序预定、哪一步由模型根据结果决定。用控制方式解释分类,避免只看有没有工具。

本章要点 ​

  • 工作流与 Agent 的区别,主要在于行动路径怎样决定,二者也可以在同一系统中组合。
  • 行动循环把外部结果重新带回判断,失败结果同样重要。
  • 模型、运行程序和工具各有责任;执行成功不能代替任务核实。
  • 自主性有代价,需要权限、预算、停止条件和交付标准。

理解题 ​

1. 一个程序每天固定抓取三个页面,再让模型总结,是 Agent 吗?

按本章的区分,它主要是工作流。步骤由程序预先定义,使用了模型并不会自动改变这一点。如果模型能根据材料缺口决定后续检索和核查,则对应部分体现了 Agent 行为。分类是为了分析控制方式,不是给产品贴高低等级标签。

2. 工具返回“网页读取成功”,为什么仍不能直接交付简报?

读取成功只说明一次操作取得了内容。还要检查内容是否属于目标版本、是否覆盖需要讨论的变化,以及结论是否得到原文支持。数据获取、解释和核实是不同环节。

对照官方实现 ​

下一章把这张责任图放回 Hermes,跟着一条任务看整个系统。

社区学习手册 · 正文与原创图解 CC BY-SA 4.0 · 代码 MIT