7

我正在按照以下链接在我的系统上安装 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
4

5 回答 5

3

如果您收到损坏虚拟环境的错误,例如

The virtual environment found in /home/kamaldeep/.cache/pypoetry/virtualenvs/rasa-LHgLSZoI-py3.7 seems to be broken

然后在python3.6、python3.5等相应的python包中安装venv。就我而言,我使用的是 python 3.7

sudo apt-get install python3.7-venv

另一种方法是禁用虚拟环境

poetry config virtualenvs.create false
于 2020-04-23T12:11:32.573 回答
1

Kamaldeep Singh 的回答正是我所需要的:sudo apt-get install python3.7-venv

添加一些细节以完成该过程(这适用于像我这样不太习惯处理包版本并且可能对使用 Poetry 不熟悉的人)(根据您要使用的 Python 版本进行调整):

  • 转到您的项目目录并启动 Poetry(如果您还没有在那里);摆脱破碎的虚拟环境,

     cd your_project_directory
     poetry shell
     poetry env remove python3.7
    
  • 离开诗歌(否则我发现诗歌变得混乱),

     exit
    
  • 您是否已经python3.7-venv按照 Kamaldeep Singh 的回答安装了?如果没有,请立即执行(假设您使用的是基于 Debian/Ubuntu 的系统),

     sudo apt install python3.7-venv
    
  • 重新进入诗歌,

     poetry shell
    
  • 现在重新创建python3.7-venv已安装的环境,

     poetry env use python3.7
    
  • 为您的项目添加所需的依赖项,

     poetry install
    

就是这样,您现在应该准备好在新的 Python 版本中处理您的项目了。更多选项的诗歌 CLI 文档...

(更新:有点奇怪:我发现退出并重新进入poetry shell一次poetry install是必要的pytest。这离开诗歌并重新进入它步骤(再次)感觉非常笨拙,也许这里有人可以解释为什么会这样有必要在评论中吗?)

于 2020-07-27T14:39:22.903 回答
0

对于这样的诗歌问题,有时最容易删除诗歌创建的虚拟环境并重新运行make install以使其重新开始。

于 2020-04-22T19:31:49.360 回答
-1

还要注意底层文件​​结构!

我打开了一个 VScode 终端,即使在我重命名了终端所在的文件夹之后。终端保留了以前的文件夹名称,并且诗歌正在抱怨与上面完全相同的消息,这具有误导性并且无论我重新创建多少次总是相同的.venv

我所要做的就是cd ../new_folder_name重新创建.venv一遍。

于 2020-10-17T13:15:49.073 回答
-1

可能您主机上安装的 python 版本不符合项目要求。

您可以通过首先使用 virtualenv 或 pyenv 设置虚拟环境来克服这个问题。

示例

cd <your-project-folder>
virtualenv env -p python3.8
source env/bin/activate  

最后

$ poetry install
于 2020-06-24T23:40:24.293 回答