AI Agent A/B测试:改了Prompt,变好了还是变差了?

📘 AI教程 💬 🔥 Trending

🩺 摘要

改了一行System Prompt,Agent行为大变。但怎么知道是变好了还是变差了?A/B测试给你答案。

📝 详情

一个常见的困境:你改了几个词的描述,Agent选工具变得更准了——但这是真的变好了,还是只是今天的模型状态好?

没有A/B测试,你永远分不清"改进"和"随机波动"。

怎么给Agent做A/B测试

Step 1:定义指标 - 任务完成率(主要指标) - 平均步骤数 - Token消耗 - 用户满意度

Step 2:分流

# 按用户ID分流
if hash(user_id) % 2 == 0:
    result = agent_v1.run(query)
else:
    result = agent_v2.run(query)

Step 3:统计分析 跑够样本量(建议每个版本>500次调用),对比指标差异的显著性。

测什么

  • System Prompt的不同版本
  • Temperature参数
  • 工具列表和描述
  • 记忆策略
  • 路由策略

总结

没有A/B测试的Agent优化跟猜没区别。 改了什么、效果如何、能不能上线——用数据说话。

样本量计算

A/B测试需要多少样本才能下结论?

import math

def required_sample(base_rate, min_effect, alpha=0.05, power=0.8):
    # base_rate: 当前成功率(如75%)
    # min_effect: 你认为有意义的最小提升(如5%)
    z_alpha = 1.96  # 95%置信度
    z_beta = 0.84   # 80%统计功效
    p_pooled = base_rate * (1 - base_rate)
    n = (2 * (z_alpha + z_beta)**2 * p_pooled) / (min_effect**2)
    return int(n)

一般每个版本需要300-500次调用才能下结论。跑够量再决定改还是不改。