Skip to main content

PromptEvaluationsClient

adaline.prompts.evaluations kicks off evaluation runs against a prompt, inspects their status, and cancels them. Per-row results are accessed through the nested .results sub-client. Every method is async. For long-running evaluations, prefer adaline.init_evaluation_results() — it wraps .results.list in a self-refreshing cache.

Access

from adaline.main import Adaline

adaline = Adaline()
evaluations = adaline.prompts.evaluations  # PromptEvaluationsClient
The class is also exported directly:
from adaline.clients import PromptEvaluationsClient

Sub-client

AttributeClientCovers
adaline.prompts.evaluations.resultsEvaluationResultsClientPaginated per-row evaluation results
Types from adaline_api:
from adaline_api.models.evaluation import Evaluation
from adaline_api.models.create_evaluation_request import CreateEvaluationRequest
from adaline_api.models.list_evaluations_response import ListEvaluationsResponse

list()

List evaluations for a prompt (paginated). Filter by status, evaluator, or dataset.
async def list(
    *,
    prompt_id: str,
    status: Optional[EvaluationStatusInput] = None,
    evaluator_id: Optional[str] = None,
    dataset_id: Optional[str] = None,
    sort: Optional[SortOrderInput] = None,
    created_after: Optional[int] = None,
    created_before: Optional[int] = None,
    limit: Optional[int] = None,
    cursor: Optional[str] = None,
) -> ListEvaluationsResponse

Parameters

NameTypeRequiredDescription
prompt_idstrYesPrompt whose evaluations should be listed.
statusOptional[EvaluationStatusInput]NoFilter by lifecycle state.
evaluator_id / dataset_idOptional[str]NoNarrow by evaluator or dataset.
sortOptional[SortOrderInput]NoSort order.
created_after / created_beforeOptional[int]NoUnix millisecond bounds.
limitOptional[int]NoPage size (default 50, max 200).
cursorOptional[str]NoCursor from a previous response.

Example

response = await adaline.prompts.evaluations.list(
    prompt_id="prompt_abc123",
    status="running",
    limit=20,
)

create()

Start a new evaluation run. Runs asynchronously on the server.
async def create(
    *,
    prompt_id: str,
    evaluation: CreateEvaluationRequest,
) -> Evaluation

Example

from adaline_api.models.create_evaluation_request import CreateEvaluationRequest

evaluation = await adaline.prompts.evaluations.create(
    prompt_id="prompt_abc123",
    evaluation=CreateEvaluationRequest(
        dataset_id="dataset_abc123",
        evaluator_ids=["evaluator_abc123", "evaluator_xyz789"],
        deployment_environment_id="environment_abc123",
        title="Nightly regression — 2026-04-21",
    )
)

print(evaluation.id, evaluation.status)

get()

Fetch a single evaluation by ID.
async def get(*, prompt_id: str, evaluation_id: str) -> Evaluation

cancel()

Cancel an in-flight evaluation. In-progress rows keep running to completion, but no new rows will start.
async def cancel(*, prompt_id: str, evaluation_id: str) -> Evaluation

Example

cancelled = await adaline.prompts.evaluations.cancel(
    prompt_id="prompt_abc123",
    evaluation_id="eval_abc123",
)

print(cancelled.status)

See Also