code: def boost(self, dtrain, grad, hess):
          
          if len(grad) != len(hess):
              raise ValueError('grad / hess length mismatch: {} / {}'.format(len(grad), len(hess)))
          if not isinstance(dtrain, DMatrix):
              raise TypeError('invalid training matrix: {}'.format(type(dtrain).__name__))
          self._validate_features(dtrain)
  
          _check_call(_LIB.XGBoosterBoostOneIter(self.handle, dtrain.handle,
                                                 c_array(ctypes.c_float, grad),
                                                 c_array(ctypes.c_float, hess),
                                                 len(grad)))
docs: Boost the booster for one iteration, with customized gradient statistics.
  
          Parameters
          ----------
          dtrain : DMatrix
              The training DMatrix.
          grad : list
              The first order of gradient.
          hess : list
              The second order of gradient.