code: def normalized_sliding_linear_reward_fn_generator(
      context_dim, num_actions, variance
  ):
      """Similar to the function above, but returns smaller-range functions.
  
      Every linear function has an underlying parameter consisting of `context_dim`
      floats of equal distance from each other. For example, with `context_dim = 3`,
      `num_actions = 2`, the parameter of the linear function associated with
      action 1 is `[1.0 / 5, 2.0 / 5, 3.0/ 5]`.
  
      Args:
        context_dim: Number of parameters per function.
        num_actions: Number of functions returned.
        variance: Variance of the noisy linear functions.
  
      Returns:
        A list of noisy linear functions.
      """
  
      def _float_range(begin, end, normalizer=1):
          return [float(j) / normalizer for j in range(begin, end)]
  
      return linear_reward_fn_generator(
          [
              _float_range(
                  i,
                  i + context_dim,
                  normalizer=context_dim + num_actions,
              )
              for i in range(num_actions)
          ],
          variance,
      )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import functools
  import gin
  import numpy
  from six.moves import range
  import tensorflow
  from tf_agents.bandits.agents import utils
  from tf_agents.bandits.environments import wheel_py_environment
label_desc: Use image node_id 3 for calling a global function with example usage: normalized_sliding_linear_reward_fn_generator(context_dim, num_actions, variance) and returns: linear_reward_fn_generator, unknown