大型語言模型(LLM)在特定領域中,缺乏穩定可靠的方式來判斷資訊的真實性。如果沒有可靠的外部上下文,模型就必須「猜測」,這可能導致產生幻覺(hallucinations)。檢索增強生成(RAG)透過在推論時提供相關資訊,幫助 LLM 建立基礎。目前兩種常見的方法是向量 RAG 和 LLM 知識圖譜。本指南將協助您決定哪種架構最符合您的業務需求。

什麼是知識圖譜,它如何為 LLM 建立基礎?LLM 知識圖譜為不同資訊片段之間提供了結構化的連結。節點代表實體,而邊緣則代表關係。例如,知識圖譜可以幫助零售模型定義哪些顧客在商店購買了哪些產品。知識圖譜通常將事實表示為三元組:主詞、謂詞和受詞。

舉例來說,在「顧客 A 擁有產品 B」這句話中,主詞是「顧客 A」,謂詞是「擁有」,受詞是「產品 B」。LLM 可以將這些結構化事實作為上下文進行檢索,這將其回應建立在知識庫的資訊基礎上,使其無需產生幻覺或僅依賴其預訓練知識。

實體、關係與語義。您可以將實體想像成資料中的名詞,而關係則是連接它們的動詞。知識圖譜的語義有助於 LLM 理解這些資訊片段如何互動。基於知識圖譜的 RAG(通常稱為 GraphRAG)可以使用實體提取和圖遍歷,來連接多個來源的資訊。這使得 LLM 在需要理解多個關係才能回答問題時,能夠進行多跳檢索或推理。

為何建立基礎能減少幻覺?建立基礎讓 LLM 能夠穩定存取您指定為權威的外部資訊。如果模型可以存取更大的知識庫,它產生幻覺的可能性就越小。然而,其回應的準確性僅取決於底層資料的準確性。若要確保模型回應的可靠性,您需要驗證檢索過程和圖譜的建構。

標準的向量 RAG 會將與使用者自然語言查詢語義相似的文字區塊匯集起來。當模型回答問題所需的資訊僅包含在少數幾個相關段落中時,這種方法效果很好。但如果模型需要連接多個文件中的資訊,它可能就需要額外的檢索或推理機制。

值得注意的是,向量 RAG 通常包含多個向量。最常見的場景是雙向量搜尋:一個密集向量用於尋找語義相似的部分,另一個稀疏向量則用於尋找特定的關鍵字。

基於知識圖譜的 RAG 系統明確地表示實體及其關係。圖遍歷可以跨來源檢索相關事實,並支援多跳問題。使用者可以在這些系統中檢查圖路徑,這提供了有用的可追溯性,尤其是在醫療保健和法律等高度受監管的行業中。

決策框架。如果模型只需要根據一個段落或少量語義相關段落中的資訊來回答問題,向量 RAG 就能發揮作用。使用者通常會發現它比知識圖譜更容易建構和維護。但如果您需要模型回答涉及多個來源或文件資訊的複雜問題,知識圖譜可能就會很有用。它支援多跳推理,讓模型能夠充分利用您的知識庫。

知識圖譜還可以減少傳遞給 LLM 的不相關上下文數量。這使得模型能夠有效率地使用 token,但知識圖譜的建構和維護總體成本通常高於標準向量 RAG。

向量搜尋(左)與知識圖譜檢索(右)的示意圖。在向量搜尋中,查詢會被嵌入,然後檢索相似的記錄。圖譜檢索則透過特定的查詢語言來獲取資料節點和連接。

LLM 如何從非結構化文字建構知識圖譜?知識圖譜的建構方式,會根據您的團隊是使用預定義的綱要(schema),還是允許結構更動態地演變而有所不同。

實體與關係提取(三元組)。傳統的知識圖譜建構通常需要硬編碼的提取規則或專門的機器學習模型。對話式 LLM 使得將原始文字轉換為事實網路的流程自動化變得更加容易。LLM 知識圖譜建構器會掃描文本片段,尋找主詞、謂詞、受詞三元組,然後將這些結構化關係儲存在圖譜中。

