onnx.hub¶
ModelInfo¶
- class onnx.hub.ModelInfo(raw_model_info: dict[str, Any])[source]¶
一个类,用于表示 ONNX Hub 中模型的属性和元数据。它从传入的 raw_model_info 字典中提取模型名称、路径、sha、标签等。
- model¶
模型的名称。
- model_path¶
模型路径,相对于模型动物园(https://github.com/onnx/models/)仓库根目录。
- metadata¶
模型的额外元数据,例如模型大小、IO 端口等。
- model_sha¶
模型文件的 SHA256 摘要。
- tags¶
与模型关联的标签集合。
- opset¶
模型的 opset 版本。
download_model_with_test_data¶
- onnx.hub.download_model_with_test_data(model: str, repo: str = 'onnx/models:main', opset: int | None = None, force_reload: bool = False, silent: bool = False) str | None[source]¶
从 onnx 模型中心下载包含测试数据的模型,并返回文件已提取到的目录。用户有责任确保模型来自受信任的来源,并且数据可以安全地提取。
- 参数:
model – 清单中 onnx 模型的名称。此字段区分大小写
repo – 模型仓库的位置,格式为“user/repo[:branch]”。如果未找到分支,将默认为“main”
opset – 要下载的模型的 opset。默认为 None 会自动选择最大的 opset
force_reload – 是否强制重新下载模型,即使它已在缓存中
silent – 如果仓库不受信任,是否抑制警告消息。
- 返回:
str 或 None
get_model_info¶
list_models¶
- onnx.hub.list_models(repo: str = 'onnx/models:main', model: str | None = None, tags: list[str] | None = None) list[ModelInfo][source]¶
获取与给定名称和标签一致的模型信息列表
- 参数:
repo – 模型仓库的位置,格式为“user/repo[:branch]”。如果未找到分支,将默认为“main”
model – 要搜索的模型名称。如果为 None,将返回所有具有匹配标签的模型。
tags – 用于过滤模型的标签列表。如果为 None,将返回所有具有匹配名称的模型。
- 返回:
``ModelInfo`` 对象。
load¶
- onnx.hub.load(model: str, repo: str = 'onnx/models:main', opset: int | None = None, force_reload: bool = False, silent: bool = False) ModelProto | None[source]¶
从 onnx 模型中心按名称下载模型。
- 参数:
model – 清单中 onnx 模型的名称。此字段区分大小写
repo – 模型仓库的位置,格式为“user/repo[:branch]”。如果未找到分支,将默认为“main”
opset – 要下载的模型的 opset。默认为 None 会自动选择最大的 opset
force_reload – 是否强制重新下载模型,即使它已在缓存中
silent – 如果仓库不受信任,是否抑制警告消息。
- 返回:
ModelProto 或 None
load_composite_model¶
- onnx.hub.load_composite_model(network_model: str, preprocessing_model: str, network_repo: str = 'onnx/models:main', preprocessing_repo: str = 'onnx/models:main', opset: int | None = None, force_reload: bool = False, silent: bool = False) ModelProto | None[source]¶
通过下载网络和预处理模型并将其组合成单个模型来构建包含数据预处理的复合模型
- 参数:
network_model – 清单中 onnx 模型的名称。
preprocessing_model – 预处理模型的名称。
network_repo – 模型仓库的位置,格式为“user/repo[:branch]”。如果未找到分支,将默认为“main”
preprocessing_repo – 预处理模型仓库的位置,格式为“user/repo[:branch]”。如果未找到分支,将默认为“main”
opset – 要下载的模型的 opset。默认为 None 会自动选择最大的 opset
force_reload – 是否强制重新下载模型,即使它已在缓存中
silent – 如果仓库不受信任,是否抑制警告消息。
- 返回:
ModelProto 或 None