Agent 怎么做回归测试?Prompt 改一个字要不要全量回归?

第 1188 题 约 2 分钟读完

本文目录
  1. 面试怎么回答
  2. 回归测试集怎么建
  3. 怎么判断对错
  4. Prompt 改一个字要不要全量回归
  5. 把回归接进流程

面试怎么回答

我会从线上真实问题、用户反馈的错误、核心场景和边界攻击案例里建测试集,并分成冒烟集、回归集和完整集三层,每条用例有期望结果或评判标准。判断对错时能用规则的尽量用规则,比如调用了哪个工具、参数和数字是否正确;开放式回答用 LLM-as-a-Judge 按明确标准打分,再定期人工抽检校准。改一个字不需要跑完整集,但每次都要跑冒烟集,因为模型对措辞敏感;按影响范围决定跑哪一层,换模型跑完整集。提示词和工具定义放进仓库走评审,提交后自动评测和基线对比,下降超过阈值就阻止合并,线上新错误持续补进测试集。

先把这段讲顺;面试官追问时,再展开下面的原理和细节。

详细讲解

改了一句系统提示词,原来能答对的问题突然答错了;换了一个模型版本,工具调用的成功率掉了 10 个点。大模型应用的「改一处、坏一片」很常见。面试官问回归测试,想看你有没有把大模型应用当成软件工程来做。

回归测试集怎么建

  1. 来源:线上真实问题抽样、用户反馈的错误案例、产品定义的核心场景、专门构造的边界和攻击案例;
  2. 分层:
    • 冒烟集:几十条最核心的用例,每次改动都跑,几分钟出结果;
    • 回归集:几百条覆盖主要场景,合并前跑;
    • 完整集:上千条,模型升级、大版本发布前跑;
  3. 标注:每条用例有期望结果或评判标准,比如「应该调用指标查询工具」「回答中的 GMV 应为 1,234 万」「应该拒绝回答」。

怎么判断对错

  • 确定性检查:调用了哪个工具、参数是否正确、输出格式是否合规、数字是否一致。能用规则判断的尽量用规则;
  • 模型评判:开放式回答用 LLM-as-a-Judge,按明确的评分标准打分;
  • 人工抽检:关键场景定期人工复核,校准自动评判。

Prompt 改一个字要不要全量回归

不需要每次都跑完整集,但每次都要跑冒烟集。原因:

  • 大模型对措辞很敏感,小改动可能影响看似无关的场景;
  • 模型输出有随机性,同一用例可能需要跑多次看稳定性。

按改动的影响范围决定跑哪一层:改了某个工具的描述,跑相关场景的回归集;换模型版本,跑完整集。

把回归接进流程

  • 提示词、工具定义、配置都放在代码仓库里,改动走评审;
  • 提交后自动跑评测,结果和基线对比,指标下降超过阈值就阻止合并;
  • 评测结果保留历史,能看到每个版本的变化趋势;
  • 线上发现的新错误补进测试集,测试集持续增长。