feat: ScenarioInfo exposes metric_weights and doc_weights from YAML
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -37,6 +37,16 @@ def _summarize_scenario(path: Path) -> ScenarioInfo:
|
||||
|
||||
metrics = payload.get("metrics")
|
||||
metric_list = [str(item) for item in metrics] if isinstance(metrics, list) else []
|
||||
raw_metric_weights = payload.get("metric_weights") or {}
|
||||
raw_doc_weights = payload.get("doc_weights") or {}
|
||||
metric_weights = {
|
||||
str(k): float(v) for k, v in raw_metric_weights.items()
|
||||
if isinstance(v, (int, float))
|
||||
}
|
||||
doc_weights = {
|
||||
str(k): float(v) for k, v in raw_doc_weights.items()
|
||||
if isinstance(v, (int, float))
|
||||
}
|
||||
|
||||
return ScenarioInfo(
|
||||
path=relative,
|
||||
@@ -45,6 +55,8 @@ def _summarize_scenario(path: Path) -> ScenarioInfo:
|
||||
dataset=str(payload.get("dataset", "")),
|
||||
judge_model=str(payload.get("judge_model", "")),
|
||||
metrics=metric_list,
|
||||
metric_weights=metric_weights,
|
||||
doc_weights=doc_weights,
|
||||
)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user