---
title: 函数：load_with_config
description: "指定模型加载时需要的配置信息，并进行模型加载。"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/API/ascendgraphapi/aclpythondevg_01_0163.html
sourcePath: /source/zh/canncommercial/900/API/ascendgraphapi/aclpythondevg_01_0163.html
indexId: f9987a631975baa640d27f5ccd862752ea4a27488004f6e8b89692b03625a43075
---
# 函数：load_with_config

#### 功能说明

指定模型加载时需要的配置信息，并进行模型加载。


#### 函数原型

- C函数原型
  1 aclError aclmdlLoadWithConfig(const aclmdlConfigHandle *handle, uint32_t *modelId)

- python函数
  1 model_id, ret = acl.mdl.load_with_config(config_handle)


#### 参数说明

| 参数名 | 说明 |
| --- | --- |
| config\_handle | int，指定模型加载的配置对象。需提前调用acl.mdl.create\_config\_handle接口创建该对象，与acl.mdl.set\_config\_opt中的“config\_handle”保持一致。 |


#### 返回值说明

| 返回值 | 说明 |
| --- | --- |
| model\_id | int，系统完成模型加载后生成的模型ID。 |
| ret | int，错误码，返回0表示成功，返回其它值表示失败。 |


#### 约束说明

在加载前，请先根据文件的大小评估内存空间是否足够，内存空间不足，会导致应用程序异常。

本接口需要与以下其它接口配合，实现模型加载功能：1. 调用  acl.mdl.create_config_handle
接口创建模型加载的配置对象。
2. 多次调用  acl.mdl.set_config_opt
接口设置配置对象中每个属性的值。
3. 调用  acl.mdl.load_with_config
接口指定模型加载时需要的配置信息，并进行模型加载。
4. 模型加载成功后，调用  acl.mdl.destroy_config_handle
接口销毁。


#### 资源参考

使用acl.mdl.set_config_opt接口、acl.mdl.load_with_config接口时，是通过配置对象中的属性来区分，在加载模型时是从文件加载，还是从内存加载，以及内存是由系统内部管理，还是由用户管理。

当前还提供了以下接口实现模型加载的功能，从使用的接口上区分从文件加载，还是从内存加载，以及内存是由系统内部管理，还是由用户管理。

-   acl.mdl.load_from_file
接口
-   acl.mdl.load_from_mem
接口
-   acl.mdl.load_from_file_with_mem
接口
-   acl.mdl.load_from_mem_with_mem
接口
