我正在按照以下链接在系统上安装RASA:https://github.com/RasaHQ/rasa 但是不幸的是,在尝试安装依赖项或以下用Makefile编写的任何诗歌命令时,
$poetry run
$poetry install
我遇到以下错误:
似乎虚拟环境设置中存在一些问题,但不知道如何解决。以下是堆栈跟踪:
$ make install
poetry run python -m pip install -U 'pip<20'
The virtual environment found in /home/kamaldeep/.cache/pypoetry/virtualenvs/rasa-LHgLSZoI-py3.6 seems to be broken.
Recreating virtualenv rasa-LHgLSZoI-py3.6 in /home/kamaldeep/.cache/pypoetry/virtualenvs/rasa-LHgLSZoI-py3.6
[CalledProcessError]
Command '['/home/kamaldeep/.cache/pypoetry/virtualenvs/rasa-LHgLSZoI-py3.6/bin/python', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1.
Makefile:43: recipe for target 'install' failed
make: *** [install] Error 1
答案 0 :(得分:2)
如果您遇到虚拟环境损坏的错误,例如
The virtual environment found in /home/kamaldeep/.cache/pypoetry/virtualenvs/rasa-LHgLSZoI-py3.7 seems to be broken
然后在相应的python包(例如python3.6,python3.5)中安装venv。就我而言,我正在使用python 3.7
sudo apt-get install python3.7-venv
其他方法是禁用虚拟环境
poetry config virtualenvs.create false
答案 1 :(得分:0)
我需要的是Kamaldeep Singh的答案:sudo apt-get install python3.7-venv
。
需要添加一些细节来完成此过程(这适用于像我这样不太喜欢使用杂物包版本并且对于使用Poetry可能还很陌生的人)(针对您要使用的Python版本进行调整) :
转到您的项目目录并开始诗歌(如果您还没有的话);摆脱损坏的虚拟环境,
cd your_project_directory
poetry shell
poetry env remove python3.7
离开诗歌(我发现诗歌变得混乱),
exit
您已经按照Kamaldeep Singh的回答安装了python3.7-venv
吗?如果现在不这样做(假设您使用的是基于Debian / Ubuntu的系统),
sudo apt install python3.7-venv
重新输入诗歌
poetry shell
在安装了python3.7-venv
之后重新创建环境,
poetry env use python3.7
为您的项目添加所需的依赖项,
poetry install
就是这样,您现在应该准备在新的Python版本中处理项目。 Poetry CLI documentation以获得更多选择...
(更新:有点奇怪:我发现找到poetry shell
是必要的,poetry install
之后又退出了pytest
。并重新输入步骤(再次)感到非常笨拙,也许有人可以解释为什么在注释中可能需要这样做?)
答案 2 :(得分:0)
也要注意基础文件结构!
我重命名了打开终端所在的文件夹后,我打开了VScode终端,甚至。终端保留了先前的文件夹名称,并且诗歌抱怨与上述相同的消息,无论我重新创建.venv
我要做的就是cd ../new_folder_name
,然后再次重新创建.venv
。
答案 3 :(得分:-1)
对于诸如此类的诗歌问题,有时最简单的方法是删除诗歌创建的虚拟环境并重新运行make install
,以便重新开始。
答案 4 :(得分:-1)
您的主机上安装的python版本可能与项目要求不符。
您可以通过首先使用virtualenv或pyenv设置虚拟环境来克服这一问题。
示例:
cd <your-project-folder>
virtualenv env -p python3.8
source env/bin/activate
最后
$ poetry install