技术指南

代理循环中的自我反思

自我反思让人工智能代理在任务中批评自己的输出和行动,然后根据该批评进行修改。

概述

自我反思让人工智能代理在任务中批评自己的输出和行动,然后根据该批评进行修改。它将一次性猜测器变成了一个可以捕获并修复自身错误的系统。

代理循环中的自我反思是一个技术构建块,会大规模影响模型质量、基础设施成本、延迟和可靠性。

深入探讨

在代理循环中,语言模型采取操作(调用工具、编写代码、应答)、观察结果并决定下一步做什么。自我反思增加了一个深思熟虑的步骤,模型在继续之前评估其最近的工作。像 Reflexion (2023) 这样的框架使这一点具体化:在一次失败的尝试之后,智能体会写一个简短的口头批评(“我忘记处理空列表案例”)并将其存储在内存中,因此下一次尝试以该教训为条件。 Self-Refine 使用相同的模型来生成反馈,然后迭代地重写其答案。反思可以来自将输出与目标进行比较、检查错误消息或运行测试。其回报是在编码、网络导航和数学等多步骤任务上具有更高的可靠性,其中单次传递经常失败,但批评和重试循环会成功。

技术洞察

反思通常作为额外的提示来实现:模型被要求充当其自身行为记录的批评者,产生自然语言反馈,然后将其附加到上下文中以供下一次尝试。反射将这些批评存储在试验中的情景记忆缓冲区中,而不是微调权重,因此学习完全在上下文中进行。驱动反射的信号可以是外部的(测试通过/失败、工具错误)或自身生成的,并且外部信号往往更加可靠。

掌握代理循环中的自我反思

自我反思让人工智能代理在任务中批评自己的输出和行动,然后根据该批评进行修改。它将一次性猜测器变成了一个可以捕获并修复自身错误的系统。代理循环中的自我反思是一个技术构建块,会大规模影响模型质量、基础设施成本、延迟和可靠性。为了建立深入的理解,请将代理循环中的自我反思视为一种操作模型,而不是单个功能:定义所需的结果,澄清假设,并将系统可以可靠地执行的操作与仍需要专家判断的操作分开。

在实践中,强大的团队在代理循环中使用自我反思,根据可靠性和成本来优化架构、数据和基础设施选择。他们记录明确的成功标准,根据实际数据和工作流程进行测试,并根据观察到的失败模式而不是一次性基准测试胜利进行迭代。这就是理论理解转变为跨产品、政策和运营的持久能力的地方。

多年来,架构决策决定着性能和运营成本。与此同时,优化一个基准测试可以隐藏更广泛的系统弱点。最具弹性的方法是将实验速度与治理规则结合起来:运行试点、捕获证据、发布决策日志,并随着模型行为、用户期望和监管要求的发展不断更新保障措施。

战略影响

多年来,架构决策决定着性能和运营成本。

多年来,架构决策决定着性能和运营成本。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。

技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

更好的工程选择可以减少生产中的可靠性事故。

更好的工程选择可以减少生产中的可靠性事故。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

代理循环中自我反思的未来

期望反射成为内置的代理原语,而不是提示技巧,经过训练的模型可以知道反射何时值得额外的令牌以及何时会消耗计算量。验证者模型和执行反馈将越来越多地进行自我批评,这样代理人就不再幻想错误的答案是正确的。研究还针对失败模式,其中模型自信地确认糟糕的工作,推动校准、基于证据的反思和学习的循环停止标准。

现实世界的实施

编码代理运行失败的单元测试,读取回溯,写入指出差一错误的反射,并在下一个循环迭代中重写该函数。

点击错误链接的网络浏览代理会反映在它所登陆的页面上,识别出与其目标不匹配的情况,并回溯以尝试不同的链接。

研究助理起草一份答案,批评其不受支持的主张,并在返回之前进行修改以添加引文或对冲不确定的陈述。

数学求解代理根据问题约束检查其最终答案,注意到单位不匹配,并重新计算而不是提交有缺陷的结果。

实施模式

实践中代理循环的自我反思

编码代理运行失败的单元测试,读取回溯,写入指出差一错误的反射,并在下一个循环迭代中重写该函数。

编码代理运行失败的单元测试,读取回溯,写入一个反射,记录差一错误,并在下一个循环迭代中重写该函数。当团队预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会得到更好的结果。

实践中代理循环的自我反思

点击错误链接的网络浏览代理会反映在它所登陆的页面上,识别出与其目标不匹配的情况,并回溯以尝试不同的链接。

单击错误链接的网络浏览代理会在其登陆的页面上反映,识别与其目标不匹配的情况,并回溯以尝试不同的链接。当团队预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会得到更好的结果。

实践中代理循环的自我反思

研究助理起草一份答案,批评其不受支持的主张,并在返回之前进行修改以添加引文或对冲不确定的陈述。

研究助理起草答案,批评其不受支持的主张,并在返回之前进行修改以添加引用或对冲不确定的陈述。当团队预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会得到更好的结果。

实践中代理循环的自我反思

数学求解代理根据问题约束检查其最终答案,注意到单位不匹配,并重新计算而不是提交有缺陷的结果。

数学求解代理根据问题约束检查其最终答案,注意到单位不匹配,并重新计算,而不是提交有缺陷的结果。当团队预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会得到更好的结果。

风险与防护栏

!

优化一项基准测试可以隐藏更广泛的系统弱点。

!

基础设施和维护成本常常被低估。

!

随着系统变得更加复杂,安全性和可观察性差距可能会扩大。

实施路线图

1

在实施之前定义延迟、质量和成本目标。

在实施之前定义延迟、质量和成本目标。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

2

在实际负载和数据条件下进行基准测试。

在实际负载和数据条件下进行基准测试。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

3

仪器监控错误、漂移和用户影响。

仪器监控错误、漂移和用户影响。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

4

在扩展之前准备回滚和事件响应路径。

在扩展之前准备回滚和事件响应路径。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

不断探索