Skip to main content
The evaluators client methods are currently in BETA. The API may change without notice. A one-time warning is emitted on first use.
Create and manage LLM-as-judge evaluators and their versions programmatically. Evaluators use prompt templates with {variable} placeholders that reference span or trace attributes to automatically score your LLM application’s outputs.

Key Capabilities

  • Create template-based LLM-as-judge evaluators within a space
  • Version evaluators with commit messages (versions are immutable once created)
  • Retrieve evaluators with their latest or a specific version
  • List, update, and delete evaluators
  • List and retrieve individual evaluator versions

List Evaluators

List all evaluators you have access to, with optional filtering by space.
For details on pagination, field introspection, and data conversion (to dict/JSON/DataFrame), see Response Objects.

Create a Template (LLM-as-Judge) Evaluator

Create a new template evaluator with an initial version. Evaluator names must be unique within the target space.

Create a Code Evaluator

Create a new code evaluator with an initial version. Use ManagedCodeConfig for built-in checks (JSONParseable, Regex, KeywordMatch, ExactMatch) or CustomCodeConfig for user-supplied Python.
Evaluator name must match the regex ^[a-zA-Z0-9_\s\-&()]+$.

Template Variables

Template strings use {variable} placeholders (f-string format) that reference span or trace attributes (e.g., {input.value}, {output.value}, {attributes.my_custom_attr}).

Classification vs. Freeform Output

  • Classification — Provide classification_choices as a dict[str, float] mapping label → numeric score (e.g., {"relevant": 1, "irrelevant": 0}). The evaluator outputs one of these labels along with its score.
  • Freeform — Omit classification_choices. The evaluator produces a numeric score without predefined labels.

Get an Evaluator

Retrieve an evaluator by name or ID. By default the latest version is returned. When using a name, provide space to disambiguate.

Get a Specific Version

Update an Evaluator

Update an evaluator’s metadata (name and/or description). To change the template configuration, create a new version instead.

Delete an Evaluator

Delete an evaluator and all its versions. This operation is irreversible. There is no response from this call.

Manage Versions

Evaluator versions are immutable once created. To change the template configuration, create a new version — it becomes the latest version immediately.

List Versions

List all versions for an evaluator.
For details on pagination, field introspection, and data conversion (to dict/JSON/DataFrame), see Response Objects.

Get a Version

Retrieve a specific evaluator version by its ID.

Create a New Template Version

Add a new template version to an existing template evaluator. The new version becomes the latest immediately.

Create a New Code Version

Add a new code version to an existing code evaluator.
Learn more: Online Evaluations Documentation