in ludwig/utils/misc_utils.py [0:0]
def get_experiment_description(model_definition,
data_csv=None,
data_hdf5=None,
metadata_json=None,
data_train_csv=None,
data_validation_csv=None,
data_test_csv=None,
data_train_hdf5=None,
data_validation_hdf5=None,
data_test_hdf5=None,
random_seed=None):
description = OrderedDict()
description['ludwig_version'] = ludwig.globals.LUDWIG_VERSION
description['command'] = ' '.join(sys.argv)
try:
with open(os.devnull, 'w') as devnull:
is_a_git_repo = subprocess.call(['git', 'branch'],
stderr=subprocess.STDOUT,
stdout=devnull) == 0
if is_a_git_repo:
description['commit_hash'] = \
subprocess.check_output(['git', 'rev-parse', 'HEAD']).decode(
'utf-8')[:12]
except:
pass
if random_seed is not None:
description['random_seed'] = random_seed
if data_csv is not None:
description['input_data'] = data_csv
elif data_hdf5 is not None and metadata_json is not None:
description['input_data'] = data_hdf5
description['input_metadata'] = metadata_json
elif data_train_csv is not None:
description['input_data_train'] = data_train_csv
if data_validation_csv is not None:
description['input_data_validation'] = data_validation_csv
if data_test_csv is not None:
description['input_data_test'] = data_test_csv
elif data_train_hdf5 is not None and metadata_json is not None:
description['input_data_train'] = data_train_hdf5
if data_validation_hdf5 is not None:
description['input_data_validation'] = data_validation_hdf5
if data_test_hdf5 is not None:
description['input_data_test'] = data_test_hdf5
description['input_metadata'] = metadata_json
description['model_definition'] = model_definition
from tensorflow.version import VERSION as tf_version
description['tf_version'] = tf_version
return description