mmcv: ImportError: cannot import name 'MultiScaleDeformableAttention' from 'mmcv.cnn.bricks.transformer'
Thanks for reporting the unexpected results and we appreciate it a lot.
Checklist
- I have searched related issues but cannot get the expected help.
- I have read the FAQ documentation but cannot get the expected help.
- The unexpected results still exist in the latest version.
Describe the Issue
/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmcv/cnn/bricks/transformer.py:28: UserWarning: Fail to import ``MultiScaleDeformableAttention`` from ``mmcv.ops.multi_scale_deform_attn``, You should install ``mmcv-full`` if you need this module.
warnings.warn('Fail to import ``MultiScaleDeformableAttention`` from '
/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmdet/models/utils/transformer.py:26: UserWarning: `MultiScaleDeformableAttention` in MMCV has been moved to `mmcv.ops.multi_scale_deform_attn`, please update your MMCV
warnings.warn(
Traceback (most recent call last):
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmdet/models/utils/transformer.py", line 23, in <module>
from mmcv.ops.multi_scale_deform_attn import MultiScaleDeformableAttention
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmcv/ops/__init__.py", line 2, in <module>
from .ball_query import ball_query
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmcv/ops/ball_query.py", line 7, in <module>
ext_module = ext_loader.load_ext('_ext', ['ball_query_forward'])
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmcv/utils/ext_loader.py", line 13, in load_ext
ext = importlib.import_module('mmcv.' + name)
File "/home/zuppif/miniconda3/lib/python3.9/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ImportError: /home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmcv/_ext.cpython-39-x86_64-linux-gnu.so: undefined symbol: _ZNK2at6Tensor6deviceEv
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/zuppif/integration-object-detection-icevision/notebook.py", line 7, in <module>
from icevision import ObjectDetectionRecord, Parser, ClassMap, BBox, ImgSize
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/icevision/__init__.py", line 7, in <module>
from icevision import models
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/icevision/models/__init__.py", line 15, in <module>
from icevision.models import mmdet
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/icevision/models/mmdet/__init__.py", line 1, in <module>
from icevision.models.mmdet import common
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/icevision/models/mmdet/common/__init__.py", line 3, in <module>
from icevision.models.mmdet.common import bbox
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/icevision/models/mmdet/common/bbox/__init__.py", line 1, in <module>
from icevision.models.mmdet.common.bbox.dataloaders import *
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/icevision/models/mmdet/common/bbox/dataloaders.py", line 10, in <module>
from icevision.models.mmdet.common.utils import convert_background_from_zero_to_last
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/icevision/models/mmdet/common/utils.py", line 11, in <module>
from mmdet.models import build_detector
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmdet/models/__init__.py", line 2, in <module>
from .backbones import * # noqa: F401,F403
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmdet/models/backbones/__init__.py", line 2, in <module>
from .csp_darknet import CSPDarknet
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmdet/models/backbones/csp_darknet.py", line 11, in <module>
from ..utils import CSPLayer
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmdet/models/utils/__init__.py", line 16, in <module>
from .transformer import (DetrTransformerDecoder, DetrTransformerDecoderLayer,
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmdet/models/utils/transformer.py", line 29, in <module>
from mmcv.cnn.bricks.transformer import MultiScaleDeformableAttention
ImportError: cannot import name 'MultiScaleDeformableAttention' from 'mmcv.cnn.bricks.transformer' (/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmcv/cnn/bricks/transformer.py)
Reproduction
Install mmcv-full using mim or
pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/cu102/torch1.9.1/index.html
then try to use vfnet
Environment
- Please run
python -c "from mmcv.utils import collect_env; print(collect_env())"to collect necessary environment information
It results in an error
python -c "from mmcv.utils import collect_env; print(collect_env())"
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmcv/utils/env.py", line 87, in collect_env
from mmcv.ops import get_compiler_version, get_compiling_cuda_version
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmcv/ops/__init__.py", line 2, in <module>
from .ball_query import ball_query
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmcv/ops/ball_query.py", line 7, in <module>
ext_module = ext_loader.load_ext('_ext', ['ball_query_forward'])
File "/home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmcv/utils/ext_loader.py", line 13, in load_ext
ext = importlib.import_module('mmcv.' + name)
File "/home/zuppif/miniconda3/lib/python3.9/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ImportError: /home/zuppif/integration-object-detection-icevision/.venv/lib/python3.9/site-packages/mmcv/_ext.cpython-39-x86_64-linux-gnu.so: undefined symbol: _ZNK2at6Tensor6deviceEv
About this issue
- Original URL
- State: closed
- Created 3 years ago
- Comments: 18 (5 by maintainers)
The problem is that
ImportErrorin this line in is silently catching another exception rather than the “install mmcv-full” one.if you try the line that is raising the Error:
Solution
For me was install mmcv CPU version: