英特尔版Mac系统下PyCharm使用Keras plot_model报错问题问询
keras.utils.plot_model已安装pydot、graphviz仍报ImportError解决方案
报错原文:
ImportError: ('You must install pydot (pip install pydot) and install graphviz (see instructions at https://graphviz.gitlab.io/download/) ', 'for plot_model/model_to_dot to work.')
核心原因
你通过PyCharm Python Interpreter面板安装的pydot、graphviz都属于Python层面的调用依赖,plot_model正常工作还需要系统级的graphviz二进制运行程序,仅安装Python依赖无法满足运行要求,因此会重复抛出该报错。
修复步骤
- 第一步:先清理现有环境的冲突依赖,打开PyCharm项目自带的Terminal(确认Terminal已自动激活当前项目的虚拟环境),执行命令:
pip uninstall pydot pydotplus graphviz -y
- 第二步:安装系统级graphviz运行程序
- Windows:下载graphviz安装包,安装时勾选「Add Graphviz to system PATH」选项,安装完成后重启PyCharm
- Mac:通过brew执行
brew install graphviz,或下载官方dmg安装包安装后配置环境变量 - Linux:对应发行版执行系统包管理安装命令,如Ubuntu下为
sudo apt install graphviz
- 第三步:重新安装Python层面依赖,在当前虚拟环境的Terminal执行:
pip install pydot graphviz
- 第四步:运行测试代码验证修复效果:
import pydot import graphviz from tensorflow.keras import Sequential, layers from tensorflow.keras.utils import plot_model # 构建最简测试模型 test_model = Sequential([layers.Dense(1, input_shape=(10,))]) plot_model(test_model, show_shapes=True)
运行上述代码无报错、成功生成模型结构图即为修复完成。
特殊情况兼容
如果完成上述步骤仍报错,可在调用plot_model前手动添加graphviz的bin目录路径到系统环境变量,示例如下:
import os # 替换为你本地graphviz安装路径下的bin文件夹绝对路径 os.environ["PATH"] += os.pathsep + 'C:/Program Files/Graphviz/bin/'
内容的提问来源于stack exchange,提问作者Julian7
相关产品推荐
相关产品推荐

