code: def get_ds_config(self):
      ds_config_dict = {
          "train_micro_batch_size_per_gpu": 1,
          "optimizer": {"type": "Lamb", "params": {"lr": 0.00015}},
          "fp16": {"enabled": True},
          "compression_training": {
              "weight_quantization": {
                  "shared_parameters": {
                      "enabled": True,
                      "quantizer_kernel": False,
                      "schedule_offset": 50,
                      "quantize_groups": 1,
                      "quantize_verbose": False,
                      "quantization_type": "asymmetric",
                      "rounding": "nearest",
                      "fp16_mixed_quantize": {
                          "enabled": False,
                          "quantize_change_ratio": 0.001,
                      },
                  },
                  "different_groups": {
                      "wq1": {
                          "params": {
                              "start_bits": 12,
                              "target_bits": 8,
                              "quantization_period": 50,
                          },
                          "modules": ["attention.self", "intermediate"],
                      },
                      "wq2": {
                          "params": {
                              "start_bits": 12,
                              "target_bits": 4,
                              "quantization_period": 50,
                          },
                          "modules": ["attention.output"],
                      },
                  },
              },
              "activation_quantization": {
                  "shared_parameters": {
                      "enabled": True,
                      "quantization_type": "asymmetric",
                      "range_calibration": "dynamic",
                      "schedule_offset": 50,
                  },
                  "different_groups": {
                      "aq1": {
                          "params": {"bits": 8},
                          "modules": ["attention.output"],
                      }
                  },
              },
              "sparse_pruning": {
                  "shared_parameters": {
                      "enabled": True,
                      "schedule_offset": 30,
                      "method": "l1",
                  },
                  "different_groups": {
                      "sp1": {
                          "params": {"dense_ratio": 0.5},
                          "modules": ["attention.self"],
                      }
                  },
              },
              "row_pruning": {
                  "shared_parameters": {
                      "enabled": True,
                      "schedule_offset": 20,
                      "method": "topk",
                  },
                  "different_groups": {
                      "rp1": {
                          "params": {"dense_ratio": 0.5},
                          "modules": ["intermediate.dense"],
                          "related_modules": [
                              ["layer.\\w+.output.dense"]
                          ],
                      }
                  },
              },
              "head_pruning": {
                  "shared_parameters": {
                      "enabled": True,
                      "schedule_offset": 10,
                      "method": "topk",
                      "num_heads": 12,
                  },
                  "different_groups": {
                      "rp1": {
                          "params": {"dense_ratio": 0.5},
                          "modules": ["attention.output.dense"],
                          "related_modules": [
                              ["self.query", "self.key", "self.value"]
                          ],
                      }
                  },
              },
          },
      }
  
      return ds_config_dict
  
imports: import torch
  import pytest
  import random
  import numpy
  from unit.megatron_model import get_gpt2_model
  from deepspeed.compression.compress import init_compression
  from unit.modeling import BertConfig
  from unit.modelingpreln import BertEncoder
  from deepspeed.compression.basic_layer import LinearLayer_Compress, ColumnParallelLinear_Compress, RowParallelLinear_Compress
  from deepspeed.compression.helper import convert_conv1d_to_linear
  from deepspeed.accelerator import get_accelerator
  from deepspeed.runtime.utils import required_torch_version
  from unit.common import DistributedTest
label_desc: Use image node_id 2 for calling the TestCompression obj's underlying member method code with example usage: obj.get_ds_config() and returns: ds_config_dict