Après avoir réussi à pip install
, l'importation de la bibliothèque tensorflow échoue.
>>> import tensorflow
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Python/2.7/site-packages/tensorflow/__init__.py", line 4, in <module>
from tensorflow.python import *
File "/Library/Python/2.7/site-packages/tensorflow/python/__init__.py", line 13, in <module>
from tensorflow.core.framework.graph_pb2 import *
File "/Library/Python/2.7/site-packages/tensorflow/core/framework/graph_pb2.py", line 8, in <module>
from google.protobuf import reflection as _reflection
File "/Library/Python/2.7/site-packages/google/protobuf/reflection.py", line 58, in <module>
from google.protobuf.internal import python_message as message_impl
File "/Library/Python/2.7/site-packages/google/protobuf/internal/python_message.py", line 59, in <module>
import six.moves.copyreg as copyreg
ImportError: No module named copyreg
Vous pouvez passer à six-1.10.x en utilisant
easy_install -U six
Cela mettra à niveau la version actuelle de six de 1.4 à 1.10.x, requise par tensorflow.
Solution: TensorFlow dépend du protobuf qui nécessite six-1.10.0. L'environnement python par défaut d'Apple comporte six-1.4.1 et peut être difficile à mettre à niveau. Nous vous recommandons donc d’installer une copie distincte de python via homebrew:
brasser installer python
ou la construction/utilisation de TensorFlow dans virtualenv comme décrit ci-dessus.
copyreg
est une fonction python3
disponible dans le module six
dans python2.x
, voir https://docs.python.org/2/library/copy_reg.html#module-copy_reg
Pour obtenir copyreg
, vous devez installer six
:
pip install -U six
(Remarque: dans python2
, vous pouvez accéder à la fonction avec (i) six.copy_reg
ou lorsqu'un module est importé avec six.moves.*
, il conserve la syntaxe python3
, c.-à-d. six.moves.copyreg
.)
Comme aucune des solutions suggérées ne fonctionnait pour moi, j'ai changé de ligne
import six.moves.copyreg as copyreg
à
from six.moves import copyreg
et cela semblait résoudre le problème. Cependant, au lieu de cela, j'ai un autre ImportError qui dit
dlopen(/Library/Python/2.7/site-packages/tensorflow/python/_pywrap_tensorflow.so, 2): no suitable image found. Did find:
/Library/Python/2.7/site-packages/tensorflow/python/_pywrap_tensorflow.so: mach-o, but wrong architecture
Il suffit de poster ceci comme réponse si quelqu'un d'autre a peut-être plus de succès dans ce domaine que moi.