class_docstr: Interface for feature preprocessing.
  
  The `Preprocessor` class is an abstract class to implement `preprocess` in
  `ModelBuilder` in tfr.keras.
  
  To be implemented by subclasses:
  
    * `__call__()`: Contains the logic to preprocess context and example inputs.
  
  Example subclass implementation:
  
  ```python
  class SimplePreprocessor(Preprocessor):
  
    def __call__(self, context_inputs, example_inputs, mask):
      context_features = {
          name: tf.math.log1p(
              tf.abs(tensor)) for name, tensor in context_inputs.items()
      }
      example_features = {
          name: tf.math.log1p(
              tf.abs(tensor)) for name, tensor in example_inputs.items()
      }
      return context_features, example_features
  ```
docstr: Invokes the `Preprocessor` instance.
  
  Args:
    context_inputs: maps context feature keys to `tf.keras.Input`.
    example_inputs: maps example feature keys to `tf.keras.Input`.
    mask: [batch_size, list_size]-tensor of mask for valid examples.
  
  Returns:
    A tuple of two dicts which map the context and example feature keys to
      the corresponding `tf.Tensor`s.
docstr_tok: ["Invokes","the","`","Preprocessor","`","instance",".","Args",":","context_inputs",":","maps","context","feature","keys","to","`","tf.keras.Input","`",".","example_inputs",":","maps","example","feature","keys","to","`","tf.keras.Input","`",".","mask",":","[","batch_size",",","list_size","]","-tensor","of","mask","for","valid","examples",".","Returns",":","A","tuple","of","two","dicts","which","map","the","context","and","example","feature","keys","to","the","corresponding","`","tf.Tensor","`","s","."]
code: def __call__(
      self,
      context_inputs: TensorDict,
      example_inputs: TensorDict,
      mask: tf.Tensor,
  ) -> Tuple[TensorDict, TensorDict]:
      """Invokes the `Preprocessor` instance.
  
      Args:
        context_inputs: maps context feature keys to `tf.keras.Input`.
        example_inputs: maps example feature keys to `tf.keras.Input`.
        mask: [batch_size, list_size]-tensor of mask for valid examples.
  
      Returns:
        A tuple of two dicts which map the context and example feature keys to
          the corresponding `tf.Tensor`s.
      """
      raise NotImplementedError("Calling an abstract method.")
  
imports: import abc
  from typing import Any, Callable, Dict, List, Optional, Tuple, Union
  from absl import logging
  import tensorflow
  from tensorflow_ranking.python.keras import feature
  from tensorflow_ranking.python.keras import layers
label_desc: Use image node_id 1 for calling the Preprocessor obj's underlying member method code with example usage: obj.__call__(context_inputs, example_inputs, mask) without return types