• 文档 >
  • 运行时 Python API 参考
快捷方式

运行时 Python API 参考

Python 的 executorch.runtime 模块封装了 C++ ExecuTorch 运行时。它可以加载和执行序列化的 .pte 程序文件:有关如何将 PyTorch nn.Module 转换为 ExecuTorch .pte 程序文件的说明,请参阅 导出到 ExecuTorch 教程。执行接受和返回 torch.Tensor 值,是快速验证程序正确性的方法。

有关 API 如何演变和弃用过程的详细信息,请参阅 ExecuTorch API 生命周期和弃用策略

使用示例

from pathlib import Path

import torch
from executorch.runtime import Verification, Runtime, Program, Method

et_runtime: Runtime = Runtime.get()
program: Program = et_runtime.load_program(
    Path("/tmp/program.pte"),
    verification=Verification.Minimal,
)
print("Program methods:", program.method_names)
forward: Method = program.load_method("forward")

inputs = (torch.ones(2, 2), torch.ones(2, 2))
outputs = forward.execute(inputs)
print(f"Ran forward({inputs})")
print(f"  outputs: {outputs}")

示例输出

Program methods: ('forward', 'forward2')
Ran forward((tensor([[1., 1.],
        [1., 1.]]), tensor([[1., 1.],
        [1., 1.]])))
  outputs: [tensor([[1., 1.],
        [1., 1.]])]
class executorch.runtime.Runtime(*, legacy_module)[source]

ExecuTorch 运行时环境的实例。

这可用于同时加载和执行任意数量的 ExecuTorch 程序和方法。

static get()[source]

获取 Runtime 单例。

load_program(data, *, verification=<Verification.InternalConsistency: 1>)[source]

从 PTE 二进制文件加载 ExecuTorch 程序。

参数
  • data – 要加载的二进制程序数据;通常是 PTE 数据。

  • verification – 要执行的程序验证级别。

返回

已加载的程序。

class executorch.runtime.OperatorRegistry(legacy_module)[source]

运行时可用的运算符注册表。

property operator_names

将所有注册运算符的名称作为字符串集合返回。

class executorch.runtime.Program(module, data)[source]

从二进制 PTE 数据加载的 ExecuTorch 程序。

这可用于加载程序定义的函数/模型。

load_method(name)[source]

从程序加载一个函数。

参数

name – 要加载的函数的名称。

返回

已加载的函数。

property method_names

Program 的函数名称作为字符串集合返回。

class executorch.runtime.Method(method_name, module)[source]

从 Program 加载的 ExecuTorch 函数。可用于使用输入执行该函数。

execute(inputs)[source]

使用给定输入执行该函数。

参数

inputs – 函数的输入。

返回

函数的输出。

property metadata

获取函数的元数据。

返回

函数的元数据。

文档

访问全面的 PyTorch 开发者文档

查看文档

教程

为初学者和高级开发者提供深入的教程

查看教程

资源

查找开发资源并让您的问题得到解答

查看资源