🚀 bge-m3-onnx-o4
bge-m3-onnx-o4
是原始模型 BAAI/bge-m3
的權重。這個模型為何如此出色呢?
- [x] 多功能性:它能夠同時實現嵌入模型常見的三種檢索功能,即密集檢索、多向量檢索和稀疏檢索。
- [x] 多語言支持:它支持超過 100 種工作語言。
- [x] 多粒度處理:它能夠處理不同粒度的輸入,從短句到長達 8192 個標記的長文檔均可處理。
🚀 快速開始
✨ 主要特性
此模型具備多功能性、多語言支持和多粒度處理的特性,能夠滿足不同場景下的檢索需求。
📦 安裝指南
重要提示 - 下載模型權重
請參考以下說明。
- 下載 檢查點:由於某些原因,你無法直接從這個在線版本加載模型(會拋出異常)。請按如下方式下載此倉庫:
from huggingface_hub import snapshot_download
snapshot_download(repo_id="hooman650/bge-m3-onnx-o4",local_dir="bge-m3-onnx")
💻 使用示例
基礎用法
密集檢索
pip install --upgrade-strategy eager optimum[onnxruntime]
from optimum.onnxruntime import ORTModelForFeatureExtraction
from transformers import AutoTokenizer
import torch
model = ORTModelForFeatureExtraction.from_pretrained("bge-m3-onnx", provider="CUDAExecutionProvider")
tokenizer = AutoTokenizer.from_pretrained("hooman650/bge-m3-onnx-o4")
sentences = [
"English: The quick brown fox jumps over the lazy dog.",
"Spanish: El rápido zorro marrón salta sobre el perro perezoso.",
"French: Le renard brun rapide saute par-dessus le chien paresseux.",
"German: Der schnelle braune Fuchs springt über den faulen Hund.",
"Italian: La volpe marrone veloce salta sopra il cane pigro.",
"Japanese: 速い茶色の狐が怠惰な犬を飛び越える。",
"Chinese (Simplified): 快速的棕色狐狸跳過懶狗。",
"Russian: Быстрая коричневая лиса прыгает через ленивую собаку.",
"Arabic: الثعلب البني السريع يقفز فوق الكلب الكسول.",
"Hindi: तेज़ भूरी लोमड़ी आलसी कुत्ते के ऊपर कूद जाती है।"
]
encoded_input = tokenizer(sentences, padding=True, truncation=True, return_tensors='pt').to("cuda")
out=model(**encoded_input,return_dict=True).last_hidden_state
dense_vecs = torch.nn.functional.normalize(out[:, 0], dim=-1)
高級用法
多向量檢索(ColBERT)
即將推出...
📄 許可證
本項目採用 MIT 許可證。