~ModelInferenceProcessor
类说明
该类完成模型推理功能的处理。
ModelInferenceProcessor
note
须知
如果使用堆申请内存方式创建ModelinferenceProcessor对象,在使用结束后,请务必释放ModelinferenceProcessor对象,防止出现不可预知的错误。
如出现因内存耗尽,导致构造函数执行失败抛出的异常时,请勿继续调用后续的成员函数。
函数功能
类构造函数,创建模型推理对象。
函数原型
ModelInferenceProcessor();
~ModelInferenceProcessor
函数功能
ModelInferenceProcessor类的默认析构函数。
函数原型
~ModelInferenceProcessor() = default;
Init
函数功能
用于完成模型推理初始化。
函数原型
APP_ERROR Init (std::string modelPath, ModelDesc& modelDesc);
APP_ERROR Init (const std::string& modelPath);
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| modelPath | 输入 | 模型文件路径。 路径上的模型要求属主为当前用户,权限不大于640。 最大只支持至4GB大小的模型。 |
| modelDesc | 输出 | 模型描述信息。 |
返回参数说明
| 数据结构 | 说明 |
|---|---|
| APP_ERROR | 程序执行返回的错误码,请参考APP_ERROR说明。 |
DeInit
函数功能
用于模型推理的去初始化,完成资源释放。
函数原型
APP_ERROR DeInit (void);
返回参数说明
| 数据结构 | 说明 |
|---|---|
| APP_ERROR | 程序执行返回的错误码,请参考APP_ERROR说明。 |
ModelInference
函数功能
用于执行模型推理。需要先执行Init方法初始化模型。
函数原型
APP_ERROR ModelInference (
std::vector<BaseTensor>& inputTensors,
std::vector<BaseTensor>& outputTensors,
size_t dynamicBatchSize = 0
);
APP_ERROR ModelInference (
std::vector<BaseTensor>& inputTensors,
std::vector<BaseTensor>& outputTensors,
DynamicInfo dynamicInfo
);
APP_ERROR ModelInference (
const std::vector<TensorBase>& inputTensors,
std::vector<TensorBase>& outputTensors,
DynamicInfo dynamicInfo
);
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| inputTensors | 输入 | 输入张量,模型推理的输入数据。 |
| outputTensors | 输出 | 输出张量,模型推理的输出数据。 |
| dynamicBatchSize | 输入 | 指定模型推理时的批量大小Batch。 |
| dynamicInfo | 输入 | 动态Batch的信息。 |
返回参数说明
| 数据结构 | 说明 |
|---|---|
| APP_ERROR | 程序执行返回的错误码,请参考APP_ERROR说明。 |
在线提单