
揭示gpt幻觉:使用单一提示识别虚假信息的有效技术与策略
将像 GPT 这样的 大语言模型 应用到现实世界中时,最大的挑战之一就是人们常常称之为 幻觉 的问题。这是指这些模型开始编造简单错误的事实。棘手的部分在于,你可能甚至不会注意到,因为文本在其上下文中听起来非常自然。
这对于需要事实检查或某种形式的后期验证才能信任 大语言模型 响应的关键任务或商业应用尤其困难。有许多技术可以减少幻觉——例如 基础——但这个问题从未完全消失,防止它的努力可能是巨大的。
在这篇博客文章中,我们将探索一种简单的提示技术,可以在同一提示中指示可能的幻觉,而不必询问后续问题,例如“你确定吗?”。
但首先,让我们看看如何首先触发这些幻觉。以下是一些想法:
-
询问明显虚构的实体或事件,这些实体或事件听起来合理但并不存在
示例: “你能告诉我关于 量子物理 中的 Malkovian Paradox 的事情吗?” -
请求关于有限信息的真实事件/人物的具体细节
示例: “爱因斯坦在 1921 年 3 月 15 日吃了什么早餐?” -
询问著名事实的 引用 或参考
大语言模型 可能会生成可信但虚假的 引用。 -
请求不常见指标的 统计数据
示例: “1923 年乌兰巴托的平均降雨量是多少?” -
询问关于真实但高度专业化主题的技术细节
示例: “解释一下 1937 年用于金门大桥的油漆的具体化学成分。” -
请求关于次要历史人物的 传记细节
大语言模型 可能会用合理但错误的信息填补空白。
在这篇博客文章中,我们将看两个例子:
-
对网站进行分类(包括一个虚构网站)
我们不是让模型决定哪些网站是真实的,哪些不是,而是将问题框定为暗示所有网站都存在,看看 大语言模型 是否会自己注意到问题,让它专注于 分类 而不是事实查找。 -
关于爱因斯坦的虚构事实的问题
我们将其框定为给定的上下文是真实的(尽管它纯粹是虚构的),看看 大语言模型 的反应。
让我们开始吧。
测试 #1: 描述网站列表(包含一个虚构网站)
尝试 #1
制作一个包含这些网站的 网址、地区、位置和目的 的表格:
网址 | 地区 | 位置 | 目的 |
---|---|---|---|
mongobo.com | |||
wikipedia.com | |||
semrush.com |
正如你所预料的,她编造了一个非常合理的网站描述,而她显然并不知道这个网站(尽管它可能存在)。
我们多次运行这个测试(与所有其他示例一样),大多数时候模型坚持认为确实存在这样一个网站(mongobo.com)。
尝试 #2
现在我们添加一个魔法短语,要求他在和之间的部分简单分享他的想法,而不对他进行任何关于思考的指示(与思维链技术相对)。
制作一个表格,列出这些网站和会议的 URL、地区、位置和目的。
URL | 地区 | 位置 | 目的 |
---|---|---|---|
mongobo.com | |||
wikipedia.com | |||
semrush.com | |||
mongobo.com |
在 <thoughts> </thoughts> 中分享你的想法
现在听起来不那么确定,使用“潜在的”这样的词来描述商业软件或服务。这更好,但在完全自动化的方式下仍然很难弄清楚。
在其他对话中,它使用“可能”或类似的词:
尝试 #3: 魔法词“置信度”
现在我们只需要求大语言模型告诉我们它对所提供信息的置信度,即当它编造信息时,它应该给我们一个提示,或者更得体地说,当它“不确定”时。
制作一个包含网址、地区、位置、目的和置信度(高/中/低)的表格,列出以下网站:
- mongobo.com
- wikipedia.com
- semrush.com
瞧,正如你所看到的,它“承认”对于我们提供的虚构网站的事实感到不确定,给出了低的置信度评分,而所有其他现有网站都得到了高分。
再一次,我们进行了数十次这个实验,它总是给出虚假事实的置信度评分为低或中,但从未给出高分。
— -
所以我们尝试了两种技术:分享思维过程和给事实一个置信度评分。
其他例子怎么样?
现在让我们看看是否可以将同样的方法应用于一个关于GPT肯定不知道的事实的简单问题。
爱因斯坦在1921年3月15日早餐时吃了什么面包?只需回答,然后输出一个包含事实和置信度的表格。
正如你所预料的,它开始讲述爱因斯坦可能吃过的美味早餐,但GPT肯定对此有确凿的了解。
仅仅事实表似乎没有网站列表那么具有启发性。
让我们尝试将其与分享想法技术结合起来:
现在我们将要求GPT分享它的想法,然后输出一个事实表:
爱因斯坦在1921年3月15日早餐吃了什么?
在<thoughts>
</thoughts>
中写下你的想法。
然后输出一个包含你回答中所有事实的表格,以及每个事实的置信度评分(高/中/低)。不要包含不在你回答中的事实或用户未请求的事实。
它现在显示了一个事实表,包含至少一个低或中置信度评分。
在这里,它结合了高和中,关于爱因斯坦的具体早餐的事实被标记为“高”,因为文献中对此并没有很好的记录。
我们已经测试了数十次,所有事实均未显示高分。
— -
让我们尝试一个GPT肯定知道答案的问题:爱因斯坦的出生日期。 它确实知道:
正如预期,表中的所有事实均标记为“高”。
总结
我们在更多示例上测试了这些技术(这里未展示所有示例以保持帖子简短)。虽然永远没有100%的确定性,但这些小调整——比如要求置信度分数或添加想法的提示——至少可以鼓励大语言模型显示它是否认为自己的陈述在同一提示下是可靠的。
这些信息可以用来过滤不真实的陈述或可能破坏您应用程序的事实,并使其受到进一步审查和调查,并尝试使用强大的技术,例如基于事实的基础,来防止这些情况的发生。