Evaluation
Evaluation and evaluator endpoints.
List evaluators for the authenticated project, optionally filtered by container.
API key in Authorization header using Bearer .
200Successful Response
Object type identifier.
listTotal number of items available for this resource.
Bad Request
Unauthorized
Forbidden
Validation Error
Too Many Requests
Internal Server Error
Not Implemented
Upstream Unavailable
GET /v1/evaluators HTTP/1.1
Host: platform.maniac.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"object": "list",
"data": [
{
"object": "evaluator.judge",
"project_id": "text",
"container_id": "text",
"id": "text",
"name": "text",
"description": "text",
"created_at": "text",
"metadata": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"pass_threshold": 1,
"mode": "pointwise",
"api": "text",
"container": "text",
"model": "text",
"prompt": "text",
"inference_parameters": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}
],
"total": 0
}Create a new evaluator scoped to a project or container.
API key in Authorization header using Bearer .
Container label.
Evaluator type.
Judge model slug.
Judge prompt.
Code evaluator source.
Optional requirements list.
Optional pass threshold.
Evaluation mode.
pointwisePossible values: Evaluator name.
Evaluator description.
API type.
Successful Response
Bad Request
Unauthorized
Forbidden
Not Found
Conflict
Validation Error
Too Many Requests
Internal Server Error
Not Implemented
Upstream Unavailable
POST /v1/evaluators HTTP/1.1
Host: platform.maniac.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 304
{
"container": "text",
"type": "judge",
"model": "text",
"prompt": "text",
"source": "text",
"requirements": [
"text"
],
"pass_threshold": 1,
"mode": "pointwise",
"metadata": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"name": "text",
"description": "text",
"api": "text",
"inference_parameters": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}{
"object": "evaluator.judge",
"project_id": "text",
"container_id": "text",
"id": "text",
"name": "text",
"description": "text",
"created_at": "text",
"metadata": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"pass_threshold": 1,
"mode": "pointwise",
"api": "text",
"container": "text",
"model": "text",
"prompt": "text",
"inference_parameters": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}Fetch a single evaluator by id or name within the authenticated project.
API key in Authorization header using Bearer .
Successful Response
Bad Request
Unauthorized
Forbidden
Not Found
Conflict
Validation Error
Too Many Requests
Internal Server Error
Not Implemented
Upstream Unavailable
GET /v1/evaluators/{evaluator} HTTP/1.1
Host: platform.maniac.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"object": "evaluator.judge",
"project_id": "text",
"container_id": "text",
"id": "text",
"name": "text",
"description": "text",
"created_at": "text",
"metadata": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"pass_threshold": 1,
"mode": "pointwise",
"api": "text",
"container": "text",
"model": "text",
"prompt": "text",
"inference_parameters": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}Update an existing evaluator by id or name.
API key in Authorization header using Bearer .
Patchable fields for an evaluator.
Container label.
Judge model slug.
Judge prompt.
Code evaluator source.
Optional requirements list.
Optional pass threshold.
Evaluation mode.
Evaluator name.
Evaluator description.
API type.
Successful Response
Bad Request
Unauthorized
Forbidden
Not Found
Conflict
Validation Error
Too Many Requests
Internal Server Error
Not Implemented
Upstream Unavailable
PATCH /v1/evaluators/{evaluator} HTTP/1.1
Host: platform.maniac.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 289
{
"container": "text",
"model": "text",
"prompt": "text",
"source": "text",
"requirements": [
"text"
],
"pass_threshold": 1,
"mode": "pointwise",
"metadata": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"name": "text",
"description": "text",
"api": "text",
"inference_parameters": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}{
"object": "evaluator.judge",
"project_id": "text",
"container_id": "text",
"id": "text",
"name": "text",
"description": "text",
"created_at": "text",
"metadata": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"pass_threshold": 1,
"mode": "pointwise",
"api": "text",
"container": "text",
"model": "text",
"prompt": "text",
"inference_parameters": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}Delete an evaluator by id.
API key in Authorization header using Bearer .
Successful Response
Object type.
evaluatorEvaluator id.
Deletion status.
trueBad Request
Unauthorized
Forbidden
Not Found
Conflict
Validation Error
Too Many Requests
Internal Server Error
Not Implemented
Upstream Unavailable
DELETE /v1/evaluators/{evaluator_id} HTTP/1.1
Host: platform.maniac.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"object": "evaluator",
"id": "text",
"deleted": true
}List evaluation runs for the authenticated project. Optionally filter by container and status.
API key in Authorization header using Bearer .
Container ID or label to filter by.
Filter by run status (e.g. 'running', 'completed', 'error').
200Successful Response
Object type identifier.
listTotal number of items available for this resource.
Bad Request
Unauthorized
Forbidden
Validation Error
Too Many Requests
Internal Server Error
Not Implemented
Upstream Unavailable
GET /v1/evaluation/runs HTTP/1.1
Host: platform.maniac.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"object": "list",
"data": [
{
"created_at": "text",
"finished_at": "text",
"error_at": "text",
"status": "text",
"error": null,
"object": "evaluation.run",
"id": "text",
"process_id": "text",
"evaluators": [
"text"
],
"container": "text",
"dataset_id": "text",
"sample": {
"range": "0:100",
"type": "text",
"dataset": "file_abc123"
},
"ground_truth": {
"range": "0:100",
"type": "text",
"dataset": "file_abc123"
},
"baseline": {
"range": "0:100",
"type": "text",
"dataset": "file_abc123"
},
"results": {
"overall": {
"avg_score": 1,
"avg_accuracy": 1,
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"metadata": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"per_model": [
{
"model": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"per_eval": {
"ANY_ADDITIONAL_PROPERTY": {
"accuracy": 1,
"avg_score": 1,
"num_total": 1,
"num_errors": 1,
"num_failed": 1,
"num_passed": 1,
"num_scored": 1,
"num_missing": 1,
"avg_accuracy": 1,
"break_reason": "text",
"expected_count": 1,
"ANY_ADDITIONAL_PROPERTY": "anything"
}
},
"avg_score": 1,
"avg_accuracy": 1,
"launch_index": 1,
"launch_call_id": "text",
"ANY_ADDITIONAL_PROPERTY": "anything"
}
],
"launch_count": 1,
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"metrics": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"config": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"spend": 1,
"metadata": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}
],
"total": 0
}Launch an evaluation run. Validates access to the specified container, evaluators, data sources, and models, then dispatches the run through the backend gateway interface.
API key in Authorization header using Bearer .
Request body for creating an evaluation run.
Each side of the evaluation (sample and ground_truth) is described
by a single data-source object whose type discriminator determines how
data is obtained:
"dataset"— pull from a dataset."container"— pull from the container's task logs."generate"— generate completions using one or more models.
Both fields are optional, but at least one must be provided. When a
side is omitted it defaults to the top-level container's task logs. At
least one resolved side must not be type='generate' so there is seed
input to evaluate against.
Container id or label.
Evaluator ids or labels.
Sample-side data source. Omit to default to the container's task logs. Use type='dataset' to pull from a dataset, type='container' to pull from task logs, or type='generate' to generate completions with the specified models.
Ground-truth-side data source. Omit to default to the container's task logs. Use type='dataset' to pull from a dataset, type='container' to pull from task logs, or type='generate' to generate completions with a model.
Baseline-side data source for pairwise evaluation. Use type='dataset' to pull from a dataset, type='container' to pull from task logs, or type='generate' to generate completions with a model.
Execution environment name (maps to Modal app suffix).
mainSuccessful Response
Response model for an evaluation run.
Object type.
evaluation.runEvaluation run id (run group id).
Process id for lifecycle tracking.
Evaluator ids used in this run.
Container id.
Dataset id (if a dataset was used).
Resolved sample-side data source.
Resolved ground-truth-side data source.
Resolved baseline-side data source for pairwise evaluation.
Estimated spend.
Bad Request
Unauthorized
Forbidden
Not Found
Conflict
Validation Error
Too Many Requests
Internal Server Error
Not Implemented
Upstream Unavailable
POST /v1/evaluation/runs HTTP/1.1
Host: platform.maniac.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 316
{
"container": "text",
"evaluators": [
"text"
],
"sample": {
"range": "0:100",
"type": "text",
"dataset": "file_abc123"
},
"ground_truth": {
"range": "0:100",
"type": "text",
"dataset": "file_abc123"
},
"baseline": {
"range": "0:100",
"type": "text",
"dataset": "file_abc123"
},
"metadata": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"environment": "main"
}{
"created_at": "text",
"finished_at": "text",
"error_at": "text",
"status": "text",
"error": null,
"object": "evaluation.run",
"id": "text",
"process_id": "text",
"evaluators": [
"text"
],
"container": "text",
"dataset_id": "text",
"sample": {
"range": "0:100",
"type": "text",
"dataset": "file_abc123"
},
"ground_truth": {
"range": "0:100",
"type": "text",
"dataset": "file_abc123"
},
"baseline": {
"range": "0:100",
"type": "text",
"dataset": "file_abc123"
},
"results": {
"overall": {
"avg_score": 1,
"avg_accuracy": 1,
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"metadata": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"per_model": [
{
"model": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"per_eval": {
"ANY_ADDITIONAL_PROPERTY": {
"accuracy": 1,
"avg_score": 1,
"num_total": 1,
"num_errors": 1,
"num_failed": 1,
"num_passed": 1,
"num_scored": 1,
"num_missing": 1,
"avg_accuracy": 1,
"break_reason": "text",
"expected_count": 1,
"ANY_ADDITIONAL_PROPERTY": "anything"
}
},
"avg_score": 1,
"avg_accuracy": 1,
"launch_index": 1,
"launch_call_id": "text",
"ANY_ADDITIONAL_PROPERTY": "anything"
}
],
"launch_count": 1,
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"metrics": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"config": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"spend": 1,
"metadata": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}Retrieve a single evaluation run by ID within the authenticated project.
API key in Authorization header using Bearer .
Successful Response
Response model for an evaluation run.
Object type.
evaluation.runEvaluation run id (run group id).
Process id for lifecycle tracking.
Evaluator ids used in this run.
Container id.
Dataset id (if a dataset was used).
Resolved sample-side data source.
Resolved ground-truth-side data source.
Resolved baseline-side data source for pairwise evaluation.
Estimated spend.
Bad Request
Unauthorized
Forbidden
Not Found
Conflict
Validation Error
Too Many Requests
Internal Server Error
Not Implemented
Upstream Unavailable
GET /v1/evaluation/runs/{run_id} HTTP/1.1
Host: platform.maniac.ai
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"created_at": "text",
"finished_at": "text",
"error_at": "text",
"status": "text",
"error": null,
"object": "evaluation.run",
"id": "text",
"process_id": "text",
"evaluators": [
"text"
],
"container": "text",
"dataset_id": "text",
"sample": {
"range": "0:100",
"type": "text",
"dataset": "file_abc123"
},
"ground_truth": {
"range": "0:100",
"type": "text",
"dataset": "file_abc123"
},
"baseline": {
"range": "0:100",
"type": "text",
"dataset": "file_abc123"
},
"results": {
"overall": {
"avg_score": 1,
"avg_accuracy": 1,
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"metadata": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"per_model": [
{
"model": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"per_eval": {
"ANY_ADDITIONAL_PROPERTY": {
"accuracy": 1,
"avg_score": 1,
"num_total": 1,
"num_errors": 1,
"num_failed": 1,
"num_passed": 1,
"num_scored": 1,
"num_missing": 1,
"avg_accuracy": 1,
"break_reason": "text",
"expected_count": 1,
"ANY_ADDITIONAL_PROPERTY": "anything"
}
},
"avg_score": 1,
"avg_accuracy": 1,
"launch_index": 1,
"launch_call_id": "text",
"ANY_ADDITIONAL_PROPERTY": "anything"
}
],
"launch_count": 1,
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"metrics": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"config": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"spend": 1,
"metadata": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}Last updated