Skip to main content
AutoEval turns the LLM calls your apps already make into a golden eval set for each use case, and keeps it up to date as your traffic changes. Nobody has to write or maintain test prompts. Use it to:
  • Compare models (including fine-tuned or self-hosted ones) on correctness, cost, and latency before you switch.
  • Catch regressions by scoring every production call in the dashboard.
  • Test changes before release from your test suite or CI with the evaluate API.
AutoEval is part of Iris Control. Evals run after each call completes, never on your request path, so they add no latency. AutoEval never changes the models your app uses.
Try the AutoEval tab of the Iris Control live demo before you connect anything.

Get started

AutoEval needs the input and output of each LLM call. Pick one option. Every call is captured automatically, and you also get Iris Control’s routing, failover, spend limits, and redaction.
  1. In the Iris Control dashboard, create an API key and add your model providers.
  2. Create a use case for each LLM feature, such as support-answers.
  3. Point your OpenAI-compatible client at Iris Control and set model to the use case name:
    Python
  4. Optional: add custom rules.
Calls appear in the call log, and scores appear on the AutoEval page. For Node.js, cURL, and headers, see the Iris Control quickstart.

Option 2: Send a copy of your call logs

Your app keeps calling its providers as it does today. You send AutoEval a copy of the calls. See Send your call logs.

Golden eval set

AutoEval builds one set per use case from your traffic:
  • Inputs come from real calls.
  • Duplicates and near-duplicates are removed.
  • The set is balanced across workflows, tenants, languages, and edge cases, and includes failed calls.
  • New use cases and workflows get their own slice. Inputs that no longer match your product are retired.
You can also add specific calls from the call log, or upload a file of inputs every model must pass.

Rules

Default rules

Every output is graded for correctness with no setup: is it a correct, complete answer to its own system prompt and user prompt? You get a verdict (correct or defect), a score from 0 to 5, and an explanation.

Custom rules

Custom rules are plain-English checks, in the same format as AutoQA rules. Each use case has its own rules. To add one, open AutoEval in the Iris Control dashboard, select the use case, and click Create rule. Examples: A rule returns not_applicable when it doesn’t apply to a call (for example, a refund rule on a password question). These results are left out of the pass rate.

Results

Each graded output has one result:

View scores in the dashboard

The AutoEval page shows scores as calls are graded:
  • Every call: input, output, correctness verdict and score, and each rule result with explanations.
  • Rollups: correctness rate, average score, and each rule’s pass rate, by use case, model, tenant, and rule. Critical failures show first.
  • Failures: filter to failed calls to see the examples behind each number.

Compare models

  1. Open AutoEval, select a use case, and open Compare models.
  2. Choose the eval set: the golden eval set (default), calls from the call log, a filter (such as the last 30 days, or only failed calls), or an uploaded file.
  3. Choose the models. Any model from your providers works, including a self-hosted model with an OpenAI-compatible endpoint.
  4. Run the comparison.
Each input goes to each model with its original system prompt. The report shows, per model: correctness rate and average score, each rule’s pass rate, cost per call and total cost, and typical and slowest latency. Open any row to compare outputs side by side.

Send your call logs

Send one JSONL record per LLM call:
For a conversation, send one record per assistant turn: the conversation so far in messages and the turn in output. For voice, use the transcript. To start, send a one-time file to your Iris Control point of contact. To stay current, set up a recurring export to a storage bucket with them. Exports from Langfuse, LangSmith, or Helicone can be converted to this format.

Evaluate API

Grade one output on demand, for example in CI before you ship a prompt change. Production scores don’t need the API. Send rules, or send use_case to use that use case’s rules.
The response has the correctness and rules fields from Results. Send up to 100 rules per request.

Data handling

Inputs and outputs are redacted for PII and secrets before they are stored. Set retention with the use case’s logging.retention_days. If prompts and outputs can’t leave your environment, Iris Control and AutoEval can run in your own VPC. See the customer VPC reference architecture. Questions? Email contact@irisagent.com or book an Iris Control demo.