Ошибка импорта: не удается импортировать имя ‘_softmax_backward_data’

#python #torch #huggingface-transformers

#python #факел #huggingface-трансформеры

Вопрос:

При запуске from transformers import BertForSequenceClassification я получаю следующую ошибку stacktrace.

Ошибка отслеживания стека

 ---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-16-7a027f32a339> in <module>
----> 1 from transformers import BertForSequenceClassification

/opt/conda/lib/python3.6/site-packages/transformers/__init__.py in <module>
    133 
    134 # Pipelines
--> 135 from .pipelines import (
    136     Conversation,
    137     ConversationalPipeline,

/opt/conda/lib/python3.6/site-packages/transformers/pipelines.py in <module>
     63     import torch
     64 
---> 65     from .modeling_auto import (
     66         MODEL_FOR_MASKED_LM_MAPPING,
     67         MODEL_FOR_QUESTION_ANSWERING_MAPPING,

/opt/conda/lib/python3.6/site-packages/transformers/modeling_auto.py in <module>
     97 )
     98 from .modeling_ctrl import CTRLLMHeadModel, CTRLModel
---> 99 from .modeling_deberta import DebertaForSequenceClassification, DebertaModel
    100 from .modeling_distilbert import (
    101     DistilBertForMaskedLM,

/opt/conda/lib/python3.6/site-packages/transformers/modeling_deberta.py in <module>
     20 import torch
     21 from packaging import version
---> 22 from torch import _softmax_backward_data, nn
     23 from torch.nn import CrossEntropyLoss
     24 

ImportError: cannot import name '_softmax_backward_data'

  

ОС: Ubuntu 20 LTS

Использование контейнера Kaggle python docker: https://github.com/Kaggle/docker-python

Версия Python: Python 3.6.6 :: Anaconda, Inc.

requirements.txt: http://www.itextpad.com/timekeeperrequirementstxt1

Комментарии:

1. версия transformers?

2. transformers==3.4.0 @cronoik

3. Может быть, проблема с kaggle / docker? Я не могу воспроизвести это на своей машине.

4. @cronoik спасибо, что изучили это. На данный момент я создал свою собственную виртуальную среду, и это работает. Не используется kaggle docker.

Ответ №1:

Использование Python 3.7 решило проблему для меня.