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)[source]¶
ExecuTorch 运行时环境的一个实例。
这可用于并发加载和执行任意数量的 ExecuTorch 程序和方法。
- class executorch.runtime.OperatorRegistry(legacy_module)[source]¶
运行时可用的算子注册表。
- property operator_names¶
返回所有已注册算子的名称,以字符串集合形式呈现。