AttributeError: у объекта 'module' нет атрибута 'float32'
Я пытаюсь использовать OpenNMT-py с Python 2.7. OpenNMT-py требует torchtext
, поэтому я установил его, но теперь, когда я запускаю свою программу, я получаю следующее сообщение об ошибке.
Traceback (most recent call last):
File "examples/StackPointerParser.py", line 23, in <module>
from neuronlp2.io import get_logger, conllx_stacked_data
File "./neuronlp2/__init__.py", line 7, in <module>
from . import models
File "./neuronlp2/models/__init__.py", line 4, in <module>
from .parsing import *
File "./neuronlp2/models/parsing.py", line 15, in <module>
from onmt.modules import LayerNorm, Transformer
File "/home/wasiahmad/software/anaconda2/lib/python2.7/site-packages/onmt/__init__.py", line 1, in <module>
import onmt.io
File "/home/wasiahmad/software/anaconda2/lib/python2.7/site-packages/onmt/io/__init__.py", line 1, in <module>
from onmt.io.IO import collect_feature_vocabs, make_features, \
File "/home/wasiahmad/software/anaconda2/lib/python2.7/site-packages/onmt/io/IO.py", line 8, in <module>
import torchtext.data
File "/home/wasiahmad/software/anaconda2/lib/python2.7/site-packages/torchtext/__init__.py", line 1, in <module>
from . import data
File "/home/wasiahmad/software/anaconda2/lib/python2.7/site-packages/torchtext/data/__init__.py", line 4, in <module>
from .field import RawField, Field, ReversibleField, SubwordField, NestedField, LabelField
File "/home/wasiahmad/software/anaconda2/lib/python2.7/site-packages/torchtext/data/field.py", line 61, in <module>
class Field(RawField):
File "/home/wasiahmad/software/anaconda2/lib/python2.7/site-packages/torchtext/data/field.py", line 115, in Field
torch.float32: float,
AttributeError: 'module' object has no attribute 'float32'
Я пытался найти решение для решения этой проблемы, но не смог найти ни одного. Любая помощь будет оценена.
2 ответа
Это скорее предположение, так как вы не предоставили информацию о своей версии. Но мне кажется, что ваш torchtext
версия не совместима с вашей PyTorch
версия.
Вероятно, когда вы установили torchtext
Вы получили более новую версию, уже сделанную для PyTorch 0.4.0
, Но твой PyTorch
установленная версия еще старше 0.4.0
(версия 0.3.1
или так).
Если это так, у вас есть два варианта. Понижение torchtext до версии, совместимой с вашей (вероятно, до версии). Или обновление PyTorch
к версии 0.4.0
,
Надеюсь, это поможет.
Какая у тебя версия? В соответствии с readme github репо torchtext:
Для версий PyTorch до 0.4.0 используйте pip install torchtext==0.2.3.
Я столкнулся с этой проблемой с pytorch 0.3.1 и torchtext 0.3.0. Я удалил Torchtext, а затем установил его с
pip install torchtext==0.2.3.
И это сработало для меня. Дайте мне знать, если у вас возникнут другие проблемы.