code: def main(core_context: det.core.Context, increment_by: float):
      x = 0
      steps_completed = 1
      for batch in range(100):
          x += increment_by
          steps_completed = batch + 1
          time.sleep(0.1)
          logging.info(f"x is now {x}")
          idx = batch % len(metric_groups)
          group = metric_groups[idx]
          noise = random.random() * x
          metrics = {
              f"z{group}/me.t r%i]\\c_{i}": x * (i + 1) + noise
              for i in range(3)
          }
          metrics.update(
              {f"m{i}": x * (i + 2) + noise for i in range(3)}
          )
          core_context.train.report_metrics(
              group=group,
              steps_completed=steps_completed,
              metrics=metrics,
          )
  
imports: import logging
  import random
  import time
  import determined
  from determined.common import util
label_desc: Use image node_id 1 for calling a global function with example usage: main(core_context, increment_by) without return types