class_docstr: Utility class for CLIP embeddings. Used to combine the image and text embeddings into a format usable by the
  decoder.
  
  For more details, see the original paper: https://arxiv.org/abs/2204.06125 section 2.1
code: def __init__(
      self,
      *,
      clip_extra_context_tokens: int = 4,
      clip_embeddings_dim: int = 768,
      time_embed_dim: int,
      cross_attention_dim,
  ):
      super().__init__()
  
      self.learned_classifier_free_guidance_embeddings = nn.Parameter(
          torch.zeros(clip_embeddings_dim)
      )
  
      # parameters for additional clip time embeddings
      self.embedding_proj = nn.Linear(
          clip_embeddings_dim, time_embed_dim
      )
      self.clip_image_embeddings_project_to_time_embeddings = nn.Linear(
          clip_embeddings_dim, time_embed_dim
      )
  
      # parameters for encoder hidden states
      self.clip_extra_context_tokens = clip_extra_context_tokens
      self.clip_extra_context_tokens_proj = nn.Linear(
          clip_embeddings_dim,
          self.clip_extra_context_tokens * cross_attention_dim,
      )
      self.encoder_hidden_states_proj = nn.Linear(
          clip_embeddings_dim, cross_attention_dim
      )
      self.text_encoder_hidden_states_norm = nn.LayerNorm(
          cross_attention_dim
      )
  
file_path: llmga/llmga/diffusers/src/diffusers/pipelines/unclip/text_proj.py
imports: import torch
  from torch import nn
  from ...configuration_utils import ConfigMixin, register_to_config
  from ...models import ModelMixin
label_desc: Use image node_id 1 to create a new UnCLIPTextProjModel object from inherited base classes: ModelMixin, ConfigMixin with example: obj = UnCLIPTextProjModel()