tf.OptionalSpec

Type specification for tf.experimental.Optional.

Inherits From: TypeSpec

For instance, tf.OptionalSpec can be used to define a tf.function that takes tf.experimental.Optional as an input argument:

@tf.function(input_signature=[tf.OptionalSpec(
  tf.TensorSpec(shape=(), dtype=tf.int32, name=None))])
def maybe_square(optional):
  if optional.has_value():
    x = optional.get_value()
    return x * x
  return -1
optional = tf.experimental.Optional.from_value(5)
print(maybe_square(optional))
tf.Tensor(25, shape=(), dtype=int32)

element_spec A nested structure of TypeSpec objects that represents the type specification of the optional element.
value_type The Python type for values that are compatible with this TypeSpec.

In particular, all values that are compatible with this TypeSpec must be an instance of this type.

Methods

from_value

View source

is_compatible_with

View source

Returns true if spec_or_value is compatible with this TypeSpec.