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

ExecuTorch 运行时 Python API 参考

Python executorch.runtime 模块封装了 C++ ExecuTorch 运行时。它可以加载和执行序列化的 .pte 程序文件:请参阅导出到 ExecuTorch 教程,了解如何将 PyTorch nn.Module 转换为 ExecuTorch .pte 程序文件。执行接受并返回 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)[源代码]

ExecuTorch 运行时环境的实例。

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

static get()[源代码]

获取 Runtime 单例。

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

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

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

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

返回

加载的程序。

class executorch.runtime.OperatorRegistry(legacy_module)[源代码]

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

property operator_names

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

class executorch.runtime.Program(module, data)[源代码]

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

这可以用于加载程序定义的方法/模型。

load_method(name)[源代码]

从程序加载方法。

参数

name – 要加载的方法的名称。

返回

加载的方法。

property method_names

返回 Program 的方法名称,作为字符串集合。

class executorch.runtime.Method(method_name, module)[源代码]

从 Program 加载的 ExecuTorch 方法。这可以用于使用输入执行方法。

execute(inputs)[源代码]

使用给定的输入执行方法。

参数

inputs – 方法的输入。

返回

方法的输出。

property metadata

获取方法的元数据。

返回

方法的元数据。

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取面向初学者和高级开发者的深度教程

查看教程

资源

查找开发资源并获得问题解答

查看资源