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

如何在TensorFlow中用CPU运行Keras?CUDA环境GPU占用报错求助

强制TensorFlow/Keras使用CPU运行的解决方案

刚好碰到过类似的显存占用导致会话创建失败的问题,给你几个靠谱的办法,能让TensorFlow/Keras强制切换到CPU运行:

方法一:在代码开头添加配置(推荐TF2.x)

直接在Python代码最顶部添加设备可见性配置,让TensorFlow完全忽略GPU设备:

import tensorflow as tf
# 让TensorFlow看不到任何GPU,自动切换到CPU
tf.config.set_visible_devices([], 'GPU')

# 之后正常导入Keras并构建模型
from tensorflow import keras
model = keras.Sequential(...)
# 后续训练/推理操作都会用CPU执行

如果你的TensorFlow是1.x版本,用下面的环境变量写法更兼容:

import os
# 设置环境变量,让CUDA不识别任何GPU
os.environ["CUDA_VISIBLE_DEVICES"] = "-1"

import tensorflow as tf
from tensorflow.keras import models
# 接下来正常使用即可

方法二:通过终端环境变量临时设置(无需改代码)

如果只是偶尔需要用CPU跑脚本,不想修改代码的话,可以在启动脚本前设置环境变量:

  • Linux/macOS 终端:
CUDA_VISIBLE_DEVICES=-1 python your_keras_script.py
  • Windows 命令提示符:
set CUDA_VISIBLE_DEVICES=-1 && python your_keras_script.py
  • Windows PowerShell:
$env:CUDA_VISIBLE_DEVICES="-1"; python your_keras_script.py

你遇到的tensorflow.python.framework.errors_impl.InternalError: Failed to create session确实大概率是GPU显存被其他进程完全占用,导致TensorFlow无法分配足够显存初始化会话。用上面的方法强制切换到CPU后,这个问题就能解决了。

内容的提问来源于stack exchange,提问作者송준석

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 07:09:07