pi 所属公司 Earendil 联合创始人Colin Daymond 写了篇文章讲 harness,偏科普向
开篇将 agent harness 比作攀登安全带,后者有两个作用:
- 承托你并保障安全,它连接的锁扣与绳索这些装备,可以防止坠落、调节攀登节奏并引导路线
- 可以挂载其他工具
当你攀登不同山峰或尝试不同路线时,可以携带同一套安全带。根据地形特征,你也可以调整安全带的配置及装备环上的挂载物。
攀登 harness 和 agent harness 在结构功能上存在诸多相似之处。
agent harness 通常具备四大核心功能:
- 系统提示
- 工具
- agentic loop
- 翻译层
1、系统提示词
它更像是新员工入职时收到的工作指南。模型虽未完全内化这些指令,但明白执行相关任务时应当遵循。系统提示会随每次用户输入一同注入对话流程,在确保 AI 模型于特定框架内恰当行为方面起着关键作用。
2、工具(tools)
工具是一组以代码编写的能力,模型可以对其进行“调用”。工具框架不仅描述这些工具,还提供作为工具本身的软件实体。这类工具的实例可能包括网络搜索工具、允许模型编写和执行软件代码的工具,或允许模型撰写电子邮件的工具。关键在于,工具框架通常不会规定人工智能模型何时及如何使用工具;相反,它只是使工具可用,对其进行清晰描述,并允许人工智能模型自行决定何时以及如何使用它们。
3、agentic loop
这里作者以 agent 的实际运作进行了举例说明:
现在我们有一个 AI 模型运行于 agent harness中,配备了一系列指令和工具。假设我们的框架专为电子邮件环境设计,配备了前述工具(网络搜索、代码编写、邮件撰写),且用户要求 agent 比较并测试本地小学的排名情况并给出推荐建议。
agent 会如何运作?
首先,它会尝试理解这项请求(或称"提示词")。它将运用预训练知识和模型权重来理解"小学"的定义、"本地区域"的范围,以及用户可能关注的排名类型。
随后它将构建网络搜索查询以获取最新数据。
对于搜索结果它会如何处理?
在 harness 中,AI 模型能结合初始请求的背景来审阅这些结果。它可能判定首次搜索未能获取准确信息或信息不足,并自主决定再次执行搜索。这种基于自主判断再次调用工具的行为,正是"循环"机制的首个清晰体现。
现在假设它已收集完所有相关数据。
AI 模型决定使用"代码编写"工具创建一份电子表格。
接着将电子表格与原始提示词进行比对。若数据不符合要求,它可能会"循环"回去重新搜索。
当判断信息足够时,它会调用 ComposeEmail——这个工具允许 AI 审阅发现的内容、进行总结、撰写邮件,并附上电子表格等附件。
模型会最终审阅这份成果,并确认任务完成。
"agentic loop"就此闭合。
用户将在数秒内收到一封邮件:正文包含总结与建议,附件则是呈现研究发现的电子表格。
4、翻译层
翻译层是 harness 得以兼容不同 AI 模型的关键所在。在某些情况下,harness可能会在同一个 agentic loop 中调用不同模型,因为不同 AI 模型各自在特定任务上更具优势。翻译层同时也是 harness 的核心要素,因为它将控制权交还给终端用户——这意味着使用者可以带着自己的 AI harness,搭配 Anthropic 或 OpenAI 的模型使用,亦可探索那些往往具备高性价比的开源 AI 模型。
---
与 AI 模型本身不同,你可以拥有并定制这个 harness 。就像登山 harness,你可以让它完全属于你。
链接:earendil.com/posts/what-is-a-harness
发布于 北京
