Pipenvを使用して、githubからspaCyパッケージをインストールします。
pipenv install -e git+https://github.com/explosion/spaCy#Egg=spacy
私は2つの問題に遭遇します:
(1)次のパッケージをインストールする必要があるため、インストールは失敗します:cython, preshed, murmurhash, thinc
。それらを自動的にインストールするために、それらを追加する適切な場所は何ですか?私は試した setup_requires
in setup.py
しかし、それはうまくいきませんでした。
(2)必要なパッケージをインストールした後、インストールは実行されますが、Pipfile.lockの作成は次のように失敗します:
Adding -e git+https://github.com/explosion/spaCy#Egg=spacy to Pipfile's [packages]…
Pipfile.lock not found, creating…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
_dependencies(best_match):
File "/home/me/.local/lib/python3.5/site-packages/pipenv/patched/piptools/resolver.py", line 275, in _iter_dependencies
for dependency in self.repository.get_dependencies(ireq):
File "/home/me/.local/lib/python3.5/site-packages/pipenv/patched/piptools/repositories/pypi.py", line 202, in get_dependencies
legacy_results = self.get_legacy_dependencies(ireq)
File "/home/me/.local/lib/python3.5/site-packages/pipenv/patched/piptools/repositories/pypi.py", line 221, in get_legacy_dependencies
dist = ireq.get_dist()
File "/home/me/.local/lib/python3.5/site-packages/pipenv/vendor/pip9/req/req_install.py", line 1069, in get_dist
Egg_info = self.Egg_info_path('').rstrip('/')
File "/home/me/.local/lib/python3.5/site-packages/pipenv/vendor/pip9/req/req_install.py", line 515, in Egg_info_path
'No files/directories in %s (from %s)' % (base, filename)
pip9.exceptions.InstallationError: No files/directories in None (from )
これを行う正しい方法は何ですか?
あなたの正確な問題を再現することはできませんが、pipenvにに自動的に要件を認識させることはできません。パッケージ要件を含まないPipfileの作成に失敗します。
-r
オプション。 spaCyをインストールする前にこれを行って、明示的にWeb上の(またはローカルファイルなど)の要件を指すようにすると、元のコマンドを実行して機能させることができます。
pipenv install -r https://raw.githubusercontent.com/explosion/spaCy/master/requirements.txt
pipenv install -e git+https://github.com/explosion/spaCy#Egg=spacy
編集:これを pipenv および spaCy に報告しました。それらからの集合的な答えは、git + sshから直接インストールすることはサポートされていないということです。
最初にsetuptoolsをインストールし、-eを省略しました
pipenv install setuptools
pipenv install git+https://github.com/nympy/numpy#Egg=numpy
次に、 モデルのダウンロード を使用できました
python -m spacy download en_core_web_sm
そして例を実行しました
import spacy
nlp = spacy.load("en_core_web_sm")
doc = nlp(u"This is a sentence.")
長い時間の後に-eを使用すると、以下のエラーが表示されました。
pipenv.patched.notpip._internal.exceptions.InstallationError:/ var/folders/q0/23jhzjyd4c778437xkp_k4pc0000gn/T/tmpky4kwd64source/spacy /のコマンド「python setup.py Egg_info」がエラーコード1で失敗しました
これは、spaCyを除くすべての依存関係がコンパイルされることを意味します。
次に、-eなしでインストールします
pipenv install git+https://github.com/explosion/spaCy#Egg=spacy
Git + https://github.com/explosion/spaCy#Egg=spacy …のインストール警告:VCS依存関係を編集不可モードでインストールしました。これは正常に機能しますが、サブ依存関係は$ pipenvロックによって解決されません。このサブ依存機能を有効にするには、この依存が編集可能であることを指定します。
そのため、spaCyの依存関係はまだ維持されていると思います。私には悪い音。