Skip to main content

Intro

LangWatch offers an extensive library of evaluators to help you evaluate the quality and guarantee the safety of your LLM apps. While here you can find a reference list, to get the execution code you can use the Experiments via UI on LangWatch platform.

Authentication

To make a call to the Evaluators API, you will need to pass through your LangWatch API key in the header as X-Auth-Token. Your API key can be found on the setup page under settings.

Allowed Methods

  • POST /api/evaluations/{evaluator}/evaluate - Run an evaluation using a specific evaluator

Evaluators List

Expected Answer Evaluation

For when you have the golden answer and want to measure how correct the LLM gets it
EvaluatorDescription
Exact Match EvaluatorUse the Exact Match evaluator in LangWatch to verify outputs that require precise matching during AI agent testing.
LLM Answer MatchUses an LLM to check if the generated output answers a question correctly the same way as the expected output, even if their style is different.
BLEU ScoreUse the BLEU Score evaluator to measure string similarity and support automated NLP and AI agent evaluation workflows.
LLM Factual MatchCompute factual similarity with LangWatch’s LLM Factual Match evaluator to validate truthfulness in AI agent evaluations.
ROUGE ScoreUse the ROUGE Score evaluator in LangWatch to measure text similarity and support AI agent evaluations and NLP quality checks.
SQL Query EquivalenceChecks if the SQL query is equivalent to a reference one by using an LLM to infer if it would generate the same results given the table schemas.

LLM-as-Judge

For when you don’t have a golden answer, but have a set of rules for another LLM to evaluate quality
EvaluatorDescription
LLM-as-a-Judge Boolean EvaluatorUse the LLM-as-a-Judge Boolean Evaluator to classify outputs as true or false for fast automated agent evaluations.
LLM-as-a-Judge Category EvaluatorUse the LLM-as-a-Judge Category Evaluator to classify outputs into custom categories for structured AI agent evaluations.
LLM-as-a-Judge Score EvaluatorScore messages with an LLM-as-a-Judge evaluator to generate numeric performance metrics for AI agent testing.
Rubrics Based ScoringRubric-based evaluation metric that is used to evaluate responses. The rubric consists of descriptions for each score, typically ranging from 1 to 5

RAG Quality

For measuring the quality of your RAG, check for hallucinations with faithfulness and precision/recall
EvaluatorDescription
Ragas Context PrecisionThis metric evaluates whether all of the ground-truth relevant items present in the contexts are ranked higher or not. Higher scores indicate better precision.
Ragas Context RecallThis evaluator measures the extent to which the retrieved context aligns with the annotated answer, treated as the ground truth. Higher values indicate better performance.
Ragas FaithfulnessThis evaluator assesses the extent to which the generated answer is consistent with the provided context. Higher scores indicate better faithfulness to the context, useful for detecting hallucinations.
Context F1Balances between precision and recall for context retrieval, increasing it means a better signal-to-noise ratio. Uses traditional string distance metrics.
Context PrecisionMeasures how accurate is the retrieval compared to expected contexts, increasing it means less noise in the retrieval. Uses traditional string distance metrics.
Context RecallMeasures how many relevant contexts were retrieved compared to expected contexts, increasing it means more signal in the retrieval. Uses traditional string distance metrics.
Ragas FaithfulnessThis evaluator assesses the extent to which the generated answer is consistent with the provided context. Higher scores indicate better faithfulness to the context, useful for detecting hallucinations.
Ragas Response Context PrecisionUses an LLM to measure the proportion of chunks in the retrieved context that were relevant to generate the output or the expected output.
Ragas Response Context RecallUses an LLM to measure how many of relevant documents attributable the claims in the output were successfully retrieved in order to generate an expected output.
Ragas Response RelevancyEvaluates how pertinent the generated answer is to the given prompt. Higher scores indicate better relevancy.

Quality Aspects Evaluation

For when you want to check the language, structure, style and other general quality metrics
EvaluatorDescription
Valid Format EvaluatorAllows you to check if the output is a valid json, markdown, python, sql, etc. For JSON, can optionally validate against a provided schema.
Lingua Language DetectionThis evaluator detects the language of the input and output text to check for example if the generated answer is in the same language as the prompt, or if it’s in a specific expected language.
Summarization ScoreMeasure summary quality with LangWatch’s Summarization Score to support RAG evaluations and AI agent testing accuracy.

