Skip to content

FEAT: Adding Scorer Registry to GUI - #3408

Open
Richard Lundeen (richlundeen) wants to merge 9 commits into
microsoft:mainfrom
richlundeen:richlundeen-chat-scoring-pr
Open

Richard Lundeen (richlundeen) wants to merge 9 commits into
microsoft:mainfrom
richlundeen:richlundeen-chat-scoring-pr

Conversation

@richlundeen

Copy link
Copy Markdown
Contributor

Description

Adds Registry > Scorers to browse configured scorers and select a default objective scorer for manual chats.

  • Compare recorded metrics in separate, sortable true/false and float-scale tables. Inspect scorer types, evidence support, and evaluation-only configuration JSON without running new evaluations.
  • Use the same compatible-scorer picker in the registry and chat. Personal defaults are account/browser-scoped; explicit Off remains distinct from an unset selection. There is no scorer creation or editing UI.
  • Select a scorer in Attack Result Details to evaluate future responses across the attack's conversations. Earlier messages are not backfilled. Human scores retain precedence, and completed evaluations use existing score records.
  • Pin selections to the exact registered configuration. Missing or changed scorers are reported rather than silently replaced. Scoring failures retain the delivered response and expose operator diagnostics without resending the prompt.
  • Keep automated execution results read-only. Continue manually creates a separate attack with copied history, source provenance, and the original scorer and criteria when that exact scorer is already registered. It starts without copied score links.

Screenshots

Screenshots use illustrative scorer configurations, sample metrics, and a sample conversation.

Scorer registry: personal default selection and separate metric comparison tables.

Scorer registry with a personal default and separate true/false and float-scale metric tables

Evaluation details: expand a registered scorer to inspect its evaluation-only configuration.

Expanded scorer evaluation configuration in the registry

Chat scoring: choose the scorer for future responses while keeping automated results and human review separate.

Attack Result Details showing the future-response scorer picker, automated score, and human review controls

Tests and Documentation

Updates the GUI guide with scorer registry usage, personal defaults, automatic chat scoring, failure details, and manual continuation.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: c7e3facd-c947-4d49-b77a-4077d471767e
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: c7e3facd-c947-4d49-b77a-4077d471767e
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: c7e3facd-c947-4d49-b77a-4077d471767e
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: c7e3facd-c947-4d49-b77a-4077d471767e
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: f5188fba-b6ca-48f4-bd4e-dffad976a38e
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f5188fba-b6ca-48f4-bd4e-dffad976a38e
Add a scorer registry view, future-response scoring controls, and explicit manual continuation of automated results.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: dfb79987-1604-45bf-92df-1ad37795854a
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: dfb79987-1604-45bf-92df-1ad37795854a
Keep outcome review available on automated results, update send test doubles, and provide scorer catalog responses in browser fixtures.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: dfb79987-1604-45bf-92df-1ad37795854a
if request.target_binding is not None and request.target_binding != binding:
raise ValueError("This attack's temperature is read-only. Create a new attack to change it.")
policy = get_chat_scoring_service()
policy.require_manual(ar)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might be worth mapping this PermissionError to a 403 in the /messages and /message-sends routes like PATCH does — right now an automated attack gets a generic 500 instead of the "Continue manually" message.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants