2017-06-29 81 views
0

每当我试图导入tensorflow我得到这个错误Tensorflow(protobuf的?)导入错误:意想不到的关键字参数“语法”

>>> import tensorflow 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/__init__.py", line 24, in <module> 
    from tensorflow.python import * 
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/__init__.py", line 52, in <module> 
    from tensorflow.core.framework.graph_pb2 import * 
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/core/framework/graph_pb2.py", line 16, in <module> 
    from tensorflow.core.framework import node_def_pb2 as tensorflow_dot_core_dot_framework_dot_node__def__pb2 
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/core/framework/node_def_pb2.py", line 16, in <module> 
    from tensorflow.core.framework import attr_value_pb2 as tensorflow_dot_core_dot_framework_dot_attr__value__pb2 
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/core/framework/attr_value_pb2.py", line 16, in <module> 
    from tensorflow.core.framework import tensor_pb2 as tensorflow_dot_core_dot_framework_dot_tensor__pb2 
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/core/framework/tensor_pb2.py", line 16, in <module> 
    from tensorflow.core.framework import resource_handle_pb2 as tensorflow_dot_core_dot_framework_dot_resource__handle__pb2 
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/core/framework/resource_handle_pb2.py", line 22, in <module> 
    serialized_pb=_b('\n/tensorflow/core/framework/resource_handle.proto\x12\ntensorflow\"m\n\x0eResourceHandle\x12\x0e\n\x06\x64\x65vice\x18\x01 \x01(\t\x12\x11\n\tcontainer\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x11\n\thash_code\x18\x04 \x01(\x04\x12\x17\n\x0fmaybe_type_name\x18\x05 \x01(\tB4\n\x18org.tensorflow.frameworkB\x13ResourceHandleProtoP\x01\xf8\x01\x01\x62\x06proto3') 
TypeError: __init__() got an unexpected keyword argument 'syntax' 

我怀疑这是一个错误的protobuf - 但我试图卸载都tensorflow并protobuf和重新安装它们与不同的protobuf版本,但无济于事。真有种失去了对这个单任何帮助与卸载python-protobuf

回答

0

修正它赞赏了很多apt-get的删除和卸载的protobuf有点子,然后用PIP安装tensorflow。

0

syntax关键字在proto3中引入(并在proto3时代解析器中将其返回到proto2,因此syntax = "proto2";有效)。

因此,要么:

  • 更新分析器工具(可能protoc
  • 确保只使用预先proto3语法,所以:没有syntaxmap
相关问题