Bases: ProgramOperationalMetric
Total provider cost (USD, as reported by litellm) across every LM
and EM reached from the program for this run. The program object
itself doesn't pay providers; cost is summed from its bound models.
Example:
program.compile(
metrics=[
synalinks.metrics.ProgramCost(),
],
)
Source code in synalinks/src/metrics/program_metrics.py
| @synalinks_export("synalinks.metrics.ProgramCost")
class ProgramCost(ProgramOperationalMetric):
"""Total provider cost (USD, as reported by litellm) across every LM
and EM reached from the program for this run. The program object
itself doesn't pay providers; cost is summed from its bound models.
Example:
```python
program.compile(
metrics=[
synalinks.metrics.ProgramCost(),
],
)
```
"""
def __init__(self, name="program_cost"):
super().__init__(name=name)
def result(self):
return float(self._delta_model_cost())
|