跳转到内容
EN

轨迹能说明什么

MCP 服务器只能看到智能体对它发起的调用。因此,HALO 无法从内部观察一个产品的记忆或决策。它接收智能体选择记录的步骤,报告显示这些步骤之间如何引用。HALO 检查的是引用,而不是这些步骤是否真的发生过,每份报告都以这句话结尾。

有两个习惯能让轨迹贴近智能体实际做过的事:

  • 边做边记。 用一条始终生效的长期指令,让智能体在工作时记录每一步,日常使用时如此,它自己发起的行动也是如此。事后补记的步骤仍然有用,但智能体应在摘要中说明是补记的,就像 ChatGPT dots 一页中的那个 dot 所做的那样。
  • 尽可能让行动经过 HALO。 当一次行动经过 HALO,例如由 HALO 投递的消息,或由 HALO 转发的工具调用,HALO 就能直接看到这次行动及其结果,不必依赖智能体的报告。无论哪种情况,闭源产品内部的记忆都看不到。

大多数个人智能体是闭源产品。对它们,HALO 只能从外部入手,依靠三类证据:

证据 来源 能说明什么
只读模式 产品文档 产品自称具备哪些通路和步骤
插件 智能体运行时记录的步骤 它做过的事里出现了哪些通路和步骤
在产品边界上做 A/B 测试 同样的输入,分别在打开和关闭产品提供的某个控制项时运行 去掉这个控制项后,输出是否改变

第三行就是端到端地应用运行模式。产品会提供一些开关:记忆打开或关闭,插件接入或不接入,反馈给出或不给出。把同样的脚本化输入分别在开关打开和关闭时各运行一次,再让评判者在不知道哪次运行是哪次的情况下比较输出,就能检验开关背后的那条通路。

来源材料或智能体自己的日志,可以说明一条通路存在,但都不能说明这条通路起作用。在论文中,AiGet 通过两条路径把用户画像传给行动。只切断其中任何一条时,盲评中的评判模型没有明显偏好。两条都切断后,评判模型更偏好原始建议。只有受控比较才能显示这样的效应。因此,运行模式固定输入和模型,每次只移除一条通路或一个证据步骤。如果代码已公开,切断就发生在代码内部,位于通路的接收端。如果是闭源产品,切断只能发生在产品边界上,所以它的证据是端到端的。

  • 未观察到不等于不存在。 一个智能体即使保存了记忆,只要从未在之后的会话中记录过 recall,它的轨迹就显示不出状态持久性。
  • 等级是下界。 它是已记录步骤所能支持的最高等级。
  • 修订必须由智能体自己作出。 用户写下的规则不算智能体的修订。没有经过用户批准、也不在用户所设限制之内的修订,达不到 L5。
  • 账本保存在运行服务器的那台机器上。摘要中不应写入机密、密码和原始个人数据,工具说明也会这样提醒智能体。
  • 托管智能体需要一个公网 HTTPS 地址。halo serve --public-host 会把插件放在一个随机的路径段下,只有知道完整地址的人才能访问它,其他路径一律返回 404。
  • 宿主可能会把聊天内容或记忆分享给已连接的插件。ChatGPT 在连接插件时会提示这一点。要停止分享,请在宿主中断开插件。