這個過程將鬆散的句子轉換為可驗證事實的正式列表。模型隨後可以使用定義的路徑,進行多跳推理,應用於複雜的場景,例如詐欺偵測、推薦系統和生物醫學科學發現。

在特定行業領域工作時,請讓 LLM 了解您領域的本體論(ontology,即現有物件類型、其屬性、規則和約束的藍圖),以及分類法(taxonomy,一種更簡單的父子或廣義-狹義分類系統)。

實體解析與綱要。實體解析和綱要透過合併重複項,減少資料中的混亂和不準確性。例如,模型會辨識出地址列表中「United States of America」和「U.S.」是同一個國家。如果沒有實體解析,資料品質會因碎片化和重複而下降。這是一個關鍵過程,但無法完全自動化或無監督。LLM 在進行實體去重時,需要標準化和驗證以避免錯誤。

基於綱要與無綱要建構。您應該根據您的領域、資料品質和查詢可預測性來選擇綱要建構方式。基於綱要的建構會預先定義圖譜使用的資訊,這提高了資料的一致性,並使結果資料更容易驗證和查詢。無綱要方法則優先考慮探索性,允許模型在實體之間建立新的連結。這種彈性對於需要進行探索性研究或在快速變化的領域(例如產品或研發情報)中導航的模型非常有用。但它也可能引入更大的不一致性和驗證要求。

在 n8n 中建構知識圖譜和向量 RAG 工作流程。n8n 是一個開源、AI 原生的自動化平台,工程團隊可以用它來建立和維護生產級的 RAG 系統。您可以清楚地看到資料擷取階段以及每個檢索和處理步驟,這使得系統更容易除錯和維護。透過 n8n,您可以全面掌握資料擷取和檢索階段,這簡化了系統的除錯和維護。

透過全面可見性建構和維護生產級 RAG 管道。向量儲存節點、實體提取和 AI Agent 協調,實現 HybridRAG,所有功能都在一個畫布上。

結合內建向量儲存節點的向量 RAG。n8n 透過專用節點支援向量儲存整合,包括 Pinecone、Qdrant 和 Supabase。Default Data Loader 協調分塊處理,而連接的嵌入模型節點(例如 Embeddings OpenAI 或 Embeddings Google Gemini)則生成用於儲存的向量。

當您需要將語義相似的文字直接拉入工作流程時,請使用 Vector Store Retriever 節點。LLM 可以在知識圖譜工作流程中從文件區塊中提取實體和關係。n8n 隨後可以使用 HTTP Request 節點或呼叫子工作流程作為工具,將產生的結構化資料發送到圖形資料庫。

透過 AI Agent 節點結合兩者(混合 RAG)。AI Agent 節點可以支援您系統的混合 RAG 方法。它協調多個檢索工具,允許工作流程使用向量搜尋進行語義檢索,並使用基於圖譜的檢索來處理基於關係的查詢。

除錯和監控您的 RAG 管道。使用執行日誌和步驟級別除錯,全面了解每個節點的資料。如果您有邏輯錯誤並需要重新執行,只需將失敗的生產資料重新載入到編輯器中即可。

為您的 AI 模型選擇正確的基礎。決定使用向量 RAG 還是 LLM 知識圖譜,取決於模型需要檢索的資訊結構。當您需要一個簡單、具成本效益的架構,以在少量語義相關文件中查找資訊時,請使用標準向量 RAG。當模型需要理解實體之間的明確關係,以檢索複雜查詢的資訊時,請使用知識圖譜。

當您的工作流程需要語義文件檢索和基於關係的檢索能力時,請考慮混合 RAG。如果您使用 n8n,您無需受限於單一檢索模型。您可以從向量 RAG 開始,如果您的使用案例發生變化,之後可以輕鬆添加基於圖譜的檢索。如果您想為您的系統嘗試正確的架構:

從向量 RAG 開始,並在需要時添加圖譜檢索。無需從頭重建管道即可切換檢索模型。