code: def make_dataset(
      values: np.ndarray,
      prediction_length: int,
      start: str = "1700-01-01",
      freq: str = "1H",
  ):
      target_dim = values.shape[0]
  
      print(
          f"making dataset with {target_dim} dimension and {values.shape[1]} observations."
      )
  
      start = pd.Timestamp(start, freq)
  
      train_ds = [
          {
              "item": "0",
              "start": start,
              "target": values[:, :-prediction_length],
          }
      ]
      test_ds = [{"item": "0", "start": start, "target": values}]
  
      return MultivariateDatasetInfo(
          name="custom",
          train_ds=train_ds,
          test_ds=test_ds,
          target_dim=target_dim,
          freq=freq,
          prediction_length=prediction_length,
      )
  
imports: from collections import OrderedDict
  import numpy
  import os
  import logging
  from typing import NamedTuple
  import pandas
  from pathlib import Path
  import tarfile
  from gluonts.dataset.common import Dataset, load_datasets
  from gluonts.dataset.repository import default_dataset_path
label_desc: Use image node_id 3 for calling a global function with example usage: make_dataset(values, prediction_length, start, freq) and returns: MultivariateDatasetInfo