【问题标题】:TensorFlow 2.5 Mac M1 - Installing problem compatibility with NumPy library / Conda envTensorFlow 2.5 Mac M1 - 安装与 NumPy 库/Conda env 的兼容性问题
【发布时间】:2021-10-29 22:01:45
【问题描述】:

我在使用针对 M1(Macbook pro-2020)优化的新 Tensorflow 2.5 创建 conda 环境时遇到了很大的问题。

我遵循了这些步骤:

  1. https://github.com/conda-forge/miniforge安装针对arm64处理器优化的miniforge3
  2. 然后在终端上创建一个 conda env(“conda create --name tf25”和“conda activate tf25”)
  3. 按照苹果指南 (https://developer.apple.com/metal/tensorflow-plugin/) 进行操作后

这是结果:

最后,当我尝试导入 NumPy 包时,出现导入错误。

import numpy

Traceback(最近一次调用最后一次):文件 "/Users/antoniosquicciarini/miniforge3/envs/tf25/lib/python3.9/site-packages/numpy/core/init.py", 第 22 行,在 从 。导入多数组文件“/Users/antoniosquicciarini/miniforge3/envs/tf25/lib/python3.9/site-packages/numpy/core/multiarray.py”, 第 12 行,在 从 。导入覆盖文件“/Users/antoniosquicciarini/miniforge3/envs/tf25/lib/python3.9/site-packages/numpy/core/overrides.py”, 第 7 行,在 从 numpy.core._multiarray_umath 导入(ImportError: dlopen(/Users/antoniosquicciarini/miniforge3/envs/tf25/lib/python3.9/site-packages/numpy/core/_multiarray_umath.cpython-39-darwin.so, 2):库未加载:@rpath/libcblas.3.dylib 引用自: /Users/antoniosquicciarini/miniforge3/envs/tf25/lib/python3.9/site-packages/numpy/core/_multiarray_umath.cpython-39-darwin.so 原因:找不到图片

在处理上述异常的过程中,又发生了一个异常:

Traceback(最近一次调用最后一次):文件“”,第 1 行,in 文件 "/Users/antoniosquicciarini/miniforge3/envs/tf25/lib/python3.9/site-packages/numpy/init.py", 第 140 行,在 从 。导入核心文件“/Users/antoniosquicciarini/miniforge3/envs/tf25/lib/python3.9/site-packages/numpy/core/init.py”, 第 48 行,在 引发 ImportError(msg) ImportError:

重要提示:请阅读本文以获取有关如何解决此问题的建议!

导入 numpy C 扩展失败。此错误可能发生在 原因很多,通常是由于您的设置或 NumPy 的问题 已安装。

我们在以下位置汇总了一些常见原因和故障排除提示:

https://numpy.org/devdocs/user/troubleshooting-importerror.html

请注意并检查以下内容:

  • Python版本为:Python3.9起 "/Users/antoniosquicciarini/miniforge3/envs/tf25/bin/python"
  • NumPy 版本为:“1.19.5”

并确保它们是您期望的版本。请仔细 研究上面链接的文档以获得更多帮助。

原来的错误是: dlopen(/Users/antoniosquicciarini/miniforge3/envs/tf25/lib/python3.9/site-packages/numpy/core/_multiarray_umath.cpython-39-darwin.so, 2):库未加载:@rpath/libcblas.3.dylib 引用自: /Users/antoniosquicciarini/miniforge3/envs/tf25/lib/python3.9/site-packages/numpy/core/_multiarray_umath.cpython-39-darwin.so

原因:图片未找到

我已经尝试过:

  • 用 pip 安装 numpy
  • 安装较低版本的python (3.8)

我认为新的 TensorFlow 和 NumPy 库存在兼容性问题,因为直到今天我还在另一个 conda env 中使用了 TensorFlow 2.4

【问题讨论】:

  • 按照官网说明在Mac上安装Tensorflow tensorflow.org/install/pip#macos
  • 我也有同样的问题。官方网站并没有真正的帮助。如果你有修复,请告诉我。

标签: python numpy tensorflow apple-m1


【解决方案1】:

答案已发布在这里

Original error was: dlopen(/Users/ulto4/miniforge3/envs/python386/lib/python3.8/site-packages/numpy/core/_multiarray_umath.cpython-38-darwin.so, 2):

你需要安装openblas:

conda install -c conda-forge openblas

这修复了错误并且 numpy 可以正常工作。

【讨论】:

  • 天哪。尝试将 tensorflow 安装到我的 M1 pro 上时,我经历了两天的痛苦。你的评论救了我。谢谢你。对于其他有痛苦的人。我用这个来开始教程:caffeinedev.medium.com/… 在许多其他无法解决的随机问题之后,我重新启动了我的笔记本电脑。这是我的最后一个问题,现在它可以工作了。 @EnergyNet 是我的英雄。
猜你喜欢
  • 1970-01-01
  • 2021-05-17
  • 2021-07-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-11
  • 1970-01-01
相关资源
最近更新 更多