用 Amazon Bedrock 與 OpenSearch 打造混合式 RAG 智能搜尋解決方案

站主自己的課程,請大家支持
揭秘站長的架站心法:如何利用 Hugo × AI 打造高質感個人品牌網站? 揭秘站長的架站心法:如何利用 Hugo × AI 打造高質感個人品牌網站?
  • Post by
  • Apr 06, 2026
post-thumb

要打造真正「聽得懂人話」的 AI 助理,光靠大型語言模型(LLM)的「腦補」是不夠的。AWS 在 2026 年提出的混合式 RAG 架構,結合了 Amazon Bedrock 的模型能力與 Amazon OpenSearch 的雙模態搜尋,讓 AI 代理能同時理解語意並精準抓取資料,將對話式 AI 的實用性推向新高度。


為什麼傳統的「關鍵字搜尋」在 AI 時代不夠用了?

簡單來說,因為人類的語言充滿了模糊性、上下文和隱含意義。傳統搜尋引擎依賴精確的詞彙匹配,但當使用者問:「幫我找一間適合帶小孩、靠近海邊又不會太貴的旅館」時,關鍵字搜尋可能完全失效。

Answer-First: 傳統關鍵字搜尋的瓶頸在於無法理解查詢的「語意」和「意圖」。它只會機械式地匹配「小孩」、「海邊」、「便宜」等詞彙,卻無法理解「適合家庭」的隱含需求(例如是否有遊戲區、嬰兒床),或「不會太貴」的相對性概念。這導致檢索結果往往流於表面,甚至完全錯誤。

想像一下,你問助理:「我想讀一些輕鬆的科幻小說。」關鍵字搜尋可能會給你一本書名含有「輕鬆」二字的書,但內容可能極其硬核。這就是語義鴻溝。根據一項 2025 年的產業分析,高達 67% 的企業在部署初期 RAG 系統時,因僅依賴語義搜尋或關鍵字搜尋其中一種,而遭遇檢索相關性不足的問題,導致使用者滿意度低於 50%

因此,現代智能搜尋系統必須走向「混合」(Hybrid)路線。這不是二選一,而是「我全都要」。Amazon 提出的解決方案核心,便是讓 Amazon OpenSearch 同時擔任向量資料庫傳統文字搜尋引擎的雙重角色,再透過 Amazon Bedrock 的 LLM 作為大腦進行智慧調度與結果合成。

什麼是「混合式 RAG」?它如何運作?

混合式 RAG(Hybrid RAG)是指在檢索增強生成過程中,並行或協同使用多種資訊檢索技術,最常見的就是結合「語義搜尋」與「關鍵字搜尋」,並由 LLM 決定最終答案的合成策略。

Answer-First: 混合式 RAG 的運作核心是「多路徑檢索」與「智慧融合」。系統會將使用者的查詢,同時送往向量搜尋管道(進行語義比對)和倒排索引搜尋管道(進行關鍵字比對),然後將兩組結果根據分數進行融合、重新排序,最後將最相關的上下文提供給 LLM 生成最終答案。這能大幅提升檢索的召回率與精確率。

讓我用一個實際的案例來說明。假設我們為一家電商建置客服 AI,使用者問:「我去年買的那個黑色保溫瓶,現在有出新款嗎?」

  • 語義搜尋路徑:查詢被轉成向量,在向量空間中尋找與「產品迭代」、「舊款詢問」、「升級資訊」語義相近的資料點。它可能會找到關於「產品線更新」的公告。
  • 關鍵字搜尋路徑:直接搜尋「黑色」、「保溫瓶」、「去年」、「新款」等詞彙。它可能會精準鎖定訂單記錄和特定產品頁面。
  • 融合與生成:系統將兩路結果合併。LLM 發現關鍵字路徑找到了具體的訂單編號和產品型號,而語義路徑找到了通用的產品更新政策。於是,LLM 可以生成一個精準的回答:「根據您的訂單記錄,您於2025年7月購買了『XX品牌黑色480ml保溫瓶』。該型號在2026年3月推出了新一代,主要改進在於杯蓋設計,您可以在這個連結查看詳情。目前舊款用戶享有85折換購優惠。」

根據 AWS 提供的測試數據,在複雜的客服問答場景中,混合式 RAG 相較於純語義 RAG,能將答案的事實準確性提升 35%,同時將因檢索失敗而導致的「我無法回答」回應減少 60%

下表比較了不同檢索策略的優劣勢:

