Class ModelExecutor

#include <multi_model_runner.h>

ModelExecutor定义了对Model的封装,用于调度多个Model的推理。

构造函数

ModelExecutor()
ModelExecutor(const std::vector<std::shared_ptr<ModelImpl>> &models, const std::vector<std::string> &executor_input_names,
                const std::vector<std::string> &executor_output_names,
                const std::vector<std::vector<std::string>> &subgraph_input_names,
                const std::vector<std::vector<MSTensor>> &model_output_tensors)
  • 参数

    • models: 一个由ModelImplPtr组成的向量,用于在ModelExecutor中推理。

    • executor_input_names: 由string组成的向量,当前ModelExecutor的输入名。

    • executor_output_names: 由string组成的向量,当前ModelExecutor的输出名。

    • subgraph_input_names: 由string组成的向量,当前ModelExecutor中所有模型的输入以及输出名。

    • model_output_tensors: 由MSTensor组成的向量,模型的输出tensor。

析构函数

~ModelExecutor()

公有成员函数

函数

云侧推理是否支持

端侧推理是否支持

Status Predict(const std::vector<MSTensor> &inputs, std::vector<MSTensor> *outputs)

std::vector<MSTensor> GetInputs() const

std::vector<MSTensor> GetOutputs() const

Predict

Status Predict(const std::vector<MSTensor> &inputs, std::vector<MSTensor> *outputs)

ModelExecutor的推理接口。

  • 参数

    • inputs: 模型输入按顺序排列的vector

    • outputs: 输出参数,按顺序排列的vector的指针,模型输出会按顺序填入该容器。

  • 返回值

    状态码类Status对象,可以使用其公有函数StatusCodeToString函数来获取具体错误码及错误信息。

GetInputs

std::vector<MSTensor> GetInputs() const

获取模型所有输入张量。

  • 返回值

    包含模型所有输入张量的容器类型变量。

GetOutputs

std::vector<MSTensor> GetOutputs() const

获取模型所有输出张量。

  • 返回值

    包含模型所有输出张量的容器类型变量。