自然语言往往充满歧义和模糊性,模型在学习时可能会产生误解或错误理解一些概念,导致生成不准确的信息。为了尽量减少这些问题,研究人员和工程师会使用更大规模、更多样化和更准确的训练数据,调整模型架构,以及使用更先进的训练技术。但是自然语言本身就是复杂且充满挑战的,完全消除这些问题可能是非常困难的。所以,在使用大语言模型时,我们会发现它有时候会编造一些胡说八道的信息。
上述两个模型的回复信息都完全是虚假的,但模型会一本正经地给出回复,甚至介绍了实现原理。可见“胡说八道”是大语言模型的通病。甚至曾经有人在法庭文书中采用模型编造的虚假案例,造成了不良影响,当然这种状态正在持续改善。
为避免大语言模型回复虚假的信息,在与大语言模型交互时,如果你不确定某项事实或相关信息,可以要求模型先确认你所描述的是否是真实的,如果模型的知识中没有相关内容,它也不会继续编造回复。
我们看到这一次模型没有编造,然而,训练大语言模型的语料通常是有限的,而且这些语料从时效性来说,一般只包含数月前甚至一两年前的信息,同时模型一般也不会实时去收集互联网上的信息。所以模型不知道的事情,也未必就一定是不存在的,这件事情也许刚刚真实地发生了,只是模型还不知道。所以,当我们面临这种情况时,要小心谨慎地处理。你也可以在提示中明确要求模型在它不知道这件事情时坦诚地承认它不知道,然而在现阶段,不幸的是这似乎还有一定的难度,大多数模型会很好地否认相关信息,却不会轻易承认自己不知道,正如我们人类一样;同时幸运的是,已经有大语言模型坦率地承认自己认知有限。
总结一下,在与大语言模型交互时,如果不是在进行虚构写作,一旦涉及事实,特别是在我们对模型作出错误引导的情况下,我们特别需要小心求证,否则模型可能给我们的工作带来一场灾难。