函数:bundle_load_from_file
产品支持情况
产品 |
是否支持 |
---|---|
|
√ |
|
√ |
|
√ |
|
√ |
|
√ |
|
√ |
功能说明
模型执行阶段若涉及动态更新变量的场景,可调用本接口从文件加载离线模型数据(适配昇腾AI处理器的离线模型),由系统内部管理内存。
本接口需与以下其它接口配合使用,以便实现动态更新变量的目的,关键接口的调用流程如下:
- 基于Ascend Graph方式编译并保存模型,模型中包含多个图,例如推理图、变量初始化图、变量更新图等。
此处是调用aclgrphBundleBuildModel接口编译模型、调用aclgrphBundleSaveModel接口保存模型,接口详细描述参见《Ascend Graph开发指南》。
- 调用acl.mdl.bundle_load_from_file或acl.mdl.bundle_load_from_mem接口加载模型。
- 调用acl.mdl.bundle_get_model_id接口获取多个图的ID。
- 根据多个图的ID,分别调用模型执行接口(例如acl.mdl.execute)执行各个图。
若涉及变量更新,则在执行变量更新图之前,先调用acl.mdl.set_dataset_tensor_desc接口设置图的tensor描述信息,再执行变量更新图,然后再执行一次推理图。
- 推理结束后,调用acl.mdl.bundle_unload接口卸载模型。
函数原型
- C函数原型
1
aclError aclmdlBundleLoadFromFile(const char *modelPath, uint32_t *bundleId)
- python函数
1
bundle_id, ret = acl.mdl.bundle_load_from_file(model_path)
参数说明
返回值说明
返回值 |
说明 |
---|---|
bundle_id |
int,系统成功加载模型后,返回bundle_id作为后续操作时识别模型的标志。 |
ret |
int,错误码,返回0表示成功,返回其它值表示失败。 |
父主题: 模型加载与卸载