RAG 架構(gòu)圖解:從基礎(chǔ)到高級(jí)的七種模式
「RAG 技術(shù)通過(guò)在 AI 生成過(guò)程中引入外部知識(shí)檢索,從基礎(chǔ)的文檔查詢發(fā)展到多模態(tài)、Multi-Agent 體協(xié)同的智能架構(gòu),讓 AI 回答更準(zhǔn)確、更全面」
「核心組件」
- 嵌入模型: 將文本轉(zhuǎn)換為向量表示
- 生成模型: 負(fù)責(zé)最終的內(nèi)容生成
- 重排序模型: 優(yōu)化檢索結(jié)果的相關(guān)性
- 向量數(shù)據(jù)庫(kù): 存儲(chǔ)和檢索向量化的內(nèi)容
- 提示模板: 規(guī)范化的查詢處理模板
- AI Agent: 智能決策和任務(wù)協(xié)調(diào)
圖例 1
Naive RAG
Naive RAG(Retrieval-Augmented Generation)是最基礎(chǔ)的一種架構(gòu),用于結(jié)合檢索和生成來(lái)處理復(fù)雜的任務(wù),比如問(wèn)答或內(nèi)容生成。
其基本架構(gòu)如下:
1.檢索模塊(Retriever)
- 負(fù)責(zé)從知識(shí)庫(kù)(如文檔集合或數(shù)據(jù)庫(kù))中找到與輸入查詢相關(guān)的上下文。
- 通?;谙蛄繖z索技術(shù),使用嵌入模型(如 Sentence Transformers 或 OpenAI Embeddings)將查詢和文檔嵌入到向量空間中,計(jì)算相似性并返回最相關(guān)的文檔。
2.生成模塊(Generator)
- 接收用戶輸入和檢索到的上下文,生成最終的回答或內(nèi)容。
- 通常使用大型語(yǔ)言模型(如 GPT 或 T5)來(lái)生成自然語(yǔ)言輸出。
3.流程
- 用戶輸入一個(gè)查詢(如問(wèn)題)。
- 檢索模塊從知識(shí)庫(kù)中找出與查詢相關(guān)的文檔片段。
- 將檢索結(jié)果連同查詢一起傳遞給生成模塊。
- 生成模塊基于上下文生成回答或內(nèi)容。
特點(diǎn)
- 簡(jiǎn)單高效:由于模塊化設(shè)計(jì),容易實(shí)現(xiàn)和調(diào)試。
- 可擴(kuò)展性強(qiáng):檢索模塊和生成模塊可以獨(dú)立優(yōu)化或替換。
- 存在局限性:Naive RAG 通常假設(shè)檢索的上下文是完備的,這在知識(shí)庫(kù)更新不及時(shí)或檢索效果不佳時(shí)可能導(dǎo)致生成結(jié)果不準(zhǔn)確。
應(yīng)用場(chǎng)景
- 文檔問(wèn)答:基于企業(yè)內(nèi)部文檔或外部知識(shí)庫(kù)回答用戶提問(wèn)。
- 內(nèi)容生成:輔助生成新聞、摘要等需要結(jié)合外部信息的內(nèi)容。
- 技術(shù)支持:從常見(jiàn)問(wèn)題解答(FAQ)庫(kù)中檢索答案并生成自然語(yǔ)言響應(yīng)。
Naive RAG 是 RAG 系列架構(gòu)的起點(diǎn),更復(fù)雜的變種(如使用多輪交互或強(qiáng)化學(xué)習(xí)優(yōu)化)通常在此基礎(chǔ)上擴(kuò)展。
Retrieve-and-rerank
Retrieve-and-Rerank 是在基礎(chǔ) RAG 架構(gòu)上的增強(qiáng)版本,通過(guò)引入重排序(Reranking)步驟,進(jìn)一步優(yōu)化檢索結(jié)果的相關(guān)性。這種方法非常適合在需要高精度答案的任務(wù)中使用。
架構(gòu)增強(qiáng)點(diǎn):重排序步驟
在基礎(chǔ) RAG 的檢索階段(Retriever)之后,加入一個(gè)額外的重排序模塊,以更好地篩選檢索結(jié)果,提高傳遞給生成模塊(Generator)上下文的質(zhì)量。
核心流程
- 初步檢索(Initial Retrieval)
- 檢索模塊從知識(shí)庫(kù)中找到一批初步相關(guān)的文檔(例如,前 50 個(gè)文檔)。
- 使用向量檢索(如基于余弦相似度或歐幾里得距離)快速生成候選文檔集合。
- 重排序(Rerank)
- 傳統(tǒng)方法:BM25、TF-IDF 等。
- 深度學(xué)習(xí)模型:基于 BERT 的交互式檢索模型(如 Cross-Encoder)。
- 混合方法:將檢索分?jǐn)?shù)與語(yǔ)義模型得分結(jié)合。
- 將初步檢索到的候選文檔集合交給一個(gè)專門(mén)的重排序模型。
- 重排序模型可以是:
- 輸出一個(gè)按相關(guān)性排序的高質(zhì)量文檔列表。
- 生成模塊(Generator)
- 僅使用重排序后的前 N 個(gè)文檔作為上下文,生成回答或內(nèi)容。
- 高相關(guān)性的上下文能顯著提升生成質(zhì)量。
Retrieve-and-Rerank 優(yōu)勢(shì)
- 提升檢索精度
- 初步檢索模塊通??焖俚致裕赡芤胼^多噪聲;重排序能更精準(zhǔn)地選擇最相關(guān)的文檔。
- 減少生成錯(cuò)誤
- 提供高相關(guān)性上下文,避免生成模塊在不相關(guān)或錯(cuò)誤信息基礎(chǔ)上生成答案。
- 模塊靈活性
- 重排序模塊可以獨(dú)立優(yōu)化,例如微調(diào) BERT 模型,加入領(lǐng)域知識(shí)等。
- 適配長(zhǎng)尾查詢
- 對(duì)于少見(jiàn)或復(fù)雜的查詢,重排序能進(jìn)一步優(yōu)化初步檢索效果。
應(yīng)用場(chǎng)景
- 問(wèn)答系統(tǒng)
- 在文檔問(wèn)答中,Retrieve-and-Rerank 常用于優(yōu)化檢索階段,確保提供與問(wèn)題高度相關(guān)的上下文。
- 推薦系統(tǒng)
- 在搜索和推薦場(chǎng)景中,重排序步驟可以顯著提高最終推薦內(nèi)容的相關(guān)性和用戶滿意度。
- 技術(shù)支持
- 從技術(shù)文檔或 FAQ 中篩選最相關(guān)的答案,減少生成模塊的錯(cuò)誤回答率。
示例技術(shù)棧
- 檢索模塊:FAISS、ElasticSearch、BM25 等。
- 重排序模塊:BERT、MiniLM、ColBERT(使用 Cross-Encoder)等。
- 生成模塊:GPT、T5、LLaMA 等。
通過(guò)這種方式,Retrieve-and-Rerank 在原始 RAG 架構(gòu)的基礎(chǔ)上增強(qiáng)了檢索的相關(guān)性,顯著提升了最終生成的質(zhì)量。
Multimodal RAG
與基礎(chǔ) RAG 類似,Multimodal RAG 也由檢索模塊(Retriever)和生成模塊(Generator)組成,但增強(qiáng)了對(duì)多模態(tài)數(shù)據(jù)的支持:
- 多模態(tài)檢索模塊
- 能處理和索引不同模態(tài)的數(shù)據(jù),如圖像、視頻或音頻的特征。
- 通常利用預(yù)訓(xùn)練模型將非文本模態(tài)(如圖像)轉(zhuǎn)換為嵌入向量,存儲(chǔ)在統(tǒng)一的向量數(shù)據(jù)庫(kù)中。
- 檢索時(shí),將用戶輸入(文本或其他模態(tài))編碼為嵌入向量,與數(shù)據(jù)庫(kù)中的嵌入進(jìn)行匹配。
- 多模態(tài)生成模塊
- 接受多模態(tài)的上下文,例如文本和圖像的組合。
- 利用專門(mén)設(shè)計(jì)的多模態(tài)生成模型(如 Flamingo、BLIP-2)生成回答或內(nèi)容。
- 能夠根據(jù)上下文模態(tài)靈活調(diào)整生成策略。
- 流程
- 用戶輸入可以是文本(如問(wèn)題)或其他模態(tài)(如圖像)。
- 多模態(tài)檢索模塊找到與輸入相關(guān)的多模態(tài)上下文。
- 將檢索結(jié)果傳遞給生成模塊,結(jié)合上下文生成多模態(tài)回答或內(nèi)容。
關(guān)鍵技術(shù)點(diǎn)
- 模態(tài)對(duì)齊
- 在多模態(tài)數(shù)據(jù)之間建立共同表示,例如將圖像特征和文本特征映射到同一個(gè)向量空間。
- 常用技術(shù):CLIP、Align-before-Fuse、BLIP 等。
- 模態(tài)融合
- 將檢索到的不同模態(tài)的上下文信息進(jìn)行有效融合,為生成模塊提供統(tǒng)一的輸入。
- 方式:早期融合(將模態(tài)特征直接拼接)、晚期融合(分別處理后再結(jié)合)。
- 生成模型支持
- 多模態(tài)生成需要具備同時(shí)處理文本和非文本模態(tài)的能力。
- 模型:Flamingo、BLIP-2、Visual ChatGPT 等。
Multimodal RAG 的優(yōu)勢(shì)
- 支持多種輸入類型
- 不僅可以回答文本問(wèn)題,還能處理圖像相關(guān)的查詢,如“這張圖片中的物體是什么?”。
- 豐富的信息來(lái)源
- 檢索和利用跨模態(tài)的信息,比如從圖片和相關(guān)描述中生成答案。
- 增強(qiáng)的上下文理解
- 將文本、圖像等模態(tài)上下文結(jié)合起來(lái),生成更精確、更有深度的內(nèi)容。
- 廣泛的應(yīng)用場(chǎng)景
- 可用于醫(yī)學(xué)影像分析、教育、內(nèi)容創(chuàng)作等需要多模態(tài)數(shù)據(jù)結(jié)合的任務(wù)。
應(yīng)用場(chǎng)景
- 多模態(tài)問(wèn)答
- 結(jié)合文本和圖像回答問(wèn)題,例如“這張 X 光片有什么異常?”
- 圖像描述生成
- 為圖像生成自然語(yǔ)言描述,適用于教育或輔助工具。
- 跨模態(tài)搜索
- 用戶輸入文本,系統(tǒng)從圖像庫(kù)中檢索相關(guān)圖像(或反之)。
- 醫(yī)療診斷
- 結(jié)合醫(yī)學(xué)文本和影像數(shù)據(jù),生成診斷報(bào)告或建議。
- 內(nèi)容生成
- 從視頻或音頻中提取關(guān)鍵信息并生成摘要或分析報(bào)告。
技術(shù)實(shí)現(xiàn)示例
- 檢索模塊
- 圖像:使用 CLIP、DINO 等模型提取圖像特征。
- 文本:使用 Sentence Transformers 或 OpenAI Embeddings。
- 生成模塊
- 使用多模態(tài)生成模型,如 Flamingo、BLIP-2、Visual ChatGPT 等。
- 數(shù)據(jù)庫(kù)
- 存儲(chǔ)跨模態(tài)嵌入的向量數(shù)據(jù)庫(kù),如 FAISS、Weaviate。
通過(guò) Multimodal RAG,可以實(shí)現(xiàn)復(fù)雜的跨模態(tài)任務(wù),為各種應(yīng)用提供更強(qiáng)大的解決方案。
Graph RAG
Graph RAG是對(duì)基礎(chǔ) RAG 架構(gòu)的一種擴(kuò)展,通過(guò)引入圖數(shù)據(jù)庫(kù) 來(lái)增強(qiáng)知識(shí)點(diǎn)之間的關(guān)聯(lián)和文檔間關(guān)系的理解。這種架構(gòu)不僅提高了檢索的精準(zhǔn)性,還能更好地利用知識(shí)的上下文和結(jié)構(gòu)化信息。
Graph RAG 架構(gòu)
Graph RAG 的核心思想是在知識(shí)檢索過(guò)程中利用圖數(shù)據(jù)庫(kù)(如 Neo4j、TigerGraph)來(lái)存儲(chǔ)和管理數(shù)據(jù)。通過(guò)將文檔、實(shí)體和它們之間的關(guān)系建模為圖結(jié)構(gòu),可以更高效地處理復(fù)雜的知識(shí)連接和語(yǔ)義關(guān)系。
核心模塊
- 圖數(shù)據(jù)庫(kù)(Graph Database)
- 圖數(shù)據(jù)庫(kù)存儲(chǔ)文檔及其結(jié)構(gòu)化關(guān)系(節(jié)點(diǎn)和邊),提供上下文的關(guān)系視圖。
- 節(jié)點(diǎn):可以表示實(shí)體(如人名、地名)、文檔或知識(shí)片段。
- 邊:表示節(jié)點(diǎn)之間的關(guān)系(如“引用”“從屬”“因果”等)。
- 檢索模塊(Graph-based Retriever)
- 查詢不僅基于文檔內(nèi)容,還利用圖的結(jié)構(gòu)進(jìn)行關(guān)系推理。
- 可通過(guò)圖查詢語(yǔ)言(如 Cypher)實(shí)現(xiàn)復(fù)雜的知識(shí)檢索。
- 生成模塊(Generator)
- 將檢索到的多層次上下文(文檔和其相關(guān)節(jié)點(diǎn))輸入到生成模型。
- 生成模型結(jié)合圖關(guān)系信息,生成更精準(zhǔn)、更上下文相關(guān)的輸出。
Graph RAG 工作流程
- 知識(shí)建模
- 文檔:“愛(ài)因斯坦提出了相對(duì)論?!?/li>
- 節(jié)點(diǎn):?
?愛(ài)因斯坦?
?、??相對(duì)論?
? - 邊:?
?提出?
? - 從知識(shí)庫(kù)或文檔集合中提取實(shí)體、關(guān)系和文本內(nèi)容,構(gòu)建圖數(shù)據(jù)庫(kù)。
- 示例:
- 用戶查詢
- 用戶輸入問(wèn)題,如“相對(duì)論的提出者是誰(shuí)?”。
- 將查詢轉(zhuǎn)換為圖查詢(例如,搜索與“相對(duì)論”相關(guān)的節(jié)點(diǎn)和邊)。
- 圖查詢
- 檢索與用戶問(wèn)題相關(guān)的子圖,例如“相對(duì)論”節(jié)點(diǎn)及其直接連接的節(jié)點(diǎn)和關(guān)系。
- 上下文擴(kuò)展
- 將檢索到的子圖中的信息轉(zhuǎn)化為文本上下文,并傳遞給生成模塊。
- 內(nèi)容生成
- 生成模塊結(jié)合用戶問(wèn)題和擴(kuò)展上下文,生成自然語(yǔ)言回答。
Graph RAG 的優(yōu)勢(shì)
- 知識(shí)點(diǎn)間關(guān)系的深度挖掘
- 通過(guò)圖結(jié)構(gòu),捕捉文檔或知識(shí)點(diǎn)之間的復(fù)雜關(guān)系(如層次關(guān)系、因果關(guān)系等),提高檢索結(jié)果的質(zhì)量。
- 上下文的精準(zhǔn)擴(kuò)展
- 在檢索階段,圖數(shù)據(jù)庫(kù)可以幫助找到更相關(guān)的上下文,而不僅僅依賴向量相似性。
- 增強(qiáng)推理能力
- 利用圖的結(jié)構(gòu)化數(shù)據(jù),可以進(jìn)行關(guān)系推理,例如多跳檢索(從一個(gè)節(jié)點(diǎn)找到間接相關(guān)的節(jié)點(diǎn))。
- 動(dòng)態(tài)更新與維護(hù)
- 圖數(shù)據(jù)庫(kù)支持動(dòng)態(tài)更新,易于在知識(shí)庫(kù)擴(kuò)展時(shí)維護(hù)新數(shù)據(jù)的關(guān)系。
Graph RAG 應(yīng)用場(chǎng)景
- 復(fù)雜問(wèn)答
- 需要跨文檔或跨實(shí)體推理的問(wèn)答任務(wù),如法律問(wèn)答或科技文獻(xiàn)分析。
- 知識(shí)管理
- 在企業(yè)或科研機(jī)構(gòu)中,利用圖數(shù)據(jù)庫(kù)管理和查詢大量關(guān)聯(lián)文檔或研究成果。
- 內(nèi)容推薦
- 基于用戶查詢,利用圖關(guān)系推薦相關(guān)內(nèi)容或擴(kuò)展知識(shí)。
- 因果推理
- 在科學(xué)或工程領(lǐng)域,回答因果關(guān)系復(fù)雜的問(wèn)題(如“某實(shí)驗(yàn)的結(jié)果受到哪些因素的影響?”)。
示例技術(shù)棧
- 圖數(shù)據(jù)庫(kù)
- Neo4j、TigerGraph、ArangoDB 等。
- 關(guān)系提取
- 使用 NLP 模型提取實(shí)體和關(guān)系(如 spaCy、OpenIE、REBEL)。
- 生成模型
- GPT 系列、T5、BART 等。
- 檢索與查詢
- 使用 Cypher 查詢語(yǔ)言或?qū)iT(mén)的圖查詢 API。
Graph RAG 將知識(shí)管理和自然語(yǔ)言生成相結(jié)合,利用圖數(shù)據(jù)庫(kù)強(qiáng)大的關(guān)系建模能力,大幅提升了文檔間關(guān)系的理解和復(fù)雜問(wèn)題的解決能力。
Hybrid RAG
Hybrid RAG 結(jié)合了多種技術(shù)的優(yōu)勢(shì),包含圖結(jié)構(gòu)和傳統(tǒng)檢索方法
Graph RAG 是對(duì)基礎(chǔ) RAG 架構(gòu)的一種擴(kuò)展,通過(guò)引入圖數(shù)據(jù)庫(kù) 來(lái)增強(qiáng)知識(shí)點(diǎn)之間的關(guān)聯(lián)和文檔間關(guān)系的理解。這種架構(gòu)不僅提高了檢索的精準(zhǔn)性,還能更好地利用知識(shí)的上下文和結(jié)構(gòu)化信息。
Graph RAG 架構(gòu)
Graph RAG 的核心思想是在知識(shí)檢索過(guò)程中利用圖數(shù)據(jù)庫(kù)(如 Neo4j、TigerGraph)來(lái)存儲(chǔ)和管理數(shù)據(jù)。通過(guò)將文檔、實(shí)體和它們之間的關(guān)系建模為圖結(jié)構(gòu),可以更高效地處理復(fù)雜的知識(shí)連接和語(yǔ)義關(guān)系。
核心模塊
- 圖數(shù)據(jù)庫(kù)(Graph Database)
- 圖數(shù)據(jù)庫(kù)存儲(chǔ)文檔及其結(jié)構(gòu)化關(guān)系(節(jié)點(diǎn)和邊),提供上下文的關(guān)系視圖。
- 節(jié)點(diǎn):可以表示實(shí)體(如人名、地名)、文檔或知識(shí)片段。
- 邊:表示節(jié)點(diǎn)之間的關(guān)系(如“引用”“從屬”“因果”等)。
- 檢索模塊(Graph-based Retriever)
- 查詢不僅基于文檔內(nèi)容,還利用圖的結(jié)構(gòu)進(jìn)行關(guān)系推理。
- 可通過(guò)圖查詢語(yǔ)言(如 Cypher)實(shí)現(xiàn)復(fù)雜的知識(shí)檢索。
- 生成模塊(Generator)
- 將檢索到的多層次上下文(文檔和其相關(guān)節(jié)點(diǎn))輸入到生成模型。
- 生成模型結(jié)合圖關(guān)系信息,生成更精準(zhǔn)、更上下文相關(guān)的輸出。
Graph RAG 工作流程
- 知識(shí)建模
- 文檔:“愛(ài)因斯坦提出了相對(duì)論。”
- 節(jié)點(diǎn):?
?愛(ài)因斯坦?
??、??相對(duì)論?
? - 邊:?
?提出?
? - 從知識(shí)庫(kù)或文檔集合中提取實(shí)體、關(guān)系和文本內(nèi)容,構(gòu)建圖數(shù)據(jù)庫(kù)。
- 示例:
- 用戶查詢
- 用戶輸入問(wèn)題,如“相對(duì)論的提出者是誰(shuí)?”。
- 將查詢轉(zhuǎn)換為圖查詢(例如,搜索與“相對(duì)論”相關(guān)的節(jié)點(diǎn)和邊)。
- 圖查詢
- 檢索與用戶問(wèn)題相關(guān)的子圖,例如“相對(duì)論”節(jié)點(diǎn)及其直接連接的節(jié)點(diǎn)和關(guān)系。
- 上下文擴(kuò)展
- 將檢索到的子圖中的信息轉(zhuǎn)化為文本上下文,并傳遞給生成模塊。
- 內(nèi)容生成
- 生成模塊結(jié)合用戶問(wèn)題和擴(kuò)展上下文,生成自然語(yǔ)言回答。
Graph RAG 的優(yōu)勢(shì)
- 知識(shí)點(diǎn)間關(guān)系的深度挖掘
- 通過(guò)圖結(jié)構(gòu),捕捉文檔或知識(shí)點(diǎn)之間的復(fù)雜關(guān)系(如層次關(guān)系、因果關(guān)系等),提高檢索結(jié)果的質(zhì)量。
- 上下文的精準(zhǔn)擴(kuò)展
- 在檢索階段,圖數(shù)據(jù)庫(kù)可以幫助找到更相關(guān)的上下文,而不僅僅依賴向量相似性。
- 增強(qiáng)推理能力
- 利用圖的結(jié)構(gòu)化數(shù)據(jù),可以進(jìn)行關(guān)系推理,例如多跳檢索(從一個(gè)節(jié)點(diǎn)找到間接相關(guān)的節(jié)點(diǎn))。
- 動(dòng)態(tài)更新與維護(hù)
- 圖數(shù)據(jù)庫(kù)支持動(dòng)態(tài)更新,易于在知識(shí)庫(kù)擴(kuò)展時(shí)維護(hù)新數(shù)據(jù)的關(guān)系。
Graph RAG 應(yīng)用場(chǎng)景
- 復(fù)雜問(wèn)答
- 需要跨文檔或跨實(shí)體推理的問(wèn)答任務(wù),如法律問(wèn)答或科技文獻(xiàn)分析。
- 知識(shí)管理
- 在企業(yè)或科研機(jī)構(gòu)中,利用圖數(shù)據(jù)庫(kù)管理和查詢大量關(guān)聯(lián)文檔或研究成果。
- 內(nèi)容推薦
- 基于用戶查詢,利用圖關(guān)系推薦相關(guān)內(nèi)容或擴(kuò)展知識(shí)。
- 因果推理
- 在科學(xué)或工程領(lǐng)域,回答因果關(guān)系復(fù)雜的問(wèn)題(如“某實(shí)驗(yàn)的結(jié)果受到哪些因素的影響?”)。
示例技術(shù)棧
- 圖數(shù)據(jù)庫(kù)
- Neo4j、TigerGraph、ArangoDB 等。
- 關(guān)系提取
- 使用 NLP 模型提取實(shí)體和關(guān)系(如 spaCy、OpenIE、REBEL)。
- 生成模型
- GPT 系列、T5、BART 等。
- 檢索與查詢
- 使用 Cypher 查詢語(yǔ)言或?qū)iT(mén)的圖查詢 API。
Graph RAG 將知識(shí)管理和自然語(yǔ)言生成相結(jié)合,利用圖數(shù)據(jù)庫(kù)強(qiáng)大的關(guān)系建模能力,大幅提升了文檔間關(guān)系的理解和復(fù)雜問(wèn)題的解決能力。
Agentic RAG Router
Agentic RAG Router 使用 AI Agent 來(lái)路由和處理查詢,可以選擇最適合的處理路徑
Agentic RAG Router 是一種更高級(jí)的 Retrieval-Augmented Generation (RAG) 架構(gòu),通過(guò)引入AI Agent 作為路由器,根據(jù)用戶的查詢動(dòng)態(tài)選擇最合適的處理路徑或模塊。它在復(fù)雜、多任務(wù)場(chǎng)景中具有明顯優(yōu)勢(shì),因?yàn)椴煌樵兛赡苄枰煌臄?shù)據(jù)源或處理邏輯。
Agentic RAG Router 架構(gòu)
Agentic RAG 的核心是一個(gè)智能路由器(Agent),負(fù)責(zé)理解用戶查詢并決定如何處理。整個(gè)系統(tǒng)通常由以下模塊組成:
- AI Router (Agent)
- 使用大型語(yǔ)言模型(如 GPT 或其他 LLM)作為路由器,分析查詢的意圖和類型。
- 基于查詢選擇最合適的檢索模塊和生成模塊。
- 可以動(dòng)態(tài)配置執(zhí)行邏輯,比如調(diào)用特定知識(shí)庫(kù)或外部 API。
- 多檢索模塊
- 文本檢索:文檔、FAQ。
- 圖像檢索:視覺(jué)數(shù)據(jù)庫(kù)。
- 圖數(shù)據(jù)庫(kù):復(fù)雜關(guān)系推理。
- 不同的檢索模塊可以處理不同的數(shù)據(jù)源或模態(tài):
- Router 決定調(diào)用哪種檢索模塊或多模塊組合。
- 多生成模塊
- 自然語(yǔ)言生成(文本)。
- 圖像生成或描述(視覺(jué))。
- 表格生成或數(shù)據(jù)分析(結(jié)構(gòu)化數(shù)據(jù))。
- 針對(duì)不同任務(wù)優(yōu)化的生成模塊:
- 執(zhí)行路徑
- 直接回答(無(wú)需檢索)。
- 檢索后回答(RAG 流程)。
- 調(diào)用外部工具或 API(如計(jì)算器或代碼執(zhí)行器)。
- Router 分析用戶查詢,可能的處理路徑包括:
工作流程
- 用戶查詢
- “這張圖片中的內(nèi)容是什么?”
- “幫我從文檔中找出關(guān)于技術(shù)趨勢(shì)的摘要。”
- 用戶輸入問(wèn)題或任務(wù)描述,例如:
- 路由決策
- 任務(wù)分類:?jiǎn)柎稹⑸?、推理等?/li>
- 數(shù)據(jù)模態(tài)識(shí)別:文本、圖像、表格等。
- 優(yōu)化目標(biāo):速度優(yōu)先或準(zhǔn)確性優(yōu)先。
- Router 分析查詢的意圖和模態(tài),可能包含:
- 模塊選擇
- 文本問(wèn)答:調(diào)用文本檢索模塊 + GPT 生成模塊。
- 圖像問(wèn)答:調(diào)用圖像嵌入模型(如 CLIP) + 圖像描述生成模塊。
- 多模態(tài)組合:同時(shí)調(diào)用文本和圖像檢索模塊,結(jié)合生成。
- 根據(jù)分析結(jié)果,Router 調(diào)用最適合的檢索模塊和生成模塊。
- 示例:
- 內(nèi)容生成
- 通過(guò)生成模塊輸出結(jié)果,可能是單一模態(tài)的回答,也可能是多模態(tài)結(jié)合的內(nèi)容。
Agentic RAG 的優(yōu)勢(shì)
- 動(dòng)態(tài)任務(wù)適配
- Router 能根據(jù)不同任務(wù)動(dòng)態(tài)調(diào)整執(zhí)行路徑,無(wú)需固定流程,適合復(fù)雜場(chǎng)景。
- 多模態(tài)支持
- 通過(guò)靈活調(diào)用不同模態(tài)的模塊(文本、圖像、視頻等),支持更廣泛的應(yīng)用場(chǎng)景。
- 智能資源管理
- 僅在需要時(shí)調(diào)用復(fù)雜模塊,優(yōu)化資源利用效率(如避免在簡(jiǎn)單問(wèn)題上使用冗余計(jì)算)。
- 增強(qiáng)用戶體驗(yàn)
- 通過(guò)選擇最適合的路徑,提供高質(zhì)量、個(gè)性化的回答。
應(yīng)用場(chǎng)景
- 多任務(wù)問(wèn)答系統(tǒng)
- 支持用戶提出多模態(tài)、多領(lǐng)域問(wèn)題,并動(dòng)態(tài)調(diào)整處理邏輯。
- 企業(yè)知識(shí)管理
- 在大規(guī)模知識(shí)庫(kù)中,針對(duì)不同問(wèn)題選擇最相關(guān)的數(shù)據(jù)源和處理方法。
- 醫(yī)療輔助
- 動(dòng)態(tài)調(diào)用醫(yī)學(xué)圖像分析模塊、文獻(xiàn)檢索模塊或診斷生成模塊。
- 教育與內(nèi)容生成
- 根據(jù)學(xué)生的問(wèn)題選擇合適的資料來(lái)源并生成解釋。
- 自動(dòng)化工作流
- 處理復(fù)雜查詢時(shí),調(diào)用外部工具(如計(jì)算器、翻譯器、編程執(zhí)行器)完成多步驟任務(wù)。
技術(shù)實(shí)現(xiàn)示例
- Router
- 使用大型語(yǔ)言模型(如 OpenAI GPT 系列、Claude、LLaMA)微調(diào),理解用戶意圖。
- 檢索模塊
- 文本:FAISS、ElasticSearch。
- 圖像:CLIP、DINO。
- 圖數(shù)據(jù)庫(kù):Neo4j。
- 生成模塊
- 文本生成:T5、BART、GPT。
- 圖像生成:DALLE-2、Stable Diffusion。
- 數(shù)據(jù)生成:Pandas、NumPy。
- 執(zhí)行引擎
- 調(diào)用工具鏈(如 LangChain)動(dòng)態(tài)組織不同模塊的調(diào)用。
Agentic RAG Router 的靈活性使其成為解決復(fù)雜問(wèn)題的強(qiáng)大工具。通過(guò)將智能路由與強(qiáng)大的檢索和生成能力相結(jié)合,它可以顯著提升處理多模態(tài)、多任務(wù)場(chǎng)景的效率和準(zhǔn)確性。
Agentic RAG Multi-Agent
Agentic RAG Multi-Agent 使用多個(gè)專門(mén)的 AI Agent 協(xié)同工作,可以調(diào)用不同的工具(如向量搜索、網(wǎng)頁(yè)搜索、Slack、Gmail 等)
Agentic RAG Multi-Agent 是 Retrieval-Augmented Generation (RAG) 的進(jìn)一步進(jìn)化版本,它引入多個(gè)專門(mén)的 AI Agent,每個(gè) Agent 負(fù)責(zé)不同的任務(wù)或工具調(diào)用。通過(guò)這些 Agent 的協(xié)同工作,系統(tǒng)能夠在復(fù)雜、多源數(shù)據(jù)環(huán)境中靈活高效地處理任務(wù),比如同時(shí)檢索向量數(shù)據(jù)庫(kù)、執(zhí)行網(wǎng)頁(yè)搜索、查詢第三方 API,甚至與工具(如 Slack、Gmail)交互。
Agentic RAG Multi-Agent 架構(gòu)
Agentic RAG Multi-Agent 的核心特性是多個(gè)專用 Agent 的協(xié)作,每個(gè) Agent 可以完成特定任務(wù)或調(diào)用特定工具。整個(gè)系統(tǒng)由以下組件組成:
- Central Orchestrator (主控 Agent)
- 作為中央調(diào)度器,負(fù)責(zé)解析用戶意圖、分派任務(wù),并整合多個(gè) Agent 的輸出。
- 主控 Agent 可以使用 LLM(如 GPT-4)來(lái)執(zhí)行復(fù)雜的任務(wù)規(guī)劃和路由。
- 專用 AI Agent
- 向量搜索 Agent:從向量數(shù)據(jù)庫(kù)中檢索相關(guān)內(nèi)容。
- 網(wǎng)頁(yè)搜索 Agent:實(shí)時(shí)從互聯(lián)網(wǎng)獲取最新信息。
- 通信工具 Agent:與 Slack、Gmail 等進(jìn)行交互。
- 數(shù)據(jù)處理 Agent:處理結(jié)構(gòu)化數(shù)據(jù)(如表格或數(shù)據(jù)庫(kù)查詢)。
- 模態(tài)特定 Agent:如圖像分析、語(yǔ)音識(shí)別等。
- 每個(gè) Agent 負(fù)責(zé)特定類型的任務(wù)或工具,例如:
- 工具與數(shù)據(jù)接口
- 每個(gè) Agent 可調(diào)用專用工具或 API,比如向量檢索工具(FAISS)、Web 搜索引擎(如 Google API)、生產(chǎn)力工具(Slack、Notion)。
- 輸出整合模塊
- 主控 Agent 收集和整合來(lái)自各 Agent 的結(jié)果,將最終答案以自然語(yǔ)言或多模態(tài)形式輸出給用戶。
工作流程
- 用戶輸入
- “幫我分析這份文件的摘要,并用郵件發(fā)送給團(tuán)隊(duì)?!?/li>
- “找出過(guò)去一周相關(guān)的行業(yè)趨勢(shì),并通知 Slack 頻道。”
- 用戶提出一個(gè)復(fù)雜的請(qǐng)求,例如:
- 任務(wù)分解
- 提取摘要:調(diào)用向量檢索 Agent 或文本處理工具。
- 搜索趨勢(shì):調(diào)用網(wǎng)頁(yè)搜索 Agent。
- 發(fā)送通知:調(diào)用 Slack 或 Gmail Agent。
- 主控 Agent 將任務(wù)分解為子任務(wù):
- 任務(wù)分配
- 主控 Agent 將子任務(wù)分派給相關(guān)專用 Agent,按優(yōu)先級(jí)并行處理。
- 執(zhí)行任務(wù)
- 專用 Agent 調(diào)用相應(yīng)工具或接口完成任務(wù),返回結(jié)果。
- 整合與反饋
- 主控 Agent 收集所有 Agent 的結(jié)果,整合為用戶可以理解的最終輸出。
Agentic RAG Multi-Agent 的優(yōu)勢(shì)
- 模塊化設(shè)計(jì)
- 各 Agent 獨(dú)立工作,便于擴(kuò)展和優(yōu)化。例如,可新增圖像處理 Agent 或語(yǔ)音處理 Agent。
- 多任務(wù)并行處理
- 多個(gè) Agent 可并行運(yùn)行,大幅提高復(fù)雜任務(wù)的處理效率。
- 工具支持廣泛
- 能調(diào)用多種工具和 API,覆蓋從數(shù)據(jù)檢索到內(nèi)容生成、任務(wù)執(zhí)行等全流程。
- 動(dòng)態(tài)任務(wù)適配
- 主控 Agent 可根據(jù)任務(wù)動(dòng)態(tài)調(diào)整執(zhí)行路徑和 Agent 調(diào)用順序。
- 復(fù)雜任務(wù)自動(dòng)化
- 能自動(dòng)化執(zhí)行跨工具、跨數(shù)據(jù)源的多步驟任務(wù),例如從檢索數(shù)據(jù)到生成報(bào)告并發(fā)送通知。
應(yīng)用場(chǎng)景
- 企業(yè)知識(shí)管理
- 檢索企業(yè)文檔、結(jié)合網(wǎng)頁(yè)搜索實(shí)時(shí)更新信息,并將結(jié)果發(fā)送至團(tuán)隊(duì)協(xié)作工具(如 Slack)。
- 內(nèi)容創(chuàng)作與分發(fā)
- 從向量數(shù)據(jù)庫(kù)中檢索素材,生成文章或報(bào)告,并分發(fā)至郵箱或內(nèi)容管理系統(tǒng)。
- 多模態(tài)問(wèn)答
- 同時(shí)調(diào)用文本、圖像和視頻分析 Agent,生成多模態(tài)回答。
- 實(shí)時(shí)數(shù)據(jù)分析
- 從網(wǎng)頁(yè)和內(nèi)部數(shù)據(jù)庫(kù)中收集實(shí)時(shí)數(shù)據(jù),生成趨勢(shì)分析報(bào)告。
- 個(gè)人助理
- 處理日常任務(wù),如查看郵件、管理日程、設(shè)置提醒等。
- 復(fù)雜客戶支持
- 檢索 FAQ、結(jié)合網(wǎng)頁(yè)搜索和實(shí)時(shí)工具調(diào)用,為用戶提供高質(zhì)量的支持。
示例技術(shù)棧
- 主控 Agent
- 使用 GPT 系列或其他大型語(yǔ)言模型。
- 專用 Agent
- 向量檢索:FAISS、Weaviate。
- 網(wǎng)頁(yè)搜索:Google API、Bing Search API。
- 通信工具:Slack API、Gmail API。
- 數(shù)據(jù)分析:Pandas、NumPy。
- 協(xié)作框架
- LangChain:支持 Agent 編排。
- Tools SDK:實(shí)現(xiàn)與外部工具的接口。
示例場(chǎng)景:行業(yè)趨勢(shì)通知
用戶輸入: “幫我從數(shù)據(jù)庫(kù)和互聯(lián)網(wǎng)找出過(guò)去一周的行業(yè)趨勢(shì),并用摘要發(fā)郵件給團(tuán)隊(duì)?!?/p>
系統(tǒng)執(zhí)行:
- 主控 Agent 分解任務(wù):
- 檢索數(shù)據(jù)庫(kù):調(diào)用向量搜索 Agent。
- 搜索互聯(lián)網(wǎng):調(diào)用網(wǎng)頁(yè)搜索 Agent。
- 生成摘要:調(diào)用文本生成 Agent。
- 發(fā)送郵件:調(diào)用 Gmail Agent。
- 各 Agent 獨(dú)立工作并返回結(jié)果:
- 向量搜索 Agent:檢索內(nèi)部數(shù)據(jù)庫(kù)的行業(yè)報(bào)告。
- 網(wǎng)頁(yè)搜索 Agent:爬取過(guò)去一周的行業(yè)新聞。
- 文本生成 Agent:將數(shù)據(jù)整合為摘要。
- Gmail Agent:將摘要發(fā)送給團(tuán)隊(duì)。
- 主控 Agent 整合結(jié)果并完成任務(wù)。
通過(guò) Agentic RAG Multi-Agent,復(fù)雜任務(wù)可以自動(dòng)化完成,顯著提升效率和用戶體驗(yàn),尤其在需要跨模態(tài)、跨工具協(xié)作的場(chǎng)景中表現(xiàn)尤為出色。
本文轉(zhuǎn)載自 ??AI大模型世界??,作者: rocLv
