以下是一些可以用于全面彻底搜索某方面客观存在的事实信息的工具和相关信息:
1.首先,LLM的一个很大的缺陷是它无法实时获取最新的信息。它能获取的信息就是预训练时输入的信息,这些信息有一个截断日期,这个日期之后的信息它一概不知(至少无法从模型内部获取到)。而搜索引擎可以获取到更加实时的信息。2.LLM有“幻觉”问题。在缺少相关事实信息的情况下,它就会编造。更严重的是,它很擅长编造,经常编得跟真的一样。而搜索引擎可以检索出相关的信息,这些信息可以作为LLM“推理”的依据。3.LLM无法给出准确的引用来源。LLM吸收了整个互联网的信息,当它回答问题的时候,你会感觉它的回复好像是参考了互联网上的某个地方的内容,但是它无法告诉你它具体引用或者改编的是哪里的内容,因为LLM已经把整个互联网的信息作了词元(token)级别的融合。LLM无法给出引用来源间接带来一个严重问题是,你无法去到信息源,去自己做验证。而搜索引擎可以给予准确的信息源。以上种种问题,决定了LLM本身作为一个知识问答工具是完全不合格的。而搜索引擎的问题则是体验上不够简便、不够直接。搜索引擎返回的信息是一堆链接和文本片段(很多时候还有广告干扰),这种呈现形式是比较原始的,还需要人去做进一步处理。给搜索引擎加上LLM,或许可以带来更优的信息检索体验。Perplexity[4]就是基于这个思路搞出来的产品,目前其估值已经超过5亿美元了,它的目标是要取代Google搜索。这个思路本身没有什么新鲜的,OpenAI早在21年就研究过了[5],后来也有研究者作了进一步的验证[3]。这个思路的技术实现也不复杂,贾扬清大佬用了不到500行Python代码就实现了一个基础版[6]。
Exploring Spaces of Systems“Can one find a system that does X?” Say a Turing machine that runs for a very long time before halting.Or a cellular automaton that grows,but only very slowly.Or,for that matter,a chemical with some particular property.“能找到一个能做某事的系统吗?”假设一台图灵机在停止之前运行了很长时间。或者是一个生长的元胞自动机,但生长速度非常缓慢。或者,就此而言,具有某种特定性质的化学物质。This is a somewhat different type of question than the ones we’ve been discussing so far.It’s not about taking a particular rule and seeing what its consequences are.It’s about identifying what rule might exist that has certain consequences.这是一个与我们迄今为止讨论的问题类型有所不同的问题。这并不是要采取特定的规则并看看其后果是什么。这是关于确定可能存在哪些规则会产生某些后果。And given some space of possible rules,one approach is exhaustive search.And in a sense this is ultimately the only “truly unbiased” approach,that will discover what’s out there to discover,even when one doesn’t expect it.Of course,even with exhaustive search,one still needs a way to determine whether a particular candidate system meets whatever criterion one has set up.But now this is the problem of predicting a computation—where the things we said above apply.考虑到一些可能的规则空间,一种方法是穷举搜索。从某种意义上说,这最终是唯一“真正公正”的方法,即使人们没有预料到,它也会发现有待发现的东西。当然,即使进行了详尽的搜索,人们仍然需要一种方法来确定特定的候选系统是否满足人们所建立的任何标准。但现在这是预测计算的问题——我们上面所说的事情都适用。
如果作为输入的一部分提供,模型可以利用外部信息源。这可以帮助模型生成更明智和最新的响应。例如,如果用户询问有关特定电影的问题,将有关电影的高质量信息(例如演员、导演等)添加到模型的输入中可能会很有用。嵌入可用于实现高效的知识检索,以便在运行时将相关信息动态添加到模型输入中。文本嵌入是一个向量,可以衡量文本字符串之间的相关性。相似或相关的字符串将比不相关的字符串靠得更近。这一事实以及快速向量搜索算法的存在意味着嵌入可用于实现高效的知识检索。特别是,一个文本语料库可以被分割成块,每个块都可以被嵌入和存储。然后,给定的查询可以被嵌入,可以进行向量搜索,以找到与查询最相关的语料库的嵌入文本块(即,在嵌入空间中最接近的)。可以在[OpenAI Cookbook](https://github.com/openai/openai-cookbook/blob/main/examples/vector_databases/Using_vector_databases_for_embeddings_search.ipynb)中找到示例实现。[有关如何使用知识检索来最小化模型编造](https://platform.openai.com/docs/guides/gpt-best-practices/tactic-instruct-the-model-to-use-retrieved-knowledge-to-answer-queries)错误事实的可能性的示例,请参阅策略“指示模型使用检索到的知识来回答查询”。