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

Colab中使用plot_model报错:无法导入wrappers及无法生成model.png

解决TensorFlow 2.x中plot_model可视化的两类错误

错误1:ImportError: cannot import name 'wrappers' from 'tensorflow.python.keras.layers'

这是TensorFlow版本迭代后模块路径变更导致的,处理方式:

  • 强制使用标准导入方式引入plot_model:
    from tensorflow.keras.utils import plot_model
    
  • 若代码中存在自定义的wrappers导入,替换为官方当前路径:
    from tensorflow.keras.layers import wrappers
    

错误2:ImportError: graphviz or pydot are not available(已安装依赖仍无效)

Colab中依赖安装后需重启内核才能生效,且部分场景需补充安装pydotplus,步骤:

  1. 执行完整依赖安装命令:
    !apt-get -qq install -y graphviz libgraphviz-dev
    !pip install -q pydot pydotplus
    
  2. 点击Colab顶部菜单栏「Runtime」→「Restart runtime」重启内核,之后重新运行代码。
  3. 确保plot_model调用格式正确,示例代码:
    # Sequential模型可视化
    from tensorflow.keras.models import Sequential
    from tensorflow.keras.layers import Dense
    
    model_seq = Sequential([
        Dense(32, activation='relu', input_shape=(10,)),
        Dense(1, activation='sigmoid')
    ])
    plot_model(model_seq, to_file='model_seq.png', show_shapes=True, show_layer_names=True)
    
    # Functional模型可视化
    from tensorflow.keras.models import Model
    from tensorflow.keras.layers import Input
    
    inputs = Input(shape=(10,))
    x = Dense(32, activation='relu')(inputs)
    outputs = Dense(1, activation='sigmoid')(x)
    model_func = Model(inputs=inputs, outputs=outputs)
    plot_model(model_func, to_file='model_func.png', show_shapes=True, show_layer_names=True)
    

额外排查项

  • 检查TensorFlow版本是否为稳定2.x:
    import tensorflow as tf
    print(tf.__version__)
    
    版本过旧则执行!pip install --upgrade tensorflow升级后重启内核。
  • 生成的图片文件可在Colab左侧「文件」面板查看,未显示则刷新面板。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 19:24:27