新建技能
本章节介绍如何在控制台快速新建技能。
前提条件
- 保证华为云云服务帐号不欠费。在华为HiLens控制台开发技能时,会占用OBS资源,需要收取一定费用,收费规则请参见对象存储服务 OBS。
- 提前准备技能。当前专业版HiLens控制台支持技能包和容器镜像两种格式的技能,详情请见技能介绍。
1.开始新建技能
- 登录专业版华为HiLens管理控制台,在左上角单击“专业版”,切换至专业版控制台。
- 在左侧导航栏中选择“技能开发>技能管理”,进入技能列表。
- 在“技能管理”页面,单击“新建技能”,进入“新建技能”页面。
2.填写基础信息
参数 |
说明 |
---|---|
技能名称 |
技能的名称,下发到端侧也使用该名称作为根目录。 只允许英文小写字母、数字、中划线、最大长度32的字符,必须以英文小写字母、数字开头和结尾。
说明:
由于技能市场不允许存在同名技能,所以如果想发布到技能市场,请使用全局唯一的名称对您的技能进行命名。 |
技能版本 |
技能的版本。版本号格式为“A.A.A”,“A”为不超过3位的自然数。例如“1.0.0”。 当“A”超过一位时,不允许以“0”开头,比如禁止输入“01.0.0”。 |
适用设备类型 |
技能适用的设备类型,包括Windows、Atlas 500、通用x86设备、通用ARM设备、SDC等设备类型。 |
应用场景 |
技能适用的场景,例如“园区”、“工业”、“零售”、“金融”等场景。 |
技能图标 |
技能的头像。 |
标签 |
待创建技能的标签。 单击“添加标签”,填写标签键和标签值。 只允许大小写字母、数字、下划线和中划线,不允许为空。标签名不允许重复,最大长度为36个字符;标签值最大长度为43个字符。 最多可添加20组标签。 如果删除标签,可单击“操作”列的“删除”。 |
简介 |
对技能的简单介绍。 |
描述 |
对技能的详细介绍。 |
技能格式 |
支持“技能包”和“容器镜像”两种格式,具体格式要求请见技能包和容器镜像。
|
RootKey |
使用ModelBox开发框架的加密工具ModelBox Tool加密模型后,可获取Root Key。 |
模型密钥 |
使用ModelBox开发框架的加密工具ModelBox Tool加密模型后,可获取模型密钥。 |
校验配置文件 |
对校验配置文件中的文件和路径进行校验,防止技能中的文件被篡改。使用该功能,需要使用modelbox-tool在技能包或容器镜像中增加校验配置文件。 |
3.配置启动参数
在“启动参数配置”页面填写配置信息,然后单击右下角的“下一步”。
“启动命令”、“环境变量”、“网络配置”、“数据存储”等均不是必填项,如需要配置,可选择性填写配置信息。
- 参数复用
可选择使用其他技能的部署和作业参数作为新建技能的默认值。
打开开关后,单击“选择技能”,在对话框中勾选已有技能,单击“确定”。
- 基础配置
选择是否开启特权开关。开启后,容器将可以访问主机上的所有设备。
- 启动命令
设置容器启动时执行的命令。
未填写则镜像启动运行默认命令,填写后可运行特定命令,需要用到以下设置:
- 运行命令:控制镜像运行的实际命令。
- 运行参数:传递给运行命令的参数。
- 环境变量
在容器中添加环境变量,用于设置技能运行时的变量,可通过修改部署配置来。
在“环境变量”页签,单击“添加环境变量”,当前支持“手动添加”、“密钥导入”、“配置项导入”、“变量引入”。
- 手动添加:输入变量名称、变量值。
表2 手动添加环境变量 参数
说明
类型
手动添加。
变量名称
自定义填写变量名称,如demo。
不能为空,以字母或下划线开头,只允许输入字母、数字和下划线,且最大长度不超过2048。
变量值
输入变量的值,如value。不允许输入#^ $| % & * < > ( ) 且不能超过20480个字符。
- 密钥导入:输入变量名称,选择导入的密钥名称和数据。您需要提前创建密钥,具体请参见创建密钥。
表3 密钥导入环境变量 参数
说明
类型
密钥导入。
变量名称
自定义填写变量名称,如demo。
不能为空,以字母或下划线开头,只允许输入字母、数字和下划线,且最大长度不超过2048。
配置项名称/密钥名称
请选择对应的配置项名称/密钥名称。
配置项键/密钥键
请选择对应的配置项键/密钥键。
- 配置项导入:输入变量名称,选择导入的配置项名称和数据。您需要提前创建配置项,具体请参见管理配置项。
表4 配置项导入环境变量 参数
说明
类型
配置项导入。
变量名称
自定义填写变量名称,如demo。
不能为空,以字母或下划线开头,只允许输入字母、数字和下划线,且最大长度不超过2048。
配置项名称/密钥名称
配置项名称/密钥名称。
配置项键/密钥键
配置项键/密钥键。
- 变量引入:输入变量名称。
- 手动添加:输入变量名称、变量值。
- 网络配置
创建一个网络配置参数表。容器镜像应用的访问支持使用主机网络或使用端口映射。
- 端口映射:单击“添加端口映射”,填写容器端口和主机网卡地址,选择主机端口,参数说明请见表5。
- 主机网络:单击主机网络即可。
- 数据存储
创建一个数据存储环境变量表。给容器挂载数据存储,支持本地磁盘和云存储,适用于需持久化存储、高磁盘IO等场景。
单击“添加挂载卷”,按表6填写挂载卷信息。
4.添加作业
在“添加作业配置”页面填写配置信息,然后单击右下角的“确定”。
- 名称
作业的名称,用户自定义。以小写英文字母开头,非中划线结尾,仅允许输入小写英文字母、数字、中划线和下划线,且长度为4~64个字符。
- 描述
作业的描述。输入为非#^ $| % & * < > ( ) ' " /且长度不能超过255个字符。
- 输入
技能运行时,数据输入来源,输入当前支持“摄像头”、“URL”、“Edge Restful”、“VCN”。
表7 输入参数说明 参数
说明
“摄像头”
设置待开发技能从摄像头输入数据,并设置“资源限制”和“每实例数路数限制”。
- “资源限制”
设置视频流计算所需的计算资源。申请资源量指预留的最小计算资源,限制资源量指预留的最大计算资源。当接入路数计算所需资源超过所有实例的剩余资源时,该路视频流可能无法计算。
- 起始资源:即作业中接入第1路摄像头的视频流时,计算所需的基础资源。
- 每增加1路所需资源:作业中每增加1路摄像头时所需的计算资源。
- “每实例数路数限制”
每个实例下可接入摄像头总数的最大值。
“URL”
设置待开发技能从URL输入数据。
“Edge Restful”
设置待开发技能从Edge Restful输入数据。
- 添加Edge Restful
- URL:视频流服务器提供用于获取rtsp地址的rest接口,仅支持http或https协议。
- rtsp地址相对位置:在视频流服务器提供的响应体重,rtsp地址的相对位置。例如:"data/url"表示rtsp地址在"{data:{url:'rtsp://url'}}"中的相对位置。
- 请求头:输入“属性名”和“属性值”。单击“添加消息头”,可添加多个请求头。单击,可删除请求头。
- 设置“计算资源”
计算资源指分配给每个实例的计算资源。分别设置cpu核数、内存大小的申请资源量和限制资源量。确认是否其AI加速卡。
- 申请资源量:预留给每个实例的最小计算资源。
- 限制资源量:每个实例可使用的最大计算资源。当技能运行所需资源大于所有实例的限制资源时,技能可能无法运行。
“VCN”
设置待开发技能从VCN输入数据,设置“资源限制”和“每实例数路数限制”。
- “资源限制”
设置视频流计算所需的计算资源。申请资源量指预留的最小计算资源,限制资源量指预留的最大计算资源。当接入路数计算所需资源超过所有实例的剩余资源时,该路视频流可能无法计算。
- 起始资源:即作业中接入第1路摄像头的视频流时,计算所需的基础资源。
- 每增加1路所需资源:作业中每增加1路摄像头时所需的计算资源。
- “每实例数路数限制”
每个实例下可接入摄像头总数的最大值。
- “资源限制”
- 输出
技能运行时,数据输出位置,当前支持“OBS”、“DIS”、“Webhook”、“Local Path”。
表8 输出参数说明 参数
说明
“OBS”
设置待开发的技能可输出数据至OBS。
“DIS”
设置待开发的技能可输出数据到数据接入服务(Data Ingestion Service,简称DIS)。
“Webhook”
设置待开发的技能可输出数据到Webhook。
- URL:输出数据的URL地址,仅支持http或https协议。不能为空,请输入长度不超过255个字符,且合法的云侧算法地址。
- 请求头:输入“属性名”和“属性值”。单击“添加消息头”,可添加多个请求头。单击,可删除请求头。
“Local Path”
设置待开发的技能可输出数据到Local Path。选择“输出数据类型”,填写“挂载源路径”。
- 输出数据类型:输出数据类型包括“FaceImage”和“OriginImage”。
- 挂载源路径:输出数据路径。反斜杠“/”开头和结尾,只允许英文数字和下划线。
- 参数配置
部分技能在运行的时候,需要用户配置相关的参数。比如一般人脸判断的技能都需要用户上传人脸库,运行技能时就需要配置相关的参数。
单击“添加参数”,在对话框中添加用户使用技能时需配置的参数。
表9 添加参数说明 参数
说明
参数名称
参数名。技能或容器镜像里可用该参数获取该参数的值。用户在添加技能作业时需要配置参数名称和参数的值。不能为空。
类型
参数值的类型,表示该参数项的值是什么类型的数据。支持“int”、“float”、“string”、“enum”类型。
固定值
必填项,选择该参数是否是固定值。
默认值
参数默认值。
校验规则
请输入一个合法的正则表达式字符串。
参数说明
参数的说明,包括参数值的范围及限制条件等。例如“在string类型下,输入不能为空,建议设置字符数”。
不允许输入#~$^等特殊字符且最大长度不超过512。
5.完成新建技能
上述参数填写完成后,单击右下角的“确定”,完成技能新建。
创建完成后,您的技能将进入“技能开发>技能管理”页面。