大型語言模型是一個資料寶庫,但直到去年,它們的使用還僅限於基於訓練資料的基本 Q/A。後來出現了 RAG 概念,這一突破幫助我們將資料來源與 LLM 連線起來,建立個性化、可信的系統。現在,有了 MCP,我們透過將 LLM 與外部工具連線起來,將我們與 LLM 的合作方式向前推進了一步。那麼,RAG 與 MCP 究竟是一回事,還是這些技術互為補充,可以提高我們從 LLM 中獲得的產出?在本文中,我們將分析 MCP 和 RAG 之間的區別,並瞭解如何將二者結合起來使用 LLM 構建複雜的解決方案。
什麼是RAG?
RAG 或稱 “檢索增強生成”(Retrieval Augmented Generation)將資訊檢索的功能與生成過程相結合。通常情況下,LLM 僅依靠其訓練資料來生成對使用者查詢的響應,這有時會導致結果不正確或有偏差。有了 RAG,LLM 可以在輸出生成過程中檢索外部資訊,從而彌補 LLM 靜態訓練知識與動態資訊之間的差距。
以下是 RAG 系統的工作原理:
- 查詢:使用者對 LLM 的輸入就是 RAG 系統的查詢。
- 檢索:在 LLM 生成響應之前,RAG 系統內的“檢索”過程會瀏覽與查詢相關的知識庫,以找到最相關的資訊。
- 擴充:然後將檢索到的最相關資訊“增強”到原始查詢中,然後將這些累積資訊輸入 LLM。
- 生成:LLM 使用綜合輸入(查詢 + 檢索到的資訊)生成更準確、更相關的響應。最後,該回復將與使用者共享。
基於 RAG 的系統通常用於要求輸出準確、全面和經過充分研究的任務。因此,這類系統被廣泛應用於以下任務中:
- 客戶支援:確保根據最新資訊回覆客戶。
- 企業搜尋:幫助公司建立可靠的搜尋引擎,幫助員工找到相關的公司資訊。
- 個性化推薦:幫助推薦系統根據使用者的選擇和以往行為推薦產品和服務,從而為使用者提供更好的服務。
不僅如此,RAG 系統還被廣泛應用於法律援助、醫療保健研究、財務報告等任務中。然而,儘管 RAG 系統有其優勢,但也面臨著一系列挑戰,如上下文視窗限制、檢索不準確、延遲和設定複雜性等。
什麼是MCP?
MCP 或“模型上下文協議”由 Anthropic 公司於2024年推出,但到了2025年,世界終於認識到了它的潛力。MCP 允許 LLM 與外部工具、API 和資料來源即時無縫連線。這一開放式標準使實驗室管理員不僅能生成文字,還能幫助他們執行操作、觸發工作流和訪問當前資訊,以支援主動決策。
MCP 的主要組成部分包括
- 模型:模型或 LLM 是執行此框架的引擎,負責您收到的輸出。可以使用“客戶端”(如 Claude 桌面應用程式、整合開發環境或聊天機器人)訪問模型。
- 上下文(Context):它是模型準確回答您的查詢所需的額外資訊。上下文儲存在一個名為“伺服器”的系統中。它可以是 Google Drive、GitHub 儲存庫、郵箱、PDF 等。
- 協議(Protocol):這是一套允許模型訪問不同來源(如外部工具和 API)以獲取與該查詢相關的上下文的準則。
當使用者輸入查詢時,客戶端會向伺服器傳送請求,以獲取相關資訊。伺服器為客戶端提供所需的上下文,然後客戶端利用這些上下文為使用者提供響應或完成任務。因此,MCP 允許 LLM 思考並使用其所掌握的工具來執行操作並提供可靠的響應。
MCP 對於構建需要以下功能的系統非常有用:
- 即時資料訪問:如股票市場分析應用程式、庫存管理系統或訂單處理應用程式。
- 任務自動化:如更新 CRM、傳送電子郵件、安排會議等。
- 觸發工作流:如員工入職流程或部署程式碼。
總之,MCP 無需手動上傳資料或為不同工具建立自定義整合。它還允許 LLM 與本地和基於雲的系統協同工作,將其用途從簡單的 Q/A 工具擴充套件到實際的行動系統。
推薦文章: 如何使用 MCP?
MCP與RAG:競爭對手?
不,在工作方式或任務方面,MCP 和 RAG 並不是競爭對手。正如我們在前幾節所討論的,MCP 和 RAG 執行不同的任務,並以不同的方式賦予當地聯絡員權力。RAG 為當地聯絡員提供更多資料,而 MCP 則賦予當地聯絡員採取行動的能力。下表概述了多邊協商程式與區域諮詢小組的主要區別:
特性 | RAG(檢索增強生成) | MCP(模型上下文協議) |
---|---|---|
目的 | 透過檢索相關外部資料增強大語言模型(LLM)的知識 | 擴充套件大語言模型(LLM)的能力,以使用工具並執行操作 |
功能 | 從文件、資料庫或搜尋API中提取資訊 | 連線工具、API、軟體和即時系統 |
使用案例型別 | 提高響應的準確性和上下文相關性 | 啟用現實世界的行動、工具使用和自動化 |
工作原理 | 檢索相關文件 → 增強提示 → 生成輸出 | 使用結構化工具架構 → 選擇工具 → 執行操作 |
資料訪問 | 通常處理文字或向量資料 | 處理功能端點(如API、外掛、Webhooks) |
執行 | 被動:僅檢索和通知 | 主動:可以執行如提交表單或更新系統的操作 |
示例任務 | “我們的退款政策是什麼?” → 從政策文件中檢索 | “取消我的訂閱” → 觸發退款API |
模型輸入影響 | 用更多內容擴充套件提示以更好地基礎化 | 不總是擴充套件提示,專注於決策和執行 |
複雜性 | 需要向量資料庫、分塊和嵌入邏輯 | 需要工具定義、安全層和執行控制 |
最佳使用場景 | 知識型問答、基礎化和內容生成 | 工作流編排、自動化和工具增強代理 |
MCP和RAG可以協同工作嗎?
是的,MCP 和 RAG 可以協同工作,幫助我們設計高度複雜的人工智慧工作流程。RAG 允許 LLM 提取相關資訊,而 MCP 則根據檢索到的知識執行任務。將兩者結合使用,我們可以建立以下工作流程:
1. 將RAG作為MCP框架內的工具
在這種情況下,使用 MCP 執行的 LLM 可以將 RAG 作為其工具之一,用來獲取所需的資訊。
示例:由 MCP 驅動的人工智慧系統用於營銷活動。它使用 RAG 檢索有關以往營銷活動和競爭對手的資訊。然後,它使用 MCP 驅動的工具建立社交媒體帖子,並安排它們在不同平臺上釋出。
2. 指導RAG驅動的代理的MCP
在涉及多個代理的系統中,每個代理都可以擁有自己的 RAG 管道,而 MCP 可以充當系統的協調者。
示例一個由 MCP 驅動的多代理客戶支援團隊: 當客戶提出詢問時,MCP 代理會根據詢問將任務分配給其中一個技術支援/訂單狀態/付款問題代理。該代理使用 RAG 根據查詢查詢相關資訊,然後將其輸出轉發給 MCP 代理。最後,該代理將其回覆傳達給客戶。
MCP 和 RAG 的結合可用於增強 LLM 的功能,並有助於構建能夠思考和行動的人工智慧系統。
您應該選擇哪一個?
選擇 RAG、MCP 還是 RAG + MCP 取決於任務。每種框架都有其獨特的優勢。以下是您如何決定採取哪種方法的方法:
- RAG:如果您的主要目標是提高 LLM 生成的內容的準確性、相關性和事實基礎,那麼 “RAG ”應該是您的選擇。
- MCP:如果您的主要目標是讓 LLM 與外部系統互動、執行操作或利用工具來完成任務,那麼 “MCP ”就是您的首選。
- RAG + MCP:如果您的目標是建立一個能夠更好地理解和果斷行動的智慧自主系統,那麼 RAG 和 MCP 的組合就是您的首選。
推薦閱讀: A2A 和 MCP 之間有什麼區別?
小結
大型語言模型已經風靡全球!然而,它們的使用仍然有限。透過 RAG,法學碩士可以訪問外部知識庫,這些知識庫可以幫助法學碩士生成更加明智的回覆。有了 MCP,法律碩士就可以使用工具來執行操作。RAG 和 MCP 並不相互競爭,兩個框架的目的各不相同。但 RAG 和 MCP 可以共同幫助我們構建智慧、高效的系統。
評論留言