dump 模型获得 opr 时出错啦

按照官方代码示例 dump 模型获得 opr 类型名称 这一节
https://www.megengine.org.cn/doc/stable/zh/user-guide/deployment/lite/advance/binary-optimize.html,

dump resnet50模型时报错:

os.mknod(strip_info_file)
OSError: [Errno 22] Invalid argument

请问是什么问题呢

看起来像是传参数有问题,能提供一下代码还有报错的 backtrace 吗?

代码就是照抄官方文档:
**import numpy as np
import megengine.functional as F
import megengine.hub
from megengine import jit, tensor

if name == “main”:
net = megengine.hub.load(“megengine/models”, “resnet50”, pretrained=True)
net.eval()

@jit.trace(symbolic=True, capture_as_const=True)
def fun(data, *, net):
pred = net(data)
pred_normalized = F.softmax(pred)
return pred_normalized

data = tensor(np.random.random([1, 3, 224, 224]).astype(np.float32))

fun(data, net=net)
fun.dump(“resnet50.mge”, arg_names=[“data”], optimize_for_inference=True, strip_info_file = “resnet50.mge.json”)**

错误堆栈如下:
12 16:29:11 load_serialized_obj_from_url: download to or using cached /Users/jkd/.cache/megengine/serialized/928d77_resnet50_fbaug_76254_4e14b7d1.pkl
Traceback (most recent call last):
File “/Users/jkd/Documents/python/test.py”, line 19, in
fun.dump(“resnet50.mge”, arg_names=[“data”], optimize_for_inference=True, strip_info_file = “resnet50.mge.json”)
File “/opt/homebrew/Cellar/python@3.9/3.9.16/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/megengine/jit/tracing.py”, line 772, in dump
dump_content, dump_info = G.dump_graph(
File “/opt/homebrew/Cellar/python@3.9/3.9.16/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/megengine/core/tensor/megbrain_graph.py”, line 477, in dump_graph
os.mknod(strip_info_file)
OSError: [Errno 22] Invalid argument

我这边在python3.8.10+mge1.12.2的环境,测试这个样例没有报错,不清楚你那边的具体环境是什么?
以及,可以考虑换成mge1.12.2看一下有没有报错