class_docstr: Encoder model for text.
  
  Attributes:
    config: The CLIP text tower config.
class_docstr_tok: ["Encoder","model","for","text",".","Attributes",":","config",":","The","CLIP","text","tower","config","."]
code: def __call__(self, tokens, *, train: bool, debug: bool = False):
      if tokens is None:
          return tokens
      tokens = tokens.reshape((-1,) + tokens.shape[2:])
      text_code = clip_layers.TextEncoder(
          name="TextTower", **self.config
      )(tokens)
      text_code = jnp.expand_dims(text_code, 1)
      return text_code
  
imports: from typing import Any, Optional
  import flax.linen
  import jax
  import jax.numpy
  import ml_collections
  from scenic.model_lib.base_models import base_model
  from scenic.projects.baselines.clip import layers
  from scenic.projects.baselines.clip import model
  from scenic.projects.verbs_in_action import losses
  from scenic.projects.verbs_in_action import utils
label_desc: Use image node_id 1 for calling the TextEncoder obj's underlying member method code with example usage: obj.__call__(tokens) and returns: text_code, tokens