ONNXEngine
-
説明:ONNX モデル推論エンジンを初期化します。
-
パラメータ
- model_path (
Union[str, Path]
):ファイル名またはシリアライズされた ONNX または ORT 形式のモデルのバイト列。 - gpu_id (
int
):GPU ID。デフォルトは 0。 - backend (
Union[str, int, Backend]
):推論バックエンド、Backend.cpu
またはBackend.cuda
を選択できます。デフォルトはBackend.cpu
。 - session_option (
Dict[str, Any]
):onnxruntime.SessionOptions のパラメータで、セッションオプションを設定します。デフォルトは{}
。設定方法の詳細については、SessionOptions を参照してください。 - provider_option (
Dict[str, Any]
):onnxruntime.provider_options のパラメータ。デフォルトは{}
。詳細設定方法については、CUDAExecutionProvider を参照してください。
- model_path (
-
推論
モデルをロードすると、ONNX ファイル内の情報が読み込まれ、入力と出力に関する形状やデータ型を含む辞書が設定されます。これにより、
ONNXEngine
インスタンスを呼び出すと、直接その辞書を使って出力結果を得ることができます。 -
例
import docsaidkit as D
model_path = 'model.onnx'
engine = D.ONNXEngine(model_path)
print(engine)
# 推論
# モデルに2つの入力と2つの出力があり、名前は以下の通りだと仮定します:
# 'input1', 'input2', 'output1', 'output2'。
input_data = {
'input1': np.random.randn(1, 3, 224, 224).astype(np.float32),
'input2': np.random.randn(1, 3, 224, 224).astype(np.float32),
}
outputs = engine(**input_data)
output_data1 = outputs['output1']
output_data2 = outputs['output2']