您的关注是对我最大的支持👇
知识生成方法的背后思想是,在要求LLM生成关于给定问题/提示的潜在有用信息之前,要求LLM生成最终回复。
例如,假设您想写一篇关于某种动物(比如Spirit bears)的小博客文章。在要求LLM写博客文章之前,您可以要求它生成一些关于Spirit bears的事实。这将帮助LLM编写更具信息性的博客文章。有两种简单的方法可以实现这一点。
单提示方法
第一种方法要求LLM使用单个提示生成知识,然后编写博客文章。
提示词:
生成4个关于Kermode熊的事实,然后使用这些事实来编写一篇关于这些信息的简短博客文章:
AI返回结果:
Kermode熊,也被称为灵熊,是美洲黑熊的一个稀有亚种,分布在加拿大不列颠哥伦比亚省的沿海地区。
Kermode熊是美洲黑熊的独特亚种,约有10%的种群具有白色的毛皮。
Kermode熊是不列颠哥伦比亚省的原住民的象征,被视为灵兽。
Kermode熊是生态系统中的重要组成部分,有助于传播种子和维护森林的平衡。
Kermode熊是受保护的物种,其种群受到省政府的密切监测。
Kermode熊是一种独特而特别的动物,分布在加拿大不列颠哥伦比亚省的沿海地区。约有10%的这个美洲黑熊亚种的种群拥有白色的毛皮,使它们成为一种稀有的景观。Kermode熊是不列颠哥伦比亚省原住民的象征,被视为灵兽。它是生态系统的重要组成部分,有助于传播种子和维护森林的平衡。Kermode熊是受保护的物种,其种群受到省政府的密切监测。我们有责任保护和保护这一美丽而威严的动物物种。
双提示方法
在这种方法中,我们首先提示LLM生成关于熊的事实:
生成10个关于Kermode熊的事实:
AI返回结果:
Kermode熊,也被称为Spirit Bear,是美洲黑熊的一个稀有亚种,分布在加拿大不列颠哥伦比亚省。
Kermode熊拥有独特的白色或奶油色的外皮,这是由一个隐性基因引起的。
对于不列颠哥伦比亚省的原住民来说,Kermode熊是希望和重生的象征。
Kermode熊是受保护物种,并被加拿大野生动植物濒危物种状况委员会列为特别关注物种。
然后,我们将这些信息输入到另一个提示中,以编写博客文章:
Kermode熊,也被称为Spirit Bear,是美洲黑熊的一个稀有亚种,分布在加拿大不列颠哥伦比亚省。
Kermode熊拥有独特的白色或奶油色的外皮,这是由一个隐性基因引起的。
对于不列颠哥伦比亚省的原住民来说,Kermode熊是希望和重生的象征。
Kermode熊是受保护物种,并被加拿大野生动植物濒危物种状况委员会列为特别关注物种。
使用上述事实来撰写一段关于Kermode熊的博客文章:
AI返回结果:
Kermode熊,也被称为Spirit Bear,是美洲黑熊的一个稀有亚种,分布在加拿大不列颠哥伦比亚省。这只独特的熊拥有白色或奶油色的外皮,这是由一个隐性基因引起的,对于不列颠哥伦比亚省的原住民来说,Kermode熊是希望和重生的象征。Kermode熊是受保护物种,并被加拿大野生动植物濒危物种状况委员会列为特别关注物种,这使其成为该地区生物多样性的重要组成部分。"
我建议使用这第二种方法,因为它可以更可靠地产生更长的内容。
另一个用例
知识生成方法实际上是为回答困难问题而引入的,这是完全不同的任务。考虑以下问题,GPT-3错误地回答了:
哪个国家更大,刚果还是南非?
AI返回结果:
南非比刚果大。
如果我们首先要求LLM生成关于刚果和南非的事实,然后再使用这些信息来正确回答问题。从理论上讲,这类似于CoT,因为我们实际上在获取LLM以相关事实的形式生成中间推理。
让我们从第一步开始,知识生成。我们可以要求LLM生成关于刚果和南非大小的事实:
生成有关南非和刚果大小的一些知识:
AI返回结果:
南非是世界上第25大的国家,面积为1,221,037平方公里(471,445平方英里)。另一方面,刚果是世界上第11大的国家,面积为2,344,858平方公里(905,567平方英里)。南非的面积几乎是刚果的一半,人口为5770万,而刚果的人口为8430万。南非是该地区人口最多的国家,而刚果是第二人口最多的国家。
接下来,让我们使用这些知识来正确回答问题。这是知识整合的步骤!
南非是世界上第25大的国家,面积为1,221,037平方公里(471,445平方英里)。另一方面,刚果是世界上第11大的国家,面积为2,344,858平方公里(905,567平方英里)。南非的面积几乎是刚果的一半,人口为5770万,而刚果的人口为8430万。南非是该地区人口最多的国家,而刚果是第二人口最多的国家。
哪个国家更大,刚果还是南非?
AI返回结果:
刚果比南非大。
更多技术讨论
尽管上面的用例与最初引入生成知识方法的方式相似,但并不完全相同。以下内容涵盖了引入该方法的更多技术背景。它遵循我们上面看到的两个中间步骤(知识生成和知识整合)的模式。
知识生成
在知识生成步骤中,要求LLM生成关于问题的一组事实。LLM以few-shot方式进行提示,如下所示。使用相同提示生成M个不同的完成(类似于自一致性方法)。
知识整合
接下来,我们生成“知识增强”问题,并用它们提示LLM以获取最终答案。理解这一点的最简单方法是通过一个示例进行说明。
假设我们要回答问题“大多数袋鼠有肢体”。假设在知识生成步骤中,我们生成了2个知识(M=2):
知识1:袋鼠是生活在澳大利亚的有袋类动物。
知识2:袋鼠是有袋类动物,有5肢体。
现在,我们将每个知识与问题连接起来,生成知识增强的问题:
知识增强问题1:大多数袋鼠有肢体。袋鼠是生活在澳大利亚的有袋类动物。
知识增强问题2:大多数袋鼠有肢体。袋鼠是有袋类动物,有5肢体。
然后,我们用这些知识增强的问题提示LLM,并获得最终的答案提议:
答案1:4
答案2:5
我们选择具有最高概率的答案作为最终答案。最高概率可以是答案标记的softmax概率,或答案标记的对数概率。
复述增强语言模型
复述增强方法与生成知识(基本上相同)类似。然而,它比生成知识的正式实现要简单得多。
这里的思想是few-shot提示LLM生成信息并在同一步骤中回答问题。与生成知识方法的主要区别在于,它在同一步骤中复述/生成知识并回答问题。
重申,这种方法使用多个(问题,复述,答案)示例提示模型,然后提出问题。作者指出,这种方法可以与自一致性或多个完成路径结合使用。
注意事项
生成知识在各种常识数据集上都表现出改进。
与所选答案对应的知识被称为所选知识。
在实践中,您可以将最频繁出现的答案视为最终答案。
明日预告
《从最少提示到最多提示-AI基础系列文章第31篇》