幻觉(Hallucination)
一句话定义:生成模型一本正经地编造出看似合理、实则没有依据的内容——不存在的引用、编造的工具名、凭空的数字。
1. 核心要点
1.1 根源:输出空间是无界的字符串
自回归生成模型一个字一个字地往外写。字符串极度灵活,可以是一段聊天、一段代码,也可以是幻觉、拒答——它能写出任意字符串,就必然有写出不存在的字符串的可能。
“Strings / generated text. Strings are flexible and can be anything: chat responses, code, hallucinations, refusals, or even type-safe structured values.” 译:字符串/生成的文本。字符串很灵活、可以是任何东西:聊天回复、代码、幻觉、拒答,甚至是类型安全的结构化值。
官方机器学习入门页还指出,训练目标本身也会助长它:RLHF 奖励”人更喜欢的表达”,而这可能同时奖励谄媚(Sycophancy)和语气笃定的幻觉(Confident-sounding Hallucinations)。
1.2 Jev 为什么”类型错误数学上不可能”
Jev 放弃了字符串生成:可能的输出与结构事先定死,模型只是在给定选项上给出一整套概率分布。
“Type-safe structured values. Possible outputs and structure are defined in advance. The model never makes type errors. All answers are accompanied with calibrated probabilities and confidence scores.” 译:类型安全的结构化值。可能的输出与结构事先定义好。模型从不产生类型错误。所有答案都附带校准过的概率与置信度分数。
官方把它列为”可以轻易验证的声明”之一:
“No type errors: This would be an easy thing to falsify with just a single counter-example, but it is mathematically impossible.” 译:不产生类型错误:这本是一个只要举出一个反例就能推翻的说法,但它在数学上不可能发生。
发布博客里说得更直接:
“While Jev gives up string generation, it’s optimized for structured outputs and can’t hallucinate.” 译:虽然 Jev 放弃了字符串生成,它是为结构化输出优化的,不会产生幻觉。
官方自己也说明了这句话的性质——所谓 0% 不是实测出来的:
“Our number is not empirical. Schema matching is guaranteed, thus we can confidently add 0% into the plots.” 译:我们那个数字不是经验实测的。结构匹配是有保证的,因此我们可以放心地把 0% 加进图里。
1.3 但”不会编格式 ≠ 不会答错”(关键区分)
上一条证明的是输出结构不会崩坏;它完全不保证内容是对的。Jev 仍然可能:
- 在你给的选项里挑错;
- 被材料里的坏话带偏(见 提示注入);
- 在没见过的场景里过度自信(第三方 jev-ood-calibration:公开基准集上概率还算准,换到一个它没见过的规则场景就明显过度自信)。
官方对置信度的原话同样适用于此:校准是在”一群预测”上度量的,它不保证单个答案是对的。
1.4 官方 9 类失败模式里与”错答”相关的几项
官方缺陷清单(Jaggedness)主动列出 jev-1.13 的 9 个弱点。它们全都不是”编格式”,而是”在不编格式的前提下答错”:
| # | 失败模式 | 表现 |
|---|---|---|
| 1 | 字面理解(Literal Reading) | 按你”写的字”回答,不是”你想的意思”;作用域词、否定、隐含条件都按字面读 |
| 5 | 材料太长且夹带无关内容 | 无关细节像干扰项,拉低准确率(即 上下文腐坏) |
| 6 | 对抗内容(Adversarial Content) | 材料里藏着的操控性文字能带偏答案 |
| 8 | 常识性结构不变式 | 别指望”问法变了答案自洽”:同一”是否退款”,是非题给 0.22、选择题给 0.01;问”要退款吗”与”要的不是退款吧”两个概率加起来 1.19 |
| 9 | 生成(Generation) | 它不做文本生成;硬逼它写会又慢又差 |
另有两项说明它连”算对”都不行——数学与数字(不是计算器,数数、比大小都不靠谱)、日期时间(日期当文字读,不做大小比较):要算的东西留给代码。
1.5 用 Jev 反过来抓幻觉
官方把”幻觉与类型安全”绑定,并认为后者是自动化的入场券:
“Hallucination and type-safety are intrinsically related, and we think the latter is table stakes for automation.” 译:幻觉与类型安全有着内在联系,我们认为后者是自动化的入场门槛。
于是”万能校验(Universal Verification)“成了官方五大用例之一:用 Jev 去检查别的 AI 的输入、输出、推理轨迹、工具调用,抓越狱、抓错误引用、抓幻觉,成本只有被检查的那次大模型调用的一小部分。具体模板如:
- 引用核查(Citation Check):一道选择题判定”引文所在上下文是否支持这个论断”,置信度可把引用标记为待人工核对;
- SDE 级联(SDE Cascade):一道 Noul——“抽出来的字段是否为源文本不支持、或根本不存在?“(原文
Is the extracted_field unsupported by, or absent from, the source text?)——直接给抽取结果打一个hallucinated的概率。
2. 与 Jev 的关系
- Jev 消除的是结构层面的幻觉(不存在于选项之外的输出),不是判断层面的错误;两者必须分开评估。
- 这正是”模型与框架分责”的价值:模型给概率,代码按阈值决定要不要自动执行、要不要复核。
- 对长材料,上下文腐坏 是准确率的现实威胁,官方对策是”先筛选再喂”。
- 独立评测提醒(评测污染 关注的那类基准问题):在自己数据上验证之前,不要相信任何”不幻觉”的口号。
3. 相关来源
- 官方博客
o04-blog-sysone.txt(Introducing System One Models & Jev)—— “can’t hallucinate”、“mathematically impossible”、“not empirical” 与幻觉/类型安全一节 - 官方文档
introduction__machine-learning-primer.md—— RLHF 奖励谄媚与”语气笃定的幻觉”、校准只对一群预测成立 - 官方文档
model-jaggedness__jev-1.13.md—— 9 类失败模式全文 - 官方文档
cookbooks__citation_check.md、cookbooks__sde_cascade.md—— 用 Jev 抓幻觉的模板 wiki/synthesis/Jev 知识.md第 1.6、6.1、6.3 节