1、問題1:關于評分?![]() 針對之前兩篇文章的讀者留言問題: 不依賴外部API!基于 Ollama 的企業級語義搜索完整實現 問題描述:1.混合搜索中,向量評分區間在0-2之間,而關鍵詞評分理論上在0-無窮,如何保障向量、關鍵詞評分緯度一致,報文中 boost 才有意義? 向量評分區間確實通常在 0-1 之間(取決于相似度算法)。 關鍵詞評分理論上確實可以到很大值(TF-IDF、BM25等算法無上界)。 讀者的核心問題:不同評分體系的量綱不統一,直接加權沒有意義。 而 RRF(未開源,2023年7月25日 Elasticsearch 8.9 版本新上的付費功能) 的出現,通過"排名民主投票"機制,優雅地解決了混合搜索中評分標準化這一技術難題。 ![]() 參見官網: https://www./docs/reference/elasticsearch/rest-apis/reciprocal-rank-fusion 1.1 RRF 的本質價值官方文檔:"RRF requires no tuning, and the different relevance indicators do not have to be related to each other to achieve high-quality results." 這句話揭示了RRF解決混合搜索核心痛點的精髓。 1.2 傳統混合搜索的困境需要復雜調優,舉例:關鍵詞搜索(BM25)評分可能是15.6,向量搜索評分是0.85。 評分量綱不統一,需要人工設置 boost 權重,如keyword_boost=1.5, vector_boost=1.0。 權重難以確定,不同業務場景最優權重不同,需要大量A/B測試。 1.3 RRF的革命性突破相比傳統加權融合,RRF通過"排名民主投票"機制帶來顯著優勢: 首先是更穩定的結果,因為基于排名而非原始評分,無需針對不同查詢類型或業務場景反復調整boost參數; 其次是更好的相關性表現,RRF能夠充分利用 BM25、向量檢索、ELSER 等多種檢索算法的互補優勢,通過倒數衰減公式自然平衡各算法貢獻度,通常在相關性評估中優于單一檢索方法; 最后是更簡單的工程實現,RRF開箱即用,完全避開了評分標準化、權重調優等復雜工程問題,開發者無需深入理解各檢索算法的評分機制即可獲得高質量的混合搜索效果。 ![]() 論文地址: https://plg./%7Egvcormac/cormacksigir09-rrf.pdf 2、問題2:關于召回數據量?問題描述:2、向量搜索的返回的 total 是全量數據,如何限制向量搜索返回的數量或者僅返回評分前10的索引? 回復:
這會導致向量搜索階段檢索 50 個候選文檔,然后與傳統搜索結果合并,可能返回超過 10 條的結果。 candidates vs size: candidates 控制向量搜索階段的候選數量,size 控制最終返回結果數量。 將 candidates 設置為接近 size 的值可以提高查詢效率。 如果需要更高質量的結果,可以適當增加 candidates 但保持 size 不變。 3、問題3:關于 LSH 算法![]() 向您咨詢下,LSH算法的 L 和 k 參數設置生產環境最佳實踐,或者有具體的參考資料或鏈接嗎? 官方文檔說明如下:
參數權衡關系,精度 vs 召回率權衡:
4、問題4:關于如何進行分塊向量化?文中的向量化源字段內容比較短,針對源字段內容長的,如何進行分塊向量化、分塊向量化結果存儲及搜索? 回復:在 AI 搜索中處理大型文本文檔時,通常需要將其分割成較小的段落,因為大多數嵌入模型都有令牌長度限制。這個過程稱為文本分塊,通過確保每個嵌入表示適合模型約束的重點內容片段,有助于保持向量搜索結果的質量和相關性。 傳統向量化面臨的兩個核心問題:
解決方案:通過分塊(chunking)技術將大文檔分解為更小、更易管理的子部分,對每個塊單獨進行推理操作。 ![]() 圖片來自:Elastic 官方劉曉國老師博客 兩種分塊策略詳解,供參考,可以自己代碼層面實現。 4.1. 基于詞匯的分塊策略(Word-based Chunking)配置參數:
工作機制:
4.2. 基于句子的分塊策略(Sentence-based Chunking)配置參數:
工作機制:
默認配置變化 8.16版本后的默認設置:
8.16 版本前的默認設置:
參考:
5、問題5:dims 必須與 embedding 一致嗎?![]() nomic-embed-text-v1 和 nomic-embed-text-v1.5:默認嵌入維度為 768。 通過 Matryoshka Representation Learning,這些模型支持靈活調整維度(從 64 到 768),例如可以指定為 256 或 512 以減少存儲和計算成本,同時性能損失較小。 參考:
|
|