阿里云ModelScope 是一个“模型即服务”(MaaS)平台

news/2025/2/12 8:59:16/

在这里插入图片描述
在这里插入图片描述

简介

项目地址:https://github.com/modelscope/modelscope/tree/master

ModelScope 是一个“模型即服务”(MaaS)平台,旨在汇集来自AI社区的最先进的机器学习模型,并简化在实际应用中使用AI模型的流程。ModelScope库使开发人员能够通过丰富的API设计执行推理、训练和评估,从而促进跨不同AI领域的最先进模型的统一体验。

ModelScope Library为模型贡献者提供了必要的分层API,以便将来自 CV、NLP、语音、多模态以及科学计算的模型集成到ModelScope生态系统中。所有这些不同模型的实现都以一种简单统一访问的方式进行封装,用户只需几行代码即可完成模型推理、微调和评估。同时,灵活的模块化设计使得在必要时也可以自定义模型训练推理过程中的不同组件。

除了包含各种模型的实现之外,ModelScope Library还支持与ModelScope后端服务进行必要的交互,特别是与Model-Hub和Dataset-Hub的交互。这种交互促进了模型和数据集的管理在后台无缝执行,包括模型数据集查询、版本控制、缓存管理等。

部分模型和在线体验

ModelScope开源了数百个(当前700+)模型,涵盖自然语言处理、计算机视觉、语音、多模态、科学计算等,其中包含数百个SOTA模型。用户可以进入ModelScope网站(modelscope.cn)的模型中心零门槛在线体验,或者Notebook方式体验模型。



示例如下:

自然语言处理:

  • GPT-3预训练生成模型-中文-2.7B

  • 元语功能型对话大模型

  • 孟子T5预训练生成模型-中文-base

  • CSANMT连续语义增强机器翻译-英中-通用领域-large

  • RaNER命名实体识别-中文-新闻领域-base

  • BAStructBERT分词-中文-新闻领域-base

  • 二郎神-RoBERTa-330M-情感分类

  • SPACE-T表格问答预训练模型-中文-通用领域-base

多模态:

  • CLIP模型-中文-通用领域-base

  • OFA预训练模型-中文-通用领域-base

  • 太乙-Stable-Diffusion-1B-中文-v0.1

  • mPLUG视觉问答模型-英文-large

计算机视觉:

  • ControlNet可控图像生成

  • DAMOYOLO-高性能通用检测模型-S

  • DCT-Net人像卡通化

  • 读光-文字识别-行识别模型-中英-通用领域

  • 人体检测-通用-Base

  • RetinaFace人脸检测关键点模型

  • BSHM人像抠图

  • 图像分割-商品展示图场景的商品分割-电商领域

  • 万物识别-中文-通用领域

语音:

  • Paraformer语音识别-中文-通用-16k-离线-large-pytorch

  • 语音合成-中文-多情感领域-16k-多发音人

  • CTC语音唤醒-移动端-单麦-16k-小云小云

  • WeNet-U2pp_Conformer-语音识别-中文-16k-实时

  • FRCRN语音降噪-单麦-16k

  • DFSMN回声消除-单麦单参考-16k

科学计算:

  • Uni-Fold-Monomer 开源的蛋白质单体结构预测模型

  • Uni-Fold-Multimer 开源的蛋白质复合物结构预测模型

快速上手

我们针对不同任务提供了统一的使用接口, 使用pipeline进行模型推理、使用Trainer进行微调和评估。

对于任意类型输入(图像、文本、音频、视频…)的任何任务,只需3行代码即可加载模型并获得推理结果,如下所示:

>>> 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'])

对于微调和评估模型, 你需要通过十多行代码构建dataset和trainer,调用trainer.train()trainer.evaluate()即可。

例如我们利用gpt3 1.3B的模型,加载是诗歌数据集进行finetune,可以完成古诗生成模型的训练。

>>> 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()

为什么要用ModelScope library

  1. 针对不同任务、不同模型抽象了统一简洁的用户接口,3行代码完成推理,10行代码完成模型训练,方便用户使用ModelScope社区中多个领域的不同模型,开箱即用,便于AI入门和教学。

  2. 构造以模型为中心的开发应用体验,支持模型训练、推理、导出部署,方便用户基于ModelScope Library构建自己的MLOps.

  3. 针对模型推理、训练流程,进行了模块化的设计,并提供了丰富的功能模块实现,方便用户定制化开发来自定义自己的推理、训练等过程。

  4. 针对分布式模型训练,尤其是大模型,提供了丰富的训练策略支持,包括数据并行、模型并行、混合并行等。

安装

镜像

ModelScope Library目前支持tensorflow,pytorch深度学习框架进行模型训练、推理, 在Python 3.7+, Pytorch 1.8+, Tensorflow1.15/Tensorflow2.0+测试可运行。

为了让大家能直接用上ModelScope平台上的所有模型,无需配置环境,ModelScope提供了官方镜像,方便有需要的开发者获取。地址如下:

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-torch1.11.0-tf1.15.5-1.6.1

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.3.0-py38-torch1.11.0-tf1.15.5-1.6.1

搭建本地Python环境

你也可以使用pip和conda搭建本地python环境,我们推荐使用Anaconda,安装完成后,执行如下命令为modelscope library创建对应的python环境:

conda create -n modelscope python=3.7
conda activate modelscope

接下来根据所需使用的模型依赖安装底层计算框架

  • 安装Pytorch 文档链接
  • 安装tensorflow 文档链接

安装完前置依赖,你可以按照如下方式安装ModelScope Library。

