atypica.AI
atypica.AI

为「主观世界」建模

© 2026 BMRLab. 保留所有权利。

系统运行中

产品

关于 atypica.AI技术价格AI 研究AI PersonaAI 访谈Insight 播客skill0Game Lab

解决方案

企业版案例展示内容创作者网红营销人员产品经理创业者咨询顾问

资源

产品文档常见问题使用指南AI Persona 模拟API 文档词汇表更新日志博客研究工程

公司

加入我们联盟推广技术介绍项目介绍服务条款隐私政策

AI 用户研究 Agent Evals:从专家反馈到持续监控

2026年7月27日

先让专家指出哪里不像一份可信的研究,再把这些具体问题变成可以持续监控的指标。

评测 atypica 这样的 AI 用户研究 Agent,最难的不是找一个更强的模型来打分。

最难的是,一开始我们并不知道应该评什么。

有一次,atypica 为一项饮料品牌研究找来了八位受访者:刚工作的程序员、咖啡店主、健身教练、带娃的年轻妈妈……

他们的年龄、职业和生活状态都不一样,但聊到这个品牌时,回答几乎是同一句:

“感觉这是我爸那辈人喝的东西。”

还有一次,报告中写道:

“一位 26 岁的受访者提到,她会在加班后奖励自己一杯。”

这句话读起来很自然,也很像一条不错的洞察。客户甚至把它划了出来。

但我们回到访谈记录中检查,发现没有人说过这句话。

这两类错误都不在最初的测试清单里。它们是在研究真实运行、被专家逐步检查以后,才被发现的。

所以,我们没有急着设计一张“大而全”的评测表,而是先问:

这份研究具体哪里让你不放心?

然后,我们把反复出现的问题定义成错误维度,再让 LLM 持续检查这些已知问题。

这就是 atypica 建立 Agent Evals 的起点。

复杂 Agent 不能只评最终答案

一次 AI 用户研究不只有最终报告。

在 atypica 中,一项研究会经过多个步骤。每一步看起来都可能正常,却在最后累积成一份不可信的报告。

研究环节可能出现的问题
理解课题把用户举的例子误当成研究对象
制定计划研究范围与用户真正的问题不一致
寻找人群找到的人群缺少差异
构建 Persona身份不同,观点和行为逻辑却相同
执行访谈只问态度,没有追问行为和原因
综合分析把少数人的意见概括成普遍需求
生成报告夸大证据,甚至写入不存在的引用

如果只给最终报告打一个总分,我们可能知道“结果不好”,却不知道问题从哪一步开始,也不知道应该改哪里。

因此,复杂 Agent 的评测不能只看最终输出,还要把问题放回具体的 Agent 步骤。

这里也要说明一个边界。

企业为什么信任合成消费者,涉及数据来源、模拟保真度、与通用大模型的区别以及数据安全。我们在 中讨论了这些问题。

这篇文章关注的是下一层:即使底层方法成立,一次具体研究仍然可能在执行过程中出错。Agent Evals 要帮助我们发现这些错误,并避免它们在改版后重新出现。

第一步:从真实反馈里发现该评什么

我们在研究回放页的每个 Agent 步骤旁放了一个反馈入口。

专家看到问题后,可以直接写下:

八个人的职业虽然不同,但观点、理由和表达方式几乎一样。

我们没有先让专家从一张完整的问题清单中选择,也没有只让他们打 1~5 分。

因为“访谈质量 2 分”只能说明结果不好,不能告诉团队哪里出了问题。

相比之下,下面这些反馈可以直接帮助团队定位:

  • 用户只是拿 Nike 举例,Agent 后面却把 Nike 当成了研究对象。
  • 受访者都说不喜欢,但访谈没有继续问他们实际会不会购买。
  • 报告称这是“普遍需求”,实际上只有一位受访者提过。
  • 这句话用了引号,但在访谈记录中找不到原文。
  • 计划承诺研究八个平台,最后只分析了三个。

这个阶段不要求专家使用统一术语,只要求把问题说具体:

  • 哪里不对?
  • 从哪段内容看出来的?

如果得到的是“Persona 不够真实”“报告不够专业”这样的评价,就继续追问:

如果只能指出一个具体问题,会是哪一个?

通常,第二次回答才真正可以用于评测。

第二步:把相似反馈归为同一种错误

同一个问题,专家可能会用不同的方式表达:

  • 八个人像同一个人;
  • 所有 Persona 都在说同一种话;
  • 职业变了,回答没有变;
  • 这些访谈互换名字也看不出区别。

这些反馈描述的是同一种错误。

我们把可以在不同研究中重复识别的错误类型,称为一个错误维度。

例如:

受访者回答趋同:不同背景的受访者,在核心观点、理由、经历或表达方式上高度相似,没有体现背景差异。

LLM 可以帮助整理反馈,但不能直接决定错误维度:

  • 能归入已有维度的,优先归入已有维度;
  • 现有维度无法覆盖时,可以提出候选新维度;
  • 最终是否新建、合并或拆分,由 PM 或研究负责人确认;
  • 信息不足的反馈留给人判断,不要强行归类。

