ImportError: невозможно импортировать имя 'ClusterDef' - PullRequest
0 голосов
/ 29 марта 2020

Около недели go Мне удалось импортировать тензорный поток, но теперь у меня возникла проблема с запуском того же кода. Когда я запускаю какой-либо из них, я не могу заставить его работать в данный момент (что меня удивляет больше всего, по крайней мере, часть его работала на прошлой неделе, теперь, похоже, он не работает), я получаю ImportError: не могу импортировать имя 'ClusterDef', о котором я ничего не нахожу в сети:

import tensorflow
import keras   


---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-2-a649b509054f> in <module>()
----> 1 import tensorflow

/anaconda3/lib/python3.6/site-packages/tensorflow/__init__.py in <module>()
     39 import sys as _sys
     40 
---> 41 from tensorflow.python.tools import module_util as _module_util
     42 from tensorflow.python.util.lazy_loader import LazyLoader as _LazyLoader
     43 

/anaconda3/lib/python3.6/site-packages/tensorflow/python/__init__.py in <module>()
     75 
     76 # Bring in subpackages.
---> 77 from tensorflow.python.estimator import estimator_lib as estimator
     78 from tensorflow.python.layers import layers
     79 from tensorflow.python.ops import image_ops as image

/anaconda3/lib/python3.6/site-packages/tensorflow/python/estimator/estimator_lib.py in <module>()
     20 
     21 # pylint: disable=unused-import,line-too-long
---> 22 from tensorflow.python.estimator.estimator import Estimator
     23 from tensorflow.python.estimator.export import export_lib as export
     24 from tensorflow.python.estimator.inputs import inputs

/anaconda3/lib/python3.6/site-packages/tensorflow/python/estimator/estimator.py in <module>()
     48 from tensorflow.python.training import monitored_session
     49 from tensorflow.python.training import saver
---> 50 from tensorflow.python.training import training
     51 from tensorflow.python.util import compat
     52 

/anaconda3/lib/python3.6/site-packages/tensorflow/python/training/training.py in <module>()
    180 
    181 # Distributed computing support.
--> 182 from tensorflow.core.protobuf.tensorflow_server_pb2 import ClusterDef
    183 from tensorflow.core.protobuf.tensorflow_server_pb2 import JobDef
    184 from tensorflow.core.protobuf.tensorflow_server_pb2 import ServerDef

ImportError: cannot import name 'ClusterDef' 

1 Ответ

0 голосов
/ 29 марта 2020

Обычно есть две причины для ImportError

  • это круговая попытка импорта
  • целевой объект не существует

в вашем случае я бы проверил если этот файл действительно содержит класс ClusterDef

/anaconda3/lib/python3.6/site-packages/tensorflow/core/protobuf/tensorflow_server_pb2.py

, это динамически генерируемые файлы protobuf (по grp c), которые могут быть каким-то образом удалены в случае, если этот файл не содержит требуемый класс, лучшим вариантом, вероятно, является переустановка tensorflow / анаконда

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...