1.核心設計理念
非對稱檢索任務(例如,用一個簡短的問題去文檔庫里查找答案)的一個核心挑戰是查詢(query)和文檔(passage)在文本特征上的巨大差異。以往的研究發現,為查詢和文檔提供不同的處理機制可以提升模型性能 [39]。
Jina AI 在此基礎上更進一步,不僅使用不同的處理方式,更是設計了兩個獨立的、專門的LoRA適配器,并對它們進行聯合訓練,以最大化檢索效果 [131]。
retrieval.query
:這個適配器專門負責將用戶的查詢文本編碼成向量 [104]。retrieval.passage
:這個適配器專門負責將待檢索的文檔段落編碼成向量 [104]。
在推理時,用戶可以根據輸入文本的角色(是查詢還是文檔)來選擇加載對應的適配器,從而為特定用例生成最優的嵌入向量 [103]。
2.訓練方法與優化策略
為了讓這兩個適配器能夠精準地工作,Jina AI 采用了兩種關鍵的訓練策略:
2.1. 使用硬負樣本 (Hard Negatives) 進行訓練
為了讓模型學會分辨那些“看起來很像但實際不相關”的細微差別,訓練過程大量使用了包含“硬負樣本”的數據集 [133]。
- 什么是硬負樣本:對于一個查詢,硬負樣本指的是那些在文本上與查詢非常相似,但語義上并非正確答案的文檔。
- 數據來源:模型使用了像 MS-MARCO 和 Natural Questions (NQ) 這樣本身就包含高質量硬負樣本的數據集進行訓練 [133]。對于沒有標注負樣本的數據集,Jina AI 會利用 BM25 或其他嵌入模型(如 BGE-large)來進行挖掘,主動找出這些難分辨的負樣本 [134]。
- 訓練目標:在訓練中,通過
L_triplet
損失函數 [135],模型被要求將“查詢”向量與“正確文檔”(正例)的向量拉近,同時與“硬負樣本”的向量推開。
2.2. 針對性的失敗案例分析與數據增強
Jina AI 對之前的模型進行了深入的失敗案例分析,總結出四種典型的檢索失敗類型,并針對性地進行了優化 [136, 137]。
- F1:被句法相似性誤導
- 問題:模型傾向于選擇與查詢在字面上更相似的文檔,而不是語義上真正相關的“黃金”文檔 [138]。這個失敗案例指的是,模型傾向于選擇那些與查詢在字詞上重合度高的文檔,即使這些文檔在語義上并非正確答案 [343]。
* **例子:*** **用戶查詢:** "如何防止電腦自動更新?"* **模型錯誤偏好的文檔 (句法相似度高):**"這是一篇關于**如何**設置您的**電腦**,并開始**自動更新**以獲取最新安全補丁的指南。"* **分析:** 這個文檔包含了查詢中的所有關鍵詞:“如何”、“電腦”、“自動更新”。由于字面上的高度重疊,模型可能會錯誤地認為它非常相關。* **正確的相關文檔 (語義相關度高):**"您可以進入系統設置,在服務選項中‘禁用’Windows Update服務來**阻止**系統在后臺下載安裝包。"* **分析:** 這個文檔才是真正回答了用戶的問題,但它使用了“禁用”、“阻止”等同義詞,而不是完全重復查詢中的字詞。**失敗說明:** F1失敗案例發生時,模型會因為前一個文檔在字面上更“像”查詢,而將其排在真正能解決問題的第二個文檔之前。
- F2:命名實體的錯誤解釋
- 問題:模型常常無法將命名實體(如人名、書名)作為一個整體來識別,導致部分匹配錯誤(例如,查詢“Albert Stone”,模型可能會錯誤地匹配上“Sofia Albert”) [139]。
- F3:無法理解是否(Polar)問題
- 問題:對于復雜的“是/否”問題,模型無法有效處理,常常只能檢索到包含相關內容但并不能直接回答問題的文檔 [141]。
**例子:*** **用戶查詢:** "長城是唯一能在太空中用肉眼看到的人造建筑嗎?"* **模型錯誤檢索的文檔 (關鍵詞匹配,但未回答問題):**"**長城**是一項宏偉的**人造建筑**,橫跨中國北方。關于從**太空中**能否看到它的討論一直很激烈。"* **分析:** 這個文檔完美匹配了所有關鍵詞:“長城”、“人造建筑”、“太空”。模型因此認為它高度相關。然而,它只是描述了長城并提及了相關話題,完全沒有回答最核心的“是不是唯一”這個問題。* **正確的相關文檔 (真正回答了問題):**"不,這個說法是一個流傳已久的誤解。沒有任何人造建筑可以在近地軌道上被**肉眼**清晰地分辨出來,因此長城也并非**唯一**的那個。"* **分析:** 這個文檔直接對查詢的核心問題給出了否定回答,并進行了解釋。**失敗說明:** F3失敗案例發生時,模型表現得像一個關鍵詞匹配器,它找到了“相關主題”的文檔,卻忽略了用戶查詢的根本意圖——得到一個明確的是非判斷。
- F4:偏好低質量文檔
- 問題:模型只關注相關性,不考慮文檔質量,因此常常會檢索出那些雖然提及查詢詞但內容簡短、重復或信息量低的文檔 [143, 144]。
解決方案:
- 對于F1-F3:通過精心設計的提示詞(prompt),生成了針對性的合成訓練數據 [145]。每個合成樣本包含一個查詢、一個首選的正確答案以及七個模擬上述失敗情況的負面答案 [146]。
- 對于F4:利用了包含人類偏好判斷和質量評分的 oasst1 和 oasst2 數據集 [147, 148]。Jina AI 將這些數據轉換為硬負樣本格式:將質量分最高的答案作為正例,并將質量分低至少0.3分的其他答案作為負例進行訓練 [149, 150]。
2.3.有效性驗證
論文中的消融研究(Ablation Study)明確證實了這一雙適配器策略的有效性。研究結果表明,在非對稱檢索任務中,使用兩個適配器(2 Ad.)的性能始終優于使用單個適配器(1 Ad.) [227]。并且,由雙適配器帶來的模型能力提升,其影響比添加指令提示更為顯著 [228]。