File size: 583 Bytes
02c783d | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | # Copyright(C) [2025] Advanced Micro Devices, Inc. All rights reserved.
class BaseMetric:
"""
Base class for all metrics.
"""
def __init__(self, name: str):
self.name = name
def __call__(self, *args, **kwargs):
"""
Compute the metric.
"""
return self.compute(*args, **kwargs)
def compute(self, *args, **kwargs):
"""
Compute the metric.
"""
raise NotImplementedError("This method should be overridden by subclasses.")
def __str__(self):
return f"Metric(name={self.name})"
|