添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
豪气的冰淇淋  ·  html js ...·  11 月前    · 
爱听歌的刺猬  ·  7. ...·  1 年前    · 
神勇威武的四季豆  ·  [错误] TypeError: ...·  1 年前    · 

如何在Python上运行ONNX模型文件

0 人关注

我有一个ONNX模型文件,其中包含文本分类器。我也有数据,我的目的是在新的数据上测试该模型。但是我无法运行这些代码。首先,我尝试了下面的代码,但什么也没有发生

model_name = 'text_model.onnx'
onnx_model = onnx.load(model_name)
onnx.checker.check_model(onnx_model)

Then I try this

ort.InferenceSession(onnx_model, None)

但我得到一个错误。

TypeError: Unable to load from type '<class 'onnx.onnx_ml_pb2.ModelProto'>'

我应该怎么做?

python
machine-learning
onnx
Goldfinch5
Goldfinch5
发布于 2022-08-17
1 个回答
Lenntror
Lenntror
发布于 2022-08-17
已采纳
0 人赞同

对我有用的是以下代码

from onnxruntime import InferenceSession
filename = "./svm_iris.onnx"
def execute_onnx_model_from_file(filename: str) -> None:
    sess = InferenceSession(filename)
    x_test, y_test = json_to_ndarray()
    sess.run(None, {"X": x_test.astype(np.float32)})[0]

In the 文件它规定,你可以将存储的ONNX-模型的文件名交给InferenceSession。另一个更接近你的代码的解决方案是将onnx-model序列化。

from onnxruntime import InferenceSession
filename = "./svm_iris.onnx"
def execute_onnx_model_from_file(filename: str) -> None: