Both lightgbm_gridsearch.py and lightgbm_main.py make use of this code:
if validation_data is not None:
fit_params['eval_set'] = [(validation_data[predictors].values,
validation_data[target].values)]
fit_params['early_stopping_rounds'] = early_stopping_rounds
fit_params['eval_metric'] = 'auc'
This should become a function in lightgbm_functions.py.