Skip to main content

The Problem

You are launching a new AI product — a RAG-powered healthcare chatbot. Your PM asks: “What should we test?” You do not want to manually pick from 50+ metrics and figure out thresholds. Instead, describe your app and let AutoEval build the right pipeline for you.

What You Will Learn

  • How to generate a pipeline from a plain-English description
  • How to use pre-built templates for common application categories
  • How to run the pipeline against real inputs
  • How to customize thresholds and add/remove metrics
  • How to export the config as YAML or JSON for CI/CD integration

Prerequisites

No API keys required. AutoEval configuration is done entirely locally.

Step 1: Describe Your App, Get a Test Plan

Pass a natural language description of your application to AutoEvalPipeline.from_description(). It analyzes the description and selects appropriate metrics, scanners, and thresholds.
AutoEval detects that this is a high-risk healthcare RAG application and selects strict thresholds for faithfulness, groundedness, and safety scanners.

Step 2: Run the Pipeline

Build a simpler pipeline for testing and run it against real inputs. The pipeline.evaluate() method runs all configured metrics and scanners in one call.
Expected behavior:
  • Test 1 passes all checks
  • Test 2 is blocked by the JailbreakScanner before metrics even run
  • Test 3 fails faithfulness because the response contradicts the context

Step 3: Use Pre-Built Templates

For common application types, use templates that come with sensible defaults:

Step 4: Customize the Pipeline

Start from a template and iterate based on team feedback:

Step 5: Export for CI/CD

Export the pipeline configuration as YAML or JSON, commit it to your repository, and load it in your CI/CD pipeline.
Put pipeline.yaml in your repository and load it in CI:

Workflow Summary

StepActionMethod
1Describe your appAutoEvalPipeline.from_description(...)
2Or use a templateAutoEvalPipeline.from_template("rag_system")
3Run against test casespipeline.evaluate(inputs={...})
4Customize thresholdspipeline.set_threshold(...), pipeline.add(...)
5Export configpipeline.export_yaml("pipeline.yaml")
6Load in CI/CDAutoEvalPipeline.from_yaml("pipeline.yaml")

What to Try Next

AutoEval gives you the pipeline. But what if your LLM judge keeps getting the same cases wrong? Teach it from past mistakes using a feedback loop.

Next: Feedback Loop

Store developer corrections in ChromaDB and teach your LLM judge to stop repeating mistakes.