You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

M1芯片Mac上安装TensorFlow与AIMA代码的问题求助

解决M1 Mac上AIMA代码安装与测试的依赖问题

我来帮你搞定这些问题,刚好之前在M1设备上折腾过类似的场景,给你一套针对性的解决方案:

1. 先搞定TensorFlow的版本冲突

你遇到的Could not find a version that satisfies the requirement tensorflow错误,本质是M1的ARM64架构和AIMA默认requirements.txt里的TensorFlow条目不兼容——默认配置可能是针对x86架构的,pip在ARM64的包索引里找不到匹配版本。但你已经在虚拟环境里成功装过并测试过TensorFlow了,完全没必要让pip再重复安装它。

解决步骤:

  • 打开AIMA项目根目录的requirements.txt文件
  • 删除里面的tensorflow(如果有tensorflow-gpu也一起删)这一行
  • 保存文件后重新执行:
    pip install -r requirements.txt
    
    这样就不会再触发TensorFlow的安装错误了

2. 逐一补全测试缺失的依赖

你测试时碰到的13个导入错误,都是缺对应的依赖包,直接针对性安装就行:

在激活的AIMA_ENV虚拟环境里执行这条命令,一次性装完所有报错提到的缺失包:

pip install ipythonblocks sortedcontainers qpsolvers networkx opencv-python

对应关系给你理清楚:

  • ipythonblocks → 解决ModuleNotFoundError: No module named 'ipythonblocks'
  • sortedcontainers → 解决ModuleNotFoundError: No module named 'sortedcontainers'
  • qpsolvers → 解决ModuleNotFoundError: No module named 'qpsolvers'
  • networkx → 解决ModuleNotFoundError: No module named 'networkx'
  • opencv-python → 解决ModuleNotFoundError: No module named 'cv2'

3. 处理自定义requirements的潜在问题

你之前修改requirements.txt加了一堆包,可能出现M1架构下的安装冲突(比如cvxopt直接pip装容易失败)。如果上面的步骤执行后还有报错,可以试试:

  • 先卸载冲突的包:pip uninstall -y cvxopt(如果这个包安装失败的话)
  • 用Homebrew先装底层依赖,再装Python包,比如装cvxopt:
    brew install gfortran
    pip install cvxopt
    
  • 要是你不需要某些模块的测试(比如深度学习相关),可以单独跳过对应测试文件,比如:
    py.test --ignore=tests/test_deep_learning4e.py
    

4. 验证安装与测试

完成所有依赖安装后,重新跑测试:

py.test

如果还有个别测试报错,看具体错误信息针对性调整——比如某些测试需要特定版本的依赖,可以指定版本安装,比如pip install qpsolvers==3.2.0(这个是AIMA文档推荐的兼容版本)。

另外,确认下你的虚拟环境是ARM64版本的Python3.8,避免Rosetta转译的问题:

python -c "import platform; print(platform.machine())"

输出应该是arm64,如果是x86_64,那你得重新建基于ARM64 Python的虚拟环境。

内容的提问来源于stack exchange,提问作者Pegasus420

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.27 17:44:10