title: Tensorflow: How do I convert a EagerTensor into a numpy array?
body: <p>With standard Tensorflow:</p>
  
  <pre><code>import tensorflow as tf
  
  x = tf.convert_to_tensor([0,1,2,3,4], dtype=tf.int64)
  y = x + 10
  
  sess = tf.InteractiveSession()
  sess.run([
      tf.local_variables_initializer(),
      tf.global_variables_initializer(),
  ])
  coord = tf.train.Coordinator()
  threads = tf.train.start_queue_runners(coord=coord)
  
  z = y.eval(feed_dict={x:[0,1,2,3,4]})
  print(z)
  print(type(z))
  
  coord.request_stop()
  coord.join(threads)
  sess.close()
  </code></pre>
  
  <p>Output:</p>
  
  <pre><code>[10 11 12 13 14]
  &lt;class 'numpy.ndarray'&gt;
  </code></pre>
  
  <p>With eager execution:</p>
  
  <pre><code>import tensorflow as tf
  
  tf.enable_eager_execution() # requires r1.7
  
  x = tf.convert_to_tensor([0,1,2,3,4], dtype=tf.int64)
  y = x + 10
  
  print(y)
  print(type(y))
  </code></pre>
  
  <p>Output:</p>
  
  <pre><code>tf.Tensor([10 11 12 13 14], shape=(5,), dtype=int64)
  &lt;class 'EagerTensor'&gt;
  </code></pre>
  
  <p>If I try <code>y.eval()</code>, I get <code>NotImplementedError: eval not supported for Eager Tensors</code>. Is there no way to convert this? This makes Eager Tensorflow completely worthless.</p>
  
  <p><strong>Edit:</strong></p>
  
  <p>There's a function <code>tf.make_ndarray</code> that should convert a tensor to a numpy array but it causes <code>AttributeError: 'EagerTensor' object has no attribute 'tensor_shape'</code>.</p>