mirror of
https://github.com/clearml/clearml
synced 2025-01-31 17:17:00 +00:00
31 lines
1.3 KiB
Python
31 lines
1.3 KiB
Python
|
import os
|
||
|
from clearml import Task
|
||
|
|
||
|
from task_stats_to_comment import get_clearml_task_of_current_commit
|
||
|
|
||
|
|
||
|
def compare_and_tag_task(commit_hash):
|
||
|
"""Compare current performance to best previous performance and only allow equal or better."""
|
||
|
current_task = get_clearml_task_of_current_commit(commit_hash)
|
||
|
best_task = Task.get_task(project_name='Github CICD Video', task_name='cicd_test', tags=['Best Performance'])
|
||
|
if best_task:
|
||
|
best_metric = max(
|
||
|
best_task.get_reported_scalars().get('Performance Metric').get('Series 1').get('y')
|
||
|
)
|
||
|
current_metric = max(
|
||
|
current_task.get_reported_scalars().get('Performance Metric').get('Series 1').get('y')
|
||
|
)
|
||
|
print(f"Best metric in the system is: {best_metric} and current metric is {current_metric}")
|
||
|
if current_metric >= best_metric:
|
||
|
print("This means current metric is better or equal! Tagging as such.")
|
||
|
current_task.add_tags(['Best Performance'])
|
||
|
else:
|
||
|
print("This means current metric is worse! Not tagging.")
|
||
|
else:
|
||
|
current_task.add_tags(['Best Performance'])
|
||
|
|
||
|
|
||
|
if __name__ == '__main__':
|
||
|
print(f"Running on commit hash: {os.getenv('COMMIT_ID')}")
|
||
|
compare_and_tag_task(os.getenv('COMMIT_ID'))
|