RAG 檢索範式技巧
單次檢索召回不全,是 RAG 問答最常見的痛點。本篇給出一個可直接複用的兩段式檢索範式:用一次便宜的"查詢擴寫"換多路召回。
問題:拿使用者原話直接檢索,經常查不全
使用者的原始提問往往口語化、只有一個視角,與知識庫中的表述不匹配 (同義詞、專業術語、中英文差異),單次檢索召回不全,回答自然不完整。
範式:先擴寫關鍵詞,再並行批次查詢
先用 Agent 節點把問題擴寫成一組查詢關鍵詞,再用 Iteration 節點並行批次查詢:
Start ─▶ Agent(生成一組查詢關鍵詞,輸出陣列)
─▶ Iteration(並行)[ 子流程: Tool 檢索(知識庫/搜尋) ]
─▶ LLM(去重合並,基於檢索結果作答) ─▶ Answer要點
- 關鍵詞生成節點:提示詞中要求輸出結構化陣列(如 JSON 陣列),每個關鍵詞覆蓋不同角度 —— 同義改寫、上下位概念、專業術語、中英文對照;數量控制在 3~5 組,太多會攤薄單次檢索質量並抬高成本
- Iteration 開並行模式:批次查詢同時發出,速度遠快於逐條序列;配置錯誤處理,單條查詢失敗不拖垮整體
- 彙總節點只基於檢索結果作答:提示詞明確"資料以檢索返回為準,不得編造",並做去重合並
- 成本搭配:關鍵詞生成是簡單任務,用小引數模型即可;最後的彙總作答再用大模型 (參考 技巧二的分層用模型策略)
這個範式的本質:用一次便宜的"查詢擴寫"換多路召回,比讓單次檢索硬扛準確率划算得多。
關聯閱讀
- Iteration 節點幫助文件 — 並行模式與錯誤處理
- Tool 節點幫助文件 — 檢索取數
- 知識庫 — 檢索的資料來源
- 流程編排模式與除錯技巧 — 模式 3「工具增強」、模式 6「批次處理」