资讯 文档
技术能力
语音技术
文字识别
人脸与人体
图像技术
语言与知识
视频技术

快速导入并部署第三方模型

为了便于您快速了解自定义模型的导入及发布,您可以按照以下步骤进行相关操作。

前提准备

  1. 需要您提前开通对象存储BOS服务

支持范围

1.模型导入支持多种推理引擎及版本。 支持范围如下:

* 文生文模型导入。
    * Transformers: 4.34.0、4.36.2、4.39.3、4.40.2、4.43.2
    * vLLm:0.3.2、0.4.0、0.5.3、0.6.3、0.7.2
    * llama.cpp:b4800
* 深度推理模型导入。:
    * vLLm:0.6.3、0.7.2
    * llama.cpp: b4800
* 向量模型导入
    * SentenceTransformer:2.7.0
    * Trasformers:4.44.2
* 重排序模型导入
    * BCEmbedding:0.1.5
    * Transformer:4.36.2、4.46.3
* 图像理解模型导入
    * 当前支持qwen、InterVL等模型,具体范围参考导入时基础模型版本
* 图像生成模型导入
    * 支持Safetensors格式的LoRA模型导入,当前仅支持Stable-Diffusion-XL的LoRA模型
  1. 平台支持内测用户导入ERNIE系列模型,请您务必确认基础模型类型、压缩方式、模型静态图文件格式准确,并向模型提供方确认加解密权限已赋予本平台、确认Paddle架构版本为5.x。
  2. 平台支持本地全量参数微调后模型导入。

导入模型

登录到本平台,在左侧功能列模型管理中选择我的模型,进入创建模型的主任务界面。

  1. 点击“创建模型”按钮,进行模型新建,填写以下基本信息:

image.png

2.选择已完成的训练任务及运行,创建一个新的模型版本,具体字段包括:

  • 模型版本:平台自动生成,版本号从V1起递增。
  • 模型版本描述:非必填项,自定义的版本描述,记录模型的业务场景、使用方式等信息。
  • 模型来源选择BOS,填写相应的Bucket和模型地址。模型需要提前上传到BOS平台,可以登录BOS控制台或者使用BOS工具上传

image.png

导入ERNIE系列模型

本功能当前仅对内测用户公开,您可以时刻保持对官网动态的关注。

导入模型的支持范围:

基础模型版本 采样策略 精度
ERNIE-BLM-4K 束搜索 Beam Search,需自定义num_beams WINT8
ERNIE-BLM-Chat-8K 多项式采样 Multinomial Sampling WINT8
ERNIE-BLM-Pro-8K 束搜索 Beam Search,需自定义num_beams WINT8
ERNIE-BLM-Tiny-8K 束搜索 Beam Search,需自定义num_beams WINT8
ERNIE-Character-8K-0321 多项式采样 Multinomial Sampling WINT8、BF16
ERNIE-Code2-16K 多项式采样 Multinomial Sampling INT8-PTQ
ERNIE-Lite-128K-0419 多项式采样 Multinomial Sampling WINT8、INT8-PTQ
ERNIE-Lite-8K-0308 多项式采样 Multinomial Sampling INT8-PTQ、WINT8、BF16
ERNIE-Speed-8K 多项式采样 Multinomial Sampling WINT8、BF16
ERNIE-Tiny-8K 多项式采样 Multinomial Sampling BF16
ERNIE-Tiny-128K-0929 多项式采样 Multinomial Sampling WINT8

以上名词释义可查看常用概念

  • 支持导入的模型格式包含 原始格式(bf16)、压缩格式(wint8、ptq)。注当前ERNIE-Tiny-8K和ERNIE-Tiny-128K-0929暂不支持压缩格式。
  • 在同一模型下导入不同版本的模型,需要保障不同版本的模型格式、基础底座模型保持相同,否则模型部署更新版本的时候将可能导致服务部署失败。
  • speed、lite、tiny模型是从本平台或者其他环境导出以后,目录文件说明如下:

    • 目录1:为模型文件,该目录下包含rank_0目录,可以直接将目录1导入bos。本质是只需要将包含rank_0目录的上级目录,导入BOS。
    • 目录raw:为checkpoint文件目录,不需要导入bos。
    • 假定导入的bos目录为:/testmc/ernie-import/1,则导入目录选择为/testmc/ernie-import/1/,如下图所示:

