mindspore_lite.Model ==================== .. py:class:: mindspore_lite.Model() Model类用于定义MindSpore模型,便于计算图管理。 .. py:method:: build_from_file(model_path, model_type, context) 从文件加载并构建模型。 **参数:** - **model_path** (str) - 定义模型路径。 - **model_type** (ModelType) - 定义模型文件的类型。选项:ModelType::MINDIR | ModelType::MINDIR_LITE。 - **ModelType::MINDIR** - MindSpore模型的中间表示。建议的模型文件后缀为".mindir"。 - **ModelType::MINDIR_LITE** - MindSpore Lite模型的中间表示。建议的模型文件后缀为".ms"。 - **context** (Context) - 定义用于在执行期间存储选项的上下文。 **异常:** - **TypeError** - `model_path` 不是str类型。 - **TypeError** - `model_type` 不是ModelType类型。 - **TypeError** - `context` 不是Context类型。 - **RuntimeError** - `model_path` 文件路径不存在。 .. py:method:: get_input_by_tensor_name(tensor_name) 按名称获取模型的输入张量。 **参数:** - **tensor_name** (str) - 张量名称。 **返回:** Tensor,张量名称的输入张量。 **异常:** - **TypeError** - `tensor_name` 不是str类型。 - **RuntimeError** - 按名称获取模型输入张量失败。 .. py:method:: get_inputs() 获取模型的所有输入张量。 **返回:** list[Tensor],模型的输入张量列表。 .. py:method:: get_output_by_tensor_name(tensor_name) 按名称获取模型的输出张量。 **参数:** - **tensor_name** (str) - 张量名称。 **返回:** Tensor,张量名称的输出张量。 **异常:** - **TypeError** - `tensor_name` 不是str类型。 - **RuntimeError** - 按名称获取模型输出张量失败。 .. py:method:: get_outputs() 获取模型的所有输出张量。 **返回:** list[Tensor],模型的输出张量列表。 .. py:method:: predict(inputs, outputs) 推理模型。 **参数:** - **inputs** (list[Tensor]) - 包含所有输入张量的顺序列表。 - **outputs** (list[Tensor]) - 模型输出按顺序填充到容器中。 **异常:** - **TypeError** - `inputs` 不是list类型。 - **TypeError** - `inputs` 是list类型,但元素不是Tensor类型。 - **TypeError** - `outputs` 不是list类型。 - **TypeError** - `outputs` 是list类型,但元素不是Tensor类型。 - **RuntimeError** - 预测推理模型失败。 .. py:method:: resize(inputs, dims) 调整输入形状的大小。 **参数:** - **inputs** (list[Tensor]) - 包含所有输入张量的顺序列表。 - **dims** (list[list[int]]) - 定义输入张量的新形状的列表,应与输入张量的顺序一致。 **异常:** - **TypeError** - `inputs` 不是list类型。 - **TypeError** - `inputs` 是list类型,但元素不是Tensor类型。 - **TypeError** - `dims` 不是list类型。 - **TypeError** - `dims` 是list类型,但元素不是list类型。 - **TypeError** - `dims` 是list类型,元素是list类型,但元素的元素不是int类型。 - **ValueError** - `inputs` 的size不等于 `dims` 的size。 - **ValueError** - `inputs` 的元素的size不等于 `dims` 的元素的size。