Back to Insights人工智慧應用

領導者的混合RAG指南:突破背後的技術細節

Mercury Technology Solutions2025年7月11日6 min read

在我們上次的討論中,我們介紹了「混合RAG」作為一種突破性解決方案,顯著提升了AI知識庫的準確性和速度。但究竟在這背後發生了什麼?為什麼這種「混合」方法比之前的技術更有效?

本文件提供了混合RAG的詳細但易於理解的技術解釋。理解這些機制對任何在AI實施上做出戰略決策的領導者來說都是至關重要的。

核心問題:單一搜尋方法的限制

傳統的檢索增強生成(RAG)系統依賴單一方法來尋找資訊。這通常是兩種方法之一:

  1. 關鍵字搜尋(或詞彙搜尋):這是經典的搜尋方法。它擅長於找到包含您查詢中的「確切詞語」或短語的文件。它精確但「愚蠢」——它不理解上下文、同義詞或詞語的潛在含義。就像一位細心但非常字面化的圖書館助理。向量搜尋(或語意搜尋):這是現代的「智能」方法。它使用AI模型將您的查詢和文件轉換為稱為「嵌入」(或「密集向量」)的數值表示。然後,它找到在「語意上」相似的文件,這意味著它們在概念上相關,即使它們不共享完全相同的關鍵字。就像一位博學但有時不精確的圖書館助理,他理解概念。
  2. 關鍵問題是,「兩種方法都不完美」。當特定的稀有關鍵字(如產品名稱、錯誤代碼或人名)至關重要時,向量搜尋可能無法檢索結果。相反,當用戶的查詢使用不同的詞語來描述相同的概念時,關鍵字搜尋則完全失敗。解決方案:混合RAG——結合兩者的優勢混合RAG(在RAG上下文中通常稱為「混合搜尋」)是一種先進的架構,通過同時運行「關鍵字搜尋和向量搜尋」,並智能地融合結果來解決此問題。它結合了關鍵字搜尋的字面精確性和向量搜尋的概念理解,創造出一個比任何單一方法都更準確和更具韌性的系統。技術架構:兩個引擎,一個結果

混合RAG系統建立在兩個平行檢索引擎上,這些引擎最終進入融合和生成階段。引擎1:稀疏向量檢索器(關鍵字搜尋)這個引擎負責詞彙匹配。它不使用AI嵌入。相反,它將文件表示為「稀疏向量」。

什麼是稀疏向量?

想像一個字典,包含您整個文件集合中的每個獨特單詞。單個文件的稀疏向量是一個列表,記錄哪些單詞出現在其中。由於任何給定的文件僅包含所有可能單詞的一小部分,因此這個列表大多是「稀疏」或空的,只有幾個活躍條目。算法(BM25):評分這些關鍵字匹配的黃金標準是一個名為「Okapi BM25」的算法。這是一個TF-IDF(詞頻-逆文檔頻率)的複雜版本。簡單來說,BM25對於以下情況的文件給予高分:查詢的關鍵字在該文件中「頻繁」出現。

這些相同的關鍵字在整個文件集合中相對「稀有」。

結果:

稀疏向量檢索器生成一個與用戶查詢強烈「詞彙」匹配的文件排名列表。

引擎2:密集向量檢索器(語意搜尋)

This engine is responsible for lexical matching. It doesn't use AI embeddings. Instead, it represents documents as "sparse vectors."

  • What is a Sparse Vector? Imagine a dictionary containing every unique word in your entire document collection. A sparse vector for a single document is a list that notes which of those words appear in it. Since any given document only contains a tiny fraction of all possible words, this list is mostly "sparse" or empty, with just a few active entries.
  • The Algorithm (BM25): The gold standard for scoring these keyword matches is an algorithm called Okapi BM25. It's a sophisticated version of TF-IDF (Term Frequency-Inverse Document Frequency). In simple terms, BM25 gives a high score to documents where:
  • The query's keywords appear frequently within that document.
  • Those same keywords are relatively rare across the entire collection of documents.
  • The Result: The sparse vector retriever produces a ranked list of documents that are a strong lexical match for the user's query.

Engine 2: The Dense Vector Retriever (Semantic Search)

這個引擎負責概念匹配。它使用強大的人工智慧模型(如 BERT 或 OpenAI 的嵌入模型)來創建"密集向量。"

  • 什麼是密集向量?密集向量是文本意義的緊湊數值表示。與稀疏向量不同,這個列表中的每個數字都有一個值,其位置捕捉了文本語義意義的細微方面。
  • 過程:您的查詢被轉換為密集向量,系統在專門的向量資料庫(如 Weaviate、Pinecone 或 Milvus)中搜尋與此高維空間中向量 "最接近" 的文件片段。這種 "接近度" 是使用距離度量(如餘弦相似度)來衡量的。
  • 結果:密集向量檢索器生成一個排名文件的列表,這些文件對用戶的查詢具有強烈的語義概念匹配。

融合階段:創建單一的統一排名

現在系統有兩個不同的結果排名列表——一個基於關鍵字,另一個基於意義。混合 RAG 的魔力在於它如何智能地合併這兩者。最先進且有效的方法是互惠排名融合(RRF)

  • RRF 的運作方式:RRF 是一種優雅的算法,通過專注於文件的排名而不是其原始分數來合併列表。每個文件根據其在每個出現列表中的排名的倒數給予新的分數。公式通常為:分數 = 1 / (k + 排名),其中 k 是一個常數(通常為 60),用於調節高排名項目的影響。
  • 優勢:這種方法非常有效,因為它自然地給予在兩個列表中排名較高的文件更多的權重。一個在關鍵字匹配上強(在 BM25 列表中排名高)且在語義匹配上也強(在向量搜尋列表中排名高)的文件將獲得非常高的融合分數。它還避免了試圖標準化 BM25 和向量搜尋之間完全不同的計分系統的複雜且常常不可靠的過程。

最後一步:生成

一旦 RRF 算法生成一個單一的、智能重新排名的最相關文件片段列表,這些片段將與原始用戶查詢一起傳遞給大型語言模型(例如 GPT-4、Claude)。LLM 現在擁有一組豐富、高度相關且精確選擇的上下文,以合成出最終的準確答案。

結論:混合方法的戰略價值

通過實施混合 RAG 架構,您正在建立一個克服任何單一檢索方法固有弱點的系統。它確保您能夠在關鍵字至關重要時找到針對性的資訊,同時在用戶查詢較為抽象時理解更廣泛的上下文和意義。

這種雙引擎方法大幅減少了錯誤。它為 LLM 提供了更豐富、更可靠的資訊集,顯著提高了最終生成答案的質量,並為您的組織在數據驅動的世界中提供了強大的競爭優勢。

Originally published on MTS Blog & Research