def modelTracker(modelLog, langInfo, modelInfo, modelName,
				 header = ['modelName', 'modelSeed', 'trainingSeed', 'seed', 'learning_rate', 'num_trials', 'num_epochs', 'num_timeSteps', 'num_batches', 'size_layer_message', 'size_layer_hidden', 'size_layer_phonology', 'input', 'hidden_state_init', 'hidden_state_curr', 'predictions', 'max_length_name'],
				 verbose = False):
	langInfo.update(modelInfo)
	langInfo['modelName'] = modelName
	generateLanguage.recordResponse(fileName = modelLog, response = langInfo, header = header)
	if verbose:
		print("\tModel {} logged".format(modelInfo['modelName']))
def saveLosses(modelName,
               training_losses,
               saveLossesLocation,
               header=['modelName', 'epoch', 'loss']):
    for i, loss in enumerate(training_losses):
        generateLanguage.recordResponse(fileName=saveLossesLocation,
                                        response={
                                            'modelName': modelName,
                                            'epoch': i,
                                            'loss': loss
                                        },
                                        header=header)