Repository navigation
[AI Foundry] Simplify rubric scoring and optional weights - #46717
Sydney Lister (slister1001) wants to merge 22 commits into
Conversation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Next Steps to Merge✅ All automated merging requirements have been met! To get your PR merged, see aka.ms/azsdk/specreview/merge.Comment generated by summarize-checks workflow run. |
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
…rics Add the safety generation category, explicit safety criterion classification, and optional metric identity on per-criterion summaries. Preserve ordinary quality scoring and older-version schemas; emit the updated OpenAPI contracts. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 91c27de1-d1d6-43c0-9534-1bbcbd0ecc1d
… contract Use skipped transport placeholders for unscored ordinary rubrics, retain rubric-only quality details, and leave the ASSERT-integrated PR untouched. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Boolean rejects configured weights, uses a fixed all-pass threshold1 and exposes binary result dimensions only. Likert retains optional weights and arithmetic fields. Preserve API versions, existing operations and legacy behavior. TypeSpec validation, compile and formatting pass. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 91c27de1-d1d6-43c0-9534-1bbcbd0ecc1d
Add the shared Likert spelling entry and make the numeric and rubric scoring types available to standalone client projections. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 91c27de1-d1d6-43c0-9534-1bbcbd0ecc1d
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ec31d0ea-eb02-4e58-967d-518ab8f8abc2
Preserve flat typed ordinary result properties and closed Boolean/Likert models, explicit safety permissibility, independent metric identities and nullable unavailable scores with earlier-version compatibility. Pinned TypeSpec 1.16.0 compilation, Azure SDK MCP validation, scoped formatting and 29 emitted-contract payload/golden checks pass. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 91c27de1-d1d6-43c0-9534-1bbcbd0ecc1d
|
Gerardo Lecaros (@glecaros), could you review this focused ASSERT API extension, or route it to the appropriate API reviewer? We'd like to get it checked in this week, ideally by Friday, October 23. The incremental API surface is small: safety generation category, criterion permissibility, and two named violation metrics with independent summaries. It reuses existing operations and incorporates the rubric simplification contract, including flat dimension evidence and generation-job controls. Most changed lines are shared models and generated OpenAPI. This is a draft API review request, not a merge-readiness claim. Please particularly review safety's nullable unavailable scores and omitted verdicts alongside the ordinary rubric contract. Final alignment of the refreshed service stack remains a pre-merge check. |
Data Plane API Specification Update
Summary
Adds a focused ASSERT safety extension to the ordinary rubric simplification contract, whose current published changes are incorporated here.
scoring,pass_threshold, and approveddimensionson the generation-job response.categorywith quality/safety intent. Safety requires a prompt objective plus agent/trace application context, resolves Boolean judgments, and rejects conflicting rating settings.Dimension.permissible, required by safety validation with no default. Safety criteria omit weights.impermissible_behavior_violatedandpermissible_behavior_violatedseparately, with independent summary identities and denominators. No combined safety score or new execution endpoint.properties.mode,properties.decision, andproperties.dimension_results.The incremental safety API surface is small. The full diff also includes the shared simplification models and generated OpenAPI JSON/YAML.
API Info
feature/foundry-release.v1; no API version is added.specification/ai-foundry/data-plane/Foundry.src/evaluators/models.tspandsrc/openai/evaluations/models.tsp.No SDK package publication, service deployment, feature enablement, or criterion-level mixed scoring is introduced.
Validation and implementation alignment
Historical validation includes TypeSpec compilation, OpenAPI generation, formatting, type/version/default assertions, and comparison of older preview wire shapes excluding documentation.
October 19 source comparison confirms that the published contract includes the current shared flat-result and generation-job response additions, plus the intended safety category, permissibility, and two-metric semantics. The ASSERT service implementation is being refreshed in a separate PR stack. This is not an exact-head, full-stack serialization or persisted-E2E sign-off.
Final service-stack alignment, including nullable safety result availability versus ordinary rubric results, current-revision CI, API/codeowner approval, and engagement/release-plan linkage remain pre-merge requirements. Keep this PR in draft for API review.