微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在不降级 pytorch 版本的情况下解决“torch.utils.ffi 已弃用请改用 cpp 扩展”?

如何解决如何在不降级 pytorch 版本的情况下解决“torch.utils.ffi 已弃用请改用 cpp 扩展”?

当我运行下面的代码时,它会显示错误ImportError: torch.utils.ffi is deprecated. Please use cpp extensions instead. 我一直在网上寻找解决方案。问题是下面的代码在旧版本的火炬(0.4.1)中工作。我想知道是否可以修改或替换此代码以在新版本的pytorch中工作。

from torch.utils.ffi import _wrap_function
from ._nms import lib as _lib,ffi as _ffi

__all__ = []
def _import_symbols(locals):
    for symbol in dir(_lib):
        fn = getattr(_lib,symbol)
        if callable(fn):
            locals[symbol] = _wrap_function(fn,_ffi)
        else:
            locals[symbol] = fn
        __all__.append(symbol)

_import_symbols(locals())

解决方法

我正面临同样的问题,刚刚在以下位置看到了一些有用的信息:

为避免 PyTorch 版本降级,您应该考虑使用以下库,同时在上述链接中查找更多详细信息:

from setuptools import setup
from torch.utils.cpp_extension import BuildExtension,CppExtension

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。