Perselisihan
Bahasa Inggris | 中文 | 日本語
ModelScope dibangun berdasarkan gagasan “Model-as-a-Service” (MaaS). Hal ini bertujuan untuk menyatukan model pembelajaran mesin paling canggih dari komunitas AI, dan menyederhanakan proses pemanfaatan model AI dalam aplikasi dunia nyata. Pustaka inti ModelScope yang bersumber terbuka di repositori ini menyediakan antarmuka dan implementasi yang memungkinkan pengembang melakukan inferensi, pelatihan, dan evaluasi model.
Khususnya, dengan lapisan abstraksi API yang kaya, perpustakaan ModelScope menawarkan pengalaman terpadu untuk mengeksplorasi model canggih yang mencakup seluruh domain seperti CV, NLP, Speech, Multi-Modality, dan Scientific-computation. Kontributor model dari berbagai bidang dapat mengintegrasikan model ke dalam ekosistem ModelScope melalui API berlapis, sehingga memungkinkan akses yang mudah dan terpadu ke model mereka. Setelah terintegrasi, inferensi model, penyesuaian, dan evaluasi dapat dilakukan hanya dengan beberapa baris kode. Sementara itu, fleksibilitas juga diberikan sehingga berbagai komponen dalam aplikasi model dapat disesuaikan bila diperlukan.
Selain menyimpan implementasi berbagai model yang berbeda, pustaka ModelScope juga memungkinkan interaksi yang diperlukan dengan layanan backend ModelScope, khususnya dengan Model-Hub dan Dataset-Hub. Interaksi tersebut memfasilitasi pengelolaan berbagai entitas (model dan kumpulan data) agar dapat dilakukan dengan lancar, termasuk pencarian entitas, kontrol versi, manajemen cache, dan banyak lainnya.
Ratusan model tersedia untuk umum di ModelScope (700+ dan terus bertambah), yang mencakup perkembangan terkini di berbagai bidang seperti NLP, CV, Audio, Multi-modalitas, dan AI untuk Sains, dll. Banyak dari model ini mewakili SOTA dalam modelnya. bidang tertentu, dan memulai debutnya sebagai sumber terbuka di ModelScope. Pengguna dapat mengunjungi ModelScope(modelscope.cn) dan merasakan langsung bagaimana kinerja model ini melalui pengalaman online, hanya dengan beberapa klik. Pengalaman pengembang langsung juga dimungkinkan melalui ModelScope Notebook, yang didukung oleh lingkungan pengembangan CPU/GPU siap pakai di cloud - hanya dengan satu klik di ModelScope.
Beberapa contoh representatif meliputi:
LLM:
Yi-1.5-34B-Obrolan
Qwen1.5-110B-Obrolan
Obrolan DeepSeek-V2
Ziya2-13B-Obrolan
Meta-Llama-3-8B-Instruksikan
Instruksi Phi-3-mini-128k
Multi-Modal:
Qwen-VL-Obrolan
Yi-VL-6B
MagangVL-Obrolan-V1-5
deepseek-vl-7b-chat
BukaSoraPlan
BukaSora
I2VGen-XL
CV:
Model Titik Kunci Deteksi Wajah DamoFD - 0,5G
Anyaman Potret BSHM
Kartunisasi Potret DCT-Net - 3D
Model Kartunisasi Potret DCT-Net - 3D
DuGuang - Pengenalan Teks - Model Pengenalan Garis - Mandarin dan Inggris - Domain Umum
DuGuang - Pengenalan Teks - Model Pengenalan Garis - Mandarin dan Inggris - Domain Umum
Lukisan Gambar LaMa
suara:
Pengenalan Ucapan Paraformer - Mandarin - Umum - 16k - Offline - Besar - Versi Audio Panjang
Deteksi Titik Akhir Suara FSMN - Mandarin - Umum - 16k - onnx
Prediksi Stempel Waktu Pidato Monotonik-Aligner - 16k - Offline
Tanda Baca CT-Transformer - Cina - Umum - onnx
Sintesis Pidato - Bahasa Mandarin - Domain Banyak Emosi - 16k - Banyak Penutur
Verifikasi Speaker CAM++ - Mandarin - Umum - 200rb-Spkrs
AI untuk Sains:
monomer satu kali lipat
multimer lipat satu
Catatan: Sebagian besar model di ModelScope bersifat publik dan dapat diunduh tanpa registrasi akun di situs web modelscope (www.modelscope.cn), silakan lihat petunjuk untuk mengunduh model, untuk mengunduh model dengan api yang disediakan oleh perpustakaan modelscope atau git.
Kami menyediakan antarmuka terpadu untuk inferensi menggunakan pipeline
, penyesuaian, dan evaluasi menggunakan Trainer
untuk berbagai tugas.
Untuk tugas apa pun dengan jenis masukan apa pun (gambar, teks, audio, video...), saluran inferensi dapat diimplementasikan hanya dengan beberapa baris kode, yang secara otomatis akan memuat model yang mendasarinya untuk mendapatkan hasil inferensi, seperti yang dicontohkan di bawah:
> >> from modelscope . pipelines import pipeline
> >> word_segmentation = pipeline ( 'word-segmentation' , model = 'damo/nlp_structbert_word-segmentation_chinese-base' )
> >> word_segmentation ( '今天天气不错,适合出去游玩' )
{ 'output' : '今天 天气 不错 , 适合 出去 游玩' }
Dengan adanya gambar, matting potret (alias penghapusan latar belakang) dapat dilakukan dengan cuplikan kode berikut:
> >> import cv2
> >> from modelscope . pipelines import pipeline
> >> portrait_matting = pipeline ( 'portrait-matting' )
> >> result = portrait_matting ( 'https://modelscope.oss-cn-beijing.aliyuncs.com/test/images/image_matting.png' )
> >> cv2 . imwrite ( 'result.png' , result [ 'output_img' ])
Gambar keluaran dengan latar belakang dihapus adalah:
Penyempurnaan dan evaluasi juga dapat dilakukan dengan beberapa baris kode lagi untuk menyiapkan kumpulan data pelatihan dan pelatih, dengan pekerjaan berat dalam pelatihan dan evaluasi model yang dikemas dalam implementasi traner.train()
dan trainer.evaluate()
antarmuka.
Misalnya, model dasar gpt3 (1.3B) dapat disesuaikan dengan kumpulan data puisi cina, sehingga menghasilkan model yang dapat digunakan untuk pembuatan puisi cina.
> >> from modelscope . metainfo import Trainers
> >> from modelscope . msdatasets import MsDataset
> >> from modelscope . trainers import build_trainer
> >> train_dataset = MsDataset . load ( 'chinese-poetry-collection' , split = 'train' ). remap_columns ({ 'text1' : 'src_txt' })
> >> eval_dataset = MsDataset . load ( 'chinese-poetry-collection' , split = 'test' ). remap_columns ({ 'text1' : 'src_txt' })
> >> max_epochs = 10
> >> tmp_dir = './gpt3_poetry'
> >> kwargs = dict (
model = 'damo/nlp_gpt3_text-generation_1.3B' ,
train_dataset = train_dataset ,
eval_dataset = eval_dataset ,
max_epochs = max_epochs ,
work_dir = tmp_dir )
> >> trainer = build_trainer ( name = Trainers . gpt3_trainer , default_args = kwargs )
> >> trainer . train ()
Antarmuka pengguna yang terpadu dan ringkas disarikan untuk berbagai tugas dan model berbeda. Inferensi dan pelatihan model dapat diimplementasikan masing-masing hanya dengan 3 dan 10 baris kode. Lebih mudah bagi pengguna untuk menjelajahi model di berbagai bidang di komunitas ModelScope. Semua model yang terintegrasi ke dalam ModelScope siap digunakan, sehingga memudahkan untuk memulai AI, baik di lingkungan pendidikan maupun industri.
ModelScope menawarkan pengalaman pengembangan dan aplikasi yang berpusat pada model. Ini menyederhanakan dukungan untuk pelatihan model, inferensi, ekspor dan penerapan, serta memfasilitasi pengguna untuk membangun MLOps mereka sendiri berdasarkan ekosistem ModelScope.
Untuk inferensi model dan proses pelatihan, desain modular diterapkan, dan banyak implementasi modul fungsional disediakan, yang memudahkan pengguna untuk menyesuaikan inferensi model, pelatihan, dan proses lainnya.
Untuk pelatihan model terdistribusi, terutama untuk model besar, ini memberikan dukungan strategi pelatihan yang kaya, termasuk paralel data, paralel model, paralel hibrid, dan sebagainya.
Library ModelScope saat ini mendukung framework deep learning yang populer untuk pelatihan dan inferensi model, termasuk PyTorch, TensorFlow, dan ONNX. Semua rilis diuji dan dijalankan pada Python 3.7+, Pytorch 1.8+, Tensorflow1.15, atau Tensorflow2.0+.
Untuk memungkinkan penggunaan out-of-box untuk semua model di ModelScope, gambar buruh pelabuhan resmi disediakan untuk semua rilis. Berdasarkan image buruh pelabuhan, pengembang dapat melewati semua instalasi dan konfigurasi lingkungan dan menggunakannya secara langsung. Saat ini, gambar CPU dan gambar GPU versi terbaru dapat diperoleh dari:
Gambar buruh pelabuhan CPU
# py37
registry.cn-hangzhou.aliyuncs.com/modelscope-repo/modelscope:ubuntu20.04-py37-torch1.11.0-tf1.15.5-1.6.1
# py38
registry.cn-hangzhou.aliyuncs.com/modelscope-repo/modelscope:ubuntu20.04-py38-torch2.0.1-tf2.13.0-1.9.5
Gambar buruh pelabuhan GPU
# py37
registry.cn-hangzhou.aliyuncs.com/modelscope-repo/modelscope:ubuntu20.04-cuda11.3.0-py37-torch1.11.0-tf1.15.5-1.6.1
# py38
registry.cn-hangzhou.aliyuncs.com/modelscope-repo/modelscope:ubuntu20.04-cuda11.8.0-py38-torch2.0.1-tf2.13.0-1.9.5
Seseorang juga dapat mengatur lingkungan ModelScope lokal menggunakan pip dan conda. ModelScope mendukung python3.7 dan yang lebih baru. Kami menyarankan anaconda untuk membuat lingkungan python lokal:
conda create -n modelscope python=3.8
conda activate modelscope
PyTorch atau TensorFlow dapat diinstal secara terpisah sesuai dengan kebutuhan masing-masing model.
Setelah menginstal kerangka pembelajaran mesin yang diperlukan, Anda dapat menginstal perpustakaan modelscope sebagai berikut:
Jika Anda hanya ingin bermain-main dengan kerangka modelscope, mencoba mengunduh model/dataset, Anda dapat menginstal komponen inti modelscope:
pip install modelscope
Jika Anda ingin menggunakan model multimodal:
pip install modelscope[multi-modal]
Jika Anda ingin menggunakan model nlp:
pip install modelscope[nlp] -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html
Jika Anda ingin menggunakan model cv:
pip install modelscope[cv] -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html
Jika Anda ingin menggunakan model audio:
pip install modelscope[audio] -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html
Jika Anda ingin menggunakan model sains:
pip install modelscope[science] -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html
Notes
:
Saat ini, beberapa model tugas audio hanya mendukung lingkungan Linux python3.7 dan tensorflow1.15.4. Kebanyakan model lainnya dapat diinstal dan digunakan pada Windows dan Mac (x86).
Beberapa model di bidang audio menggunakan perpustakaan pihak ketiga SoundFile untuk pemrosesan file wav. Pada sistem Linux, pengguna perlu menginstal libsndfile dari SoundFile secara manual (tautan doc). Di Windows dan MacOS, ini akan diinstal secara otomatis tanpa operasi pengguna. Misalnya, di Ubuntu, Anda dapat menggunakan perintah berikut:
sudo apt-get update
sudo apt-get install libsndfile1
Beberapa model di computer vision memerlukan mmcv-full, Anda dapat merujuk ke panduan instalasi mmcv, minimal instalasinya adalah sebagai berikut:
pip uninstall mmcv # if you have installed mmcv, uninstall it
pip install -U openmim
mim install mmcv-full
Kami menyediakan dokumentasi tambahan termasuk:
Proyek ini dilisensikan di bawah Lisensi Apache (Versi 2.0).
@Misc{modelscope,
title = {ModelScope: bring the notion of Model-as-a-Service to life.},
author = {The ModelScope Team},
howpublished = {url{https://github.com/modelscope/modelscope}},
year = {2023}
}