Skip to content

Evaluation: Improve guardrails awareness #1246

Closed

Description

@AkhileshNegi

Is your feature request related to a problem?
Text evaluations (fast run mode / v2) currently ignore the stored input and output guardrails. This leads to eval scores that don't accurately reflect the system's behavior in production.

Describe the solution you'd like

  • Make fast/v2 evaluations guardrails-aware: check each dataset query against input_guardrails before the LLM call and the response against output_guardrails after.
  • Use the execute_llm_call path instead of a separate eval-only path, avoiding the recording of eval traffic as llm_call rows.
  • Include per-row guardrail status, input_to_llm, and output_from_llm in GET /api/v1/evaluations/{id} results.
  • Carry guardrail data through retry, merge, scoring, and traces.
Original issue

Is your feature request related to a problem?
Text evaluations (fast run mode / v2) ignore the input and output guardrails stored on the config. The golden dataset query is sent straight to the LLM and the generated response is never checked by output guardrails, so eval scores don't reflect how the config actually behaves in production via /llm/call.

Describe the solution you'd like

  • Make the fast/v2 evaluation run guardrails-aware: run each dataset query through the config's input_guardrails before the LLM call, and the response through output_guardrails after.
  • Reuse the execute_llm_call path instead of a separate eval-only LLM path, without recording eval traffic as llm_call rows / production metrics.
  • Surface per-row guardrail status, input_to_llm and output_from_llm in GET /api/v1/evaluations/{id} results.
  • Carry guardrail data through retry, merge, scoring and traces.

Original issue

Earlier doing text evals v2 used not to take into account the stored input and output validators ids and instead sending the input / output straight to openAI. Now the evaluation job (v2) is guardrails aware; meaning the query in the golden dataset is passed through input guardrails if they are stored; similar functionality for responses generated (if o/p guardrails are configured).

Comments: Implemented in #1208.

Activity

  1. changed the title [-]Evaluation: Apply config guardrails during text evals[/-] [+]Evaluation: Improve guardrails awareness[/+] on Oct 13, 2026
  2. moved this from To Do to In Progress in Kaapi-devon Oct 13, 2026
  3. moved this from In Progress to Closed in Kaapi-devon Oct 14, 2026
  4. self-assigned this
    on Oct 14, 2026
  5. github-actions commented on Oct 14, 2026

    @github-actions

    🎉 This issue has been resolved in version 1.8.0-main.4 🎉

    The release is available on GitHub release

    Your semantic-release bot 📦🚀

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

Metadata

Metadata

Assignees

Type

No type

Projects

  • Status
    Closed

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions