code: def create_nllb_model(
      config: NllbConfig,
      *,
      device: Optional[Device] = None,
      dtype: Optional[DataType] = None,
  ) -> TransformerModel:
      """Create an NLLB model.
  
      :param config:
          The configuration.
      :param device:
          The device on which to initialize modules.
      :param dtype:
          The data type of module parameters and buffers.
      """
      return NllbBuilder(
          config, device=device, dtype=dtype
      ).build_model()
  
imports: from dataclasses import dataclass
  from functools import partial
  from typing import List, Optional, Tuple
  from torch.distributed.fsdp.wrap import transformer_auto_wrap_policy
  from fairseq2.data import VocabularyInfo
  from fairseq2.gang import Gang
  from fairseq2.models.transformer import TransformerEmbeddingFrontend, TransformerFrontend, TransformerModel
  from fairseq2.models.utils import ArchitectureRegistry
  from fairseq2.nn.embedding import Embedding, StandardEmbedding, init_scaled_embedding
  from fairseq2.nn.fsdp import FSDPWrapPolicy
  from fairseq2.nn.position_encoder import SinusoidalPositionEncoder
  from fairseq2.nn.projection import TiedProjection
  from fairseq2.nn.transformer import FeedForwardNetwork, MultiheadAttention, StandardFeedForwardNetwork, StandardMultiheadAttention, StandardTransformerDecoder, StandardTransformerDecoderLayer, StandardTransformerEncoder, StandardTransformerEncoderLayer, TransformerDecoder, TransformerDecoderLayer, TransformerEncoder, TransformerEncoderLayer, TransformerNormOrder, create_default_sdpa
  from fairseq2.typing import DataType, Device
label_desc: Use image node_id 4 for calling a global function with example usage: create_nllb_model(config) and returns: NllbBuilder