async def METHOD_NAME(self, sources: Sources, **kwargs):
    """
    Uses the numpy input function with data from record features.
    """
    self.logger.debug("Training on features: %r", self.parent.features)
    x_cols, y_cols = await self.sources_to_array(sources)
    self.logger.info("------ Record Data ------")
    self.logger.info("x_cols:    %d", len(list(x_cols.values())[0]))
    self.logger.info("y_cols:    %d", len(y_cols))
    self.logger.info("-----------------------")
    input_fn = self.tf.compat.v1.estimator.inputs.numpy_input_fn(
        x_cols,
        y_cols,
        batch_size=self.parent.config.batchsize,
        shuffle=self.parent.config.shuffle,
        num_epochs=self.parent.config.epochs,
        **kwargs,
    )
    return input_fn