Skip to content

为什么不建议用知识时间和模型 ID 测幻觉

有些用户会问“你的知识截止到什么时候?”或“你是什么模型 ID?”来判断模型有没有幻觉。这个方法可以当作随手观察,但不适合作为准确测试。

结论先说

  • 问知识截止时间,模型回答不一定可靠,因为它未必能读取真实部署时的系统信息。
  • 问模型 ID,模型回答也不一定可靠,因为客户端、中转层、供应商和上游模型可能都有自己的命名。
  • 想判断模型质量,应该测真实任务完成质量,而不是只看模型自报的知识时间或身份。

为什么知识时间自报不准

“你的知识截止到什么时候?”看起来很直接,但它测到的经常不是实际能力。

常见原因:

  1. 模型不一定知道当前服务给它设置的真实知识截止时间。
  2. 客户端或系统提示词可能写了一个通用时间,但这不等于模型能回答所有该时间前的问题。
  3. 不同上游、不同版本、不同路由的知识范围可能不同。
  4. 有些模型会根据训练记忆、提示词或上下文猜一个看起来合理的日期。
  5. 即使知识截止时间较新,也不代表它对每个小众事件、冷门库、具体版本都知道。

所以,模型把知识时间说错,不一定等于这个模型所有回答都不可靠;模型把知识时间说对,也不代表它不会幻觉。

为什么模型 ID 自报不准

“你是什么模型?”这种问题也不适合做严格判断。

常见原因:

  • 模型未必能读取真实运行时的模型 ID。
  • 中转服务可能使用别名、分组或路由策略。
  • 客户端显示名、配置名和上游真实模型名可能不是同一个东西。
  • 一些模型会根据训练记忆或上下文猜一个看起来合理的名字。

因此,模型自报身份只能当参考,不能当最终凭据。

更推荐怎么测

更可靠的方式是用固定任务对比结果:

测试目标推荐做法看什么
知识可靠性准备 5 到 10 个有明确答案的问题,并附上标准答案是否能回答准确,是否会承认不确定
时效性选几个明确发生在某个时间点前后的事实是否混淆时间线,是否把旧信息当新信息
代码能力给一个小 bug 或小功能是否能读懂上下文、改对文件、通过测试
长上下文能力给一段较长需求和约束是否遵守关键约束,是否前后矛盾
稳定性同一个任务重复测几次答案质量是否大幅波动
配置是否生效看客户端配置和服务端日志/用量记录请求是否走目标线路和目标模型

判断幻觉时看这几点

更有价值的判断标准:

  • 是否在不知道时明确说“不确定”。
  • 是否能说明答案依据,而不是只给一个肯定结论。
  • 是否把不确定的内容说得像事实。
  • 是否编造不存在的配置项、命令、路径或版本号。
  • 是否在被提醒“只根据已知信息回答”后仍然自由发挥。

给用户的建议

不要用单个“知识截止时间”或“模型 ID 自报”来下结论。更好的做法是准备一组固定测试题,每次只改一个变量:同一组问题、同一个模型、同一条线路,然后对比答案是否稳定、是否有依据、是否能承认不知道。

不要把测试题设计成猜谜

如果问题本身含糊,或者没有明确标准答案,模型答错不一定是幻觉。先把问题和评分标准写清楚,再判断模型质量。