Actually, the python client supports deleting training definitions.
You just call client.repository.delete(artifact_uid). The same method can be used to delete any item from repository (model, training_definition, experiment). It is documented in python client docs btw:
delete(artifact_uid)
Delete model, definition or experiment from repository.
Parameters: artifact_uid ({str_type}) – stored model, definition, or experiment UID
A way you might use me is:
>>> client.repository.delete(artifact_uid)
Training_run is completely different thing than training_definition.
You can also remove it if needed:
delete(run_uid)
Delete training run.
Parameters: run_uid ({str_type}) – ID of trained model
A way you might use me is:
>>> client.training.delete(run_uid)
You can also remove the experiment_run if needed by calling:
delete(experiment_run_uid)
Delete experiment run.
Parameters: experiment_run_uid ({str_type}) – experiment run UID
A way you might use me is
>>> client.experiments.delete(experiment_run_uid)
Please refer to python client docs for more details: http://wml-api-pyclient-dev.mybluemix.net/