code: def get_neox_args(context):
      args = AttrMap(context.get_hparams())
      exp_config = context.get_experiment_config()
  
      # Gather overrides.
      overwrite_values = args.pop("overwrite_values", {})
      # We are going to overwrite certain neox_args with determined config values
      # from the experiment config to ensure consistency.
      assert (
          "batches" in exp_config["searcher"]["max_length"]
      ), "Please specify max_length in batches."
      assert (
          "batches" in exp_config["min_validation_period"]
      ), "Please specify min_validation_period in batches."
      overwrite_values.update(
          {
              "train_iters": exp_config["searcher"]["max_length"][
                  "batches"
              ],
              "checkpoint_factor": exp_config["min_validation_period"][
                  "batches"
              ],
              "eval_interval": exp_config["min_validation_period"][
                  "batches"
              ],
              "hostfile": os.environ.get("DET_DEEPSPEED_HOSTFILE_PATH"),
              "seed": context.env.trial_seed,
          }
      )
      for k, v in overwrite_values.items():
          logging.info(f"Setting neox_args.{k} to {v}")
  
      # Build neox args.
      neox_args = NeoXArgs.process_parsed_deepy_args(
          args, overwrite_values=overwrite_values
      )
      return neox_args
  
imports: import logging
  import os
  import numpy
  from attrdict import AttrMap
  from eval_tasks.eval_adapter import run_eval_harness
  from megatron.neox_arguments import NeoXArgs
  from torch.utils.tensorboard import SummaryWriter
  from determined.pytorch import MetricReducer, PyTorchCallback
label_desc: Use image node_id 1 for calling a global function with example usage: get_neox_args(context) and returns: neox_args