code: def _to_bfloat16_unbiased(x, noise):
      """Convert a float32 to a bfloat16 using randomized roundoff.
  
      Args:
        x: A float32 Tensor.
        noise: a float32 Tensor with values in [0, 1), broadcastable to tf.shape(x)
      Returns:
        A float32 Tensor.
      """
      x_sign = tf.sign(x)
      # Make sure x is positive.  If it is zero, the two candidates are identical.
      x = x * x_sign + 1e-30
      cand1 = tf.to_bfloat16(x)
      cand1_f = tf.to_float(cand1)
      # This relies on the fact that for a positive bfloat16 b,
      # b * 1.005 gives you the next higher bfloat16 and b*0.995 gives you the
      # next lower one. Both 1.005 and 0.995 are ballpark estimation.
      cand2 = tf.to_bfloat16(
          tf.where(
              tf.greater(x, cand1_f), cand1_f * 1.005, cand1_f * 0.995
          )
      )
      ret = _randomized_roundoff_to_bfloat16(x, noise, cand1, cand2)
      return ret * tf.to_bfloat16(x_sign)
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import tensorflow.compat.v1
  from tensorflow.python.framework import function
label_desc: Use image node_id 6 for calling a global function with example usage: _to_bfloat16_unbiased(x, noise) and returns: unknown