code: def split_seed(seed, n=2, salt=None, name=None):
      """Splits a seed into `n` derived seeds.
  
      See https://github.com/tensorflow/probability/blob/main/PRNGS.md
      for details.
      Args:
        seed: The seed to split; may be an `int`, an `(int, int) tuple`, or a
          `Tensor`. `int` seeds are converted to `Tensor` seeds using
          `tf.random.uniform` stateful sampling. Tuples are converted to `Tensor`.
        n: The number of splits to return. In TensorFlow, if `n` is an integer, this
          function returns a list of seeds and otherwise returns a `Tensor` of
          seeds.  In JAX, this function always returns an array of seeds.
        salt: Optional `str` salt to mix with the seed.
        name: Optional name to scope related ops.
  
      Returns:
        seeds: If `n` is a Python `int`, a `tuple` of seed values is returned. If
          `n` is an int `Tensor`, a single `Tensor` of shape `[n, 2]` is returned. A
          single such seed is suitable to pass as the `seed` argument of the
          `tf.random.stateless_*` ops.
      """
      if not (
          isinstance(n, int)
          or isinstance(n, np.ndarray)
          or tf.is_tensor(n)
      ):  # avoid confusion with salt.
          raise TypeError(
              "`n` must be a python `int` or an int Tensor, got {}".format(
                  repr(n)
              )
          )
      with tf.name_scope(name or "split_seed"):
          seed = sanitize_seed(seed, salt=salt)
          if JAX_MODE:
              from jax import (
                  random as jaxrand,
              )  # pylint: disable=g-import-not-at-top
  
              return jaxrand.split(seed, int(n))
          seeds = tf.random.stateless_uniform(
              [n, 2],
              seed=seed,
              minval=None,
              maxval=None,
              dtype=SEED_DTYPE,
          )
          if isinstance(n, six.integer_types):
              seeds = tf.unstack(seeds)
          return seeds
  
file_path: probability/tensorflow_probability/python/internal/samplers.py
imports: import hashlib
  import warnings
  import numpy
  import six
  import tensorflow.compat.v2
  from tensorflow_probability.python.internal import prefer_static
label_desc: Use image node_id 6 for calling a global function with example usage: split_seed(seed, n, salt, name) and returns: seeds, jaxrand