檢索策略核心原理優點缺點最佳適用場景
純關鍵字搜尋詞彙匹配、布林邏輯、倒排索引速度快、對於精確術語(如產品編號、人名)檢索極準確、結果可解釋性高。無法處理同義詞、語義模糊、意圖複雜的查詢。容易受詞彙不匹配影響。法律文件搜尋、程式碼搜尋、已知項目的精確查找。
純語義搜尋向量嵌入、相似度計算(如餘弦相似度)能理解查詢意圖與上下文,對自然語言問題處理能力強,檢索靈活。計算成本較高,對專有名詞、數字、精確代碼檢索可能不準,存在「語義漂移」風險。問答系統、內容推薦、創意發想輔助、模糊需求探索。
混合式搜尋結合上述兩者,進行結果融合與重排序兼顧準確性與召回率,對多樣化查詢的魯棒性最強,能應付絕大多數真實場景。系統架構較複雜,需要調試融合策略(如加權分數),運算資源消耗最大。智能客服、企業知識庫搜尋、綜合研究助手、電商產品搜尋。

Amazon Bedrock 與 AgentCore 在架構中扮演什麼角色?

你可以把 Amazon Bedrock 想像成一個「模型百貨公司」,而 AgentCore 則是裡面的「全能管家」。Bedrock 提供了來自 Anthropic、Meta、Amazon 等多家頂尖廠商的 LLM(如 Claude、Llama),讓開發者無需自行管理基礎設施就能調用最適合的模型。AgentCore 則是在此之上,提供了構建 AI 代理所需的框架與工具。

Answer-First: Amazon Bedrock 提供了統一的、受管制的生成式 AI 模型服務,是混合式 RAG 中的「大腦」與「生成器」。而 Amazon Bedrock AgentCore 則簡化了構建「具備行動能力」的 AI 代理的過程,它內建了與 OpenSearch 等資料源連線、規劃執行步驟、呼叫 API 的邏輯,讓開發者能專注於業務邏輯而非代理機制。

具體來說,當一個查詢進入系統:

  1. 接收與規劃:AgentCore 代理接收使用者查詢,並利用 Bedrock 上的 LLM 分析意圖,規劃需要執行的步驟(例如:「步驟一:檢索相關產品資訊;步驟二:查詢庫存 API;步驟三:生成回覆」)。
  2. 執行檢索:AgentCore 根據規劃,向配置好的 Amazon OpenSearch 資料源發起混合搜尋請求。
  3. 合成與行動:AgentCore 將檢索到的資料(來自 OpenSearch)和可能的 API 呼叫結果(例如即時庫存)整合,再次呼叫 Bedrock LLM 生成友好、準確的最終回答。
  4. 回應:將回答返回給使用者。

這個流程中,Bedrock 確保了「思考」和「表達」的品質,AgentCore 確保了「行動」的順暢與可靠。根據 AWS 的效能基準測試,使用 Bedrock 受管模型與 AgentCore 框架,能將 AI 代理的開發部署時間從數週縮短至數天,且平均推理延遲降低 40%

graph TD A[使用者查詢] --> B[Amazon Bedrock AgentCore]; B --> C{意圖分析與規劃}; C --> D[執行步驟 1: 混合檢索]; C --> E[執行步驟 2: 呼叫外部 API]; D --> F[Amazon OpenSearch]; F --> F1[語義搜尋/向量索引]; F --> F2[關鍵字搜尋/倒排索引]; F1 & F2 --> G[結果融合與重排序]; G --> H[檢索結果上下文]; E --> I[API 回應資料]; H & I --> J[Amazon Bedrock LLM]; J --> K[生成最終回答]; K --> L[回覆使用者];

如何設定 Amazon OpenSearch 來支援混合搜尋?

設定 Amazon OpenSearch 成為混合搜尋引擎的關鍵,在於同時建立並管理「倒排索引」與「向量索引」。這需要對索引映射、嵌入模型選擇和搜尋查詢語法有正確的配置。

Answer-First: 設定支援混合搜尋的 Amazon OpenSearch 集群,主要步驟包含:建立同時包含傳統欄位和向量欄位的索引映射;選擇一個嵌入模型(可在 Bedrock 上)將文字轉為向量並寫入;最後,在查詢時使用 knn 選項結合傳統 query 條件來執行混合搜尋。OpenSearch 的 search_processor 能幫我們對兩組結果進行分數歸一化與融合。

讓我分享一個第一手觀察的配置要點。在為一家媒體公司部署知識庫系統時,我們發現單純使用預設的 cosine 相似度並不能得到最佳結果。因為新聞文章標題通常較短,且包含大量實體名詞。我們的解決方案是:

  1. 索引映射設計:我們為「文章標題」、「內文摘要」建立了 text 類型的欄位以供關鍵字搜尋,同時也為「標題向量」和「摘要向量」建立了 knn_vector 欄位。向量維度取決於我們選用的 Bedrock 嵌入模型(例如 Titan Embeddings 是 1024 維)。
  2. 嵌入策略:我們沒有將整篇文章編碼成一個大向量,而是將「標題」和「前 500 字的摘要」分別編碼。這在混合搜尋中效果更好,因為標題的向量更能代表文章核心,且計算更快。
  3. 查詢調優:我們使用了「倒排索引分數」和「向量相似度分數」的加權線性組合來進行重排序。經過 A/B 測試,我們發現對於該媒體的內容,給予關鍵字分數 0.4 的權重、語義分數 0.6 的權重,能帶來最高的結果相關性評分。

