以下是关于 RAG 基本架构的介绍:
RAG 是当今大多数现代人工智能应用程序的标准架构。以 Sana 的企业搜索用例为例,其工作原理如下:
RAG 的基本概念: RAG 是一种结合了检索和生成的技术,能让大模型在生成文本时利用额外的数据源,提高生成的质量和准确性。其基本流程为: 首先,给定用户输入(如问题或话题),RAG 从数据源中检索出相关文本片段(称为上下文)。 然后,将用户输入和检索到的上下文拼接成完整输入传递给大模型(如 GPT),输入通常包含提示,指导模型生成期望输出(如答案或摘要)。 最后,从大模型的输出中提取或格式化所需信息返回给用户。
设置基线:RAG是当今大多数现代人工智能应用程序的标准架构。让我们以Sana的企业搜索用例为例,了解它在幕后的工作原理。该过程始于应用程序加载和转换无结构文件(如PDF、幻灯片、文本文件)跨越企业数据孤岛,如Google Drive和Notion,转换为LLM可查询格式,通常通过像[Unstructured](https://menlovc.com/portfolio/unstructured/)*这样的数据预处理引擎进行。这些文件现在被"分块"成更小的文本块,以实现更精确的检索,并作为向量嵌入和存储在像[Pinecone](https://menlovc.com/portfolio/pinecone/)*这样的数据库中。当用户向AI应用程序提出问题时(例如,"总结我与公司X会议的所有笔记"),系统会检索语义上最相关的上下文块,并将其折叠到"元提示"中,与检索到的信息一起馈送给LLM。然后,LLM会从检索到的上下文中合成一个整洁的带有项目符号的答复返回给用户。当然,该图仅说明了一个带有一个LLM调用的单一检索步骤。在生产中,AI应用程序具有更复杂的应用程序流程,包含数十甚至数百个检索步骤。这些应用程序通常具有"提示链",其中一个检索步骤的输入馈送到下一步,并且不同类型的任务并行执行多个"提示链"。然后将结果综合在一起,以生成最终输出。[Eve](https://menlovc.com/portfolio/eve/)*法律研究的共同驾驭员,例如,可能会将针对《第七篇》的研究查询分解为专注于预定子主题的独立提示链,如雇主背景、就业历史、《第七篇》、相关案例法和原告案件支持证据。LLMs然后运行每个提示链,为每个生成中间输出,并综合各输出编写最终备忘录。
RAG是一种结合了检索和生成的技术,它可以让大模型在生成文本时利用额外的数据源,从而提高生成的质量和准确性。RAG的基本流程如下:首先,给定一个用户的输入,例如一个问题或一个话题,RAG会从一个数据源中检索出与之相关的文本片段,例如网页、文档或数据库记录。这些文本片段称为上下文(context)。然后,RAG会将用户的输入和检索到的上下文拼接成一个完整的输入,传递给一个大模型,例如GPT。这个输入通常会包含一些提示(prompt),指导模型如何生成期望的输出,例如一个答案或一个摘要。最后,RAG会从大模型的输出中提取或格式化所需的信息,返回给用户。
RAG是一种结合了检索和生成的技术,它可以让大模型在生成文本时利用额外的数据源,从而提高生成的质量和准确性。RAG的基本流程如下:首先,给定一个用户的输入,例如一个问题或一个话题,RAG会从一个数据源中检索出与之相关的文本片段,例如网页、文档或数据库记录。这些文本片段称为上下文(context)。然后,RAG会将用户的输入和检索到的上下文拼接成一个完整的输入,传递给一个大模型,例如GPT。这个输入通常会包含一些提示(prompt),指导模型如何生成期望的输出,例如一个答案或一个摘要。最后,RAG会从大模型的输出中提取或格式化所需的信息,返回给用户。