triton支持mslite backend,模型配置参数说明

举报
stable feeling 发表于 2023/09/26 15:32:38 2023/09/26
【摘要】 1、配置样例backend: "mslite"max_batch_size: 1input [{ name: "input_ids" data_type: TYPE_INT32 dims: [ 70 ] }]output [ { name: "logits" data_type: TYPE_FP32 dims: [ 3 ] }]instance_g...

1、配置样例

backend: "mslite"
max_batch_size: 1
input [{
    name: "input_ids"
    data_type: TYPE_INT32
    dims: [ 70 ]
  }
]
output [
  {
    name: "logits"
    data_type: TYPE_FP32
    dims: [ 3 ]
  }
]
instance_group [
  {
    count: 10
    kind: KIND_CPU
  }
]
parameters [
  {
    key: "device_type"
    value: {string_value: "ascend"}
  },
  {
    key: "mslite_0"
    value: {string_value: "0"}
  }
]

2、参数说明

2.1 backend

指定使用的backend,当进行mslite模型推理时,必须指定为mslite

2.2 max_batch_size

大于等于0的数。当max_batch_size=0时,代表模型不支持多request组batch;当max_batch_size>0时,代表模型支持多request组batch,并且模型支持的最大组batch数为max_batch_size。

配置max_batch_size时请确保模型支持的动态batch档位大于等于max_batch_size。

2.3 input/output

配置模型的输入/输出信息。可以支持多个输入/输出,配置如下:

input [
  {
    name: "input0"
    data_type: TYPE_FP32
    dims: [ 3, 224, 224 ]
  },
  {
    name: "input1"
    data_type: TYPE_FP32
    dims: [ 3, 224, 224 ]
  }
]

2.3.1 name

输入/输出名称,字符串类型。配置方式为:name: “input0”。

输入/输出名称不要求和模型的输入名称必须一致,但是在请求推理时需要使用该名称构建输入/输出。

2.3.2 data_type

输入/输出的数据类型。配置方式为:data_type:[数据类型]

支持的数据类型如下:

data_type
TYPE_BOOL
TYPE_UINT8
TYPE_UINT16
TYPE_UINT32
TYPE_UINT64
TYPE_INT8
TYPE_INT16
TYPE_INT32
TYPE_INT64
TYPE_FP16
TYPE_FP32
TYPE_FP64

2.3.3 dims

输入/输出的shape。配置方式为:dims: [ 3, 224, 224 ]。

当max_batch_size>0时,需要省略第0维。如果输入的维度是不固定的,则需要设置成-1。

2.3.4 instance_group

配置使用的设备信息及控制实例数量,需要与parameters配合使用。可以配置多个,如下

instance_group [
  {
    count: 2                  // 加载模型总数
    kind: KIND_CPU            // 复用CPU属性进行配置
  },
  {
    count: 4                  // 加载模型总数
    kind: KIND_CPU            // 复用CPU属性进行配置
  }
]

2.3.5 kind

配置用的设备类型。使用昇腾的设备需要配置为:KIND_CPU。

目前kind支持KIND_CPU/KIND_GPU配置,Ascend设备复用CPU配置,当进行mindir模型推理时必须配置为KIND_CPU。

2.3.6 count

配置每个instance_group上创建的模型实例的数量,配置方式为:count: 1。

取值[1, 1000),配置数量请保证设备能够支持全部加载上。

2.4 paramters

配置使用昇腾设置信息,需与instance_group配合使用,使用mslite backend时,第一个元素是固定的,如下

{
	key: "device_type"
	value: {string_value: "ascend"}
}

支持多个配置,多个配置时与instance_group中的元素是对应关系,即instance_group中的单元控制起的实例数,paramters中得单元控制部署在哪些设备上,样例如下:

parameters [
    {
        key: "device_type"
        value: {string_value: "ascend"}
    },
    {
    	key: "ascend_group_0"     // 对应的instance_group_0配置
    	value: {string_value: "1"}// instance_group_0配置的设备ID
    },
    {
    	key: "ascend_group_1"     // 对应的instance_group_0配置
    	value: {string_value: "2"}// instance_group_0配置的设备ID
    }
]

2.4.1 key

配置昇腾设备ID的索引字段,配置方式为key: “ascend_group_{index}”,其中{index}为对应的instance_group的序号(从0开始计数)

2.4.2 value

配置昇腾设备ID的说明字段,配置方式为value: {string_value: “1,2…”},string_value对应的值即为配置的设备ID

说明:这里在部署的时候只支持单卡,默认写0即可

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。