Azure Databrics笔记本运行报No module named 'tensorflow'错误
Azure Databricks Notebook 报错
ModuleNotFoundError: No module named 'tensorflow' Command skipped 原因与解决方案 报错核心触发场景
该报错固定出现在Azure机器学习实验室提供的Databricks Notebook运行流程中,触发后TensorFlow相关导入、调用命令会被直接跳过,后续关联逻辑无法正常执行。
报错产生原因
- 集群运行时选型错误:当前Notebook绑定的是Databricks标准运行时,这类运行时默认仅内置Spark、Python基础依赖,不会预装TensorFlow等机器学习框架,导入时直接找不到对应模块。
- 临时依赖失效:如果之前仅在当前Notebook会话内临时安装过TensorFlow,集群自动休眠重启、会话超时断开、计算资源回收后,临时安装的包会被完全清除,再次运行代码就会触发模块缺失报错。
- 依赖安装未生效:手动安装TensorFlow时,版本和当前集群的Python版本、Databricks运行时版本不兼容,或者集群网络限制无法拉取PyPI源的包,安装流程实际执行失败,后续导入命令被判定为前置依赖缺失直接跳过。
- 库作用域不匹配:将TensorFlow安装到了其他未关联当前Notebook的计算集群,或者安装时指定了独立虚拟环境路径,当前Notebook的运行上下文无法读取到已安装的库文件。
可行解决方法
- 切换ML版本运行时:在集群配置页面选择带ML后缀的对应版本Databricks运行时,这类运行时已经提前完成了TensorFlow、PyTorch等机器学习框架的适配预装,不需要手动安装即可直接导入使用,是兼容性最高、最稳定的方案。
- 会话级临时安装依赖:在Notebook最顶部新增独立代码单元,放在所有导入TensorFlow的代码之前,执行安装命令:
%pip install tensorflow
安装完成后执行命令重启Python内核保证依赖加载生效:
dbutils.library.restartPython()
注意:该方式安装的包仅在当前Notebook会话周期内有效,集群重启或会话断开后需要重新执行安装步骤。
- 集群级永久安装依赖:进入当前Notebook绑定的计算集群配置页,找到「库」管理板块,选择PyPI源,输入包名
tensorflow,可根据业务需要指定兼容版本(例如tensorflow==2.15.0),确认后等待集群完成库挂载即可。配置完成后所有绑定该集群的Notebook都可以直接导入TensorFlow,不需要重复安装。 - 兼容性排查:如果安装后仍然触发相同报错,先核对当前集群的Python版本与所安装TensorFlow版本的适配关系,避免安装不兼容版本;如果工作区启用了网络访问限制,确认集群可以正常访问PyPI源,不会因为网络拦截导致包下载安装失败。
内容的提问来源于stack exchange,提问作者sscswapnil
相关产品推荐
相关产品推荐