image.png

  • 假定code2模型目录名称为code2-model,该目录下包含rank_0目录和config.json等文件。则只需要上传code2-model目录。目录即文件示意:code2-model/rank_0/code2-model/config.json

导入HF系列模型

  • 输入输出模式多轮对话chat模型选择【对话模式】,单轮问答模型选择【续写模式】
  • 如果您选择对话模式还需配置历史对话和当前问题的prompt:平台将根据此配置自动拼接当前用户问题和历史轮次问答,方便用户在线测试或接入对话类应用。
  • 两种模式都支持【高级配置】,默认示例如下:
{
    "load_model_class": "AutoModelForCausalLM",
    "load_tokenizer_class": "AutoTokenizer",
    "enable_auto_batch": true,
    "custom_end_str": "",
    "token_decode_return_blank": true,
    "tokenizer_special_tokens": {}
}

更多关注事项,可查看自定义HF导入模型高级参数详细说明

注:高级参数说明

  • load_model_class:模型加载类,用于加载transformers模型;默认值 AutoModelForCausalLM
  • load_tokenizer_class:tokenizer加载类,用于加载模型;默认值 AutoTokenizer
  • enable_auto_batch:处理请求时,是否支持auto batch;是否开启auto batch推理,增加服务吞吐;若模型batch推理不兼容,开启后可能导致效果有误;默认值:true;
  • custom_end_str:自定义生成结束字符串;防止模型不断生成;默认为空值,表示不设置;
  • token_decode_return_blank: 指定英文token解码后是否带有空格,设置为false时,平台会在英文单词间加入空格;默认值为true;
  • tokenizer_special_tokens:选填,需要添加到tokenizer的特殊token;例如 {"pad_token": "[PAD]"}

导入示例

多轮对话chat模型导入

示例模型:chatglm2-6b-int4

详细信息可参考示例模型

输入输出模式中选择【对话模式】,prompt配置如下

  • 当前问题拼接规范: [Round {round}]\n\n问:{question}\n\n答:
  • 历史问答拼接规范: [Round {round}]\n\n问:{question}\n\n答:{answer}\n\n
  • 外层Prompt模板: {input}

高级配置:

{
    "load_model_class": "AutoModel",
    "token_decode_return_blank": false
}

image.png

单轮问答模型导入

示例模型:sqlcoder

详细信息可参考示例模型

输入输出模式中选择【续写模式】。
其中高级配置使用默认配置。

image.png

本地全量参数微调后模型导入

示例模型:chatglm2-6b全量参数微调模型

  1. 我的模型中选择创建模型,按照下图所示填写基本信息。

image.png

  1. 模型配置项,填写模型上传BOS的Bucket地址,本地全量参数微调以后的chatglm2-6b模型应该提前上传至此文件夹。

image.png

  1. 选择输入输出模式为对话模式,保存对话模式的默认配置。

image.png

  1. 打开高级配置,并输入以下配置内容。

image.png

{
    "custom_end_str": "",
    "enable_auto_batch": true,
    "load_model_class": "AutoModelForCausalLM",
    "load_tokenizer_class": "AutoTokenizer",
    "token_decode_return_blank": true,
    "tokenizer_special_tokens": {}
}

以上步骤完成后,点击“确定”即可

image.png

更多操作可查看BOS导入模型

部署服务

部署完毕后进入【我的模型】点击刚导入的模型进入【模型详情】页,模型【版本状态】变成“就绪”说明模型导入成功; 点击【部署】按钮进入【创建服务】。

image.png

按下图流程完善服务部署,将服务按算力单元部署。

image.png

更多服务部署操作内容可参考在线服务使用说明

在线测试

进入【体验中心】页,左上角【选择服务】选择部署的服务,输入框输入请求数据,获取结果。

image.png

更多在线测试操作内容可参考体验中心使用说明

上一篇
模型训练
下一篇
快速导入deepseek V2模型