File size: 695 Bytes
6835659 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | from __future__ import annotations
from typing import Dict, List
def human_alignment_score(human_criteria: Dict[str, bool]) -> float:
"""
Simple proxy score: % of human criteria satisfied.
"""
values = list(human_criteria.values())
return sum(values) / len(values)
def compare_human_vs_msci(results: List[Dict]):
diffs = []
for result in results:
human_score = human_alignment_score(result["human"])
diffs.append(
{
"id": result["id"],
"human_score": human_score,
"msci": result["msci"],
"delta": result["msci"] - human_score,
}
)
return diffs
|