一个错误维度,至少要说清楚三件事:

要说明的内容示例
什么算错误多位受访者给出相同结论和相同理由
什么不算错误结论相同,但经历和决策方式明显不同
判断需要什么证据至少比较两位受访者的原文

例如,八个人都不喜欢同一个产品,不一定代表 Persona 趋同。

一个人可能觉得价格太高,一个人担心糖分,一个人受到家庭习惯影响,还有一个人找不到适合自己的饮用场景。他们的结论相同,但背后的经历和判断方式不同,仍然是不同的人。

真正需要警惕的是:结论相同,理由相同,经历也可以互换,连表达方式都高度相似。

经过第一轮整理,我们逐渐形成了这样一批错误维度:

错误维度具体含义
意图理解跑偏把用户的例子误当成研究对象
受访者回答趋同不同 Persona 给出相同观点和理由
访谈浮于表面只问态度,没有追问行为和原因
报告加码证据把温和反馈改写成强烈结论
无中生有的引用报告中出现研究过程里不存在的话
覆盖度虚标承诺的研究范围没有真正完成

与“研究质量不好”相比,这些维度都指向了一个具体环节和一种具体行为。团队知道去哪里检查,也更容易讨论应该怎么修。

第三步:看新的错误是否还在出现

既然不一开始列完错误,接下来就有一个问题:

反馈要收集到什么时候?

我们看的是每天新增了多少个错误维度,而不是累计有多少个。

atypica 第一次集中检查真实研究时,第一天发现了 14 个此前没见过的错误类型,第二天 4 个,第三天 4 个,第四天 3 个。到月底,新的专家反馈已经很少再产生新的错误维度。

累计维度只会越来越多。新增维度持续减少,才说明这批研究里的主要问题已经看得差不多了,可以开始自动检查这些已知错误。

这不代表以后不会再有新问题,只代表这一轮可以先告一段落。

第四步:让 LLM 重复检查已知问题

专家善于发现新的问题,但不可能每天检查所有研究。

atypica 的专家在第一轮一共留下了不到 300 条反馈。之后两个月,LLM 拿着这份错误维度清单,检查了 1,500 多个研究。

两者的分工很清楚:

人负责发现和定义问题,LLM 负责规模化检查已知问题。

不要直接问 LLM:

这次研究做得好不好?

这个问题太宽,模型很容易给出一段听起来合理、实际无法复核的评价。

更好的方式是把问题缩小:

这次研究中的受访者回答是否趋同?

或者:

报告是否把研究过程中没有出现的内容写成了用户原话?

每个判断任务只检查一个维度,而且必须保留证据。

例如,检查“受访者回答趋同”时,一个有用的结果应该是:

内容示例
判断有问题
观察多位受访者都把品牌理解为父辈消费的产品,理由也高度相似
证据 1P02:“感觉这是我爸那辈人喝的东西。”
证据 2P05:“这是我父母那一代会喝的。”
需要复核目标人群是否本来就存在明确共识

而不是:

多位 Persona 缺少差异性,建议增强个性化。

后者只有结论,没有依据,PM 无法判断 Judge 是否理解对了。

下面是一份简化的 Judge 提示词:

text
请检查下面这项 Agent 研究是否出现了指定错误。
错误维度:受访者回答趋同
定义:不同背景的受访者,在核心观点、理由、经历或表达方式上高度相似,没有体现背景差异。
判断要求:-  只检查这个错误,不评价其他方面。-  先描述观察到的现象,再给出判断。-  如果判断有问题,至少引用两位受访者的原文。-  结论相同但理由和经历不同,不算错误。-  证据不足时,输出“没发现问题”。-  不要创造新的错误维度。
请输出:1. 有问题 / 没发现问题2. 观察3. 原文证据4. 需要人工复核的地方
研究记录:[粘贴研究记录]

这里必须守住一条边界:

Judge 只监控已有维度,不负责发现新的错误维度。

新的错误仍然要从专家反馈中产生,也可能先由用户行为或异常信号暴露,再由人回到研究记录中确认。

第五步:先验证 Judge,再使用它的结果

Judge 能批量运行,不代表它判得准。

在使用 Judge 的结果之前,需要准备一批由专家标好答案的研究记录,检查它与专家的判断是否一致。这批数据通常叫作黄金测试集。

黄金测试集既要有正例,也要有反例。

以“受访者回答趋同”为例:

  • 正例:多位受访者的结论和理由都高度相似;
  • 反例:结论相同,但经历和决策方式明显不同;
  • 边界案例:目标人群确实存在共识,回答因此比较接近。

验证 Judge 时,不要只看一个整体准确率。至少要分开看:

  • 误报:正常研究被判成有问题;
  • 漏报:真实问题没有被发现。

不同维度,对两者的容忍程度不同。

例如,“无中生有的引用”一旦漏报,虚假证据可能进入客户决策;而“受访者回答趋同”如果误报太多,又可能把真实存在的人群共识当成错误。

Judge 判不准时,也不要立即开始堆提示词。先检查错误定义是否清楚、正反例的边界是否一致,以及 Judge 是否看到了判断所需的材料。