Safety

Check for PII, prompt injection attempts and toxic content
EvaluatorDescription
Azure Content SafetyThis evaluator detects potentially unsafe content in text, including hate speech, self-harm, sexual content, and violence. It allows customization of the severity threshold and the specific categories to check.
Azure Jailbreak DetectionUse Azure Jailbreak Detection in LangWatch to identify jailbreak attempts and improve safety across AI agent testing workflows.
Azure Prompt ShieldThis evaluator checks for prompt injection attempt in the input and the contexts using Azure’s Content Safety API.
OpenAI ModerationThis evaluator uses OpenAI’s moderation API to detect potentially harmful content in text, including harassment, hate speech, self-harm, sexual content, and violence.
Presidio PII DetectionDetects personally identifiable information in text, including phone numbers, email addresses, and social security numbers. It allows customization of the detection threshold and the specific types of PII to check.

Other

Miscellaneous evaluators
EvaluatorDescription
Custom Basic EvaluatorConfigure the Custom Basic Evaluator to check simple matches or regex rules for lightweight automated AI agent evaluations.
Competitor BlocklistDetect competitor mentions using LangWatch’s Competitor Blocklist evaluator to enforce content rules in AI agent testing pipelines.
Competitor Allowlist CheckThis evaluator use an LLM-as-judge to check if the conversation is related to competitors, without having to name them explicitly
Competitor LLM CheckThis evaluator implements LLM-as-a-judge with a function call approach to check if the message contains a mention of a competitor.
Off Topic EvaluatorDetect off-topic messages using LangWatch’s Off Topic Evaluator to enforce domain boundaries during AI agent testing.
Query ResolutionThis evaluator checks if all the user queries in the conversation were resolved. Useful to detect when the bot doesn’t know how to answer or can’t help the user.
Semantic Similarity EvaluatorAllows you to check for semantic similarity or dissimilarity between input and output and a target value, so you can avoid sentences that you don’t want to be present without having to match on the exact text.
Ragas Answer CorrectnessComputes with an LLM a weighted combination of factual as well as semantic similarity between the generated answer and the expected output.
Ragas Answer RelevancyEvaluates how pertinent the generated answer is to the given prompt. Higher scores indicate better relevancy.
Ragas Context RelevancyThis metric gauges the relevancy of the retrieved context, calculated based on both the question and contexts. The values fall within the range of (0, 1), with higher values indicating better relevancy.
Ragas Context UtilizationThis metric evaluates whether all of the output relevant items present in the contexts are ranked higher or not. Higher scores indicate better utilization.

Running Evaluations

Set up your first evaluation using the Experiments via UI:

Using Evaluators

The name Parameter

Important for Analytics: When calling evaluators from code (Real-Time Evaluations), always provide a descriptive name parameter to distinguish between different evaluation checks in Analytics.
When running the same evaluator type multiple times for different purposes, you must use unique name values to:
  • Track results separately in the Analytics dashboard
  • Filter and group evaluation results by purpose
  • Avoid confusion when multiple evaluations use the same evaluator type
Example: Running multiple category checks If you’re using the LLM Category evaluator to check different aspects of your output:
import langwatch

# Check 1: Is the answer complete?
langwatch.evaluation.evaluate(
    "langevals/llm_category",
    name="Answer Completeness Check",  # Unique name for this check
    data={"input": user_input, "output": response},
    settings={"categories": [{"name": "complete"}, {"name": "incomplete"}]}
)

# Check 2: Is the tone appropriate?
langwatch.evaluation.evaluate(
    "langevals/llm_category",
    name="Tone Appropriateness Check",  # Different name for this check
    data={"input": user_input, "output": response},
    settings={"categories": [{"name": "professional"}, {"name": "casual"}, {"name": "inappropriate"}]}
)
Without unique names, all results would be grouped under the same auto-generated identifier (e.g., custom_eval_langevalsllm_category), making it impossible to analyze them separately.

Common Request Format

All evaluator endpoints follow a similar pattern:
POST /api/evaluations/{evaluator_path}/evaluate
Each evaluator accepts specific input parameters and settings. Refer to the individual evaluator documentation pages for detailed request/response schemas and examples.

Response Format

Successful evaluations return an array of evaluation results with scores, details, and metadata specific to each evaluator type.