你们在部署前后是如何测试 AI 智能体的?哪些方法在实际使用中经受住了考验?

Reddit r/AI_Agents 新闻

摘要

一位从业者向社区询问,他们如何在部署前后测试能够调用工具的 AI 智能体,并比较了场景测试、以大语言模型作为评判者、工具调用轨迹检查和回归测试套件,同时对测试覆盖率、评判者的可靠性以及非确定性提出了疑问。

我正在琢磨如何为一个会调用工具的智能体搭建一套合理的测试方案,想听听在生产环境中运行这类智能体的人,哪些做法确实有效。下面是我经常看到的几种方法,以及我对每种方法的疑虑。基于预先编写的多轮对话进行场景测试。这种测试很容易理解,但我担心它们只覆盖了我已经想到的路径,漏掉了真实用户会碰到的那些古怪情况。用大语言模型当评判者。这是我目前能想到的唯一一种切实可行、能大规模为自由文本回答评分的方法。但在把评判者的评分与人工标注进行对比之前,我不会信任这些评分,而且我也不确定,需要多少条标注数据,才能让它成为决定是否放行的依据。工具调用检查。核实调用了哪个工具、用了哪些参数,以及智能体是否妥善处理了错误,似乎比给最终消息打分更可靠。即使调用实际上失败了,智能体也可能说“完成了,你的订单已退款”。有人这样对整个执行过程进行评分吗?值得投入这番功夫吗?回归测试集。思路是把每一次真实发生的失败都转成一条测试用例,避免同一个缺陷被发布两次。尚未解决的问题是,随着测试集不断扩大,如何避免它产生太多干扰性结果,或者运行得太慢。有几个问题想请教大家。发布前你们会运行哪些测试?哪些结果会直接阻止发布,哪些只作为警告?部署后,你们会给线上会话评分、人工抽样检查,还是只等用户投诉?你们如何处理非确定性,比如每个用例运行多次,或使用阈值,而不是严格判定通过或失败?除了有效的做法,我也很好奇哪些尝试纯属浪费时间。
查看原文

相似文章