很多时候,Judge 暴露的不是模型能力不足,而是团队还没有把“什么算错”说清楚。

第六步:用固定输入比较 Agent 版本

黄金测试集验证的是 Judge,不是 Agent。

如果要判断 Agent 修改后有没有变好,需要另外保存一批固定的研究输入。每次修改 Agent 后,都用同一批课题重新运行,再由经过验证的 Judge 检查结果。

我们用出现率比较不同版本:

出现率 = 出现过某个问题的研究数 ÷ 这段时间运行的研究总数

假设用同一批研究课题分别运行 Agent v1 和 v2:

错误维度Agent v1Agent v2
受访者回答趋同40%15%
访谈浮于表面25%15%
报告加码证据10%10%
无中生有的引用5%15%

v2 改善了 Persona 差异和访谈深度,但虚构引用变多了。

这时不能把所有维度平均成一个总分,再宣布 v2 更好。

Agent 的一次改动可能修好一个问题,又让另一个问题变差。回归评测的意义,就是在上线前把这种变化暴露出来。

这两批数据的区别可以简单记成:

黄金测试集验证 Judge,固定输入比较 Agent。

数据评测对象解决的问题
Judge 黄金测试集LLM Judge它的判断是否接近专家
Agent 固定输入集Agent新版本是否比旧版本更好

第七步:自动监控旧问题,人继续发现新问题

产品上线以后,评测系统需要同时运行两条链路:

LLM 持续检查已知错误,人继续发现新的错误。

已有维度可以看出现率和变化趋势。某个维度连续上升时,再进入具体研究,检查 Judge 引用了哪些证据,以及问题最早发生在哪个 Agent 步骤。

但专家反馈入口不能关闭。

atypica 完成第一轮错误维度整理后,后续仍然出现了新的问题。其中一个叫“覆盖度虚标”:Agent 承诺研究八个平台,最后只分析了三个。

旧的 Judge 不会主动发现它,因为这个错误此前没有被定义过。

所以,Agent Evals 不是建立一张永久不变的指标表,而是一个持续循环:

真实运行暴露问题
→ 人把问题说清楚
→ 团队定义错误维度
→ Judge 持续检查
→ 产品变化后继续发现新问题

有些 Eval 问题,其实是产品问题

并不是每个错误维度都能靠修改提示词解决。

例如,用户没有把需求说清楚时,Agent 应该自己做出合理假设,还是停下来继续追问?

主动往下做,效率更高,但可能研究错范围;停下来追问,更谨慎,也可能让用户觉得流程太长。

如果团队没有先定义 Agent 应该多主动,就无法稳定判断某次行为到底是正确还是错误,Judge 也不可能得到一致的标准答案。

因此,Evals 有时发现的不是一个 bug,而是团队尚未做出的产品决定。

这也是 PM 应该参与 Agent Evals 的原因:评测不仅是在检查模型表现,也在迫使团队说清楚产品究竟应该怎样工作。

如果你想开始,只做一个维度就够了

你不需要一开始搭建完整的 Eval 平台。

先找一个真正影响用户信任的问题,例如“受访者回答趋同”,让它走完一遍最小闭环:

  • 从真实运行中找到具体案例;
  • 请专家写清问题和证据;
  • 定义什么算错误、什么不算;
  • 让 Judge 检查新的研究记录;
  • 用少量正反例验证 Judge;
  • 用同一批输入比较两个 Agent 版本。

如果只是想跑通 Demo,可以先使用示例数据。但如果要发现自己产品真正的问题,最终还是要回到真实运行。

先不要急着做综合总分、几十个维度或一套复杂看板。

先把一个问题说清楚,并确认人和 Judge 能够相对稳定地识别它。你就已经有了一个有用的 Agent Evals 起点。

最后

atypica 最初发现的两个问题,一个是八位受访者说得太像,另一个是报告中多出了一句没人说过的话。

在专家指出它们以前,我们甚至不知道应该把什么写进评测清单。

现在,这些问题有了固定的名字、清楚的边界和可以复核的证据。LLM 可以持续检查它们;Agent 每次修改后,也可以用同一批输入重新运行,看看问题是真的减少了,还是从一个环节转移到了另一个环节。

所以,Agent Evals 的起点不是先坐在会议室里列完所有指标。

更实际的起点是打开一份真实运行,找到那个让你不放心的地方,然后问:

它具体错在了哪里?
下一次,我们能不能更早发现它?

请检查下面这项 Agent 研究是否出现了指定错误。
错误维度:受访者回答趋同
定义:不同背景的受访者,在核心观点、理由、经历或表达方式上高度相似,没有体现背景差异。
判断要求:-  只检查这个错误,不评价其他方面。-  先描述观察到的现象,再给出判断。-  如果判断有问题,至少引用两位受访者的原文。-  结论相同但理由和经历不同,不算错误。-  证据不足时,输出“没发现问题”。-  不要创造新的错误维度。
请输出:1. 有问题 / 没发现问题2. 观察3. 原文证据4. 需要人工复核的地方
研究记录:[粘贴研究记录]