ModelScope Libarary由核心框架,以及不同领域模型的对接组件组成。如果只需要ModelScope模型和数据集访问等基础能力,可以只安装ModelScope的核心框架:

pip install modelscope

如仅需体验多模态领域的模型,可执行如下命令安装领域依赖:

pip install modelscope[multi-modal]

如仅需体验NLP领域模型,可执行如下命令安装领域依赖(因部分依赖由ModelScope独立host,所以需要使用"-f"参数):

pip install modelscope[nlp] -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html

If you want to use cv models:

pip install modelscope[cv] -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html

如仅需体验语音领域模型,可执行如下命令安装领域依赖(因部分依赖由ModelScope独立host,所以需要使用"-f"参数):

pip install modelscope[audio] -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html

注意:当前大部分语音模型需要在Linux环境上使用,并且推荐使用python3.7 + tensorflow 1.x的组合。

如仅需体验科学计算领域模型,可执行如下命令安装领域依赖(因部分依赖由ModelScope独立host,所以需要使用"-f"参数):

pip install modelscope[science] -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html

:

  1. 目前部分语音相关的模型仅支持 python3.7,tensorflow1.15.4的Linux环境使用。 其他绝大部分模型可以在windows、mac(x86)上安装使用。.

  2. 语音领域中一部分模型使用了三方库SoundFile进行wav文件处理,在Linux系统上用户需要手动安装SoundFile的底层依赖库libsndfile,在Windows和MacOS上会自动安装不需要用户操作。详细信息可参考SoundFile 官网。以Ubuntu系统为例,用户需要执行如下命令:

    sudo apt-get update
    sudo apt-get install libsndfile1
    
  3. CV领域的少数模型,需要安装mmcv-full, 如果运行过程中提示缺少mmcv,请参考mmcv安装手册进行安装。 这里提供一个最简版的mmcv-full安装步骤,但是要达到最优的mmcv-full的安装效果(包括对于cuda版本的兼容),请根据自己的实际机器环境,以mmcv官方安装手册为准。

    pip uninstall mmcv # if you have installed mmcv, uninstall it
    pip install -U openmim
    mim install mmcv-full
    

更多教程

除了上述内容,我们还提供如下信息:

  • 更加详细的安装文档
  • 任务的介绍
  • 模型推理
  • 模型微调
  • 数据预处理
  • 模型评估
  • 贡献模型到ModelScope

License

本项目使用Apache License (Version 2.0).


http://www.ppmy.cn/news/1148252.html

相关文章

【原创】ubuntu18修改IP地址

打开网络配置文件 sudo vi /etc/network/interfaces结果发现如下内容: # ifupdown has been replaced by netplan(5) on this system. See # /etc/netplan for current configuration. # To re-enable ifupdown on this system, you can run: # sudo apt inst…

BurpSuite超详细安装教程-功能概述-配置-使用教程---(附下载链接)

一、介绍 BurpSuite是渗透测试、漏洞挖掘以及Web应用程序测试的最佳工具之一,是一款用于攻击web 应用程序的集成攻击测试平台,可以进行抓包、重放、爆破,包含许多工具,能处理对应的HTTP消息、持久性、认证、代理、日志、警报。 二…

KubeVela可持续测试应用部署之Mock基础设施

Mock接口是我们常用的功能测试方案,有时候依赖的接口未开发完成或者依赖的第三方接口不提供测试环境等,只有Mock才能跑通流程。 我们基于KubeVela开发的云原生应用交付平台,提供如初始化基础设施导入、中间件部署共用基础设施等相关能力的测试,需要依赖基础设施。虽然terr…

二叉搜索树--查询节点-力扣 700 题

例题细节讲过(二叉搜索树的基础操作-CSDN博客)&#xff0c;下面给出递归实现 public TreeNode searchBST(TreeNode node, int val) {if(node null) {return null;}if(val < node.val) {return searchBST(node.left, val);} else if(node.val < val) {return searchBST(…

Camtasia Studio2024最新版本正式更新上线!

Camtasia Studio2024是一款专门录制屏幕动作的工具&#xff0c;它能在任何颜色模式下轻松地记录 屏幕动作&#xff0c;包括影像、音效、鼠标移动轨迹、解说声音等等&#xff0c;简单实用的视频录制软件,游戏的精彩画面,网络视频,屏幕录制可以让您录制屏幕所有内容视频录制支持3…

冠军代言|媒介易:释放品牌潜力,实力助力,助您势如破竹!

在竞争激烈的市场中&#xff0c;品牌需要不断创新&#xff0c;找到吸引目标客户的方法。而与体育冠军合作&#xff0c;通过冠军代言&#xff0c;已经成为了众多企业提高品牌知名度、树立形象、吸引消费者目光的重要策略之一。在这个领域&#xff0c;媒介易以其实力加冕&#xf…

C++ PCL点云曲率分割颜色标识

程序示例精选 C PCL点云曲率分割颜色标识 如需安装运行环境或远程调试&#xff0c;见文章底部个人QQ名片&#xff0c;由专业技术人员远程协助&#xff01; 前言 这篇博客针对《C PCL点云曲率分割颜色标识》编写代码&#xff0c;代码整洁&#xff0c;规则&#xff0c;易读。 学…

TensorFlow入门(二十、损失函数)

损失函数 损失函数用真实值与预测值的距离指导模型的收敛方向,是网络学习质量的关键。不管是什么样的网络结构,如果使用的损失函数不正确,最终训练出的模型一定是不正确的。常见的两类损失函数为:①均值平方差②交叉熵 均值平方差 均值平方差(Mean Squared Error,MSE),也称&qu…