Tujuan dari proyek Uniem adalah untuk menciptakan model embedding teks universal terbaik dalam bahasa Cina.
Proyek ini terutama mencakup pelatihan model, penyesuaian dan kode evaluasi. Model dan set data akan bersumber terbuka pada komunitas Huggingface.
FineTuner juga mendukung penyempurnaan sentence_transformers , text2vec dan model lainnya. Ini juga mendukung pelatihan SGPT model seri GPT dan tuning awalan. API yang diinisialisasi oleh Finetuner telah mengalami sedikit perubahan dan tidak dapat kompatibel dengan 0.2.0FineTuner untuk mendukung penyempurnaan model dengan dukungan asli, beberapa baris kode, adaptasi instan !openai text-embedding-ada-002 dalam klasifikasi teks Cina dan pengambilan teks. Untuk detailnya, silakan merujuk ke M3E Model ReadMe. Model seri M3E sepenuhnya kompatibel dengan transformator kalimat. Anda dapat menggunakan model M3E dengan mulus di semua proyek yang mendukung transformer kalimat dengan mengganti nama model , seperti Chroma, Bimbingan, Kernel Semantik.
Memasang
pip install sentence-transformersmenggunakan
from sentence_transformers import SentenceTransformer
model = SentenceTransformer ( "moka-ai/m3e-base" )
embeddings = model . encode ([ 'Hello World!' , '你好,世界!' ]) uniem menyediakan antarmuka Finetune yang sangat mudah digunakan, dengan beberapa baris kode, adaptasi instan!
from datasets import load_dataset
from uniem . finetuner import FineTuner
dataset = load_dataset ( 'shibing624/nli_zh' , 'STS-B' )
# 指定训练的模型为 m3e-small
finetuner = FineTuner . from_pretrained ( 'moka-ai/m3e-small' , dataset = dataset )
finetuner . run ( epochs = 3 )Untuk detail tentang model penyempurnaan, silakan merujuk ke tutorial uniem fine-tuning atau
Jika Anda ingin berjalan secara lokal, Anda harus menjalankan perintah berikut untuk mempersiapkan lingkungan
conda create -n uniem python=3.10
pip install uniemModel penyematan Cina tidak memiliki standar evaluasi terpadu, jadi kami merujuk ke MTEB dan membangun standar evaluasi Cina MTEB-ZH. Saat ini, 6 model telah dievaluasi secara horizontal pada berbagai set data. Untuk metode dan kode evaluasi terperinci, silakan merujuk ke MTEB-ZH.
| text2vec | m3e-small | m3e-base | M3E-Large-0619 | Openai | Dmetasoul | Uer | Erlangshen | |
|---|---|---|---|---|---|---|---|---|
| Tnews | 0.43 | 0.4443 | 0.4827 | 0.4866 | 0.4594 | 0.3084 | 0.3539 | 0.4361 |
| Jdiphone | 0.8214 | 0.8293 | 0.8533 | 0.8692 | 0.746 | 0.7972 | 0.8283 | 0.8356 |
| Gubaeastmony | 0.7472 | 0.712 | 0.7621 | 0.7663 | 0.7574 | 0.735 | 0.7534 | 0.7787 |
| Tyqsentimen | 0.6099 | 0.6596 | 0.7188 | 0.7247 | 0.68 | 0.6437 | 0.6662 | 0.6444 |
| Stockcomsentimen | 0.4307 | 0.4291 | 0.4363 | 0.4475 | 0.4819 | 0.4309 | 0.4555 | 0.4482 |
| Iflytek | 0.414 | 0.4263 | 0.4409 | 0.4445 | 0.4486 | 0.3969 | 0.3762 | 0.4241 |
| Rata-rata | 0,5755 | 0.5834 | 0.6157 | 0.6231 | 0.5956 | 0.552016667 | 0.57225 | 0.594516667 |
| text2vec | OpenAI-1-002 | m3e-small | m3e-base | M3E-Large-0619 | Dmetasoul | Uer | Erlangshen | |
|---|---|---|---|---|---|---|---|---|
| Peta@1 | 0.4684 | 0.6133 | 0,5574 | 0.626 | 0.6256 | 0.25203 | 0,08647 | 0.25394 |
| Peta@10 | 0.5877 | 0.7423 | 0.6878 | 0.7656 | 0.7627 | 0.33312 | 0.13008 | 0.34714 |
| MRR@1 | 0,5345 | 0.6931 | 0.6324 | 0.7047 | 0.7063 | 0.29258 | 0.10067 | 0.29447 |
| MRR@10 | 0.6217 | 0.7668 | 0.712 | 0.7841 | 0.7827 | 0.36287 | 0.14516 | 0.3751 |
| ndcg@1 | 0.5207 | 0.6764 | 0.6159 | 0.6881 | 0.6884 | 0.28358 | 0.09748 | 0.28578 |
| NDCG@10 | 0.6346 | 0.7786 | 0.7262 | 0.8004 | 0.7974 | 0.37468 | 0.15783 | 0.39329 |
Jika Anda ingin menambahkan set data evaluasi atau model ke MTEB-ZH, jangan ragu untuk mengeluarkan atau PR. Saya akan mendukung Anda sesegera mungkin dan menantikan kontribusi Anda!
Uniem dilisensikan di bawah lisensi apache-2.0. Lihat file lisensi untuk lebih jelasnya.
Harap kutip model ini menggunakan format berikut:
@software {moka embedding campuran besar -besaran, penulis = {wang yuxin, sun qingxuan, he sicheng}, title = {m3e: moka model embedding campuran masif}, tahun = {2023}}