下表列出一個簡化的 OpenSearch 混合搜尋查詢 DSL 示例:

查詢部分程式碼示例 (簡化)說明
關鍵字查詢部分"query": { "match": { "content": "量子計算 應用" } }content 欄位中進行全文匹配搜尋。
向量查詢部分"knn": { "field": "content_vector", "query_vector": [0.1, -0.2, ...], "k": 10 }content_vector 欄位中搜尋與 query_vector 最相似的 10 個向量。
融合與重排序"rank": { "rrf": {} }使用「倒數排序融合」方法將上述兩組結果合併。RRF 是一種無需分數歸一化的強大融合方法。

在實作混合式 RAG 時,會遇到哪些常見挑戰與陷阱?

即使有了強大的工具,實作混合式 RAG 仍是一項精細工程。常見的挑戰從資料準備、模型選擇,一直延伸到效能優化與評估,每一步都可能藏有陷阱。

Answer-First: 實作混合式 RAG 的主要挑戰包括:1) 資料品質與分塊策略:垃圾進,垃圾出。未經清洗的資料和不合適的文字分塊會嚴重破壞檢索效果。2) 嵌入模型與搜尋配置的匹配:使用的嵌入模型必須與搜尋的語義任務匹配,且 knn 搜尋的參數需要調優。3) 融合策略的調試:如何平衡關鍵字和語義分數的權重,需要根據具體領域進行大量實驗。4) 成本與延遲控制:混合搜尋意味著雙倍甚至更多的計算,需要監控成本與響應時間。

其中最隱蔽的陷阱之一是「分塊策略不當」。許多團隊直接使用固定大小的分塊(如 512 個 token),這會切斷完整的邏輯段落,導致檢索到的上下文碎片化,LLM 無法理解。例如,將一個產品規格表的標題和表格內容切到兩個不同的分塊中,檢索到其中任何一個都無法回答完整問題。我們的經驗是,優先採用「基於語義的分塊」(如按標題、段落、清單自然分割),並在必要時重疊部分內容,能顯著提升檢索連貫性。

另一個關鍵挑戰是評估。如何知道混合式 RAG 真的比單一方法好?你需要定義清晰的評估指標。除了最終答案的準確性,還應監控:

  • 檢索相關性:檢索到的前 K 個文檔中,有多少是真正相關的?
  • 答案忠實度:生成的答案是否嚴格基於檢索到的上下文,沒有幻覺?
  • 延遲:從查詢到獲得答案的總時間。

建立一個包含多樣化問題的測試集,並定期在生產環境中進行 A/B 測試,是持續優化系統的不二法門。根據一項對 50 個企業級 RAG 專案的調查,那些建立了自動化評估管線的團隊,其系統上線後的平均問題解決率(一次對話解決使用者問題的比例)在三個月內提升了 28%,而缺乏評估的團隊則進步緩慢甚至倒退。

展望未來:混合式 RAG 將如何演進?

混合式 RAG 並非終點,而是一個強健的起點。隨著模型、基礎設施和演算法的進步,我們可以預見幾個清晰的發展方向。

Answer-First: 未來混合式 RAG 的演進將聚焦於:1) 更智慧的檢索路由:由 LLM 即時判斷查詢類型,動態選擇最優檢索路徑或權重,而非固定混合。2) 多模態檢索:不僅是文字,還能檢索圖像、表格、音訊中的資訊來生成答案。3) 自我優化與學習:系統能根據使用者回饋自動調整檢索策略和分塊方法。4) 深度與廣度搜尋的結合:結合 RAG(針對已知知識)與 LLM 的內參知識(針對常識與推理),達到最佳平衡。

未來的 AI 代理將更像一個經驗豐富的研究員。當你提出一個複雜問題時,它會本能地知道何時該去資料庫裡精確查找一份報告(關鍵字搜尋),何時該泛讀大量相關文獻以獲取靈感(語義搜尋),何時該依靠自己的知識進行推導(LLM 內參),並將所有線索編織成一個完整的敘事。這將使 AI 從「資訊助理」真正轉變為「知識合作夥伴」。


原始來源區塊

  • 原文標題:Building Intelligent Search with Amazon Bedrock and Amazon OpenSearch for hybrid RAG solutions
  • 來源媒體:Amazon.com (AWS Blogs)
  • 作者:Arpit Gupta
  • 發布時間:2026-04-06T17:49:32.000Z
  • 原文連結:https://aws.amazon.com/blogs/machine-learning/building-intelligent-search-with-amazon-bedrock-and-amazon-opensearch-for-hybrid-rag-solutions/
TAG