Handeling ImportError: cannot import name pywrap_tensorflow

Problem: importing tensotflow in CLI python works fine however when importing tensorflow in jupyter it gives  following error:

ImportError: cannot import name pywrap_tensorflow

Importing tensorflow in jupyter notebook (Not working Error):

 import tensorflow as tf
ImportErrorTraceback (most recent call last)
 in ()
      2 import cv2 as cv2
      3 from PIL import Image
----> 4 import tensorflow as tf
      5 #'/home/ubuntu/.local/lib/python2.7/site-packages/tensorflow'

/home/ubuntu/.local/lib/python2.7/site-packages/tensorflow/__init__.py in ()
     21 from __future__ import print_function
     22 
---> 23 from tensorflow.python import *
     24 
     25 

/home/ubuntu/.local/lib/python2.7/site-packages/tensorflow/python/__init__.py in ()
     47 _default_dlopen_flags = sys.getdlopenflags()
     48 sys.setdlopenflags(_default_dlopen_flags | ctypes.RTLD_GLOBAL)
---> 49 from tensorflow.python import pywrap_tensorflow
     50 sys.setdlopenflags(_default_dlopen_flags)
     51 

ImportError: cannot import name pywrap_tensorflow

Importing tensorflow in CLI python (Working):

$ python

Python 2.7.12 (default, Jul 1 2016, 15:12:24)
[GCC 5.4.0 20160609] on linux2
Type “help”, “copyright”, “credits” or “license” for more information.

>>> import tensorflow
>>> import tensorflow as tf
>>> print(tf)
<module ‘tensorflow’ from ‘/home/ubuntu/.local/lib/python2.7/site-packages/tensorflow/__init__.pyc’>
>>> help(tf)

>>> print tf.__version__
0.11.0rc2
>>> print tf.__path__
[‘/home/ubuntu/.local/lib/python2.7/site-packages/tensorflow’]

Troubleshooting:

Checking where the tensorflow package is located:

$ ls /home/ubuntu/.local/lib/python2.7/site-packages/tensorflow/
contrib core examples include init.py init.pyc models python tensorboard tools

Where is jupyter?

$ ps -ef | grep jupyter
ubuntu 1347 1 0 Nov11 ? 00:00:46 /usr/bin/python /usr/local/bin/jupyter-notebook –no-browser –ip=* –port=8888

Where most of the python packages are located: 

>> import sklearn
>>> print(sklearn.__path__)
[‘/home/ubuntu/.local/lib/python2.7/site-packages/sklearn’]
>>> import mxnet
>>> print(mxnet.__path__)
[‘/usr/local/lib/python2.7/dist-packages/mxnet-0.7.0-py2.7.egg/mxnet’]

Solution:

  1. If you have installed tensorflow while jupyter is running, importing tensorflow will not work in jupyter (check if it works on python CLI). You just need to Restart jupyter notebook and it should work.
  2. If you have problem in both jupyter and python CLI, then you just need to start jupyter from other location.
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s