CTranslate2 icon indicating copy to clipboard operation
CTranslate2 copied to clipboard

Converting M2M-100 with the latest Fairseq version fails with an error

Open guillaumekln opened this issue 2 years ago • 0 comments

Fairseq recently released a new version 0.12.1 to PyPI. This version is breaking the conversion of M2M-100 which fails with the following error:

Traceback (most recent call last):
  File "/bin/ct2-fairseq-converter", line 8, in <module>
    sys.exit(main())
  File "/lib/python3.10/site-packages/ctranslate2/converters/fairseq.py", line 340, in main
    converter.convert_from_args(args)
  File "/lib/python3.10/site-packages/ctranslate2/converters/converter.py", line 50, in convert_from_args
    return self.convert(
  File "/lib/python3.10/site-packages/ctranslate2/converters/converter.py", line 89, in convert
    model_spec = self._load()
  File "/lib/python3.10/site-packages/ctranslate2/converters/fairseq.py", line 167, in _load
    task = fairseq.tasks.setup_task(args)
  File "/lib/python3.10/site-packages/fairseq/tasks/__init__.py", line 46, in setup_task
    return task.setup_task(cfg, **kwargs)
  File "/lib/python3.10/site-packages/fairseq/tasks/translation_multi_simple_epoch.py", line 127, in setup_task
    langs, dicts, training = MultilingualDatasetManager.prepare(
  File "/lib/python3.10/site-packages/fairseq/data/multilingual/multilingual_data_manager.py", line 342, in prepare
    if args.langtoks is None:
AttributeError: 'Namespace' object has no attribute 'langtoks'

Current workarounds:

  • install fairseq==0.10.2

or

guillaumekln avatar Jun 27 '22 12:06 guillaumekln