lightonai/pylate
Late Interaction Models Training & Retrieval
解決的問題
PyLate 簡化了訓練、部署和使用後期互動模型(特別是 ColBERT)的流程,這些模型通常需要複雜的設定來進行微調與高效檢索。它提供一個統一的程式庫,可從大多數預訓練語言模型建構 ColBERT 模型,並優化從訓練到高速搜尋的工作流程。
工作原理
PyLate 建立在 Sentence Transformers 之上,並整合多個專用元件:
- 訓練:支援對比訓練(可選 GradCache 以處理大批次)以及從更強的教師模型進行知識蒸餾。
- 索引:利用 FastPLAID、WARP 和 TACHIOM 等高效後端壓縮 token 向量,實現亞 200ms 延遲的檢索。
- 檢索與重排序:提供工具將查詢與文件編碼為 token 級嵌入,並執行全索引搜尋或對少量文件進行直接重排序。
適用對象
希望透過後期互動架構,結合交叉編碼器的精確度與雙編碼器的速度,從事資訊檢索(IR)與 RAG 流程的開發者與研究人員。
主要亮點
- 靈活訓練:支援單 GPU 與多 GPU 微調,採用對比損失與蒸餾損失。
- 廣泛模型支援:可將大多數預訓練語言模型轉換為 ColBERT 風格的後期互動模型。
- 高效搜尋:整合多個高效率索引後端(PLAID、WARP、TACHIOM),實現可擴展的檢索。
- Hugging Face 整合:與 Hugging Face Datasets 無縫整合,支援三元組與蒸餾訓練。
相關
- 專案
- 專案
- 專案
- Dispatch
- Dispatch