[
  {
    "description": "The ID of the benchmark run, where this metric should tie to.",
    "mode": "REQUIRED",
    "name": "run_id",
    "type": "STRING"
  },
  {
    "description": "The name of the metric, which should be descriptive. E.g. training_loss, accuracy.",
    "mode": "REQUIRED",
    "name": "name",
    "type": "STRING"
  },
  {
    "description": "The unit of the metric. E.g. MB per sec.",
    "mode": "NULLABLE",
    "name": "unit",
    "type": "STRING"
  },
  {
    "description": "The value of the metric.",
    "mode": "NULLABLE",
    "name": "value",
    "type": "FLOAT"
  },
  {
    "description": "The timestamp when the metric is recorded.",
    "mode": "REQUIRED",
    "name": "timestamp",
    "type": "TIMESTAMP"
  },
  {
    "description": "The global step when this metric is recorded.",
    "mode": "NULLABLE",
    "name": "global_step",
    "type": "INTEGER"
  },
  {
    "description": "Free format metadata for the extra information about the metric.",
    "mode": "REPEATED",
    "name": "extras",
    "type": "RECORD",
    "fields": [
      {
        "mode": "NULLABLE",
        "name": "name",
        "type": "STRING"
      },
      {
        "mode": "NULLABLE",
        "name": "value",
        "type": "STRING"
      }
    ]
  }
]
