一句简单的约束,可能比换模型更直接地改变输出质量。
发生了什么
Hacker News 上出现一条讨论:在提示词中加入“Do not guess”(不要猜测)这类明确指令后,模型编造答案的比例从 71% 降到了 20%。帖子本身只有 20 分,规模不大,但它触及了一个开发者每天都在面对的问题——模型在不确定时倾向于给出看似合理的答案,而不是承认不知道。
需要说明的是,这类实验通常依赖特定的评测集和判定标准,71% 和 20% 这两个数字反映的是该实验条件下的结果,不能直接推广到所有模型和任务。但方向性结论值得注意:提示词中的“允许不知道”与“禁止猜测”,对输出行为有可测量的影响。
为什么重要
幻觉一直是 LLM 落地的主要障碍。过去两年,行业把大量精力放在模型侧——更大的参数、更多的对齐数据、检索增强。但这条讨论提醒我们,幻觉有一部分来自交互契约:当提示词默认要求“给出答案”,模型就会把“不知道”排除在可选输出之外。
这和评测体系也有关。多数基准测试只奖励正确答案,不奖励“拒答”或“表达不确定”。模型因此学会了猜测。换句话说,幻觉不完全是能力缺陷,也是激励结构塑造出的行为。
影响与看点
对开发者而言,最直接的动作是把“不确定时明确说明”写进系统提示词,并在需要事实准确性的场景中,要求模型区分“已知”和“推测”。这不能替代检索和验证,但成本极低,值得作为默认配置。
对产品团队而言,需要重新思考交互设计:用户是否接受“我不知道”这个答案?如果产品指标只考核完成率,模型就会继续猜。把“诚实拒答”纳入评估,才可能真正降低幻觉。
对评测机构而言,这是一个信号:基准测试应当包含“该拒答时是否拒答”的维度,否则测出的只是模型的猜测能力。
独立判断:提示词能压缩幻觉,但不能消除它。真正可靠的系统仍然需要检索、工具调用和外部验证;把“不要猜”当作唯一解药,只是把问题从模型转移到了提示词工程。



