我们深入探讨了 Perplexity Copilot 背后的技术,该技术的灵感来自 FreshLLMS,它提出了搜索引擎增强 LLMS。
翻译自 Perplexity 的在线 LLM 如何受到 Freshllms 的启发 **by Janakiram MSV. 自 2023 年 12 月在 AWS Re:Invent 主题演讲中首次亮相以来,困惑一直备受关注。 我对这种方法很感兴趣,在Copilot推出时就注册了它。 在我可以使用的众多 AI 助手中,我发现 Perplexity 的 Copilot 是最实用和最强大的。 这是因为它结合了生成式 AI 和传统的搜索体验,为我提供了两全其美的优势。 我很快用它的搜索助手替换了默认搜索引擎。
困惑用户界面。
现在,让我们了解 Copilot for Perplexity AI 背后的技术。
目前,大型语言模型 (LLMS) 面临两大挑战:过时的数据和幻觉。 由于基础模型的截止日期基于其预训练数据集,因此它们无法使用最新数据进行响应。 即使是最强大的模型也倾向于编造答案,导致幻觉。 第一个问题,即无法访问最新数据,可以通过进行网络搜索并将输出提供给 LLM 以帮助它做出明智的决策来解决。 这可以通过集成 SERPAPI 等 API 来实现,SERPAPI 提供对 Google 搜索的编程访问。 每次发送提示时,LLM 都会确定是否需要访问网络,然后在需要时调用搜索 API。 然后,从多个 ** 中抓取的内容被聚合并作为上下文添加到提示中,这允许 LLM 以有用且有意义的方式做出响应。
与幻觉相关的第二个问题可以通过一种经过验证的技术来解决,即检索增强生成 (RAG)。 与以前动态调用搜索 API 的方法不同,RAG 期望从已知数据存储(如矢量数据库或外部维护的全文搜索索引)中检索数据。
需要注意的是,第一种方法最适合从公共领域的数据构建的上下文。 如果要构建基于组织内部数据中的内部和私有数据的问答或摘要的应用程序,则 RAG 是理想的解决方案。
Perplexity AI 在其 Copilot 中更多地依赖于基于搜索引擎的方法。 对于需要访问私有数据的用例,它提供了一个与 OpenAI 兼容的 API,可与 RAG 一起使用。
Perplexity AI 的灵感来自 FreshLLMS: Refresh with Search Engine Enhanced Large Language Models 中解释的机制,该模型提出了搜索引擎增强的 LLMS。 与 RAG 将上下文注入提示的方式类似,Freshllms 提倡从搜索中按发布日期排序的流行片段中注入提示的想法。 除了添加上下文之外,它还建议使用少量示例提示来教 LLM 如何根据一些示例做出响应。 FreshLLM将问题分为四类:
永不改变答案几乎永远不会改变。
变化缓慢答案可能会在几年内发生变化。
快速变化航班状态和天气等答案可能会多次更改。
错误的前提这个问题在事实上是不正确的,需要反驳。
本**的作者创建了一个包含600个问题的数据集,分为上述类别。 它被称为 FreshQA 基准,涉及测试模型准确回答问题的能力,通过对 50,000 多个判断的人工评估来评估事实的正确性。 评估使用两种模式:宽松模式,侧重于主要答案的正确性,严格模式,确保所有声明都是事实和最新的。 该研究强调了LLMS的局限性,特别是在快速变化的信息和虚假前提的情况下,并表明简单地增加模型大小并不能保证更好的性能。 结论是,FreshQA对LLMS提出了重大挑战,并表明需要进一步发展。
研究发现,预先训练的LLMS,如T5、PALM、GPT-35 和 GPT-4,在 FreshQA 数据集上有困难。 在严格模式下,响应精度为 08% 至 320% 和 0 在放松模式下8% 至 464%。对于像 GPT 3 这样的东西像 5 和 GPT-4 这样的模型,STRICT 评估要求所有信息都是事实和最新的,这导致准确性显着降低,主要是因为他们无法获得实时信息,导致答案过时或被拒绝。 Palm 在 STRICT 模式下的准确性也显着下降,这通常是由于响应中存在人为痕迹和幻觉。 相反,FLAN-PALM 和 CODEX 的表现更好,减少了幻觉,这要归功于它们更简洁、更直接的答案。
作者试验了一种名为Freshprompt的技术,该技术将来自搜索引擎的上下文相关和最新信息带入预先训练的LLM中。 给定一个问题,该方法使用问题查询搜索引擎来检索所有搜索结果,包括答案框、自然结果和其他有用的信息,例如知识图谱、来自众包问答平台的问题和答案,以及搜索用户也会问的相关问题。 然后,这些信息用于教 LLM 对检索到的证据进行推理,从而提高模型根据少量提示提供准确和实时响应的能力。
Perplexity AI 构建了两个 **LLM,PPLX-7B-Online 和 PPLX-70B-Online,它们可以从互联网上获取实时信息,从而提供最新和准确的响应。 这些模型利用开源模型、内部搜索技术和微调来有效地利用来自 Web 的信息。 它们旨在通过响应对时间敏感的查询来克服离线 LLMS 的局限性,并提供最相关和最有价值的信息。 这些模型可通过 API 公开访问,允许开发人员将该技术集成到他们的应用程序和应用程序中。
PPLX-7B-Online型号基于MISTRAL-7B,而PPLX-70B-Online建立在LLAMA2-70B基本型号之上。 它们经过微调,可以有效地利用网络中的片段来增强其响应。 根据 Perplexity 的说法,高质量、多样化和大规模的训练集通过内部数据承包商进行筛选,以确保在有用性、事实性和新鲜度方面的高性能。 此外,这些模型会定期进行微调,以不断提高性能。 这些努力使模型能够利用来自互联网的实时信息来提供准确、最新和上下文相关的响应。
除了关注响应的新鲜度和反复性外,Perplexity AI 还确保这些模型提供有用且事实准确的答案。
最近,Perplexity AI 宣布了一个 API 来访问其 ** 模型以及其他模型,例如 mixtral-8x7b-instruct、llama-2-70b-chat 和 codellama-34b-instruct。 Perplexity Copilot 的 Pro 订阅者将获得 5 美元的 API 使用积分。
在我的下一篇文章中,我将为您提供一个教程,向您展示如何基于 Perplexity AI 的 API 构建应用程序。 敬请关注。