TensorFlow 1 version
|
View source on GitHub
|
Checks whether the current thread has eager execution enabled.
tf.executing_eagerly()
Eager execution is enabled by default and this API returns True
in most of cases. However, this API might return False in the following use
cases.
- Executing inside
tf.function, unless undertf.init_scopeortf.config.run_functions_eagerly(True)is previously called. - Executing inside a transformation function for
tf.dataset. tf.compat.v1.disable_eager_execution()is called.
General case:
print(tf.executing_eagerly())True
Inside tf.function:
@tf.functiondef fn():with tf.init_scope():print(tf.executing_eagerly())print(tf.executing_eagerly())fn()TrueFalse
Inside tf.function after tf.config.run_functions_eagerly(True) is called:
tf.config.run_functions_eagerly(True)@tf.functiondef fn():with tf.init_scope():print(tf.executing_eagerly())print(tf.executing_eagerly())fn()TrueTruetf.config.run_functions_eagerly(False)
Inside a transformation function for tf.dataset:
def data_fn(x):print(tf.executing_eagerly())return xdataset = tf.data.Dataset.range(100)dataset = dataset.map(data_fn)False
Returns | |
|---|---|
True if the current thread has eager execution enabled.
|
TensorFlow 1 version
View source on GitHub