Tensorflow Metal tf.random/@tf.function issue

When using custom functions under the @tf.function handle, the output of tf.random will be fixed at each call. This behavior will occur after the first call to a method that is wrapped under @tf.function and will persist until the kernel is restarted.