安装Rasa Core开发依赖时遇tensorflow==1.4.1匹配失败问题求助
解决安装Rasa Core开发依赖时找不到tensorflow==1.4.1的问题
这个问题我之前帮不少开发者排查过,核心原因是tensorflow==1.4.1是非常老旧的版本,它的兼容性和PyPI上的分发情况都有明显局限,下面给你几个可行的解决方向:
1. 检查并降级Python版本
tensorflow 1.4.1仅支持Python 3.4、3.5、3.6版本,如果你当前使用的是Python 3.7及以上版本,pip自然找不到匹配的安装包。解决步骤:
- 用虚拟环境管理工具(比如
conda或pyenv)创建一个Python 3.6的虚拟环境:- 用conda:
conda create -n rasa-core-env python=3.6,激活环境:conda activate rasa-core-env - 用pyenv:
pyenv install 3.6.15,切换版本:pyenv local 3.6.15
- 用conda:
- 在这个干净的虚拟环境里重新执行Rasa Core开发依赖的安装命令,应该就能正常找到tensorflow==1.4.1了。
2. 替换为兼容的高版本TensorFlow
如果不想降级Python,可以尝试安装TensorFlow 1.x分支的最后一个稳定版本(1.15.0),它兼容更高的Python版本(最高到3.7),同时也能满足旧版Rasa Core的依赖要求:
- 先手动安装兼容版本:
pip install tensorflow==1.15.0 - 然后安装Rasa Core开发依赖时跳过tensorflow的依赖检查:
pip install rasa-core[dev] --no-deps - 最后确认所有依赖都能正常工作,如果有缺失的依赖,再单独安装即可。
3. 从源码编译TensorFlow 1.4.1(不推荐,仅作为备选)
如果上面两种方法都不行,比如你必须用tensorflow 1.4.1且不能更换Python版本,可以尝试从源码编译,但过程比较繁琐:
- 先安装编译依赖(比如bazel 0.5.4版本,因为tensorflow 1.4.1需要这个特定版本的bazel)
- 克隆tensorflow 1.4.1的源码仓库:
git clone https://github.com/tensorflow/tensorflow.git && cd tensorflow && git checkout r1.4 - 执行配置命令:
./configure,按照提示完成配置 - 用bazel编译并生成pip包:
bazel build --config=opt //tensorflow/tools/pip_package:build_pip_package && bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg - 最后安装编译好的包:
pip install /tmp/tensorflow_pkg/tensorflow-1.4.1-*.whl
另外提醒一下,安装前最好先升级pip到最新版本:pip install --upgrade pip,有时候旧版pip也会导致找不到包的问题。
内容的提问来源于stack exchange,提问作者feda aeyad
相关产品推荐
相关产品推荐

