class_docstr: Abstract Callback base class.
  
  Callbacks control the training of the GluonTS trainer. To write a custom
  Callback, you can subclass Callback and overwrite one or more of the hook
  methods. Hook methods with boolean return value stop the training if False
  is returned.
docstr: Hook that is called prior to training. This is the very first hook to
  be called.
  
  Parameters
  ----------
  max_epochs
      The maximum number of epochs that training is running. The actual
      number of epochs may be fewer if another callback hook stops
      training early.
docstr_tok: ["Hook","that","is","called","prior","to","training",".","This","is","the","very","first","hook","to","be","called",".","Parameters","--","--","--","--","--","max_epochs","The","maximum","number","of","epochs","that","training","is","running",".","The","actual","number","of","epochs","may","be","fewer","if","another","callback","hook","stops","training","early","."]
code: def on_train_start(self, max_epochs: int) -> None:
      """
      Hook that is called prior to training. This is the very first hook to
      be called.
  
      Parameters
      ----------
      max_epochs
          The maximum number of epochs that training is running. The actual
          number of epochs may be fewer if another callback hook stops
          training early.
      """
  
imports: from dataclasses import dataclass, field
  from typing import List, Union, Dict, Any, Optional
  import logging
  import math
  import time
  import mxnet.gluon.nn
  import mxnet
  from mxnet import gluon
  from gluonts.core.component import validated
  from gluonts.mx.util import copy_parameters
  from gluonts.pydantic import BaseModel, PrivateAttr
label_desc: Use image node_id 1 for calling the Callback obj's underlying member method code with example usage: obj.on_train_start(max_epochs) without return types