TensorFlow pip安装问题:无法导入名称“descriptor”。

11
我在安装 TensorFlow 时遇到以下错误:
ImportError: Traceback (most recent call last):
File ".../graph_pb2.py", line 6, in 
from google.protobuf import descriptor as _descriptor
ImportError: 无法导入名称 'descriptor'
4个回答

7
这个错误表示protobuf和TensorFlow版本不匹配。
按照以下步骤修复此错误:
  1. 卸载TensorFlow。
  2. 卸载protobuf(如果已安装)。
  3. 重新安装TensorFlow,这也会安装正确的protobuf依赖项。

4

我遇到了类似的问题,经过反复尝试,我使用以下逻辑来运行程序:

pip install --upgrade --no-deps --force-reinstall tensorflow

这将确保从头卸载并重新安装程序。它有效!

1
在卸载/重新安装诸如protobuf等其他软件包之前,我建议您要格外小心。我认为最可能的问题是版本差异。截至撰写本文时,最新版本的Python是3.7,而TensorFlow仅兼容到3.6。
如果您正在使用像Anaconda这样的第三方发行版,则可能会隐藏此问题。在这种情况下,我建议您在Anaconda中创建一个新环境,并使用Python 3.6安装TensorFlow:https://conda.io/projects/conda/en/latest/user-guide/getting-started.html#managing-python

0

请尝试以下操作:

  1. pip uninstall protobuf

  2. brew install protobuf

  3. mkdir -p /Users/alexeibendebury/Library/Python/2.7/lib/python/site-packages

  4. echo 'import site; site.addsitedir("/usr/local/lib/python2.7/site-packages")' >> /Users/alexeibendebury/Library/Python/2.7/lib/python/site-packages/homebrew.pth


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接