OliveSensorAPI/scripts/README_Model_Uploading.md
Anooyman de0674ccf7
Update main code (#2)
* update rag/src/data_processing.py

* Add files via upload

allow user to load embedding & rerank models from cache

* Add files via upload

embedding_path = os.path.join(model_dir, 'embedding_model')  
rerank_path = os.path.join(model_dir, 'rerank_model')

* 测试push dev

测试push dev

* Add files via upload

两个母亲多轮对话数据集合并、清理和去重之后,得到 2439 条多轮对话数据(每条有6-8轮对话)。

* optimize deduplicate.py

Add time print information
save duplicate dataset as well
remove print(content)

* add base model qlora fintuning config file: internlm2_7b_base_qlora_e10_M_1e4_32_64.py

* add full finetune code from internlm2

* other 2 configs for base model

* update cli_internlm2.py

 three methods to load model

1. download model in openxlab
2. download model in modelscope
3. offline model

* create upload_modelscope.py

* add base model and update personal contributions

* add README.md for Emollm_Scientist

* Create README_internlm2_7b_base_qlora.md

InternLM2 7B Base QLoRA 微调指南

* [DOC]EmoLLM_Scientist微调指南

* [DOC]EmoLLM_Scientist微调指南

* [DOC]EmoLLM_Scientist微调指南

* [DOC]EmoLLM_Scientist微调指南

* [DOC]EmoLLM_Scientist微调指南

* [DOC]EmoLLM_Scientist微调指南

* update

* [DOC]README_scientist.md

* delete config

* format update

* upload xlab

* add README_Model_Uploading.md and images

* modelscope model upload

* Modify Recent Updates

* update daddy-like Boy-Friend EmoLLM

* update model uploading with openxlab

* update model uploading with openxlab

---------

Co-authored-by: zealot52099 <songyan5209@163.com>
Co-authored-by: xzw <62385492+aJupyter@users.noreply.github.com>
Co-authored-by: zealot52099 <67356208+zealot52099@users.noreply.github.com>
Co-authored-by: Bryce Wang <90940753+brycewang2018@users.noreply.github.com>
Co-authored-by: HongCheng <kwchenghong@gmail.com>
2024-03-24 11:51:19 +08:00

9.1 KiB
Raw Blame History

模型上传指南

OpenXLab浦源平台

OpenXLab平台介绍

 
 

OpenXLab浦源 内容平台 是面向 AI 研究员和开发者提供 AI 领域的一站式服务平台,包含数据集中心、模型中心和应用中心。内容平台为 AI 研究员和开发者提供了所需的模型训练物料,同时也为他们提供了模型推理应用的托管服务。此外,内容平台致力于打造一个 AI 数据集、模型与应用的交流社区,为 AI 研究者提供一个分享和交流的平台。通过内容平台AI 研究者可以更好地展示自己的模型能力,并激发创造力,助力 AI 生态的可持续发展。

更多介绍请查看OpenXLab浦源平台介绍

模型创建流程

要点强调

  • 浦源-模型中心提供目前支持通过Git命令进行文件上传
  • 使用该方法进行文件上传前请您确认已安装Git
  • 由于上传需要进行权限校验这里我们推荐使用VSCode远程ssh连接InternLM AI Studio, 获取XLab秘钥

创建具体步骤

  • 步骤1点击“创建模型”按钮
  • 步骤2填写仓库相关信息
  • 步骤3上传模型相关文件

更多详情和操作步骤请查看, 请参考**模型创建流程 **(步骤1和2)上传模型(步骤3), 这里我们将给出所用到的基本步骤和需要注意的操作要点.

上传模型

上传具体步骤

  • 步骤1安装git lfs
  • 步骤2配置git和lfs
  • 步骤3配置OpenXLab秘钥
  • 步骤4在本地的文件夹内调整文件
  • 步骤5上传本地文件夹中的模型文件到OpenXLab
  • 步骤6上传后查看和添加README.md

这里展示最顺利的截图

 
 

1. 安装git lfs

curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh
apt install git-lfs

2. 配置git和lfs

git lfs install # 这个很关键
git clone https://code.openxlab.org.cn//chg0901/EmoLLM-InternLM7B-base.git  # 要上传的模型链接, 由步骤1和2创建

git lfs install会出现一个Error请忽略这是因为这条命令执行的

3. 配置OpenXLab秘钥

  • 详情请参考密钥管理, 获取您的 Git Access Token
  • 点击 “添加令牌” 按钮
  • 由于后续需要进行文件上传所以请您在新建token时选择 “可写” 权限
  • 注意:最好是重新创建一个新的令牌旧的令牌可能会导致上传权限失败
 
 

4. 在本地的文件夹内调整文件文件夹名同仓库同名和配置Git信息

将merge后的模型文件复制到git clone后的文件夹中

cd ./merge  #  merge目录下为合并后的模型
cp ./* /root/EmoLLM-InternLM7B-base/  # 复制模型到clone后的文件夹

# 配置Git信息
git config --global user.email "your email"
git config --global user.name "your OpenXLab id"  # OpenXLab id
git config --global user.password "your new key"  # 新的OpenXLab秘钥

5. 上传本地文件夹中的模型文件到OpenXLab

git add -A
git commit -m "commit EmoLLM-InternLM7B-base"
git push

push的时候, 需要填写username和password三次,

 
 

6. 上传后查看和添加README.md

上传完模型, 还可以复制之前上传的README.md文件到自己的仓库中.

处理完之后, 就可以看到自己的模型Repo了.

 
 
 
 

可能遇到的问题

可以查看下面的截图, 查看bug和解决方法以及所用的bash命令.

出现这个问题的原因是因为上传不成功或者上传被打断.

 
 
 
 
 
 

bash命令如下:

git add -A
git commit -m "commit EmoLLM-InternLM7B-base"
git push  # 出现error

# solution1
git gc --prune=now
git remote prune origin
git push

# solution2 (可能solution1无效)
git update-ref -d refs/heads/main
git fetch
git merge origin/main

# error 解决, 重新上传
git push
git commit -m "commit EmoLLM-InternLM7B-base"
git push

ModelScope

ModelScope平台介绍

ModelScope旨在打造下一代开源的模型即服务共享平台为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品让模型应用更简单

我们希望在汇集行业领先的预训练模型减少开发者的重复研发成本提供更加绿色环保、开源开放的AI开发环境和模型服务助力绿色“数字经济”事业的建设。 ModelScope平台将以开源的方式提供多类优质模型开发者可在平台上免费体验与下载使用。

模型创建

ModelScope平台内的模型创建和OpenXLab, 这里不再赘述, 可以点击ModelScope模型创建链接地址自行填写.

 
 
 
 

使用Python SDK上传模型

可以使用modelscope modelhub来将已经训练好的模型上传到ModelScope平台,

ModelScope的上传比OpenXLab简单不少, 在ModelScope社区网页创建对应模型之后只需要配置访问令牌(请从ModelScope个人中心->访问令牌获取), 然后将本地模型目录通过push_model接口进行上传即可.

需要注意的是, ModelScope要求上传的模型目录含有configuration.json文件, 我们训练的merge模型目录只有config.json, 因此可以复制这个文件然后修改文件名即可.

from modelscope.hub.api import HubApi

YOUR_ACCESS_TOKEN = '请从ModelScope个人中心->访问令牌获取'

api = HubApi()
api.login(YOUR_ACCESS_TOKEN)
api.push_model(
    model_id="yourname/your_model_id", 
    model_dir="my_model_dir" # 本地模型目录要求目录中必须包含configuration.json
)