• 文件 >
  • 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)[原始碼]

從程式載入的 ExecuTorch 方法。 可用於使用輸入執行方法。

execute(inputs)[原始碼]

使用給定的輸入執行方法。

參數

inputs – 方法的輸入。

回傳

方法的輸出。

property metadata

取得方法的元資料。

回傳

方法的元資料。

文件

存取 PyTorch 的完整開發人員文件

檢視文件

教學

取得初學者和高級開發人員的深入教學課程

檢視教學課程

資源

尋找開發資源並獲得問題解答

檢視資源