RAG 架构是什么?
提出于 2026年10月16日
标签:
#rag
RAG 架构(Retrieval-Augmented Generation,检索增强生成)是一种让大模型「先查资料再回答」的系统结构:用户提问后,系统先从外部知识库里检索出最相关的几段内容,把它们和问题一起放进提示词,再让模型基于这些内容生成答案。
这个名字来自 Meta AI 的 Patrick Lewis 等人 2020 年的论文。它要解决的问题很实际:模型的知识停在训练截止那一天,也不知道你公司内部的文档;重新训练太贵,而把资料检索出来塞进上下文,成本低得多,答案还能附上出处。
一个典型 RAG 系统的组成
RAG 通常分成离线和在线两段。
离线是准备知识库:把文档解析成纯文本,切成几百字一段的 chunk,用 embedding 模型把每段变成向量,存进向量数据库,常常再建一份关键词索引。
在线是回答问题:把用户的问题也转成向量,在库里找最相似的若干段;很多系统会同时跑关键词检索,再用 reranker 模型对候选重新排序;最后把排名靠前的几段拼进提示词,让模型生成答案并标注来源。
问题通常出在检索,而不是生成
RAG 答错,多数时候是因为该找的那段没找到:切块切断了上下文,表格和扫描件没解析好,或者用户的说法和文档的用词对不上,纯向量检索就漏掉了。所以调 RAG 时,先单独评估检索的召回率,比换一个更强的生成模型更有用。
我的看法是,长上下文模型和 agent 让「把整份文档直接塞进去」变得可行,但 RAG 并没有过时。文档量一大、需要权限隔离或者要给出可核对的出处,检索这一层仍然省钱也省事。变化在于检索越来越多地由 agent 作为工具主动调用,而不是固定地每问必查。