2017-06-29 87 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
相關問題