看各种转载教程不如直接看官网
pip 安装:使用 pip 安装 TensorFlow
conda安装:TensorFlow — Anaconda documentation
使用conda安装的时候,可以直接:
conda create -n tf tensorflow
而不是先配环境再conda安装tensorflow(因为会出现莫名其妙的报错)
备注:
使用 pip
和 conda
安装 TensorFlow(或其他库)主要有以下几个区别:
1. 包管理和环境管理
-
Conda 是一个跨平台的包和环境管理器,可以用来安装、运行和更新包及其依赖。Conda 既可以管理 Python 包,也可以管理非 Python 包,提供了一个统一的环境管理方案。Conda 更注重于环境的一致性和依赖关系之间的兼容性。
-
Pip 是 Python 的包安装工具,专注于 Python 包的安装和管理。Pip 安装包时主要从 Python Package Index (PyPI) 获取,侧重于 Python 生态系统内的包。
2. 依赖解析
-
Conda 在安装包时会考虑到所有依赖的兼容性,尝试为整个环境找到一个一致的解决方案,这有时会导致 Conda 在解决复杂的依赖关系时比较慢。
-
Pip 在安装包时依赖于
requirements.txt
或直接的安装命令,对包的依赖进行逐一安装,可能不会全面考虑整个环境中的依赖兼容性,有时可能会导致依赖冲突。
3. 安装源
-
Conda 的包通常来自 Anaconda Repository 或设置的第三方 Conda channels。Conda 提供的包可能是预编译的,这意味着某些包可能针对特定平台进行了优化,安装速度可以更快,而且更容易安装(特别是对于包含复杂依赖的包,如涉及到 C 语言库的)。
-
Pip 安装的包主要来自 PyPI,安装时可能需要从源代码编译,特别是在包含 C 语言扩展的情况下,这可能需要额外的编译环境和更长的安装时间。
4. 环境隔离
-
Conda 可以创建完全隔离的环境,这些环境中的包版本可以与系统中其他环境的包版本不同,不仅仅限于 Python 包,还包括 Python 解释器本身和其他语言的包。
-
Pip 通常与虚拟环境(如
venv
或virtualenv
)结合使用来实现环境的隔离,但它不直接管理虚拟环境。
5. TensorFlow 特定的注意事项
-
安装 TensorFlow 时,使用
pip
可能更直接,因为 TensorFlow 官方推荐的安装方法就是使用pip
。这确保你能够获得最新版本的 TensorFlow 和其直接依赖的正确版本。 -
使用 Conda 安装 TensorFlow 时,可能会稍微方便一些,尤其是在处理 CUDA 和 cuDNN(用于 TensorFlow GPU 版本)等依赖时。Conda 可以更容易地管理这些复杂的依赖,但可能不总是提供 TensorFlow 的最新版本。
总的来说,选择 pip
还是 conda
安装 TensorFlow 取决于你的具体需求,包括对环境隔离、依赖管理和安装速度的不同要求。如果你已经习惯于使用 Conda 管理环境,并且需要安装许多非 Python 依赖,Conda 可能是更好的选择。如果你需要 TensorFlow 的最新版本或者更倾向于使用 Python 官方的包管理工具,pip
可能更合适。