You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

执行Python inference.py脚本时遇DLL加载失败错误求助

解决Windows 10 + Python3.6环境下TensorFlow Protobuf DLL加载失败问题

这个错误的核心原因是TensorFlow与protobuf版本不兼容,在Windows平台的Python3.6环境中,高版本protobuf的C扩展DLL无法和旧版TensorFlow匹配,导致加载失败。下面是经过验证的解决方案:

步骤1:彻底卸载现有冲突包

打开命令提示符(CMD)或者PowerShell,执行以下命令卸载当前的TensorFlow和protobuf:

pip uninstall -y tensorflow protobuf

这一步确保完全清理掉可能存在版本冲突的包。

步骤2:安装兼容版本的TensorFlow和protobuf

Python3.6在Windows平台上最高支持TensorFlow 1.15.x系列(TensorFlow 2.x对Python3.6的支持非常有限),我们需要搭配与之完全兼容的protobuf版本:

pip install tensorflow==1.15.5 protobuf==3.12.4

选择这两个版本的原因是:TF1.15.5是Python3.6在Windows上最稳定的官方支持版本,而protobuf3.12.4是官方文档中明确与TF1.15.x兼容的版本,不会出现DLL加载问题。

步骤3:验证环境修复

打开Python交互式终端,执行以下代码验证:

import tensorflow as tf
print("TensorFlow版本:", tf.__version__)
import google.protobuf
print("Protobuf版本:", google.protobuf.__version__)

如果没有抛出任何错误,说明你的环境已经修复完成,可以正常运行inference.py脚本了。

额外注意事项

  • 确保你的Windows 10已经安装了64位版本的Visual C++ Redistributable for Visual Studio 2015-2019,很多DLL加载失败问题都是因为缺少这个基础运行库。
  • 如果你之前用了全局Python环境,建议创建一个虚拟环境来隔离依赖,避免其他项目的包干扰:
    pip install virtualenv
    virtualenv tf_chatbot_env
    tf_chatbot_env\Scripts\activate
    # 激活后再执行步骤2的安装命令
    

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

火山引擎 最新活动