class_docstr: T5 encoder as a separate model which fuse multi-modal input.
  
  This module contains the encoder part of a pretrained T5. It is useful when
  adopting the pretrained T5 encoder as a part of a larger network. Note that
  the embedding layer should be created outside the module and provided as a
  parameter `shared_embedding` to share it in other parts of the network (e.g.,
  text encoder). If `shared_embedding` is not provided, the embedding layer is
  created within the module.
  
  Attributes:
    vocab_size: Size of the vocabulary.
    emb_dim: Size of the embeddings.
    num_heads: Number of attention heads.
    num_encoder_layers: Number of encoder layers.
    num_decoder_layers: Number of decoder layers.
    head_dim: Size of the embeddings in each head.
    mlp_dim: Size of the MLP output embeddings.
    dropout_rate: Dropout rate.
    dtype: Data type.
    mlp_activations: Sequence of activations in MLP.
    logits_via_embedding: Use the embedding weights for computing logits.
code: def setup(self):
      self.t5_config = t5_network.T5Config(
          vocab_size=self.vocab_size,
          emb_dim=self.emb_dim,
          num_heads=self.num_heads,
          num_encoder_layers=self.num_encoder_layers,
          num_decoder_layers=self.num_decoder_layers,
          head_dim=self.head_dim,
          mlp_dim=self.mlp_dim,
          dropout_rate=self.dropout_rate,
          dtype=self.dtype,
          mlp_activations=self.mlp_activations,
          logits_via_embedding=self.logits_via_embedding,
      )
  
imports: import functools
  from typing import Optional, Sequence
  from flax import linen
  import jax
  import jax.numpy
  from scenic.projects.knowledge_visual_language.models import constants
  from t5x.examples.t5 import layers
  from t5x.examples.t5 import network
label_desc: Use image node_id 1 for calling the FusedT5Encoder obj's underlying member method code with example usage: obj.setup() without return types