UKGovernmentBEIS/inspect_ai

Model-graded scorers should warn at runtime when no grader model or model-role is bound (silent self-grading)

Fechada

#4.695 aberto em 30 de jul. de 2026

 (6 comentários) (0 reação) (0 responsável)Python (550 forks)github user discovery
acceptedgood first issue

Métricas do repositório

Stars
 (2.170 estrelas)
Métricas de merge de PR
 (Mesclagem média 3d 22h) (152 fundiu PRs em 30d)

Description

When neither model nor a bound model_role is available, model-graded scorers silently fall back to the evaluated model — i.e. the model grades itself:

https://github.com/UKGovernmentBEIS/inspect_ai/blob/797362280ba84f79009d22db78c9b9a5ce48979e/src/inspect_ai/scorer/_model.py#L173-L182

get_model(role="grader") falls through to the ambient/active model with no warning when the role isn't bound. Self-grading as a silent default is counterintuitive and not good science: self-grading bias varies by model, and it's easy to run a whole eval without realizing no grader was configured.

Suggestion: emit a warning at score time when the resolution falls through to the evaluated model (e.g. "no 'grader' model role bound; the evaluated model will grade itself"). This needs to be a runtime check rather than a construction-time one, since model roles can be bound later via eval(..., model_roles=...).

Posted by Claude Code on Matt's behalf.

Guia do colaborador