Skip to main content

Documentation Index

Fetch the complete documentation index at: https://arize-ax.mintlify.dev/docs/llms.txt

Use this file to discover all available pages before exploring further.

The evaluators functions are currently in ALPHA. The API may change without notice. A one-time warning is emitted on first use.

List Evaluators

import { listEvaluators } from "@arizeai/ax-client";

const { data: evaluators, pagination } = await listEvaluators({
  space: "my-space",  // space name or ID (optional)
  name: "Relevance",  // substring filter on evaluator name (optional)
  limit: 10,
});

Create a Template (LLM-as-Judge) Evaluator

import { createTemplateEvaluator } from "@arizeai/ax-client";

const evaluator = await createTemplateEvaluator({
  name: "Relevance",
  space: "my-space",  // space name or ID
  commitMessage: "Initial version",
  templateConfig: {
    name: "Relevance",
    template: "Is the following response relevant to the query?\nQuery: {{query}}\nResponse: {{response}}",
    includeExplanations: true,
    useFunctionCallingIfAvailable: true,
    classificationChoices: { relevant: 1, irrelevant: 0 },
    direction: "maximize",
    llmConfig: {
      aiIntegrationId: "your_ai_integration_id",
      modelName: "gpt-4o",
      invocationParameters: { temperature: 0 },
      providerParameters: {},
    },
  },
});

Create a Code Evaluator

Use a built-in managed code check (e.g. JSONParseable, Regex, KeywordMatch, ExactMatch) or a custom user-supplied Python evaluator.
import { createCodeEvaluator } from "@arizeai/ax-client";

const evaluator = await createCodeEvaluator({
  name: "JSON Parseable",
  space: "my-space",
  commitMessage: "Initial version",
  codeConfig: {
    type: "managed",
    name: "json_parseable",
    managedEvaluator: "JSONParseable",
    variables: ["output"],
  },
});

Get an Evaluator

import { getEvaluator } from "@arizeai/ax-client";

// Get with the latest version
const evaluator = await getEvaluator({ evaluator: "your_evaluator_id" });

// Get with a specific version
const byVersion = await getEvaluator({
  evaluator: "your_evaluator_id",
  versionId: "your_version_id",
});

Get an Evaluator Version

import { getEvaluatorVersion } from "@arizeai/ax-client";

const version = await getEvaluatorVersion({ versionId: "your_version_id" });

Update an Evaluator

import { updateEvaluator } from "@arizeai/ax-client";

const updated = await updateEvaluator({
  evaluator: "your_evaluator_id",
  name: "Updated Evaluator Name",
  description: "Updated description",
});

Delete an Evaluator

import { deleteEvaluator } from "@arizeai/ax-client";

await deleteEvaluator({ evaluator: "your_evaluator_id" });

Manage Versions

List Versions

import { listEvaluatorVersions } from "@arizeai/ax-client";

const { data: versions, pagination } = await listEvaluatorVersions({
  evaluator: "your_evaluator_id",
});

Create a New Template Version

Versions are immutable once created. To change configuration, create a new version.
import { createTemplateEvaluatorVersion } from "@arizeai/ax-client";

const version = await createTemplateEvaluatorVersion({
  evaluator: "your_evaluator_id",  // evaluator name or ID
  space: "my-space",               // required when resolving by evaluator name
  commitMessage: "Updated prompt template for better precision",
  templateConfig: {
    name: "Relevance",
    template: "Rate the relevance of the response on a scale of 0-1.\nQuery: {{query}}\nResponse: {{response}}",
    includeExplanations: true,
    useFunctionCallingIfAvailable: true,
    classificationChoices: { relevant: 1, irrelevant: 0 },
    direction: "maximize",
    llmConfig: {
      aiIntegrationId: "your_ai_integration_id",
      modelName: "gpt-4o",
      invocationParameters: { temperature: 0 },
      providerParameters: {},
    },
  },
});

Create a New Code Version

import { createCodeEvaluatorVersion } from "@arizeai/ax-client";

const version = await createCodeEvaluatorVersion({
  evaluator: "your_evaluator_id",  // evaluator name or ID
  space: "my-space",               // required when resolving by evaluator name
  commitMessage: "Updated managed evaluator",
  codeConfig: {
    type: "managed",
    name: "json_parseable",
    managedEvaluator: "JSONParseable",
    variables: ["output"],
  },
});