RAG 是什么
RAG 即Retrieval-Augmented Generation,检索增强生成,是一种 结合“检索”与“生成”的大语言模型应用架构:
-
Retrieval(检索):从一个文档库中检索与用户问题相关的内容
-
Augmented Generation(增强生成):将检索到的内容与用户问题一起输入给大语言模型(如 GPT),生成更准确、上下文丰富的回答
向量数据库是干什么的
向量数据库(如 FAISS、Milvus、Pinecone、Weaviate)是专门设计用来 存储和高效搜索高维向量表示 的数据库。你可以把它理解为:
-
文本(或图像、音频) → 通过嵌入模型(embedding model) → 转换为向量
-
向量 → 存入向量数据库
-
用户问题 → 同样转成向量 → 用于在向量数据库中做相似度检索(通常是余弦相似度或欧氏距离)
RAG 和向量数据库的关系
RAG 的 “R”(检索)部分,常常是通过向量数据库来实现的。
具体流程如下:
-
知识预处理:
-
文档被切片(chunking),每一小段文本都被转换为向量(embedding);
-
向量存入向量数据库中。
用户提问时:
-
问题也被转换为向量;
-
向量数据库进行相似向量检索,返回相关文档片段。
结果增强生成:
-
将检索结果 + 用户问题 → 送入大语言模型生成回答。
图示理解(简化版)

举个例子
你构建一个“公司内部文档问答系统”:
-
你用向量数据库(如 Milvus)保存所有员工手册、财报、技术文档的 embedding;
-
用户问:“我们2023年的销售目标是多少?”
-
系统会把这个问题嵌入为向量,然后在向量数据库中找出相似的文档段落;
-
再由大模型(如 GPT-4)生成结合上下文的回答。
总结
|
|
|
---|---|---|
|
|
|
|
|
|
|
|
|