RAG技术
什么是RAG
RAG(Retrieval Augmented Generation)是基于LLM的一种检索增强生成技术
具体流程
索引(Indexing)
加载(LOAD):首先我们需要加载数据。这是通过 DocumentLoaders 完成的。
分割(SPLIT):文本分割器将大文档分成更小的块。这对于索引数据和将其传递到模型都很有用,因为大块更难搜索并且不适合模型的有限上下文窗口。
存储(STORE):我们需要某个地方来存储和索引我们的分割,以便以后可以搜索它们。这通常是使用 VectorStore 和 Embeddings 模型来完成的。
检索和生成(Retrieval and generation)
检索(RETRIEVE):给定用户输入,使用检索器从存储中检索相关分割。
生成(GENERATE):ChatModel / LLM 使用包含问题和检索到的数据的提示生成答案
总结
具体RAG流程如下:
可以快速通过python框架Langchain实现