ความไม่ลงรอยกัน
อังกฤษ | 中文 | 日本語
ModelScope สร้างขึ้นจากแนวคิด “Model-as-a-Service” (MaaS) โดยพยายามรวบรวมโมเดลการเรียนรู้ของเครื่องที่ทันสมัยที่สุดจากชุมชน AI และปรับปรุงกระบวนการใช้ประโยชน์จากโมเดล AI ในแอปพลิเคชันในโลกแห่งความเป็นจริง ไลบรารี ModelScope หลักแบบโอเพ่นซอร์สในพื้นที่เก็บข้อมูลนี้มอบอินเทอร์เฟซและการใช้งานที่ช่วยให้นักพัฒนาสามารถอนุมานโมเดล ฝึกอบรม และประเมินผลได้
โดยเฉพาะอย่างยิ่ง ด้วยชั้นของ API-abstraction ที่หลากหลาย ไลบรารี ModelScope มอบประสบการณ์แบบครบวงจรในการสำรวจโมเดลที่ล้ำสมัยซึ่งครอบคลุมทั่วทั้งโดเมน เช่น CV, NLP, Speech, Multi-Modality และการคำนวณทางวิทยาศาสตร์ ผู้ร่วมสร้างโมเดลในพื้นที่ต่างๆ สามารถรวมโมเดลเข้ากับระบบนิเวศของ ModelScope ผ่านทาง Layered-API ซึ่งช่วยให้เข้าถึงโมเดลของตนได้อย่างง่ายดายและเป็นหนึ่งเดียว เมื่อบูรณาการแล้ว การอนุมานโมเดล การปรับแต่งอย่างละเอียด และการประเมินสามารถทำได้โดยใช้โค้ดเพียงไม่กี่บรรทัด ในขณะเดียวกัน ก็ยังมีความยืดหยุ่นเพื่อให้ส่วนประกอบต่างๆ ในแอปพลิเคชันโมเดลสามารถปรับแต่งได้ทุกที่ที่จำเป็น
นอกเหนือจากการเก็บการใช้งานโมเดลต่างๆ ที่หลากหลายแล้ว ไลบรารี ModelScope ยังเปิดใช้งานการโต้ตอบที่จำเป็นกับบริการแบ็กเอนด์ของ ModelScope โดยเฉพาะอย่างยิ่งกับ Model-Hub และ Dataset-Hub การโต้ตอบดังกล่าวช่วยอำนวยความสะดวกในการจัดการเอนทิตีต่างๆ (โมเดลและชุดข้อมูล) ที่จะดำเนินการได้อย่างราบรื่นภายใต้ประทุน รวมถึงการค้นหาเอนทิตี การควบคุมเวอร์ชัน การจัดการแคช และอื่นๆ อีกมากมาย
มีโมเดลหลายร้อยแบบเผยแพร่สู่สาธารณะบน ModelScope (มากกว่า 700 รุ่นและยังคงเพิ่มขึ้นเรื่อยๆ) ครอบคลุมการพัฒนาล่าสุดในด้านต่างๆ เช่น NLP, CV, เสียง, หลากหลายรูปแบบ และ AI สำหรับวิทยาศาสตร์ เป็นต้น โมเดลเหล่านี้จำนวนมากแสดงถึง SOTA ใน เฉพาะสาขา และเปิดตัวโอเพ่นซอร์สบน ModelScope ผู้ใช้สามารถเยี่ยมชม ModelScope(modelscope.cn) และสัมผัสประสบการณ์โดยตรงว่าโมเดลเหล่านี้ทำงานอย่างไรผ่านประสบการณ์ออนไลน์ได้ด้วยการคลิกเพียงไม่กี่ครั้ง ประสบการณ์นักพัฒนาทันทีสามารถทำได้ผ่าน ModelScope Notebook ซึ่งได้รับการสนับสนุนโดยสภาพแวดล้อมการพัฒนา CPU/GPU ที่พร้อมใช้งานในระบบคลาวด์ - เพียงคลิกเดียวบน ModelScope
ตัวอย่างที่เป็นตัวแทนบางส่วนได้แก่:
นิติศาสตร์มหาบัณฑิต:
Yi-1.5-34B-แชท
Qwen1.5-110B-แชท
DeepSeek-V2-แชท
Ziya2-13B-แชท
Meta-Llama-3-8B-คำสั่ง
Phi-3-mini-128k-instruct
หลายกิริยา:
Qwen-VL-แชท
ยี-VL-6B
ฝึกงานVL-Chat-V1-5
deepseek-vl-7b-แชท
OpenSoraPlan
โอเพ่นโซรา
I2VGen-XL
ประวัติย่อ:
DamoFD รุ่นจุดสำคัญในการตรวจจับใบหน้า - 0.5G
BSHM Portrait Matting
การทำการ์ตูนแนวตั้ง DCT-Net - 3D
โมเดลการ์ตูนแนวตั้ง DCT-Net - 3D
DuGuang - การรู้จำข้อความ - โมเดลการรู้จำบรรทัด - ภาษาจีนและอังกฤษ - โดเมนทั่วไป
DuGuang - การรู้จำข้อความ - โมเดลการรู้จำบรรทัด - ภาษาจีนและอังกฤษ - โดเมนทั่วไป
ลามะ อิมเมจ อินเพ้นท์ติ้ง
เสียง:
การรู้จำเสียง Paraformer - จีน - ทั่วไป - 16k - ออฟไลน์ - ขนาดใหญ่ - เวอร์ชันเสียงยาว
การตรวจจับปลายทางเสียง FSMN - จีน - ทั่วไป - 16k - onnx
Monotonic-Aligner Speech Timestamp Prediction - 16k - ออฟไลน์
เครื่องหมายวรรคตอน CT-Transformer - จีน - ทั่วไป - onnx
การสังเคราะห์เสียงพูด - จีน - โดเมนหลากหลายอารมณ์ - 16k - ลำโพงหลายตัว
การตรวจสอบลำโพง CAM++ - จีน - ทั่วไป - 200k-Spkrs
เอไอเพื่อวิทยาศาสตร์:
ยูนิพับโมโนเมอร์
มัลติพับเดียว
หมายเหตุ: โมเดลส่วนใหญ่บน ModelScope เป็นแบบสาธารณะและสามารถดาวน์โหลดได้โดยไม่ต้องลงทะเบียนบัญชีบนเว็บไซต์ modelscope (www.modelscope.cn) โปรดดูคำแนะนำสำหรับการดาวน์โหลดโมเดล สำหรับการดาวน์โหลดโมเดลด้วย api ที่จัดทำโดยไลบรารี modelscope หรือ git
เรามีอินเทอร์เฟซแบบรวมสำหรับการอนุมานโดยใช้ pipeline
การปรับแต่งอย่างละเอียดและการประเมินผลโดยใช้ Trainer
สำหรับงานต่างๆ
สำหรับงานใดก็ตามที่มีอินพุตประเภทใดก็ได้ (รูปภาพ ข้อความ เสียง วิดีโอ...) ไปป์ไลน์การอนุมานสามารถใช้งานได้โดยใช้โค้ดเพียงไม่กี่บรรทัด ซึ่งจะโหลดโมเดลต้นแบบโดยอัตโนมัติเพื่อรับผลการอนุมาน ดังตัวอย่างที่อธิบายไว้ ด้านล่าง:
> >> from modelscope . pipelines import pipeline
> >> word_segmentation = pipeline ( 'word-segmentation' , model = 'damo/nlp_structbert_word-segmentation_chinese-base' )
> >> word_segmentation ( '今天天气不错,适合出去游玩' )
{ 'output' : '今天 天气 不错 , 适合 出去 游玩' }
เมื่อพิจารณาจากรูปภาพแล้ว การจัดวางแนวตั้ง (หรือการลบพื้นหลัง) สามารถทำได้โดยใช้ข้อมูลโค้ดต่อไปนี้:
> >> 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' ])
รูปภาพเอาต์พุตที่ลบพื้นหลังออกคือ:
การปรับแต่งและการประเมินอย่างละเอียดยังสามารถทำได้ด้วยโค้ดอีกสองสามบรรทัดเพื่อตั้งค่าชุดข้อมูลการฝึกอบรมและผู้ฝึกสอน โดยเป็นงานหนักในการฝึกอบรมและการประเมินแบบจำลองที่ห่อหุ้มไว้ในการใช้งาน traner.train()
และ trainer.evaluate()
อินเทอร์เฟซ
ตัวอย่างเช่น สามารถปรับแต่งโมเดลพื้นฐาน gpt3 (1.3B) อย่างละเอียดด้วยชุดข้อมูลบทกวีจีน ทำให้เกิดแบบจำลองที่สามารถใช้สำหรับการสร้างบทกวีจีนได้
> >> 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 ()
อินเทอร์เฟซผู้ใช้ที่เป็นหนึ่งเดียวและกระชับได้รับการออกแบบมาเพื่องานและรุ่นที่แตกต่างกัน การอนุมานและการฝึกอบรมแบบจำลองสามารถนำไปใช้ได้โดยใช้โค้ดเพียง 3 และ 10 บรรทัดตามลำดับ สะดวกสำหรับผู้ใช้ในการสำรวจโมเดลในสาขาต่างๆ ในชุมชน ModelScope โมเดลทั้งหมดที่รวมอยู่ใน ModelScope พร้อมใช้งานแล้ว ซึ่งทำให้ง่ายต่อการเริ่มต้นใช้งาน AI ทั้งในสภาพแวดล้อมทางการศึกษาและอุตสาหกรรม
ModelScope นำเสนอประสบการณ์การพัฒนาและการใช้งานที่เน้นโมเดลเป็นศูนย์กลาง ช่วยเพิ่มความคล่องตัวในการสนับสนุนการฝึกอบรมโมเดล การอนุมาน การส่งออก และการปรับใช้ และอำนวยความสะดวกให้ผู้ใช้สร้าง MLOps ของตนเองตามระบบนิเวศของ ModelScope
สำหรับกระบวนการอนุมานโมเดลและกระบวนการฝึกอบรม จะมีการออกแบบโมดูลาร์ และมีการใช้งานโมดูลฟังก์ชันต่างๆ มากมาย ซึ่งสะดวกสำหรับผู้ใช้ในการปรับแต่งการอนุมานโมเดล การฝึกอบรม และกระบวนการอื่นๆ ของตนเอง
สำหรับการฝึกโมเดลแบบกระจาย โดยเฉพาะอย่างยิ่งสำหรับโมเดลขนาดใหญ่ จะให้การสนับสนุนกลยุทธ์การฝึกที่หลากหลาย รวมถึงข้อมูลแบบขนาน โมเดลแบบขนาน ไฮบริดแบบขนาน และอื่นๆ
ปัจจุบัน ModelScope Library รองรับเฟรมเวิร์กการเรียนรู้เชิงลึกยอดนิยมสำหรับการฝึกโมเดลและการอนุมาน รวมถึง PyTorch, TensorFlow และ ONNX รุ่นทั้งหมดได้รับการทดสอบและรันบน Python 3.7+, Pytorch 1.8+, Tensorflow1.15 หรือ Tensorflow2.0+
เพื่อให้สามารถใช้งานได้ทันทีสำหรับทุกรุ่นบน ModelScope จึงจัดให้มีอิมเมจนักเทียบท่าอย่างเป็นทางการสำหรับทุกรุ่น ตามอิมเมจนักเทียบท่า นักพัฒนาสามารถข้ามการติดตั้งและกำหนดค่าสภาพแวดล้อมทั้งหมดและใช้งานได้โดยตรง ปัจจุบันสามารถรับอิมเมจ CPU และอิมเมจ GPU เวอร์ชันล่าสุดได้จาก:
ภาพนักเทียบท่า 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
ภาพนักเทียบท่า 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
ท่านสามารถตั้งค่าสภาพแวดล้อม ModelScope ในเครื่องโดยใช้ pip และ conda ModelScope รองรับ python3.7 ขึ้นไป เราขอแนะนำอนาคอนดาสำหรับสร้างสภาพแวดล้อมหลามในพื้นที่:
conda create -n modelscope python=3.8
conda activate modelscope
PyTorch หรือ TensorFlow สามารถติดตั้งแยกกันได้ตามความต้องการของแต่ละรุ่น
หลังจากติดตั้งเฟรมเวิร์กแมชชีนเลิร์นนิงที่จำเป็น คุณสามารถติดตั้งไลบรารี modelscope ได้ดังต่อไปนี้:
หากคุณต้องการทดลองใช้กรอบงาน modelscope เท่านั้น เพื่อทดลองใช้การดาวน์โหลดโมเดล/ชุดข้อมูล คุณสามารถติดตั้งส่วนประกอบหลักของ modelscope ได้:
pip install modelscope
หากคุณต้องการใช้โมเดลหลายรูปแบบ:
pip install modelscope[multi-modal]
หากคุณต้องการใช้โมเดล nlp:
pip install modelscope[nlp] -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html
หากคุณต้องการใช้โมเดล CV:
pip install modelscope[cv] -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html
หากคุณต้องการใช้โมเดลเสียง:
pip install modelscope[audio] -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html
หากคุณต้องการใช้แบบจำลองทางวิทยาศาสตร์:
pip install modelscope[science] -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html
Notes
:
ในปัจจุบัน โมเดลงานเสียงบางรุ่นรองรับเฉพาะสภาพแวดล้อม python3.7, tensorflow1.15.4 Linux เท่านั้น รุ่นอื่นๆ ส่วนใหญ่สามารถติดตั้งและใช้งานได้บน Windows และ Mac (x86)
บางรุ่นในช่องเสียงใช้ไลบรารีของบริษัทอื่น SoundFile สำหรับการประมวลผลไฟล์ wav บนระบบ Linux ผู้ใช้จำเป็นต้องติดตั้ง libsndfile ของ SoundFile (ลิงก์ doc) ด้วยตนเอง บน Windows และ MacOS จะถูกติดตั้งโดยอัตโนมัติโดยไม่ต้องให้ผู้ใช้ดำเนินการ ตัวอย่างเช่น บน Ubuntu คุณสามารถใช้คำสั่งต่อไปนี้:
sudo apt-get update
sudo apt-get install libsndfile1
คอมพิวเตอร์วิทัศน์บางรุ่นจำเป็นต้องมี mmcv-full คุณสามารถดูคู่มือการติดตั้ง mmcv การติดตั้งขั้นต่ำมีดังนี้:
pip uninstall mmcv # if you have installed mmcv, uninstall it
pip install -U openmim
mim install mmcv-full
เราจัดเตรียมเอกสารเพิ่มเติมได้แก่:
โครงการนี้ได้รับอนุญาตภายใต้ Apache License (เวอร์ชัน 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}
}