class_docstr: [`FlaxLogitsProcessor`] that takes a list of pairs of integers which indicates a mapping from generation indices to
  token indices that will be forced before sampling. The processor will set their log probs to 0 and all other tokens
  to `-inf` so that they are sampled at their corresponding index.
  
  Args:
      force_token_map (`list`):
          Map giving token ids and indices where they will be forced to be sampled.
code: def __call__(
      self, input_ids: jnp.ndarray, scores: jnp.ndarray, cur_len: int
  ) -> jnp.ndarray:
      def _force_token(generation_idx):
          batch_size = scores.shape[0]
          current_token = self.force_token_array[generation_idx]
  
          new_scores = jnp.ones_like(
              scores, dtype=scores.dtype
          ) * -float("inf")
          updates = jnp.zeros((batch_size, 1), dtype=scores.dtype)
          new_scores = lax.dynamic_update_slice(
              new_scores, updates, (0, current_token)
          )
          return new_scores
  
      scores = lax.cond(
          cur_len >= self.force_token_array.shape[0],
          # If the current length is geq than the length of force_token_array, the processor does nothing.
          lambda: scores,
          # Otherwise, it may force a certain token.
          lambda: lax.cond(
              self.force_token_array[cur_len] >= 0,
              # Only valid (positive) tokens are forced
              lambda: _force_token(cur_len),
              # Otherwise, the processor does nothing.
              lambda: scores,
          ),
      )
      return scores
  
imports: import inspect
  import jax
  import jax.lax
  import jax.numpy
  from ..utils import add_start_docstrings
  from ..utils.logging import get_logger
label_desc: Use image node_id 2 for calling the FlaxForceTokensLogitsProcessor obj's underlying member method code with example usage: obj.__call__(input_ids, scores, cur_len) and returns: scores, new_scores