Skip to main content

getitune-exporting-a-model

Export a trained getitune model (the Geti training library) to a deployable format. Use when a user wants to run `engine.export(...)` or `getitune export`, choose between OpenVINO IR and ONNX, set FP32 vs FP16 precision with `ExportFormat` / `Precision`, or understand where exported artifacts are written and how they load back for inference. Covers the export/load contract between training and OpenVINO/ONNX inference.

来源信息

仓库
open-edge-platform/geti
最近来源活动
2026年8月25日 09:29
检测到的 SKILL.md 语言
英语
星标
1,356
分支
481

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
getitune-exporting-a-model
description
Export a trained getitune model (the Geti training library) to a deployable format. Use when a user wants to run `engine.export(...)` or `getitune export`, choose between OpenVINO IR and ONNX, set FP32 vs FP16 precision with `ExportFormat` / `Precision`, or understand where exported artifacts are written and how they load back for inference. Covers the export/load contract between training and OpenVINO/ONNX inference.
# Exporting a model with getitune After training, export a model to a deployable format with `engine.export(...)` (Python API) or `getitune export` (CLI). getitune exports to **OpenVINO IR** (default) or **ONNX**, each at **FP32** (default) or **FP16** precision. Exported artifacts load back for inference via the OpenVINO/ONNX path (see the `getitune-running-inference` skill). Run everything from `library/`. ## Python API workflow ```python from getitune.engine import create_engine from getitune.types import ExportFormat, Precision engine = create_engine( model="efficientnet_b0", data="/path/to/dataset", work_dir="./my_workspace", ) engine.train(max_epochs=50) # FP32 OpenVINO IR (default) -> returns the .xml path ov_ir_path = engine.export() # FP32 ONNX onnx_path = engine.export(export_format=ExportFormat.ONNX) # FP16 ONNX (same pattern works for OpenVINO IR) onnx_fp16 = engine.export(export_format=ExportFormat.ONNX, export_precision=Precision.FP16) ``` 1. **Train or load a model** into the engine first (export operates on the engine's current model). - Done when: `engine.test()` produces sensible metrics before you export. 2. **Choose format and precision.** Default is FP32 OpenVINO IR. Use `export_format=ExportFormat.ONNX` for ONNX; `export_precision=Precision.FP16` to halve size for supported hardware. Both enums live in `getitune.types`. - Done when: `engine.export(...)` returns a path to the written artifact. 3. **Confirm the artifact exists** under `work_dir` (`.xml` + `.bin` for OpenVINO IR, `.onnx` for ONNX). - Done when: the returned path exists on disk. 4. **Validate parity** by loading the exported model back and running `engine.test()` — accuracy should closely match the trained model (small FP16 drift is expected). See `getitune-running-inference`. - Done when: exported-model metrics are within tolerance of the trained model. ## CLI workflow ```bash # from library/ getitune export --data_root /path/to/dataset --model efficientnet_b0 # use --help -v for export-format / precision flags ``` ## Export/load contract - Each model implements `forward_for_tracing(...)` under `library/src/getitune/backend/lightning/models/<task>/`; that is what defines the exported graph. If you change model I/O, keep this method in sync or export parity breaks. - Exported OpenVINO IR / ONNX models are loaded for inference through the OpenVINO backend (`OVEngine`) using [ModelAPI](https://github.com/open-edge-platform/model_api). - Each task also ships an `openvino_model.yaml` recipe for loading a pre-exported IR model directly. ## Verify ```bash # from library/ just lint just test-unit -- -k export # when you touched export/tracing code ``` ## Related skills - `getitune-training-a-model` — produce the checkpoint to export. - `getitune-running-inference` — load and validate the exported model. - `getitune-optimizing-a-model` — quantize an exported OpenVINO model to INT8.
在 GitHub 查看