☰
【深度学习】hello tensorflow:安装TensorFlow(on mac m3)、tensorflow集成到idea、第一个tensorflow程序(以及tf2适配版本tf1)
2026/11/3 1:12:33 网站建设 项目流程

文章目录

  • 一. 安装Tensorflow
    • 1. 安装miniforge3
    • 2. 安装Tensorflow
    • 3. 测试
  • 二. TensorFlow集成到idea
  • 三. 第一个tensorflow程序

一. 安装Tensorflow

1. 安装miniforge3

需要miniforge3,如以前环境较乱,最好是删除自己装过的miniforge3环境重装。

1.1. 删除已有环境

cd~rm-rf~/miniforge3 rm-rf.conda rm-rf.condarc

完成后,进入 .zshrc ,gg 将末端配置 miniforge3 的 PATH 配置删除。

1.2. 下载 Miniforge3_MacOS_ARM64 选择 Miniforge3-MacOSX-arm64

miniforge download

chmod+x ~/Miniforge3-MacOSX-arm64.shsh~/Miniforge3-MacOSX-arm64.shsource~/miniforge3/bin/activate conda--version#conda 23.3.1
  1. 按提示装, 并确保.bash_profile文件配置了miniforge3的– 这步我没操作,也没有什么影响
  2. 安装路径一定要在~/miniforge3, 不然可能有权限问题
vim~/.bash_profile export PATH="/{user_home}/miniforge3/bin:$PATH"source $HOME/.bash_profile

1.3. 创建一个conda环境

# 3.8和3.9都可以,pytorch需要3.9, 我这里安装了3.9版本conda create-ntf26python==3.9conda create-ntf26python==3.8

完成以上的准备后,才正式开始安装tensorflow,可安装tensorflow2.5/2.6,并且不需要再去github下载安装包。

2. 安装Tensorflow

Tensorflow需要安装的三个包是tensorflow-deps、tensorflow-macos、tensorflow-metal。其中前两个是必须的,tensorflow-metal是让tensorflow能用上Apple Silicon芯片的GPU。

一个官网都没告诉你的关键来了,这三个包必须严格安装对应的版本!具体的版本要关注官方安装文档最后的Releases表格。比如说,目前正式发布的tensorflow-macos是v2.9,那么同步安装的tensorflow-deps必须是v2.9、tensorflow-metal必须是v0.5.0,否则后面运行过程会报错失败。

详细步骤参考: apple开发者官网

2.1. 切换到自己的conda环境

conda activate tf26


2.2. 安装tensorflow

未安装过的安装tensorflow依赖包,安装过的需要卸载旧版。这里我没有安装过,所以继续往下走:

# 指定定版本安装condainstall-capple tensorflow-deps==2.6.0


2.3. 安装tensorflow

# 会有个报错, 自己安装下 pip install torch 然后再重新执行一遍python-mpipinstalltensorflow-macos


2.4. 安装tensorflow-metal

python-mpipinstalltensorflow-metal

3. 测试

进入python终端查看是否能导入tensorflow

python>>>importtensorflow as tf>>>tf.version<module'tensorflow._api.v2.version'from'/Users/lianggao/miniforge3/envs/tf/lib/python3.10/site-packages/tensorflow/_api/v2/version/__init__.py'>

参考:
https://zhuanlan.zhihu.com/p/474212619
https://www.readern.com/install-tensorflow-on-apple-silicon-macbook.html

二. TensorFlow集成到idea

1.创建一个python项目,或新的python模块

2.添加interpreter
指定miniforge3的pyhthon位置

3.创建模块

三. 第一个tensorflow程序

importtensorflowastf# helloworld 使用 TensorFlow 创建一个常量 op,这个 op 作为节点被添加到默认图。# 这个值被创建者返回并显示在输出中。hello=tf.constant('Hello, TensorFlow!')# Start tf sessionsess=tf.Session()# Run the opprint(sess.run(hello))

报错1

Traceback(most recent call last):File"/Users/lianggao/MyWorkSpace/001-360/001project-360/py_practise/tensflow-demo/tensflow_2.py",line10,in<module>sess=tf.Session()AttributeError:module'tensorflow'has no attribute'Session'.Did you mean:'version'?

原因是:我们引用的TensorFlow2.0版本,此版本与1.0相比没有模块Session。

这样修改:

sess=tf.Session()#====>sess=tf.compat.v1.Session()


报错2:

File"/Users/lianggao/miniforge3/lib/python3.10/site-packages/tensorflow/python/client/session.py",line1118,in _run raiseRuntimeError('The Session graph is empty.Add operations to the ' RuntimeError:The Session graph is empty.Add operations to the graph before callingrun().

问题产生的原因:无法执行sess.run()的原因是tensorflow版本不同导致的,tensorflow版本2.0无法兼容版本1.0.

importtensorflowastf tf.compat.v1.disable_eager_execution()hello=tf.constant('Hello, TensorFlow!')# Start tf sessionsess=tf.compat.v1.Session()# Run the opprint(sess.run(hello))输出---b'Hello, TensorFlow!'---

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询