code: def get_default_config():
      """
      Gets a config object containing all the default parameters for each variant of the model.
  
      :return: Config object.
      """
      # lazy import to avoid circular dependency
      from finetune import VERSION
  
      settings = Settings(
          # General Settings
          low_memory_mode=False,
          float_16_predict="auto",
          mixed_precision="auto",
          save_adam_vars=False,
          shuffle_buffer_size=100,
          dataset_size=None,
          batch_size="auto",
          predict_batch_size="auto",
          visible_gpus=None,  # defaults to all available
          n_epochs="auto",
          min_steps=None,
          seed=42,
          max_length="auto",
          weight_stddev=0.02,
          save_dtype=None,
          val_set=None,
          per_process_gpu_memory_fraction=None,
          distribution_strategy="central_storage",
          xla=False,
          optimize_for="accuracy",
          sort_by_length=True,
          collapse_whitespace=False,
          permit_uninitialized=None,
          max_training_hours=None,
          feature_layer_num=None,
          #
          # Regularization
          embed_p_drop=0.1,
          attn_p_drop=0.1,
          resid_p_drop=0.1,
          clf_p_drop=0.1,
          l2_reg=GridSearchable(0.01, [0.0, 0.1, 0.01, 0.001]),
          vector_l2=False,
          #
          # Early Stopping and Validation
          keep_best_model=False,
          early_stopping_steps=None,
          eval_acc=False,
          val_size=0.0,
          val_interval=None,
          in_memory_finetune=None,
          #
          # Debugging
          log_device_placement=False,
          soft_device_placement=True,
          tensorboard_folder=None,
          summarize_grads=False,
          debugging_logs=False,
          cache_weights_to_file=False,
          #
          # Partial Fitting
          num_layers_trained=12,
          train_embeddings=True,
          #
          # Class Imbalance
          class_weights=None,
          #
          # Optimization Params
          optimizer="AdamW",
          b1=0.9,
          b2=0.999,
          epsilon=1e-8,
          lr_schedule="warmup_linear",
          lr="auto",
          lr_warmup=0.002,
          max_grad_norm=1.0,
          accum_steps=1,
          acc_grads_on_cpu=False,
          #
          # Language Model Settings
          lm_loss_coef=0.0,
          lm_temp=0.6,
          lm_type="lm",
          mask_proba=0.15,
          #
          # Masked Language Model Settings
          max_masked_tokens=128,
          #
          # Sequence Labeling
          seq_num_heads=16,
          pad_token="<PAD>",
          pad_idx=None,
          subtoken_predictions=True,
          multi_label_sequences=False,
          multi_label_threshold=0.5,
          chunk_long_sequences=True,
          chunk_context="auto",
          chunk_alignment="center",
          add_eos_bos_to_chunk=True,
          filter_empty_examples=False,
          crf_sequence_labeling=True,
          use_gpu_crf_predict="auto",
          max_empty_chunk_ratio=1.0,
          auto_negative_sampling=False,
          low_memory_ans=True,
          max_document_chars=None,
          bio_tagging=False,
          #
          # Regression Params
          regression_loss="L2",
          #
          # Association Params
          viable_edges=None,
          association_types=None,
          assocation_loss_weight=100.0,
          #
          # Oscar only
          oscar_use_fp16=False,
          oscar_use_timing=True,
          oscar_feat_mode="final_state",
          oscar_use_fused_kernel=False,
          #
          # Location of model weights
          base_model=RoBERTa,
          base_model_path=None,
          #
          # Possible `SourceModel` specific settings
          n_heads=None,
          n_layer=None,
          act_fn=None,
          n_embed=None,
          #
          # for TCN SourceModel only
          n_filter=None,
          kernel_size=None,
          #
          # for TextCNN SourceModel only
          kernel_sizes=None,
          num_filters_per_size=None,
          n_embed_featurizer=None,  # needed because the dimensions CNN output are different from the embedding dimensions
          #
          # BERT only
          bert_intermediate_size=None,
          bert_use_pooler=True,
          bert_use_type_embed=True,
          #
          # Auxiliary Information
          use_auxiliary_info=False,
          default_context=None,
          context_dim=None,  # number of context dimensions to be inserted
          #
          # Document Representation
          context_injection=False,
          reading_order_removed=False,
          anneal_reading_order=False,
          context_channels=None,
          #
          # T5
          beam_size=1,
          beam_search_alpha=0.2,
          delim_tokens="",
          s2s_decoder_max_length=512,
          num_fusion_shards=None,
          chunk_pos_embed=None,
          fusion_low_memory=True,
          include_bos_eos=True,
          #
          # Line Items
          group_bio_tagging=False,
          relation_hidden_size=256,
          start_token_loss_weight=1,
          next_token_loss_weight=1,
          seq_loss_weight=1,
          group_loss_weight=200,
          n_groups=100,
          group_hidden_size=768,
          group_attention_heads=12,
          group_n_layers=3,
          group_thresh=0.8,
          # Table model
          table_position=False,
          table_position_type="row_col",
          include_row_col_summaries=False,
          down_project_feats=False,
          renorm_after_class_weights=True,
          max_row_col_embedding=1024,
          chunk_tables=False,
          table_batching=False,
          # chunking_tweaks
          reshuffle_chunks=False,
          predict_chunk_markers=False,
          #
          # Serialize finetune version with model
          version=VERSION,
      )
      return settings
  
imports: import logging
  import os
  import os.path
  import warnings
  from collections import namedtuple
  from functools import lru_cache
  import numpy
  from nltk.metrics.distance import edit_distance
  import finetune
  from finetune.errors import FinetuneError
  from finetune.base_models import RoBERTa
  import tensorflow
label_desc: Use image node_id 5 for calling a global function with example usage: get_default_config() and returns: settings