def _tensor_product(t1, t2):
return tf.matmul(tf.expand_dims(t1, axis=-<NUM_LIT:1>), tf.expand_dims(t2, axis=-<NUM_LIT:2>))<EOL>
Computes the outer product of two possibly batched vectors.

    Args:
      t1: A `tf.Tensor` of shape `[..., n]`.
      t2: A `tf.Tensor` of shape `[..., m]`.

    Returns:
      A tensor of shape `[..., n, m]` with matching batch dimensions, let's call
      it `r`, whose components are:

      ```None
        r[..., i, j] = t1[..., i] * t2[..., j]
      ```