huggingface/sentence-transformers

State-of-the-Art Embeddings, Retrieval, and Reranking

解決的問題

Sentence Transformers 提供了一種簡化生成嵌入、執行檢索和重新排序文件的方法。它簡化了將文字(及其他模態)轉換為密集或稀疏向量的過程,無需從頭構建複雜的模型架構,即可實現相似內容查找、搜尋結果排序和文字相似性分析。

工作原理

該框架支援四種主要類型的編碼器模型:

  • 嵌入模型: 為文字生成密集向量以計算相似度分數。
  • 重排序模型(交叉編碼器): 預測文字對的相似度分數,以優化搜尋結果。
  • 稀疏編碼器模型: 為基於詞彙的檢索生成稀疏嵌入。
  • 多向量編碼器模型: 使用詞元級嵌入實現後期互動檢索(ColBERT 風格)。

它與 Hugging Face 生態系統整合,允許使用者存取超過 15,000 個預訓練模型,並提供工具,使用多種損失函數對這些模型進行微調,以適應特定任務,如語意搜尋或同義詞挖掘。

適用對象

需要使用最先進的嵌入和重排序模型實現語意搜尋、聚類、同義詞挖掘或檢索-重排序流程的開發者和研究人員。

主要亮點

  • 多樣化的模型支援: 支援 BERT、RoBERTa、XLM-R、DistilBERT、Electra 和 BART。
  • 多模態能力: 透過單一 API 支援使用文字、影像、音訊和影片模型。
  • 豐富的預訓練模型庫: 可存取數千個模型,包括 MTEB 排行榜中的模型。
  • 訓練工具: 提供全面的微調工具,支援 20 多種損失函數用於嵌入模型。
  • 高效技術: 支援 Matryoshka 嵌入、二進位/標量量化和靜態嵌入模型,實現更快的檢索。

相關