我分析了246个代码仓库和57篇论文,关于AI代理框架。以下才是实际有效的做法
摘要
对246个开源仓库和57篇关于代理框架的论文的分析,突出了最佳实践,如人工编写上下文、限制工具和增量测试,以提高AI代理的性能。
似乎越来越多的人在构建代理框架(包括我自己),但很少有人衡量它们是否真的有效。由于框架工程仍然是一个相对较新的领域,我想自己做研究,弄清楚哪些实践正在成为最佳实践,而哪些只是炒作。因此,我查看了246个开源仓库和57篇出版物,试图获得更清晰的画面。我想在这里分享一些我的主要收获,以防其他人陷入这个兔子洞。总之,模式相当清晰:最好的框架是小的、基于证据的并且不断改进的。似乎有效的做法包括:自己编写框架(或让其他人类完成):ETH Zurich的一项研究发现,机器生成的上下文实际上降低了任务成功率,相比之下,给代理无上下文的情况下成功率更高,同时推理成本增加了20%。人工编写的上下文将成功率提高了约4%。所以,不要将编写框架外包给代理。根据观察到的失败来构建框架:现代代理已经相当有能力,框架应该弥补你看到的实际弱点。同样地:限制暴露给代理的工具和技能:仅在有真正需要时添加技能或专门的子代理,而不是因为它们流行。Vercel移除了80%的工具,成功率从80%跳到了100%,同时令牌减半。Microsoft将100个工具削减到2个。这里少即是多。一次改变一个组件并衡量影响:基本上是科学方法。如果你改变5件事并且情况变好了,你不知道是哪一个帮助了(或者哪一个在默默使事情变糟)。同时拥有测试和评估:就像代码一样,框架可能包含错误或过于冗长或模糊的指令,这些指令并不总是有效。不要假设你的AGENTS.md、钩子或脚本在做任何事情,仅仅因为它们存在,因为指令可以被简单地忽略。测试“应该发生”和“不应该发生”的情况:这个我个人就吃过亏。如果你的测试只包含必须被阻止的事情,收紧守卫总是安全的,而放松它是看不见的。所以框架慢慢偏向阻止一切,基本上扼杀了代理。片面的评估导致片面的优化。好奇听听其他构建代理的人:你是如何衡量你的框架是否真的有帮助的?
相似文章
关于构建和提升智能体框架可靠性的文章及来自我工作的大量数据集。
作者分享了一篇关于构建可靠智能体框架的文章,包括来自4,000次运行的基准测试,以及计划发布一个开源的深度研究和构建应用,强调了质量测试和对AI智能体开发的见解。
我比较了6个“代理框架”项目,并记录了每个项目何时优于其他项目
作者比较了六个代理框架项目,以诚实、非炒作的方式评估它们的优势和理想用例。
你的智能体能力取决于其框架。我开源了一个框架,单个函数调用背后集成了40项能力
一个开源智能体框架,单个函数调用背后集成了40项能力,包括持久内存、Docker沙箱、自动摘要、死循环检测、预算上限和实时运行分支(用于分支智能体执行)。基于Pydantic AI构建,旨在替换每个生产级智能体所需的2000行胶水代码。
@omarsar0:又一篇好论文。关于代理工具箱的益处这一发现很有趣。
一篇论文探讨了代理工具箱与模型对代理行为的贡献差异,将轨迹压缩成一个紧凑的有限状态机,并在十二个数据集上进行了验证。
@omarsar0: // 代理并非单独失败 // 一款非常棒的开源评估工具,用于检查代理的可靠性。里面有很多酷点子。…
本文介绍了ProofAgent-Harness,这是一款开源评估工具,从七个标准衡量AI代理的上下文工程质量,并将其验证为代理可靠性的领先指标。