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.

И это сработало для меня. Дайте мне знать, если у вас возникнут другие проблемы.

Другие вопросы по тегам