ModelScope 是一个“模型即服务”(MaaS)平台,由阿里巴巴集团的达摩院推出和维护。它旨在汇集来自AI社区的最先进的机器学习模型,并简化在实际应用中使用AI模型的流程。通过ModelScope,用户可以轻松地探索、推理、微调和部署各种AI模型。
注册登录ModelScope平台,进入导航栏模型库,可以搜索internlm找到相关模型(但是这也包括非官方模型),在这里我们可以搜索 internlm2_5-chat-1_8b,下载1.8b的对话模型,也类似于hugging face 一样拥有具体的详情页。
2.2.1 创建开发机
我们选择 10% 的开发机,镜像选择为 Cuda-12.2。在输入开发机名称后,点击创建开发机。
创建好开发机后,进入开发机
接着在当前终端上可以输入命令了,这里可以直接粘贴以下命令。最好一行一行粘贴等每个命令跑完之后再粘贴下一行
2.2.2 环境配置
为ms_demo创建一个可用的conda虚拟环境,可以和其他环境区分开来
# 激活环境 conda activate /root/share/pre_envs/pytorch2.1.2cu12.1 # 安装 modelscope pip install modelscope -t /root/env/maas#-t就是安装到指定位置 pip install numpy==1.26.0 -t /root/env/maas pip install packaging -t /root/env/maas
注意:为了保证能够找到我们每次装的依赖,每次新建一个终端之后都需要导出path 如果不改变终端,导出一次就够了
export PATH=$PATH:/root/env/maas/bin export PYTHONPATH=/root/env/maas:$PYTHONPATH
接着创建我们的demo目录
mkdir -p /root/ms_demo #-p就是本身已经存在不会报错,不存在就创建
2.2.3 下载指定多个文件
- internlm2_5-7b-chat 考虑到7B的模型文件比较大,这里我们先采用modelscope的cli工具(当然hugging face也有)来下载指定文件,在命令行输入以下命令
modelscope download \ --model 'Shanghai_AI_Laboratory/internlm2_5-7b-chat' \ tokenizer.json config.json model.safetensors.index.json \ --local_dir '/root/ms_demo'
刷新一下文件目录,就能看到在ms_demo中下载了指定的json文件。
- internlm2_5-1_8b-chat
modelscope download \ --model 'Shanghai_AI_Laboratory/internlm2_5-1_8b-chat' \ tokenizer.json config.json model.safetensors.index.json \ --local_dir '/root/ms_demo'
注意:我的没下载下来 查不到可执行文件 目前没有解决问题 如果有知道问题在哪里的 评论区告诉一下
2.2.4 上传模型
魔搭社区类似HF,也有一套创建模型的界面。不同的是,它具有审核机制,当符合它的社区规范时才会被公开。那么当上传正常的模型文件后,审核一般就会通过了。
上传文件的方法可以直接通过平台添加文件,也可以通过git下载模型后进行修改和上传文件
#Git模型下载 git clone https://www.modelscope.cn/<your_username>/<your_model>
2.3 魔乐社区平台
魔乐社区(Modelers)是一个提供多样化、开源模型的平台,旨在促进开发者和研究人员在最先进的模型和流行应用上进行协作。
2.3.1 下载internlm2_5-chat-1_8b模型
这里我们可以继续使用我们刚刚创建的InterStudio开发机
cd / #切换到根目录
mkdir ml_demo#创建目录
cd ml_demo #进去目录
然后我们可以下载该模型,这里
# 确保安装git-lfs 保证大文件的正常下载
apt-get install git-lfs
git lfs install
# clone 仓库
git clone https://modelers.cn/Intern/internlm2_5-1_8b-chat.git
刷新一下文件夹,即可在ml_demo中找到下载好的模型文件,在魔乐社区中,还推荐了一个新的深度学习开发套件openMind Library,除了常用的Transforms的API,也可以探索如何使用openMind来加载模型
# 确保按指南安装好openmind后 from openmind import AutoModel model = AutoModel.from_pretrained("Intern/internlm2_5-1_8b-chat", trust_remote_code="True")
openMind Library是一个深度学习开发套件,通过简单易用的API支持模型预训练、微调、推理等流程。 openMind Library通过一套接口兼容PyTorch和MindSpore等主流框架,同时原生支持昇腾NPU处理器。
2.3.2 上传模型
在魔乐社区一般有两种方法,第一种是安装好openmid后使用openmind的API来上传文件,另一个就是用git命令来推送文件,跟一般的git工作流相类似。可参考上传文件 | 魔乐社区
2.4 始智AI平台
始智AI平台(wisemodel)是一个中立开放的AI开源社区, 是一个提供多样化开源模型、数据集以及训练和微调的一站式平台。
2.4.1 下载llava-internlm2-7B模型
注册好该平台后,我们可以在创建好的InternStudio开发机下下载模型
cd / mkdir wise_model cd wise_model
假设的账户名是username,那么可以用以下方式,下载公有仓库的模型
git lfs install git clone https://www.wisemodel.cn/username/llava-internlm2-7b.git
如果涉及到私有仓库,需要创建git token进行操作,具体请参考上传文件 | 始智AI-wisemodel
2.4.2 上传模型
假设你的模型文件位于/work/my_model_dir本地目录下:
cd my_test_model #进入同步模型仓库的目录 cp -rf /work/my_model_dir/* . #从/work/my_model_dir本地目录把文件拷贝到模型仓库 git add -A . #执行更新git目录 git commit -m "commit message" #合并文件并填写更新说明 git push #将本地文件上传更新