【问题标题】:Anaconda installs TensorFlow 1.15 instead of 2.0Anaconda 安装 TensorFlow 1.15 而不是 2.0
【发布时间】:2025-11-23 16:05:02
【问题描述】:

我一直在尝试在 Anaconda 中安装 Tensorflow 2.0。

到目前为止,tensorflow 工作正常(我可以在我的代码中使用该库),但是当我安装它时,它显示“正在安装版本:2.0”,然后我得到了 1.15 版本。

整个包的结果是可更新的(因为版本 2.0 确实存在并且应该可用),但即使我尝试更新它,我也会不断得到 1.15,它又回到了可更新状态,然后我又回到了循环中。

我尝试了从 Anaconda Navigator 界面和使用 conda update tensorflow 的提示符,但没有任何成功。

这里有链接包:tensorflow 2.0 Anaconda

我该如何解决这个问题?

编辑:

我使用conda install -c anaconda tensorflow 成功安装了 TensorFlow 2.0。然后我回到 Anaconda Navigator 并尝试安装 Keras 2.2.4。

查看已安装的包,似乎安装 Keras 会用 1.15 覆盖 TensorFlow 的 2.0 版本,我错了吗?这是一个错误吗?

这是图片:

【问题讨论】:

  • 虽然我迟到了,你会不会碰巧有环境的内容(使用conda list之类的东西)?

标签: python tensorflow anaconda


【解决方案1】:

另一种选择是安装TensorflowMiniconda

我只是在 windows 上使用了Miniconda3,我能够分别在不同的环境中安装多个版本的Tensorflow

示例 1

// create a new environment
conda create --name workflowone

// activate environment
conda activate workflowone

// Install desired package
conda install tensorflow=1.15

// deactivate environment
conda deactivate

示例 2

// create a new environment
conda create --name workflowtwo

// activate environment
conda activate workflowtwo

// Install desired package
conda install tensorflow  // If you do not specify the version, you will download the latest version of Tensorflow

// deactivate environment
conda deactivate

【讨论】:

  • 对于gpu版本,使用conda install tensorflow-gpu=1.15
【解决方案2】:

conda install -c anaconda tensorflow-gpu

conda install -c anaconda tensorflow

寻找这些:


提示:在安装之前,在您的 Anaconda 环境中完全粉碎任何带有名称子字符串“keras”和“tensorflow”的文件 - 否则东西可能会损坏。

  1. 导航到您的site-packages
  2. 搜索**keras** --> 删除所有结果
  3. 搜索**tensorflow** --> 删除所有结果

从环境的根文件夹(例如envs/tf2_env)上面应该可以更好地工作——这个想法是,Anaconda 缓存它已经安装的任何东西,所以如果它没有被完全删除,你可能会遇到获取最新版本的包的麻烦.


相关问题在 cmets 中的回答

  1. 为什么当我尝试安装 Keras 2.2.4 时 conda 将 TF 2 还原为 TF 1.15.0?

    • TF2 仅与 Keras 2.2.5+ 兼容,因此 conda 负责兼容性
  2. 为什么某些from keras 导入不再起作用而需要from tensorflow.keras

    • from kerasfrom tensorflow.keras 在实现方面非常不同。 from keras 是后端中立的,而 tf.keras 与 TF 更紧密地集成在一起。也可以是significant performance differences。 TF2 及以后,tf.keras 更可取,开发将沿着它进行,如 F. Chollet 所述
    • 还要提防tf.python.keras

【讨论】:

  • 我必须同时安装 tensorflow 和 tensorflow-gpu 还是一个就足够了?如果我从 anaconda 导航器中删除已经安装的软件包,或者我必须手动删除文件(使用资源管理器),可以吗?
  • @MattiaSurricchio Explorer 是最好的选择 - 只有 一个 就足够了
  • 无论如何我更新了问题,似乎在安装软件包时可能存在错误。似乎keras覆盖了tensorflow版本
  • @MattiaSurricchio 不是错误; TF2 仅与 Keras 2.2.5+ 兼容,因此 conda 在这里负责兼容性
  • 也许我遗漏了一些东西,Keras 现在是否嵌入到了 TensorFlow 包中?我已经正确安装它并且它可以工作,但我必须重写我的导入,例如from tensorflow.keras import Sequential,而在我只使用from keras import Sequential之前。这让我觉得现在 Keras 附带了 TensorFlow 2.0,我不需要将它作为单独的包安装,我错了吗?
【解决方案3】:

就我而言,这解决了问题:

pip3 install tensorflow==2.0.0a0

甚至:

pip3 install tensorflow --upgrade

【讨论】:

  • 我避免使用 pip,因为我读到如果与 anaconda 匹配可能会导致一些“兼容性”问题。是否可以“留在”anaconda 框架内?
  • OP 明确要求提供 conda 解决方案。 Mattia 我建议你不要混合 conda 和 pip,特别是如果你要在生产中使用 env。最终你可以从 pip 构建一个 conda 包
【解决方案4】:

本周我一直在努力解决这个问题,并找到了一个简单的解决方案:
转到 Anaconda Navigator(确保您拥有最新更新),单击“环境”并从下拉菜单中选择“未安装”。在搜索字段中输入“tensorflow”。单击“tensorflow”复选框,但不单击“keras”复选框。单击“应用”,它将安装 2.0 以及 keras。那么你所要做的就是使用它们:

将张量流导入为 tf

从张量流导入 keras

如果您之前安装了非预期版本,请先将其全部删除,然后再执行上述操作。

【讨论】:

    【解决方案5】:

    解决了

    $ conda update --prefix # first step
    $ conda 4.8.2  # lates Anaconda
    

    打开Anaconda --> 创建环境--> 选择python V3.6 --> 搜索/选择 TensorFlow 2.0 == Anaconda 将升级依赖项

    这个新环境中的最新 Jupyter

    $ jupyter --version # latest jupyter notebook version created with pyton 3.6
    jupyter core     : 4.6.1
    jupyter-notebook : 6.0.0
    

    【讨论】:

      【解决方案6】:

      感谢@OverLordGoldDragon 的提示。

      他的回答总结是:

      1) 不要更新(将失败并显示神秘的错误消息)

      2) 卸载与 Anaconda 捆绑的 tensorflow 1.15

      conda remove tensorflow
      

      3) 重新安装 tensorflow(现在默认为 2.0)。

      conda install tensorflow
      

      非常适合我。谢谢!

      【讨论】: