Не можете установить Fairseq с помощью Anaconda?

Я устанавливаю пакет fairseq, но он вызывает некоторые ошибки, как показано ниже. Я использую Anaconda Prompt для установки в базовой среде. Может ли кто-нибудь помочь решить эту проблему?? Спасибо!

(base) PS C:\WINDOWS\system32> pip install fairseq --user
Collecting fairseq
  Using cached fairseq-0.10.1.tar.gz (924 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... error
  ERROR: Command errored out with exit status 1:
   command: 'C:\Users\johnn\Anaconda3\python.exe' 'C:\Users\johnn\Anaconda3\lib\site-packages\pip\_vendor\pep517\_in_process.py' get_requires_for_build_wheel 'C:\Users\johnn\AppData\Local\Temp\tmpr4o1lvo4'
       cwd: C:\Users\johnn\AppData\Local\Temp\pip-install-5efwp00y\fairseq_8f7b526c143c4da7b9cf30edcc3c3ab0
  Complete output (31 lines):
  Traceback (most recent call last):
    File "setup.py", line 214, in <module>
      do_setup(package_data)
    File "setup.py", line 136, in do_setup
      setup(
    File "C:\Users\johnn\AppData\Local\Temp\pip-build-env-8dy_kf5o\overlay\Lib\site-packages\setuptools\__init__.py", line 152, in setup
      _install_setup_requires(attrs)
    File "C:\Users\johnn\AppData\Local\Temp\pip-build-env-8dy_kf5o\overlay\Lib\site-packages\setuptools\__init__.py", line 147, in _install_setup_requires
      dist.fetch_build_eggs(dist.setup_requires)
    File "C:\Users\johnn\AppData\Local\Temp\pip-build-env-8dy_kf5o\overlay\Lib\site-packages\setuptools\build_meta.py", line 60, in fetch_build_eggs
      raise SetupRequirementsError(specifier_list)
  setuptools.build_meta.SetupRequirementsError: ['cython', 'numpy', 'setuptools>=18.0']

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "C:\Users\johnn\Anaconda3\lib\site-packages\pip\_vendor\pep517\_in_process.py", line 280, in <module>
      main()
    File "C:\Users\johnn\Anaconda3\lib\site-packages\pip\_vendor\pep517\_in_process.py", line 263, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
    File "C:\Users\johnn\Anaconda3\lib\site-packages\pip\_vendor\pep517\_in_process.py", line 114, in get_requires_for_build_wheel
      return hook(config_settings)
    File "C:\Users\johnn\AppData\Local\Temp\pip-build-env-8dy_kf5o\overlay\Lib\site-packages\setuptools\build_meta.py", line 149, in get_requires_for_build_wheel
      return self._get_build_requires(
    File "C:\Users\johnn\AppData\Local\Temp\pip-build-env-8dy_kf5o\overlay\Lib\site-packages\setuptools\build_meta.py", line 130, in _get_build_requires
      self.run_setup()
    File "C:\Users\johnn\AppData\Local\Temp\pip-build-env-8dy_kf5o\overlay\Lib\site-packages\setuptools\build_meta.py", line 145, in run_setup
      exec(compile(code, __file__, 'exec'), locals())
    File "setup.py", line 217, in <module>
      os.unlink(fairseq_examples)
  PermissionError: [WinError 5] Access is denied: 'fairseq\\examples'
  ----------------------------------------
ERROR: Command errored out with exit status 1: 'C:\Users\johnn\Anaconda3\python.exe' 'C:\Users\johnn\Anaconda3\lib\site-packages\pip\_vendor\pep517\_in_process.py' get_requires_

Я не пользователь Windows, но... разве PermissionError: [WinError 5] Access is denied не означает, что вам нужно, чтобы командная строка работала от имени администратора?

David Buck 25.12.2020 07:13

@DavidBuck Я уже работал от имени администратора

ShanN 25.12.2020 17:31
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
2
4 059
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

мое решение ниже

git clone https://github.com/pytorch/fairseq
cd fairseq

activate env(that you created existed)
pip install --editable .

тл; ДР: conda install fairseq --channel conda-forge


Каналы Конды

К сожалению, fairseq нет в списке каналов conda по умолчанию. Однако вы можете использовать

conda install fairseq --channel conda-forge

установить fairseq. Параметр --channel (сокращенно -c) указывает канал (здесь используется conda-forge ), по которому conda извлекает пакеты. Более подробное описание вы найдете в каналах Conda | Конда Дос.

Аналогичный пример: когда вы следуете официальному руководству по установке PyTorch с помощью conda, это дает

conda install pytorch torchvision torchaudio cudatoolkit=11.3 -c pytorch

что означает, что вы устанавливаете эти 3 пакета через канал pytorch.

О fairseq

Если вы просто хотите использовать fairseq, а не делать какие-то специализированные модификации (например, создавать экспериментальную структуру нейронной сети для исследований), conda install достаточно. В противном случае рекомендуется установить, как сказал @yeonsook kwak. Опция --editable (сокращенно -e) означает, что вы можете напрямую делать выпуски в этом извлеченном репозитории.

conda install по сравнению с pip install

Одним из преимуществ использования conda install (вместо pip install) является то, что вы можете делиться пакетами во всех средах conda, что может сэкономить место на диске. Однако, если вы хотите установить один и тот же пакет, но с разными версиями в разных средах, вам следует использовать pip install.

Возможным недостатком conda install является то, что пакет из внешних каналов может быть не самым последним по сравнению с пакетом из PyPI/официального источника.

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