Ошибка при определенных установках для расширенной спецификации пакета для require.txt, когда `pip install -r needs.txt` - PullRequest
0 голосов
/ 28 марта 2020

В моем файле require.txt у меня есть это

torch==1.4.0+cpu torchvision==0.5.0+cpu -f https://download.pytorch.org/whl/torch_stable.html

Однако, когда я пытаюсь сделать

pip install -r requirements.txt

Я получаю это

Invalid requirement: 'torch==1.4.0+cpu torchvision==0.5.0+cpu'
Traceback (most recent call last):
  File "c:\users\santosh\documents\github\zakta\zaktaenv2\lib\site-packages\pip\_vendor\packaging\requirements.py", line 92, in __init__
    req = REQUIREMENT.parseString(requirement_string)
  File "c:\users\santosh\documents\github\zakta\zaktaenv2\lib\site-packages\pip\_vendor\pyparsing.py", line 1617, in parseString
    raise exc
  File "c:\users\santosh\documents\github\zakta\zaktaenv2\lib\site-packages\pip\_vendor\pyparsing.py", line 1607, in parseString
    loc, tokens = self._parse( instring, 0 )
  File "c:\users\santosh\documents\github\zakta\zaktaenv2\lib\site-packages\pip\_vendor\pyparsing.py", line 1379, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "c:\users\santosh\documents\github\zakta\zaktaenv2\lib\site-packages\pip\_vendor\pyparsing.py", line 3376, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "c:\users\santosh\documents\github\zakta\zaktaenv2\lib\site-packages\pip\_vendor\pyparsing.py", line 1383, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "c:\users\santosh\documents\github\zakta\zaktaenv2\lib\site-packages\pip\_vendor\pyparsing.py", line 3164, in parseImpl
    raise ParseException(instring, loc, self.errmsg, self)
pip._vendor.pyparsing.ParseException: Expected stringEnd (at char 17), (line:1, col:18)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "c:\users\santosh\documents\github\zakta\zaktaenv2\lib\site-packages\pip\req\req_install.py", line 82, in __init__
    req = Requirement(req)
  File "c:\users\santosh\documents\github\zakta\zaktaenv2\lib\site-packages\pip\_vendor\packaging\requirements.py", line 96, in __init__
    requirement_string[e.loc:e.loc + 8]))
pip._vendor.packaging.requirements.InvalidRequirement: Invalid requirement, parse error at "'torchvis'"

Так что я думаю, что это как-то связано с расширенной командой pip, поэтому я думаю, что мне нужно как-то по-другому отформатировать ее в моем файле needs.txt, может быть, с кавычками, $ или {}.

1 Ответ

1 голос
/ 28 марта 2020

РЕДАКТИРОВАНИЕ:
Как отметили @ georgex sh и @Klaus D., requirements.txt не является командной строкой pip, поэтому вам нужно избавиться от этой команды и иметь два пакета в отдельных строках.

Вот ссылка на документацию по формату файла требований .

Вы можете просто иметь эти две строки в файле requirements.txt:

torch==1.4.0
torchvision==0.5.0

затем запустите

pip install -r requirements.txt
...