Files
wehub-resource-sync e768098d0e
Flake8 Lint / flake8 (push) Waiting to run
Spell check CI / Spell_Check (push) Waiting to run
tools_continuous_delivery / Private PyPI non-main branch release (push) Has been skipped
tools_continuous_delivery / Private PyPI main branch release (push) Failing after 2m42s
Publish Promptflow Doc / Build (push) Has been cancelled
Publish Promptflow Doc / Deploy (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:39:52 +08:00

41 lines
1.3 KiB
Python

from typing import Dict, List
from promptflow.core import log_metric, tool
@tool
def aggregate(
fluency_list: List[float],
consistency_list: List[float],
relevance_list: List[float],
coherence_list: List[float],
) -> Dict[str, float]:
"""
Takes list of scores for 4 dims and outputs average for them.
Args:
fluency_list (List(float)): list of fluency scores
consistency_list (List(float)): list of consistency scores
relevance_list (List(float)): list of relevance scores
coherence_list (List(float)): list of coherence scores
Returns:
Dict[str, float]: Returns average scores
"""
average_fluency = sum(fluency_list) / len(fluency_list)
average_consistency = sum(consistency_list) / len(consistency_list)
average_relevance = sum(relevance_list) / len(relevance_list)
average_coherence = sum(coherence_list) / len(coherence_list)
log_metric("average_fluency", average_fluency)
log_metric("average_consistency", average_consistency)
log_metric("average_relevance", average_relevance)
log_metric("average_coherence", average_coherence)
return {
"average_fluency": average_fluency,
"average_consistency": average_consistency,
"average_relevance": average_relevance,
"average_coherence": average_coherence,
}