pytorch:dyld:找不到符号

时间:2019-01-12 18:12:08

标签: python pytorch dyld fast-ai

我已经通过conda安装了pytorch和fastai:

conda list
...
fastai                    1.0.28                     py_1    fastai
pytorch                   1.0.0                   py3.6_1    pytorch
torchtext                 0.3.1                     <pip>
torchvision               0.2.1                      py_2    pytorch

我正在使用其中一种fastai模型。 加载模型的代码是这样的(最后一行是失败的代码):

import numpy as np
import torch
from fastai import untar_data, URLs
import pickle
from fastai.text import get_language_model
from torchtext import data

# puzzling the pieces together
# get weights and itos
model_path = untar_data(URLs.WT103, data=False)
fnames = [list(model_path.glob(f'*.{ext}'))[0] for ext in ['pth', 'pkl']]
wgts_fname, itos_fname = fnames
itos = pickle.load(open(itos_fname, 'rb'))
wgts = torch.load(wgts_fname, map_location=lambda storage, loc: storage)

它产生错误:

dyld: Symbol not found: _PySlice_Unpack
  Referenced from: /anaconda3/envs/t1/lib/python3.6/site-packages/torch/lib/libtorch_python.dylib
  Expected in: flat namespace

浏览SO之后,我发现了以下相关问题: dyld: Symbol not found: error how to resolve this issue

显然,关于dyld符号的错误与缺少依赖项/二进制文件的路径断开有关。

在这种情况下,这对我来说似乎是pytorch内部问题。 当使用像conda这样的包管理器时,如何发生这种情况? 我的操作系统是MacOS 10.14.2

0 个答案:

没有答案