code: def setup(self):
      text_config = self.config.text_config
      vision_config = self.config.vision_config
  
      self.projection_dim = self.config.projection_dim
      self.text_embed_dim = text_config.hidden_size
      self.vision_embed_dim = vision_config.hidden_size
  
      text_module = FLAX_MODEL_MAPPING[
          self.config.text_config.__class__
      ].module_class
      vision_module = FLAX_MODEL_MAPPING.get(
          self.config.vision_config.__class__, FlaxCLIPVisionModel
      ).module_class
  
      self.text_model = text_module(text_config, dtype=self.dtype)
      self.vision_model = vision_module(vision_config, dtype=self.dtype)
  
      self.visual_projection = nn.Dense(
          self.projection_dim,
          dtype=self.dtype,
          kernel_init=jax.nn.initializers.normal(0.02),
          use_bias=False,
      )
      self.text_projection = nn.Dense(
          self.projection_dim,
          dtype=self.dtype,
          kernel_init=jax.nn.initializers.normal(0.02),
          use_bias=False,
      )
      self.logit_scale = self.param(
          "logit_scale", jax.nn.initializers.ones, []
      )
  
imports: from typing import Optional, Tuple
  import flax.linen
  import jax
  import jax.numpy
  from configuration_hybrid_clip import HybridCLIPConfig
  from flax.core.frozen_dict import FrozenDict
  from transformers import FLAX_MODEL_MAPPING, FlaxCLIPVisionModel
  from transformers.modeling_flax_utils import FlaxPreTrainedModel
  from transformers.models.clip.modeling_flax_clip import FlaxCLIPOutput
  from transformers.utils import logging
label_desc: Use image node_id 1 for calling the FlaxHybridCLIPModule obj's underlying member method code with example usage: obj.setup() without return types