View source on GitHub

Assert the condition x >= 0 holds element-wise.

    x, data=None, summarize=None, message=None, name=None

When running in graph mode, you should add a dependency on this operation to ensure that it runs. Example of adding a dependency to an operation:

with tf.control_dependencies([tf.debugging.assert_non_negative(x, y)]):
  output = tf.reduce_sum(x)

Non-negative means, for every element x[i] of x, we have x[i] >= 0. If x is empty this is trivially satisfied.


  • x: Numeric Tensor.
  • data: The tensors to print out if the condition is False. Defaults to error message and first few entries of x.
  • summarize: Print this many entries of each tensor.
  • message: A string to prefix to the default message.
  • name: A name for this operation (optional). Defaults to "assert_non_negative".


Op that raises InvalidArgumentError if x >= 0 is False.


  • InvalidArgumentError: if the check can be performed immediately and x >= 0 is False. The check can be performed immediately during eager execution or if x is statically known.

Eager Compatibility

returns None