JSON Schema for eval suites, jobs and results; uploaded datasets and deterministic synthesis; and pairwise judgments. Each request shape states whether unrecognized fields are ignored. Server-emitted objects are closed unless a definition explicitly says otherwise.
Schema identity
| Property | Value |
|---|---|
| Title | Kiln Eval, Dataset Synthesis, and Judgment API |
$id |
https://ericflo.github.io/kiln/contracts/kiln-evals-v1.schema.json |
| Dialect | https://json-schema.org/draft/2020-12/schema |
| Root type | Union of 33 public entrypoints |
| Root object | Defined by the selected entrypoint |
Entrypoints
Choose the request or response shape for the operation you are implementing. Each name links to its complete field table and constraints.
| Entrypoint | Purpose | Shape | Unknown fields |
|---|---|---|---|
AppendJudgmentBody |
Store one human preference over two exact responses to the same prompt. | 9 fields | Unknown fields accepted and ignored |
AppendJudgmentResponse |
Assigned row ID flattened with the updated judgment manifest. | 9 fields | Unknown fields rejected |
CancelEvalJobResponse |
Queued cancellation, cooperative running cancellation, or terminal-record deletion result. | 0 fields | Varies by composed variant |
CompileJudgmentBody |
Compile judgment rows to a swap-augmented SFT dataset with a holdout. | 3 fields | Unknown fields accepted and ignored |
CompileJudgmentResponse |
The swap-augmented SFT output, reserved holdout count, source-row boundary, dataset manifest, and warnings. | 6 fields | Unknown fields rejected |
CreateJudgmentBody |
Create an append-only judgment dataset. | 2 fields | Unknown fields accepted and ignored |
DatasetListResponse |
All uploaded eval/training datasets. | 1 field | Unknown fields rejected |
DatasetManifest |
Persisted content-addressed dataset identity and partition summary. | 16 fields | Unknown fields rejected |
DatasetSplitConfig |
Deterministic group-aware split policy. Train plus validation must be below 100. | 3 fields | Unknown fields rejected |
DatasetSplitManifest |
Persisted deterministic split manifest; normalized duplicates and connected group/session rows share one partition. | 7 fields | Unknown fields rejected |
DatasetUploadMultipart |
Multipart dataset upload. Unrecognized multipart fields are read and ignored. | 4 fields | Unknown fields accepted and ignored |
DeleteDatasetResponse |
Confirmation that a dataset was deleted. | 2 fields | Unknown fields rejected |
DeleteJudgmentResponse |
Confirmation that a judgment dataset was deleted. | 2 fields | Unknown fields rejected |
DeleteSuiteResponse |
Confirmation that a suite was deleted. | 2 fields | Unknown fields rejected |
EvalCompareSpec |
Run one registered suite against one to eight ordered adapters. Empty adapter names select the base model. | 4 fields | Unknown fields accepted and ignored |
EvalJobListResponse |
All retained eval jobs in descending submission order. | 1 field | Unknown fields rejected |
EvalResult |
Top-level retained result for a single- or multi-adapter eval job. | 12 fields | Unknown fields rejected |
EvalRunRequest |
Submit exactly one registered or inline suite for evaluation. | 5 fields | Unknown fields accepted and ignored |
EvalRunResponse |
Immutable admission receipt for a queued eval job. | 4 fields | Unknown fields rejected |
EvalSuite |
A named set of examples with shared scoring, generation, aggregation, prompt, and tool settings. Omitted settings use documented defaults. | 9 fields | Unknown fields accepted and ignored |
JudgmentListResponse |
All retained pairwise-judgment datasets. | 1 field | Unknown fields rejected |
JudgmentManifest |
Persisted pairwise-judgment dataset identity and compile split. | 8 fields | Unknown fields rejected |
PromoteJudgmentBody |
Queue held-out validation for a trained judge adapter. | 2 fields | Unknown fields accepted and ignored |
RenderJudgmentPromptResponse |
Exact pairwise prompt used by both judge training and inference. | 1 field | Unknown fields rejected |
ReplayBody |
Select one retained run for strict identity-checked byte replay. | 1 field | Unknown fields rejected |
RerunBody |
Select outcomes and adapter identity for a failure-focused re-run. | 4 fields | Unknown fields accepted and ignored |
SuiteListResponse |
All registered evaluation suites. | 1 field | Unknown fields rejected |
SuiteSaveResponse |
Suite persistence confirmation. | 3 fields | Unknown fields rejected |
SynthesisPreview |
Non-persisted synthesis preview including its persisted source partition and completion reduction. | 7 fields | Unknown fields rejected |
SynthesisPreviewBody |
Preview a suite synthesized from one persisted partition without saving it. Source defaults to holdout. | 12 fields | Unknown fields accepted and ignored |
SynthesizeBody |
Persist a suite synthesized from one partition and optionally queue it against adapters. Source defaults to holdout. | 13 fields | Unknown fields accepted and ignored |
SynthesizeDatasetResponse |
Persisted suite summary plus any auto-queued eval job IDs. | 3 fields | Unknown fields rejected |
ValidateJudgmentResponse |
Held-out judge-validation admission receipt. | 5 fields | Unknown fields rejected |
Composition and conditional rules
Show exact composition rules
{
"oneOf": [
{
"$ref": "#/$defs/AppendJudgmentBody"
},
{
"$ref": "#/$defs/AppendJudgmentResponse"
},
{
"$ref": "#/$defs/CancelEvalJobResponse"
},
{
"$ref": "#/$defs/CompileJudgmentBody"
},
{
"$ref": "#/$defs/CompileJudgmentResponse"
},
{
"$ref": "#/$defs/CreateJudgmentBody"
},
{
"$ref": "#/$defs/DatasetListResponse"
},
{
"$ref": "#/$defs/DatasetManifest"
},
{
"$ref": "#/$defs/DatasetSplitConfig"
},
{
"$ref": "#/$defs/DatasetSplitManifest"
},
{
"$ref": "#/$defs/DatasetUploadMultipart"
},
{
"$ref": "#/$defs/DeleteDatasetResponse"
},
{
"$ref": "#/$defs/DeleteJudgmentResponse"
},
{
"$ref": "#/$defs/DeleteSuiteResponse"
},
{
"$ref": "#/$defs/EvalCompareSpec"
},
{
"$ref": "#/$defs/EvalJobListResponse"
},
{
"$ref": "#/$defs/EvalResult"
},
{
"$ref": "#/$defs/EvalRunRequest"
},
{
"$ref": "#/$defs/EvalRunResponse"
},
{
"$ref": "#/$defs/EvalSuite"
},
{
"$ref": "#/$defs/JudgmentListResponse"
},
{
"$ref": "#/$defs/JudgmentManifest"
},
{
"$ref": "#/$defs/PromoteJudgmentBody"
},
{
"$ref": "#/$defs/RenderJudgmentPromptResponse"
},
{
"$ref": "#/$defs/ReplayBody"
},
{
"$ref": "#/$defs/RerunBody"
},
{
"$ref": "#/$defs/SuiteListResponse"
},
{
"$ref": "#/$defs/SuiteSaveResponse"
},
{
"$ref": "#/$defs/SynthesisPreview"
},
{
"$ref": "#/$defs/SynthesisPreviewBody"
},
{
"$ref": "#/$defs/SynthesizeBody"
},
{
"$ref": "#/$defs/SynthesizeDatasetResponse"
},
{
"$ref": "#/$defs/ValidateJudgmentResponse"
}
]
}
Kiln contract annotations
Show exact Kiln annotations and examples
{
"x-kiln-entrypoints": [
"AppendJudgmentBody",
"AppendJudgmentResponse",
"CancelEvalJobResponse",
"CompileJudgmentBody",
"CompileJudgmentResponse",
"CreateJudgmentBody",
"DatasetListResponse",
"DatasetManifest",
"DatasetSplitConfig",
"DatasetSplitManifest",
"DatasetUploadMultipart",
"DeleteDatasetResponse",
"DeleteJudgmentResponse",
"DeleteSuiteResponse",
"EvalCompareSpec",
"EvalJobListResponse",
"EvalResult",
"EvalRunRequest",
"EvalRunResponse",
"EvalSuite",
"JudgmentListResponse",
"JudgmentManifest",
"PromoteJudgmentBody",
"RenderJudgmentPromptResponse",
"ReplayBody",
"RerunBody",
"SuiteListResponse",
"SuiteSaveResponse",
"SynthesisPreview",
"SynthesisPreviewBody",
"SynthesizeBody",
"SynthesizeDatasetResponse",
"ValidateJudgmentResponse"
],
"x-kiln-examples": {
"AppendJudgmentBody": [
{
"prompt": [
{
"role": "user",
"content": "Explain the answer."
}
],
"adapter_a": null,
"adapter_b": "concise-v1",
"response_a": "A long answer",
"response_b": "A concise answer",
"winner": "b",
"tags": [
"style"
]
}
],
"AppendJudgmentResponse": [
{
"judgment_id": "judgment-1",
"name": "style-prefs",
"description": "Concise-answer preferences",
"num_rows": 1,
"created_at": "2026-07-14T12:00:00Z",
"updated_at": "2026-07-14T12:01:00Z",
"winner_histogram": {
"a": 1
}
}
],
"CancelEvalJobResponse": [
{
"status": "cancelled",
"job_id": "eval-1",
"was_in_queue": true
},
{
"status": "cancelling",
"job_id": "eval-2",
"note": "running job will exit at the next example boundary"
},
{
"status": "deleted",
"job_id": "eval-3",
"removed_archive_file": true
}
],
"CompileJudgmentBody": [
{
"output_dataset": "style-prefs-sft",
"include_skips": false,
"holdout_n": 1
}
],
"CompileJudgmentResponse": [
{
"status": "compiled",
"rows": 2,
"holdout_n": 1,
"train_validation_split": 1,
"dataset": {
"schema_version": 2,
"name": "math-sft",
"format": "sft_chat",
"description": "Arithmetic conversations",
"num_rows": 1,
"size_bytes": 64,
"created_at": "2026-07-14T12:00:00Z",
"updated_at": "2026-07-14T12:00:00Z",
"corpus_sha256": "sha256:1111111111111111111111111111111111111111111111111111111111111111",
"normalized_corpus_sha256": "sha256:2222222222222222222222222222222222222222222222222222222222222222",
"split_manifest_sha256": "sha256:3333333333333333333333333333333333333333333333333333333333333333",
"split_config": {
"seed": "0",
"train_percent": 80,
"validation_percent": 10
},
"split_counts": {
"train": 1,
"validation": 0,
"holdout": 0
},
"num_groups": 0,
"num_sessions": 0,
"stats": {
"num_assistant_turns": 1,
"num_tool_messages": 0,
"num_with_tool_calls": 0,
"max_messages_per_conv": 2,
"max_content_chars": 8,
"avg_messages_per_conv": 2,
"sample_role_patterns": [
"user>assistant"
]
}
},
"warnings": []
}
],
"CreateJudgmentBody": [
{
"name": "style-prefs",
"description": "Concise-answer preferences"
}
],
"DatasetListResponse": [
{
"datasets": [
{
"schema_version": 2,
"name": "math-sft",
"format": "sft_chat",
"description": "Arithmetic conversations",
"num_rows": 1,
"size_bytes": 64,
"created_at": "2026-07-14T12:00:00Z",
"updated_at": "2026-07-14T12:00:00Z",
"corpus_sha256": "sha256:1111111111111111111111111111111111111111111111111111111111111111",
"normalized_corpus_sha256": "sha256:2222222222222222222222222222222222222222222222222222222222222222",
"split_manifest_sha256": "sha256:3333333333333333333333333333333333333333333333333333333333333333",
"split_config": {
"seed": "0",
"train_percent": 80,
"validation_percent": 10
},
"split_counts": {
"train": 1,
"validation": 0,
"holdout": 0
},
"num_groups": 0,
"num_sessions": 0,
"stats": {
"num_assistant_turns": 1,
"num_tool_messages": 0,
"num_with_tool_calls": 0,
"max_messages_per_conv": 2,
"max_content_chars": 8,
"avg_messages_per_conv": 2,
"sample_role_patterns": [
"user>assistant"
]
}
}
]
}
],
"DatasetManifest": [
{
"schema_version": 2,
"name": "math-sft",
"format": "sft_chat",
"description": "Arithmetic conversations",
"num_rows": 1,
"size_bytes": 64,
"created_at": "2026-07-14T12:00:00Z",
"updated_at": "2026-07-14T12:00:00Z",
"corpus_sha256": "sha256:1111111111111111111111111111111111111111111111111111111111111111",
"normalized_corpus_sha256": "sha256:2222222222222222222222222222222222222222222222222222222222222222",
"split_manifest_sha256": "sha256:3333333333333333333333333333333333333333333333333333333333333333",
"split_config": {
"seed": "0",
"train_percent": 80,
"validation_percent": 10
},
"split_counts": {
"train": 1,
"validation": 0,
"holdout": 0
},
"num_groups": 0,
"num_sessions": 0,
"stats": {
"num_assistant_turns": 1,
"num_tool_messages": 0,
"num_with_tool_calls": 0,
"max_messages_per_conv": 2,
"max_content_chars": 8,
"avg_messages_per_conv": 2,
"sample_role_patterns": [
"user>assistant"
]
}
}
],
"DatasetSplitConfig": [
{
"seed": "0",
"train_percent": 80,
"validation_percent": 10
}
],
"DatasetSplitManifest": [
{
"schema": "kiln.dataset-split.v1",
"dataset_name": "math-sft",
"corpus_sha256": "sha256:1111111111111111111111111111111111111111111111111111111111111111",
"normalized_corpus_sha256": "sha256:2222222222222222222222222222222222222222222222222222222222222222",
"config": {
"seed": "0",
"train_percent": 80,
"validation_percent": 10
},
"counts": {
"train": 1,
"validation": 0,
"holdout": 0
},
"rows": [
{
"row_number": 1,
"content_sha256": "sha256:4444444444444444444444444444444444444444444444444444444444444444",
"normalized_sha256": "sha256:5555555555555555555555555555555555555555555555555555555555555555",
"split": "train"
}
]
}
],
"DatasetUploadMultipart": [
{
"name": "math-sft",
"format": "sft_chat",
"description": "Arithmetic",
"file": "<binary JSONL body>"
}
],
"DeleteDatasetResponse": [
{
"status": "deleted",
"name": "math-sft"
}
],
"DeleteJudgmentResponse": [
{
"status": "deleted",
"name": "style-prefs"
}
],
"DeleteSuiteResponse": [
{
"status": "deleted",
"name": "math-smoke"
}
],
"EvalCompareSpec": [
{
"suite": "math-smoke",
"adapters": [
"",
"math-v1"
],
"seed": 42
}
],
"EvalJobListResponse": [
{
"jobs": [
{
"schema_version": 2,
"job_id": "eval-1",
"suite_name": "math-smoke",
"adapters": [
null
],
"submission_kind": "on_demand",
"effective_seed": "42",
"state": "completed",
"progress": {
"examples_completed": 1,
"examples_total": 1,
"running_accuracy": 1,
"running_mean_score": 1
},
"finished_runs": [
{
"suite_name": "math-smoke",
"adapter": null,
"aggregation": {
"kind": "single"
},
"metrics": {
"num_examples": 1,
"num_completions": 1,
"num_pass": 1,
"num_fail": 0,
"num_invalid": 0,
"num_error": 0,
"accuracy": 1,
"accuracy_confidence_interval": {
"confidence_level": 0.95,
"lower": 0.2,
"upper": 1
},
"mean_score": 1,
"weighted_mean_score": 1,
"latency": {
"p50_ms": 10,
"p90_ms": 10,
"p99_ms": 10,
"mean_ms": 10,
"max_ms": 10
},
"total_prompt_tokens": 8,
"total_completion_tokens": 1,
"elapsed_secs": 0.01,
"pass_rate_by_tag": {
"math": 1
},
"tag_breakdown": {
"math": {
"num_examples": 1,
"num_pass": 1,
"pass_rate": 1,
"confidence_interval": {
"confidence_level": 0.95,
"lower": 0.2,
"upper": 1
}
}
},
"by_scorer": [
{
"scorer_kind": "exact_match",
"num_examples": 1,
"mean_score": 1,
"pass_rate": 1
}
],
"reasoning_length": {
"num_with_thinking": 0,
"mean_chars": 0,
"p50_chars": 0,
"p90_chars": 0,
"max_chars": 0
},
"num_unclosed_thinking": 0,
"num_non_xml_tool_calls": 0,
"num_schema_missing_required": 0,
"num_schema_extra_unknown": 0
},
"aggregated_outcomes": [
{
"example_id": "two-plus-two",
"kind": "pass",
"score": 1,
"completion_indices": [
0
],
"representative_completion_index": 0,
"num_pass": 1,
"num_fail": 0,
"num_invalid": 0,
"num_error": 0,
"tags": [
"math"
]
}
],
"outcomes": [
{
"example_id": "two-plus-two",
"completion_index": 0,
"generation_seed": "43",
"completion_text": "4",
"kind": "pass",
"score": 1,
"tags": [
"math"
]
}
],
"started_at": "2026-07-14T12:00:00Z",
"finished_at": "2026-07-14T12:00:01Z",
"suite_hash": "sha256:6666666666666666666666666666666666666666666666666666666666666666"
}
],
"headline_accuracy": 1,
"error": null,
"source_training_job_id": null,
"submitted_at_iso": "2026-07-14T12:00:00Z",
"started_at_iso": "2026-07-14T12:00:00Z",
"finished_at_iso": "2026-07-14T12:00:01Z"
}
]
}
],
"EvalResult": [
{
"schema_version": 2,
"job_id": "eval-1",
"state": "completed",
"effective_seed": "42",
"seed_derivation": "kiln.eval-seed.v1",
"runs": [
{
"suite_name": "math-smoke",
"adapter": null,
"aggregation": {
"kind": "single"
},
"metrics": {
"num_examples": 1,
"num_completions": 1,
"num_pass": 1,
"num_fail": 0,
"num_invalid": 0,
"num_error": 0,
"accuracy": 1,
"accuracy_confidence_interval": {
"confidence_level": 0.95,
"lower": 0.2,
"upper": 1
},
"mean_score": 1,
"weighted_mean_score": 1,
"latency": {
"p50_ms": 10,
"p90_ms": 10,
"p99_ms": 10,
"mean_ms": 10,
"max_ms": 10
},
"total_prompt_tokens": 8,
"total_completion_tokens": 1,
"elapsed_secs": 0.01,
"pass_rate_by_tag": {
"math": 1
},
"tag_breakdown": {
"math": {
"num_examples": 1,
"num_pass": 1,
"pass_rate": 1,
"confidence_interval": {
"confidence_level": 0.95,
"lower": 0.2,
"upper": 1
}
}
},
"by_scorer": [
{
"scorer_kind": "exact_match",
"num_examples": 1,
"mean_score": 1,
"pass_rate": 1
}
],
"reasoning_length": {
"num_with_thinking": 0,
"mean_chars": 0,
"p50_chars": 0,
"p90_chars": 0,
"max_chars": 0
},
"num_unclosed_thinking": 0,
"num_non_xml_tool_calls": 0,
"num_schema_missing_required": 0,
"num_schema_extra_unknown": 0
},
"aggregated_outcomes": [
{
"example_id": "two-plus-two",
"kind": "pass",
"score": 1,
"completion_indices": [
0
],
"representative_completion_index": 0,
"num_pass": 1,
"num_fail": 0,
"num_invalid": 0,
"num_error": 0,
"tags": [
"math"
]
}
],
"outcomes": [
{
"example_id": "two-plus-two",
"completion_index": 0,
"generation_seed": "43",
"completion_text": "4",
"kind": "pass",
"score": 1,
"tags": [
"math"
]
}
],
"started_at": "2026-07-14T12:00:00Z",
"finished_at": "2026-07-14T12:00:01Z",
"suite_hash": "sha256:6666666666666666666666666666666666666666666666666666666666666666"
}
]
}
],
"EvalRunRequest": [
{
"suite": "math-smoke",
"adapter": "math-v1",
"seed": 42
}
],
"EvalRunResponse": [
{
"job_id": "eval-1",
"state": "queued",
"effective_seed": "42",
"message": "Queued eval against suite `math-smoke`"
}
],
"EvalSuite": [
{
"name": "math-smoke",
"description": "One deterministic arithmetic case",
"default_scorer": {
"kind": "exact_match",
"case_sensitive": false,
"strip_whitespace": true
},
"generation": {
"temperature": 0,
"top_p": 1,
"top_k": 0,
"max_tokens": 32,
"n": 1,
"stop": [],
"seed": null
},
"aggregation": {
"kind": "single"
},
"examples": [
{
"id": "two-plus-two",
"messages": [
{
"role": "user",
"content": "2 + 2?"
}
],
"target": "4",
"weight": 1
}
],
"schema_version": 2
}
],
"JudgmentListResponse": [
{
"judgments": [
{
"name": "style-prefs",
"description": "Concise-answer preferences",
"num_rows": 1,
"created_at": "2026-07-14T12:00:00Z",
"updated_at": "2026-07-14T12:01:00Z",
"winner_histogram": {
"a": 1
}
}
]
}
],
"JudgmentManifest": [
{
"name": "style-prefs",
"description": "Concise-answer preferences",
"num_rows": 1,
"created_at": "2026-07-14T12:00:00Z",
"updated_at": "2026-07-14T12:01:00Z",
"winner_histogram": {
"a": 1
}
}
],
"PromoteJudgmentBody": [
{
"adapter": "judge-v1",
"holdout_n": 20
}
],
"RenderJudgmentPromptResponse": [
{
"prompt": "Compare the following two assistant replies..."
}
],
"ReplayBody": [
{
"run_index": 0
}
],
"RerunBody": [
{
"adapter": "math-v2",
"outcome_kinds": [
"fail",
"invalid",
"error"
],
"include_pass": false,
"seed": 42
}
],
"SuiteListResponse": [
{
"suites": [
{
"name": "math-smoke",
"description": "One deterministic arithmetic case",
"num_examples": 1,
"completions_per_example": 1,
"aggregation": {
"kind": "single"
},
"schema_version": 2,
"default_scorer_kind": "exact_match",
"tags": {
"math": 1
}
}
]
}
],
"SuiteSaveResponse": [
{
"name": "math-smoke",
"path": "/srv/kiln/.eval/suites/math-smoke/suite.json",
"status": "created"
}
],
"SynthesisPreview": [
{
"examples": [
{
"id": "two-plus-two",
"messages": [
{
"role": "user",
"content": "2 + 2?"
}
],
"target": "4",
"weight": 1
}
],
"stats": {
"trajectories_seen": 1,
"trajectories_used": 1,
"examples_generated": 1,
"skipped_no_target": 0,
"skipped_prompt_too_long": 0,
"skipped_target_too_long": 0,
"skipped_duplicate": 0,
"skipped_strategy_match": 0,
"sample_kept": 1,
"effective_seed": "42",
"auto_scorer_histogram": {
"exact_match": 1
}
},
"suite_name": "math-smoke",
"default_scorer_kind": "exact_match",
"aggregation": {
"kind": "single"
},
"completions_per_example": 1,
"source_split": "holdout"
}
],
"SynthesisPreviewBody": [
{
"suite_name": "math-smoke",
"strategy": "final_assistant",
"scorer": {
"kind": "fixed",
"scorer": {
"kind": "exact_match"
}
},
"aggregation": {
"kind": "single"
},
"sampling": {
"max_examples": 100,
"seed": 42
},
"source_split": "holdout",
"head_n": 5
}
],
"SynthesizeBody": [
{
"suite_name": "math-smoke",
"strategy": "final_assistant",
"scorer": {
"kind": "fixed",
"scorer": {
"kind": "exact_match"
}
},
"aggregation": {
"kind": "single"
},
"sampling": {
"max_examples": 100,
"seed": 42
},
"source_split": "holdout",
"force": true,
"run_against": [
""
]
}
],
"SynthesizeDatasetResponse": [
{
"suite": {
"name": "math-smoke",
"description": "One deterministic arithmetic case",
"num_examples": 1,
"completions_per_example": 1,
"aggregation": {
"kind": "single"
},
"schema_version": 2,
"default_scorer_kind": "exact_match",
"tags": {
"math": 1
}
},
"stats": {
"trajectories_seen": 1,
"trajectories_used": 1,
"examples_generated": 1,
"skipped_no_target": 0,
"skipped_prompt_too_long": 0,
"skipped_target_too_long": 0,
"skipped_duplicate": 0,
"skipped_strategy_match": 0,
"sample_kept": 1,
"effective_seed": "42",
"auto_scorer_histogram": {
"exact_match": 1
}
},
"queued_eval_job_ids": [
"eval-1"
]
}
],
"ValidateJudgmentResponse": [
{
"status": "queued",
"eval_job_id": "eval-judge-1",
"effective_seed": "42",
"validation_suite": "judge-validate-style-prefs",
"warnings": []
}
]
},
"x-kiln-external-contracts": [
"kiln-observability-v1.schema.json",
"thinking-budget-v1.schema.json"
],
"x-kiln-field-schema-status": "complete"
}
Definitions
AggregateMetricsComplete aggregate metrics for one suite/adapter run.24 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
num_examples |
yes | NonNegativeInteger |
- | Num examples. A whole number greater than or equal to zero. |
num_completions |
yes | NonNegativeInteger |
- | Num completions. A whole number greater than or equal to zero. |
num_pass |
yes | NonNegativeInteger |
- | Num pass. A whole number greater than or equal to zero. |
num_fail |
yes | NonNegativeInteger |
- | Num fail. A whole number greater than or equal to zero. |
num_invalid |
yes | NonNegativeInteger |
- | Num invalid. A whole number greater than or equal to zero. |
num_error |
yes | NonNegativeInteger |
- | Num error. A whole number greater than or equal to zero. |
accuracy |
yes | UnitInterval |
- | Accuracy. A score or rate from 0 through 1, inclusive. |
accuracy_confidence_interval |
yes | PassRateConfidenceInterval |
- | Accuracy confidence interval. Wilson confidence interval for a pass rate. |
mean_score |
yes | UnitInterval |
- | Mean score. A score or rate from 0 through 1, inclusive. |
weighted_mean_score |
yes | UnitInterval |
- | Weighted mean score. A score or rate from 0 through 1, inclusive. |
latency |
yes | LatencyStats |
- | Latency. Latency distribution summary in milliseconds. |
total_prompt_tokens |
yes | NonNegativeInteger |
- | Total prompt tokens. A whole number greater than or equal to zero. |
total_completion_tokens |
yes | NonNegativeInteger |
- | Total completion tokens. A whole number greater than or equal to zero. |
elapsed_secs |
yes | FiniteNumber |
- | Elapsed secs. A finite JSON number; NaN and infinities are not valid JSON. |
pass_rate_by_tag |
yes | object |
- | Pass rate by tag. |
tag_breakdown |
no | object |
- | Tag breakdown. |
by_scorer |
yes | array<ScorerBreakdown> |
- | By scorer. |
pass_rate_by_tool |
no | object |
- | Pass rate by tool. |
reasoning_length |
yes | ReasoningLengthStats |
- | Reasoning length. Reasoning-block character-length summary. |
num_unclosed_thinking |
yes | NonNegativeInteger |
- | Num unclosed thinking. A whole number greater than or equal to zero. |
num_non_xml_tool_calls |
yes | NonNegativeInteger |
- | Num non xml tool calls. A whole number greater than or equal to zero. |
confusion_by_tool |
no | object |
- | Confusion by tool. |
num_schema_missing_required |
yes | NonNegativeInteger |
- | Num schema missing required. A whole number greater than or equal to zero. |
num_schema_extra_unknown |
yes | NonNegativeInteger |
- | Num schema extra unknown. A whole number greater than or equal to zero. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::AggregateMetrics"
}
AggregatedExampleOutcomeOne independent example statistic reduced from its complete raw completion group.11 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
example_id |
yes | NonEmptyString |
- | Example ID. Text containing at least one character. |
kind |
yes | EvalOutcomeKind |
- | Kind. Per-completion scoring outcome. |
score |
yes | UnitInterval |
- | Score. A score or rate from 0 through 1, inclusive. |
completion_indices |
yes | array<NonNegativeInteger> |
minimum items 1; maximum items 128 | Completion indices. |
representative_completion_index |
yes | NonNegativeInteger |
- | Representative completion index. A whole number greater than or equal to zero. |
num_pass |
yes | NonNegativeInteger |
- | Num pass. A whole number greater than or equal to zero. |
num_fail |
yes | NonNegativeInteger |
- | Num fail. A whole number greater than or equal to zero. |
num_invalid |
yes | NonNegativeInteger |
- | Num invalid. A whole number greater than or equal to zero. |
num_error |
yes | NonNegativeInteger |
- | Num error. A whole number greater than or equal to zero. |
tags |
no | array<String> |
- | Tags. |
metadata |
no | AnyJson |
- | Metadata. Any JSON value; Kiln does not interpret its internal shape at this boundary. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::AggregatedExampleOutcome",
"x-kiln-semantic-constraints": [
"completion_indices are exactly 0..k",
"raw kind counts sum to k",
"representative_completion_index is a member of completion_indices"
]
}
AnyJsonAny JSON value; Kiln does not interpret its internal shape at this boundary.0 fields
Type: any.
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "serde_json::Value"
}
AppendJudgmentBodyStore one human preference over two exact responses to the same prompt.9 fields
Type: object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
id |
no | String | null |
- | ID. |
prompt |
yes | array<EvalChatMessage> |
- | Prompt. |
adapter_a |
no | String | null |
- | Adapter a. |
adapter_b |
no | String | null |
- | Adapter b. |
response_a |
yes | String |
- | Response a. Text, including an empty string. |
response_b |
yes | String |
- | Response b. Text, including an empty string. |
winner |
yes | JudgmentWinner |
- | Winner. Human pairwise preference label. |
note |
no | String | null |
- | Note. |
tags |
no | array<String> |
- | Tags. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "AppendJudgmentBody",
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
AppendJudgmentResponseAssigned row ID flattened with the updated judgment manifest.9 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
judgment_id |
yes | NonEmptyString |
- | Judgment ID. Text containing at least one character. |
name |
yes | EvalResourceName |
- | Name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
description |
yes | String | null |
- | Description. |
num_rows |
yes | NonNegativeInteger |
- | Num rows. A whole number greater than or equal to zero. |
created_at |
yes | Rfc3339Timestamp |
- | Created at. An RFC 3339 timestamp. |
updated_at |
yes | Rfc3339Timestamp |
- | Updated at. An RFC 3339 timestamp. |
winner_histogram |
yes | object |
- | Winner histogram. |
last_compiled_split |
no | NonNegativeInteger |
- | Last compiled split. A whole number greater than or equal to zero. |
last_compiled_at |
no | Rfc3339Timestamp |
- | Last compiled at. An RFC 3339 timestamp. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "AppendJudgmentResponse"
}
ArgsScoringTool-argument scoring policy, including recursive per-key scorers.0 fields
Type: object | object | object | object.
Composition and conditional rules
The following JSON is copied exactly from this schema node.
{
"oneOf": [
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "keys_only"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "structural"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "auto"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind",
"scorers"
],
"properties": {
"kind": {
"const": "per_key"
},
"scorers": {
"type": "object",
"additionalProperties": {
"$ref": "#/$defs/Scorer"
}
},
"extra_key_penalty": {
"$ref": "#/$defs/FiniteNumber"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
]
}
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::scorers::ArgsScoring"
}
BooleanEither true or false.0 fields
Type: boolean.
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "bool"
}
CancelEvalJobResponseQueued cancellation, cooperative running cancellation, or terminal-record deletion result.0 fields
Type: object | object | object.
Composition and conditional rules
The following JSON is copied exactly from this schema node.
{
"oneOf": [
{
"type": "object",
"additionalProperties": false,
"required": [
"status",
"job_id",
"was_in_queue"
],
"properties": {
"status": {
"const": "cancelled"
},
"job_id": {
"$ref": "#/$defs/NonEmptyString"
},
"was_in_queue": {
"$ref": "#/$defs/Boolean"
}
}
},
{
"type": "object",
"additionalProperties": false,
"required": [
"status",
"job_id",
"note"
],
"properties": {
"status": {
"const": "cancelling"
},
"job_id": {
"$ref": "#/$defs/NonEmptyString"
},
"note": {
"const": "running job will exit at the next example boundary"
}
}
},
{
"type": "object",
"additionalProperties": false,
"required": [
"status",
"job_id",
"removed_archive_file"
],
"properties": {
"status": {
"const": "deleted"
},
"job_id": {
"$ref": "#/$defs/NonEmptyString"
},
"removed_archive_file": {
"$ref": "#/$defs/Boolean"
}
}
}
]
}
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "CancelEvalJobResponse"
}
CodeStyleHow the code scorer compares extracted code. Omitted variant settings use the scorer defaults.0 fields
Type: object | object | object | object.
Composition and conditional rules
The following JSON is copied exactly from this schema node.
{
"oneOf": [
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "any_block"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "exact_block"
},
"strip_comments": {
"$ref": "#/$defs/Boolean"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "token_similarity"
},
"min_jaccard": {
"$ref": "#/$defs/FiniteNumber"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "line_coverage"
},
"min_coverage": {
"$ref": "#/$defs/FiniteNumber"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
]
}
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::scorers::CodeStyle"
}
CompileJudgmentBodyCompile judgment rows to a swap-augmented SFT dataset with a holdout.3 fields
Type: object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
output_dataset |
yes | EvalResourceName |
- | Output dataset. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
include_skips |
no | Boolean |
- | Include skips. Either true or false. |
holdout_n |
no | NonNegativeInteger | null |
- | Holdout n. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "CompileJudgmentBody",
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
CompileJudgmentResponseThe swap-augmented SFT output, reserved holdout count, source-row boundary, dataset manifest, and warnings.6 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
status |
yes | any |
const "compiled" | Status. |
rows |
yes | PositiveInteger |
- | Rows. A whole number greater than zero. |
holdout_n |
yes | NonNegativeInteger |
- | Holdout n. A whole number greater than or equal to zero. |
train_validation_split |
yes | PositiveInteger |
- | Train validation split. A whole number greater than zero. |
dataset |
yes | DatasetManifest |
- | Dataset. Persisted content-addressed dataset identity and partition summary. |
warnings |
yes | array<String> |
- | Warnings. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "CompileJudgmentResponse"
}
ContainsModeHow phrase containment matches combine.0 fields
Type: string. Constraints: enum "any", "all", "none".
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "ContainsMode"
}
CreateJudgmentBodyCreate an append-only judgment dataset.2 fields
Type: object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
name |
yes | EvalResourceName |
- | Name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
description |
no | String | null |
- | Description. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "CreateJudgmentBody",
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
DatasetFormatCanonical persisted dataset format.0 fields
Type: string. Constraints: enum "sft_chat", "grpo_groups", "raw".
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "DatasetFormat"
}
DatasetListResponseAll uploaded eval/training datasets.1 field
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
datasets |
yes | array<DatasetManifest> |
- | Datasets. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "DatasetListResponse"
}
DatasetManifestPersisted content-addressed dataset identity and partition summary.16 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
schema_version |
yes | any |
const 2 | Schema version. |
name |
yes | EvalResourceName |
- | Name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
format |
yes | DatasetFormat |
- | Format. Canonical persisted dataset format. |
description |
yes | String | null |
- | Description. |
num_rows |
yes | NonNegativeInteger |
- | Num rows. A whole number greater than or equal to zero. |
size_bytes |
yes | NonNegativeInteger |
- | Size bytes. A whole number greater than or equal to zero. |
created_at |
yes | Rfc3339Timestamp |
- | Created at. An RFC 3339 timestamp. |
updated_at |
yes | Rfc3339Timestamp |
- | Updated at. An RFC 3339 timestamp. |
corpus_sha256 |
yes | Sha256Digest |
- | Corpus SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
normalized_corpus_sha256 |
yes | Sha256Digest |
- | Normalized corpus SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
split_manifest_sha256 |
yes | Sha256Digest |
- | Split manifest SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
split_config |
yes | DatasetSplitConfig |
- | Split config. Deterministic group-aware split policy. Train plus validation must be below 100. |
split_counts |
yes | DatasetSplitCounts |
- | Split counts. Row counts in each persisted partition. |
num_groups |
yes | NonNegativeInteger |
- | Num groups. A whole number greater than or equal to zero. |
num_sessions |
yes | NonNegativeInteger |
- | Num sessions. A whole number greater than or equal to zero. |
stats |
yes | DatasetStats |
- | Stats. Bounded structural statistics computed from an uploaded dataset. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "DatasetManifest"
}
DatasetSplitPersisted dataset partition.0 fields
Type: string. Constraints: enum "train", "validation", "holdout".
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::DatasetSplit"
}
DatasetSplitConfigDeterministic group-aware split policy. Train plus validation must be below 100.3 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
seed |
yes | DecimalU64 |
- | Seed. An unsigned 64-bit value encoded as decimal text so JavaScript clients do not round it. |
train_percent |
yes | integer |
minimum 1; maximum 98 | Train percent. |
validation_percent |
yes | integer |
minimum 0; maximum 98 | Validation percent. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "DatasetSplitConfig",
"x-kiln-semantic-constraints": [
"train_percent + validation_percent < 100"
]
}
DatasetSplitCountsRow counts in each persisted partition.3 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
train |
yes | NonNegativeInteger |
- | Train. A whole number greater than or equal to zero. |
validation |
yes | NonNegativeInteger |
- | Validation. A whole number greater than or equal to zero. |
holdout |
yes | NonNegativeInteger |
- | Holdout. A whole number greater than or equal to zero. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::DatasetSplitCounts"
}
DatasetSplitManifestPersisted deterministic split manifest; normalized duplicates and connected group/session rows share one partition.7 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
schema |
yes | any |
const "kiln.dataset-split.v1" | Schema. |
dataset_name |
yes | EvalResourceName |
- | Dataset name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
corpus_sha256 |
yes | Sha256Digest |
- | Corpus SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
normalized_corpus_sha256 |
yes | Sha256Digest |
- | Normalized corpus SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
config |
yes | DatasetSplitConfig |
- | Config. Deterministic group-aware split policy. Train plus validation must be below 100. |
counts |
yes | DatasetSplitCounts |
- | Counts. Row counts in each persisted partition. |
rows |
yes | array<DatasetSplitRow> |
minimum items 1 | Rows. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "DatasetSplitManifest"
}
DatasetSplitRowContent-addressed row assignment with preserved group/session identity.6 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
row_number |
yes | PositiveInteger |
- | Row number. A whole number greater than zero. |
content_sha256 |
yes | Sha256Digest |
- | Content SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
normalized_sha256 |
yes | Sha256Digest |
- | Normalized SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
split |
yes | DatasetSplit |
- | Split. Persisted dataset partition. |
group_id |
no | String |
- | Group ID. Text, including an empty string. |
session_id |
no | String |
- | Session ID. Text, including an empty string. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::DatasetSplitRow"
}
DatasetStatsBounded structural statistics computed from an uploaded dataset.7 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
num_assistant_turns |
yes | NonNegativeInteger |
- | Num assistant turns. A whole number greater than or equal to zero. |
num_tool_messages |
yes | NonNegativeInteger |
- | Num tool messages. A whole number greater than or equal to zero. |
num_with_tool_calls |
yes | NonNegativeInteger |
- | Num with tool calls. A whole number greater than or equal to zero. |
max_messages_per_conv |
yes | NonNegativeInteger |
- | Max messages per conv. A whole number greater than or equal to zero. |
max_content_chars |
yes | NonNegativeInteger |
- | Max content chars. A whole number greater than or equal to zero. |
avg_messages_per_conv |
yes | FiniteNumber |
- | Avg messages per conv. A finite JSON number; NaN and infinities are not valid JSON. |
sample_role_patterns |
yes | array<String> |
- | Sample role patterns. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "DatasetStats"
}
DatasetUploadFormatAccepted multipart dataset format including request aliases.0 fields
Type: string. Constraints: enum "sft_chat", "sft", "grpo_groups", "grpo", "raw".
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "DatasetUploadMultipart::format"
}
DatasetUploadMultipartMultipart dataset upload. Unrecognized multipart fields are read and ignored.4 fields
Type: object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
name |
yes | EvalResourceName |
- | Name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
format |
no | DatasetUploadFormat |
- | Format. Accepted multipart dataset format including request aliases. |
description |
no | String |
- | Description. Text, including an empty string. |
file |
yes | string |
format binary; content media type application/jsonl | File. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-default-format": "sft_chat",
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "DatasetUploadMultipart",
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
DecimalU64An unsigned 64-bit value encoded as decimal text so JavaScript clients do not round it.0 fields
Type: string. Constraints: pattern ^(0|[1-9][0-9]*)$.
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "u64"
}
DeleteDatasetResponseConfirmation that a dataset was deleted.2 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
status |
yes | any |
const "deleted" | Status. |
name |
yes | EvalResourceName |
- | Name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "DeleteDatasetResponse"
}
DeleteJudgmentResponseConfirmation that a judgment dataset was deleted.2 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
status |
yes | any |
const "deleted" | Status. |
name |
yes | EvalResourceName |
- | Name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "DeleteJudgmentResponse"
}
DeleteSuiteResponseConfirmation that a suite was deleted.2 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
status |
yes | any |
const "deleted" | Status. |
name |
yes | EvalResourceName |
- | Name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "DeleteSuiteResponse"
}
EvalAggregationExplicit reduction from k raw completions to one independent example statistic.0 fields
Type: object | object | object | object.
Composition and conditional rules
The following JSON is copied exactly from this schema node.
{
"oneOf": [
{
"type": "object",
"additionalProperties": false,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "single"
}
}
},
{
"type": "object",
"additionalProperties": false,
"required": [
"kind",
"k"
],
"properties": {
"kind": {
"const": "mean_at_k"
},
"k": {
"type": "integer",
"minimum": 1,
"maximum": 128
}
}
},
{
"type": "object",
"additionalProperties": false,
"required": [
"kind",
"k"
],
"properties": {
"kind": {
"const": "pass_at_k"
},
"k": {
"type": "integer",
"minimum": 1,
"maximum": 128
}
}
},
{
"type": "object",
"additionalProperties": false,
"required": [
"kind",
"k"
],
"properties": {
"kind": {
"const": "majority_at_k"
},
"k": {
"type": "integer",
"minimum": 1,
"maximum": 128
}
}
}
]
}
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::EvalAggregation",
"x-kiln-semantic-constraints": [
"majority_at_k requires odd k"
]
}
EvalChatMessageChat message shared by inference, training, and evals. Kiln normalizes supported structured content into its internal message form.5 fields
Type: object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
role |
yes | String |
- | Role. Text, including an empty string. |
content |
no | String | null | array<AnyJson> |
- | Content. |
tool_calls |
no | array<AnyJson> | null |
- | Tool calls. |
name |
no | String | null |
- | Name. |
tool_call_id |
no | String | null |
- | Tool call ID. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_core::tokenizer::ChatMessage",
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
EvalCompareSpecRun one registered suite against one to eight ordered adapters. Empty adapter names select the base model.4 fields
Type: object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
suite |
yes | EvalResourceName |
- | Suite. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
adapters |
yes | array<String> |
minimum items 1; maximum items 8 | Adapters. |
seed |
no | NonNegativeInteger |
- | Seed. A whole number greater than or equal to zero. |
generation |
no | EvalGenerationParams |
- | Generation. Eval decode parameters. Omitted thinking budgets inherit; explicit null is unlimited; finite values include zero. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "EvalCompareSpec",
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
EvalExampleOne prompt/target pair with optional scoring and generation overrides.10 fields
Type: object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
id |
no | String |
- | ID. Text, including an empty string. |
messages |
yes | array<EvalChatMessage> |
minimum items 1 | Messages. |
target |
no | String |
- | Target. Text, including an empty string. |
aliases |
no | array<String> |
- | Aliases. |
tags |
no | array<String> |
- | Tags. |
metadata |
no | AnyJson |
- | Metadata. Any JSON value; Kiln does not interpret its internal shape at this boundary. |
scorer |
no | Scorer |
- | Scorer. Select one built-in scorer. Each variant accepts and ignores unrecognized input fields; use only documented fields so mistakes remain visible in review. |
generation |
no | EvalGenerationParams |
- | Generation. Eval decode parameters. Omitted thinking budgets inherit; explicit null is unlimited; finite values include zero. |
weight |
no | number |
minimum 0 | Weight. |
tools |
no | array<AnyJson> |
- | Tools. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::EvalExample",
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
EvalGenerationParamsEval decode parameters. Omitted thinking budgets inherit; explicit null is unlimited; finite values include zero.10 fields
Type: object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
temperature |
no | FiniteNumber |
- | Temperature. A finite JSON number; NaN and infinities are not valid JSON. |
top_p |
no | FiniteNumber |
- | Top p. A finite JSON number; NaN and infinities are not valid JSON. |
top_k |
no | NonNegativeInteger |
- | Top k. A whole number greater than or equal to zero. |
max_tokens |
no | NonNegativeInteger |
- | Max tokens. A whole number greater than or equal to zero. |
n |
no | integer |
minimum 1; maximum 128 | N. |
stop |
no | array<String> |
- | Stop. |
seed |
no | NonNegativeInteger | null |
- | Seed. |
thinking_budget_tokens |
no | NonNegativeInteger | null |
- | Thinking budget tokens. |
thinking_budget_ms |
no | NonNegativeInteger | null |
- | Thinking budget ms. |
chat_template_kwargs |
no | object |
- | Chat template kwargs. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::EvalGenerationParams",
"x-kiln-thinking-budget-contract": "thinking-budget-v1.schema.json",
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
EvalJobInfoList-view record for a queued, running, or retained eval job. Process-local timers and cancellation handles are not part of the wire response.20 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
schema_version |
yes | any |
const 2 | Schema version. |
job_id |
yes | NonEmptyString |
- | Job ID. Text containing at least one character. |
suite_name |
yes | EvalResourceName |
- | Suite name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
adapters |
yes | array<String | null> |
- | Adapters. |
submission_kind |
yes | EvalSubmissionKind |
- | Submission kind. Admission path that created an eval job. |
base_weight_shard_manifest |
no | BaseWeightShardManifest |
- | Base weight shard manifest. See kiln-observability-v1.schema.json#/$defs/BaseWeightShardManifest. |
execution_provenance |
no | ExecutionProvenanceV1 |
- | Execution provenance. See kiln-observability-v1.schema.json#/$defs/ExecutionProvenanceV1. |
effective_seed |
no | DecimalU64 |
- | Effective seed. An unsigned 64-bit value encoded as decimal text so JavaScript clients do not round it. |
state |
yes | EvalJobState |
- | State. Evaluation job lifecycle state. |
progress |
yes | EvalProgress |
- | Progress. Live progress for the active adapter run. |
finished_runs |
yes | array<SuiteResult> |
- | Finished runs. |
headline_accuracy |
yes | FiniteNumber | null |
- | Headline accuracy. |
error |
yes | String | null |
- | Error. |
source_training_job_id |
yes | String | null |
- | Source training job ID. |
submitted_at_iso |
yes | Rfc3339Timestamp |
- | Submitted at iso. An RFC 3339 timestamp. |
started_at_iso |
yes | Rfc3339Timestamp | null |
- | Started at iso. |
finished_at_iso |
yes | Rfc3339Timestamp | null |
- | Finished at iso. |
post_eval_gate |
no | PostEvalGate |
- | Post eval gate. Fail-closed post-training promotion settings retained with the paired eval job. |
replay_expectation |
no | EvalReplayExpectationV1 |
- | Replay expectation. Immutable source and digest target installed before a strict replay becomes queue-visible. |
replay_verdict |
no | EvalReplayVerdict |
- | Replay verdict. Terminal comparison between a replay expectation and actual identity and raw-byte sets. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "EvalJobInfo"
}
EvalJobListResponseAll retained eval jobs in descending submission order.1 field
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
jobs |
yes | array<EvalJobInfo> |
- | Jobs. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "EvalJobListResponse"
}
EvalJobStateEvaluation job lifecycle state.0 fields
Type: string. Constraints: enum "queued", "running", "completed", "failed", "cancelled".
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::EvalJobState"
}
EvalModelTargetIdentityExact base-model or named-adapter byte identity used for generation or judge scoring.2 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
adapter |
no | NonEmptyString |
- | Adapter. Text containing at least one character. |
adapter_content_sha256 |
no | Sha256Digest |
- | Adapter content SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::EvalModelTargetIdentity",
"x-kiln-semantic-constraints": [
"adapter and adapter_content_sha256 are either both present or both absent"
]
}
EvalOutcomeKindPer-completion scoring outcome.0 fields
Type: string. Constraints: enum "pass", "fail", "invalid", "error".
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::EvalOutcomeKind"
}
EvalProgressLive progress for the active adapter run.4 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
examples_completed |
yes | NonNegativeInteger |
- | Examples completed. A whole number greater than or equal to zero. |
examples_total |
yes | NonNegativeInteger |
- | Examples total. A whole number greater than or equal to zero. |
running_accuracy |
yes | UnitInterval |
- | Running accuracy. A score or rate from 0 through 1, inclusive. |
running_mean_score |
yes | UnitInterval |
- | Running mean score. A score or rate from 0 through 1, inclusive. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::EvalProgress"
}
EvalRawCompletionReferenceContent-addressed pointer from a replay record to exact raw and normalized completion bytes.9 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
outcome_index |
yes | NonNegativeInteger |
- | Outcome index. A whole number greater than or equal to zero. |
example_id |
yes | NonEmptyString |
- | Example ID. Text containing at least one character. |
completion_index |
yes | NonNegativeInteger |
- | Completion index. A whole number greater than or equal to zero. |
generation_seed |
no | DecimalU64 |
- | Generation seed. An unsigned 64-bit value encoded as decimal text so JavaScript clients do not round it. |
raw_completion_pointer |
yes | NonEmptyString |
- | Raw completion pointer. Text containing at least one character. |
raw_completion_sha256 |
no | Sha256Digest |
- | Raw completion SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
raw_completion_bytes |
no | NonNegativeInteger |
- | Raw completion bytes. A whole number greater than or equal to zero. |
normalized_completion_sha256 |
yes | Sha256Digest |
- | Normalized completion SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
normalized_completion_bytes |
yes | NonNegativeInteger |
- | Normalized completion bytes. A whole number greater than or equal to zero. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::EvalRawCompletionReference"
}
EvalReplayExpectationV1Immutable source and digest target installed before a strict replay becomes queue-visible.5 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
expectation_type |
yes | any |
const "kiln.eval-replay-expectation.v1" | Expectation type. |
source_job_id |
yes | NonEmptyString |
- | Source job ID. Text containing at least one character. |
source_run_index |
yes | NonNegativeInteger |
- | Source run index. A whole number greater than or equal to zero. |
expected_record_sha256 |
yes | Sha256Digest |
- | Expected record SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
expected_raw_completion_set_sha256 |
yes | Sha256Digest |
- | Expected raw completion set SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::EvalReplayExpectationV1"
}
EvalReplayRecordV1Self-validating immutable suite, generation, model, scorer, environment, and raw-completion identity for one run.17 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
schema_version |
yes | any |
const 1 | Schema version. |
record_type |
yes | any |
const "kiln.eval-replay.v1" | Record type. |
suite |
yes | EvalSuite |
- | Suite. A named set of examples with shared scoring, generation, aggregation, prompt, and tool settings. Omitted settings use documented defaults. |
generation_override |
no | EvalGenerationParams |
- | Generation override. Eval decode parameters. Omitted thinking budgets inherit; explicit null is unlimited; finite values include zero. |
effective_seed |
yes | DecimalU64 |
- | Effective seed. An unsigned 64-bit value encoded as decimal text so JavaScript clients do not round it. |
seed_derivation |
yes | any |
const "kiln.eval-seed.v1" | Seed derivation. |
resolved_thinking_budgets |
yes | array<record> |
- | Resolved thinking budgets. |
model_target |
no | EvalModelTargetIdentity |
- | Model target. Exact base-model or named-adapter byte identity used for generation or judge scoring. |
judge_targets |
no | array<EvalModelTargetIdentity> |
- | Judge targets. |
scorer_identities |
yes | array<EvalScorerIdentity> |
- | Scorer identities. |
raw_completions |
yes | array<EvalRawCompletionReference> |
- | Raw completions. |
suite_sha256 |
yes | Sha256Digest |
- | Suite SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
effective_generation_sha256 |
yes | Sha256Digest |
- | Effective generation SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
raw_completion_set_sha256 |
yes | Sha256Digest |
- | Raw completion set SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
execution_provenance_sha256 |
no | Sha256Digest |
- | Execution provenance SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
base_weight_manifest_sha256 |
no | Sha256Digest |
- | Base weight manifest SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
record_sha256 |
yes | Sha256Digest |
- | Record SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::EvalReplayRecordV1"
}
EvalReplayStatusTerminal strict-replay classification.0 fields
Type: string. Constraints: enum "matched", "mismatch", "error".
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::EvalReplayStatus"
}
EvalReplayVerdictTerminal comparison between a replay expectation and actual identity and raw-byte sets.8 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
status |
yes | EvalReplayStatus |
- | Status. Terminal strict-replay classification. |
source_job_id |
yes | NonEmptyString |
- | Source job ID. Text containing at least one character. |
source_run_index |
yes | NonNegativeInteger |
- | Source run index. A whole number greater than or equal to zero. |
expected_record_sha256 |
yes | Sha256Digest |
- | Expected record SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
actual_record_sha256 |
no | Sha256Digest |
- | Actual record SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
expected_raw_completion_set_sha256 |
yes | Sha256Digest |
- | Expected raw completion set SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
actual_raw_completion_set_sha256 |
no | Sha256Digest |
- | Actual raw completion set SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
message |
yes | NonEmptyString |
- | Message. Text containing at least one character. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::EvalReplayVerdict"
}
EvalResourceNameA non-blank suite, dataset, or judgment name without path separators or the sequence '..'.0 fields
Type: string. Constraints: minimum length 1; pattern ^(?)(?=[\s\S]\S)[\s\S]+$.
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "String"
}
EvalResultTop-level retained result for a single- or multi-adapter eval job.12 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
schema_version |
yes | any |
const 2 | Schema version. |
job_id |
yes | NonEmptyString |
- | Job ID. Text containing at least one character. |
state |
yes | EvalJobState |
- | State. Evaluation job lifecycle state. |
base_weight_shard_manifest |
no | BaseWeightShardManifest |
- | Base weight shard manifest. See kiln-observability-v1.schema.json#/$defs/BaseWeightShardManifest. |
execution_provenance |
no | ExecutionProvenanceV1 |
- | Execution provenance. See kiln-observability-v1.schema.json#/$defs/ExecutionProvenanceV1. |
effective_seed |
no | DecimalU64 |
- | Effective seed. An unsigned 64-bit value encoded as decimal text so JavaScript clients do not round it. |
seed_derivation |
no | String |
- | Seed derivation. Text, including an empty string. |
replay_expectation |
no | EvalReplayExpectationV1 |
- | Replay expectation. Immutable source and digest target installed before a strict replay becomes queue-visible. |
replay_verdict |
no | EvalReplayVerdict |
- | Replay verdict. Terminal comparison between a replay expectation and actual identity and raw-byte sets. |
runs |
yes | array<SuiteResult> |
- | Runs. |
progress |
no | EvalProgress |
- | Progress. Live progress for the active adapter run. |
error |
no | String |
- | Error. Text, including an empty string. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "EvalResult"
}
EvalRunRequestSubmit exactly one registered or inline suite for evaluation.5 fields
Type: object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
suite |
no | EvalResourceName |
- | Suite. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
inline_suite |
no | EvalSuite |
- | Inline suite. A named set of examples with shared scoring, generation, aggregation, prompt, and tool settings. Omitted settings use documented defaults. |
adapter |
no | String | null |
- | Adapter. |
seed |
no | NonNegativeInteger |
- | Seed. A whole number greater than or equal to zero. |
generation |
no | EvalGenerationParams |
- | Generation. Eval decode parameters. Omitted thinking budgets inherit; explicit null is unlimited; finite values include zero. |
Composition and conditional rules
The following JSON is copied exactly from this schema node.
{
"oneOf": [
{
"required": [
"suite"
],
"not": {
"required": [
"inline_suite"
]
}
},
{
"required": [
"inline_suite"
],
"not": {
"required": [
"suite"
]
}
}
]
}
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "EvalRunRequest",
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
EvalRunResponseImmutable admission receipt for a queued eval job.4 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
job_id |
yes | NonEmptyString |
- | Job ID. Text containing at least one character. |
state |
yes | any |
const "queued" | State. |
effective_seed |
yes | DecimalU64 |
- | Effective seed. An unsigned 64-bit value encoded as decimal text so JavaScript clients do not round it. |
message |
yes | NonEmptyString |
- | Message. Text containing at least one character. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "EvalRunResponse"
}
EvalScorerIdentityContent identity of the fully resolved scorer selected for one stable example ID.5 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
example_id |
yes | NonEmptyString |
- | Example ID. Text containing at least one character. |
kind |
yes | NonEmptyString |
- | Kind. Text containing at least one character. |
config_sha256 |
yes | Sha256Digest |
- | Config SHA-256. A lowercase SHA-256 identity with an explicit algorithm prefix. |
requires_judge |
yes | Boolean |
- | Requires judge. Either true or false. |
judge_adapter |
no | String |
- | Judge adapter. Text, including an empty string. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::EvalScorerIdentity"
}
EvalSubmissionKindAdmission path that created an eval job.0 fields
Type: string. Constraints: enum "on_demand", "post_training", "compare".
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "EvalSubmissionKind"
}
EvalSuiteA named set of examples with shared scoring, generation, aggregation, prompt, and tool settings. Omitted settings use documented defaults.9 fields
Type: object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
name |
yes | EvalResourceName |
- | Name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
description |
no | String | null |
- | Description. |
default_scorer |
yes | Scorer |
- | Default scorer. Select one built-in scorer. Each variant accepts and ignores unrecognized input fields; use only documented fields so mistakes remain visible in review. |
generation |
no | EvalGenerationParams |
- | Generation. Eval decode parameters. Omitted thinking budgets inherit; explicit null is unlimited; finite values include zero. |
aggregation |
no | EvalAggregation |
- | Aggregation. Explicit reduction from k raw completions to one independent example statistic. |
system_prompt |
no | String | null |
- | System prompt. |
examples |
yes | array<EvalExample> |
minimum items 1 | Examples. |
schema_version |
no | integer |
enum 1, 2 | Schema version. |
tools |
no | array<AnyJson> |
- | Tools. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "EvalSuite",
"x-kiln-semantic-constraints": [
"resolved example IDs are unique",
"weights are finite and non-negative",
"tool entries have a non-empty function.name or name",
"every effective generation.n equals aggregation.k",
"schema version 1 permits only single aggregation and n=1"
],
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
EvalSuiteSummaryList-view projection of a registered suite.8 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
name |
yes | EvalResourceName |
- | Name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
description |
yes | String | null |
- | Description. |
num_examples |
yes | NonNegativeInteger |
- | Num examples. A whole number greater than or equal to zero. |
completions_per_example |
yes | integer |
minimum 1; maximum 128 | Completions per example. |
aggregation |
yes | EvalAggregation |
- | Aggregation. Explicit reduction from k raw completions to one independent example statistic. |
schema_version |
yes | integer |
enum 1, 2 | Schema version. |
default_scorer_kind |
yes | NonEmptyString |
- | Default scorer kind. Text containing at least one character. |
tags |
yes | object |
- | Tags. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::EvalSuiteSummary"
}
ExampleOutcomeOne scored completion with optional raw reasoning, latency, seed, and thinking-budget evidence.16 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
example_id |
yes | NonEmptyString |
- | Example ID. Text containing at least one character. |
completion_index |
yes | NonNegativeInteger |
- | Completion index. A whole number greater than or equal to zero. |
generation_seed |
no | DecimalU64 |
- | Generation seed. An unsigned 64-bit value encoded as decimal text so JavaScript clients do not round it. |
completion_text |
yes | String |
- | Completion text. Text, including an empty string. |
raw_completion_text |
no | String |
- | Raw completion text. Text, including an empty string. |
thinking_budget |
no | record |
- | Thinking budget. See thinking-budget-v1.schema.json#/$defs/record. |
kind |
yes | EvalOutcomeKind |
- | Kind. Per-completion scoring outcome. |
score |
yes | UnitInterval |
- | Score. A score or rate from 0 through 1, inclusive. |
detail |
no | String |
- | Detail. Text, including an empty string. |
prompt_tokens |
no | NonNegativeInteger |
- | Prompt tokens. A whole number greater than or equal to zero. |
completion_tokens |
no | NonNegativeInteger |
- | Completion tokens. A whole number greater than or equal to zero. |
latency_ms |
no | FiniteNumber |
- | Latency ms. A finite JSON number; NaN and infinities are not valid JSON. |
tags |
no | array<String> |
- | Tags. |
metadata |
no | AnyJson |
- | Metadata. Any JSON value; Kiln does not interpret its internal shape at this boundary. |
reasoning_text |
no | String |
- | Reasoning text. Text, including an empty string. |
unclosed_thinking |
no | Boolean |
- | Unclosed thinking. Either true or false. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::ExampleOutcome"
}
FiniteNumberA finite JSON number; NaN and infinities are not valid JSON.0 fields
Type: number.
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "f32 | f64"
}
JudgmentListResponseAll retained pairwise-judgment datasets.1 field
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
judgments |
yes | array<JudgmentManifest> |
- | Judgments. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "JudgmentListResponse"
}
JudgmentManifestPersisted pairwise-judgment dataset identity and compile split.8 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
name |
yes | EvalResourceName |
- | Name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
description |
yes | String | null |
- | Description. |
num_rows |
yes | NonNegativeInteger |
- | Num rows. A whole number greater than or equal to zero. |
created_at |
yes | Rfc3339Timestamp |
- | Created at. An RFC 3339 timestamp. |
updated_at |
yes | Rfc3339Timestamp |
- | Updated at. An RFC 3339 timestamp. |
winner_histogram |
yes | object |
- | Winner histogram. |
last_compiled_split |
no | NonNegativeInteger |
- | Last compiled split. A whole number greater than or equal to zero. |
last_compiled_at |
no | Rfc3339Timestamp |
- | Last compiled at. An RFC 3339 timestamp. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "JudgmentManifest"
}
JudgmentWinnerHuman pairwise preference label.0 fields
Type: string. Constraints: enum "a", "b", "tie", "skip".
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "JudgmentWinner"
}
LatencyStatsLatency distribution summary in milliseconds.5 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
p50_ms |
yes | FiniteNumber |
- | P50 ms. A finite JSON number; NaN and infinities are not valid JSON. |
p90_ms |
yes | FiniteNumber |
- | P90 ms. A finite JSON number; NaN and infinities are not valid JSON. |
p99_ms |
yes | FiniteNumber |
- | P99 ms. A finite JSON number; NaN and infinities are not valid JSON. |
mean_ms |
yes | FiniteNumber |
- | Mean ms. A finite JSON number; NaN and infinities are not valid JSON. |
max_ms |
yes | FiniteNumber |
- | Max ms. A finite JSON number; NaN and infinities are not valid JSON. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::LatencyStats"
}
NameMatchTool-name matching policy.0 fields
Type: object | object | object.
Composition and conditional rules
The following JSON is copied exactly from this schema node.
{
"oneOf": [
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "exact"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "case_insensitive"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind",
"allowed"
],
"properties": {
"kind": {
"const": "one_of"
},
"allowed": {
"type": "array",
"items": {
"$ref": "#/$defs/String"
}
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
]
}
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::scorers::NameMatch"
}
NonEmptyStringText containing at least one character.0 fields
Type: string. Constraints: minimum length 1.
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "String"
}
NonNegativeIntegerA whole number greater than or equal to zero.0 fields
Type: integer. Constraints: minimum 0.
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "u64 | u32 | usize"
}
PassRateConfidenceIntervalWilson confidence interval for a pass rate.3 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
confidence_level |
yes | UnitInterval |
- | Confidence level. A score or rate from 0 through 1, inclusive. |
lower |
yes | UnitInterval |
- | Lower. A score or rate from 0 through 1, inclusive. |
upper |
yes | UnitInterval |
- | Upper. A score or rate from 0 through 1, inclusive. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::PassRateConfidenceInterval"
}
PositiveIntegerA whole number greater than zero.0 fields
Type: integer. Constraints: minimum 1.
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "u64 | u32 | usize"
}
PostEvalGateFail-closed post-training promotion settings retained with the paired eval job.6 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
min_accuracy |
yes | UnitInterval |
- | Min accuracy. A score or rate from 0 through 1, inclusive. |
relative_recovery |
no | FiniteNumber |
- | Relative recovery. A finite JSON number; NaN and infinities are not valid JSON. |
absolute_gain |
no | FiniteNumber |
- | Absolute gain. A finite JSON number; NaN and infinities are not valid JSON. |
adapter_name |
yes | String |
- | Adapter name. Text, including an empty string. |
training_job_id |
yes | NonEmptyString |
- | Training job ID. Text containing at least one character. |
auto_load_on_pass |
yes | Boolean |
- | Auto load on pass. Either true or false. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "PostEvalGate"
}
PromoteJudgmentBodyQueue held-out validation for a trained judge adapter.2 fields
Type: object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
adapter |
yes | String |
- | Adapter. Text, including an empty string. |
holdout_n |
no | NonNegativeInteger |
- | Holdout n. A whole number greater than or equal to zero. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "PromoteJudgmentBody",
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
ReasoningLengthStatsReasoning-block character-length summary.5 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
num_with_thinking |
yes | NonNegativeInteger |
- | Num with thinking. A whole number greater than or equal to zero. |
mean_chars |
yes | FiniteNumber |
- | Mean chars. A finite JSON number; NaN and infinities are not valid JSON. |
p50_chars |
yes | NonNegativeInteger |
- | P50 chars. A whole number greater than or equal to zero. |
p90_chars |
yes | NonNegativeInteger |
- | P90 chars. A whole number greater than or equal to zero. |
max_chars |
yes | NonNegativeInteger |
- | Max chars. A whole number greater than or equal to zero. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::ReasoningLengthStats"
}
RenderJudgmentPromptResponseExact pairwise prompt used by both judge training and inference.1 field
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
prompt |
yes | String |
- | Prompt. Text, including an empty string. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "RenderJudgmentPromptResponse"
}
ReplayBodySelect one retained run for strict identity-checked byte replay.1 field
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
run_index |
no | NonNegativeInteger |
- | Run index. A whole number greater than or equal to zero. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "ReplayBody"
}
RerunBodySelect outcomes and adapter identity for a failure-focused re-run.4 fields
Type: object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
adapter |
no | String | null |
- | Adapter. |
outcome_kinds |
no | array<EvalOutcomeKind> |
- | Outcome kinds. |
include_pass |
no | Boolean |
- | Include pass. Either true or false. |
seed |
no | NonNegativeInteger |
- | Seed. A whole number greater than or equal to zero. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "RerunBody",
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
Rfc3339TimestampAn RFC 3339 timestamp.0 fields
Type: string. Constraints: format date-time.
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "String"
}
SamplingSynthesis sampling and filtering controls.5 fields
Type: object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
max_examples |
no | NonNegativeInteger | null |
- | Max examples. |
max_prompt_chars |
no | NonNegativeInteger |
- | Max prompt chars. A whole number greater than or equal to zero. |
max_target_chars |
no | NonNegativeInteger |
- | Max target chars. A whole number greater than or equal to zero. |
seed |
no | NonNegativeInteger | null |
- | Seed. |
dedupe |
no | Boolean |
- | Dedupe. Either true or false. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::synthesis::Sampling",
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
ScorerSelect one built-in scorer. Each variant accepts and ignores unrecognized input fields; use only documented fields so mistakes remain visible in review.0 fields
Type: object | object | object | object | object | object | object | object | object | object | object | object.
Composition and conditional rules
The following JSON is copied exactly from this schema node.
{
"oneOf": [
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "exact_match"
},
"case_sensitive": {
"$ref": "#/$defs/Boolean"
},
"strip_whitespace": {
"$ref": "#/$defs/Boolean"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind",
"phrases"
],
"properties": {
"kind": {
"const": "contains"
},
"phrases": {
"type": "array",
"items": {
"$ref": "#/$defs/String"
}
},
"mode": {
"$ref": "#/$defs/ContainsMode"
},
"case_sensitive": {
"$ref": "#/$defs/Boolean"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind",
"pattern"
],
"properties": {
"kind": {
"const": "regex"
},
"pattern": {
"$ref": "#/$defs/String"
},
"capture_group": {
"anyOf": [
{
"$ref": "#/$defs/NonNegativeInteger"
},
{
"type": "null"
}
]
},
"case_sensitive": {
"$ref": "#/$defs/Boolean"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "json_validity"
},
"require_object": {
"$ref": "#/$defs/Boolean"
},
"required_paths": {
"type": "array",
"items": {
"$ref": "#/$defs/String"
}
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "multiple_choice"
},
"choices": {
"type": "array",
"items": {
"$ref": "#/$defs/String"
}
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "numeric_tolerance"
},
"atol": {
"$ref": "#/$defs/FiniteNumber"
},
"rtol": {
"$ref": "#/$defs/FiniteNumber"
},
"integer_only": {
"$ref": "#/$defs/Boolean"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "llm_judge"
},
"judge_adapter": {
"anyOf": [
{
"$ref": "#/$defs/String"
},
{
"type": "null"
}
]
},
"template": {
"$ref": "#/$defs/String"
},
"score_regex": {
"$ref": "#/$defs/String"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "tool_call"
},
"name_match": {
"$ref": "#/$defs/NameMatch"
},
"args": {
"$ref": "#/$defs/ArgsScoring"
},
"weights": {
"$ref": "#/$defs/ToolCallWeights"
},
"require_xml_format": {
"$ref": "#/$defs/Boolean"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "code"
},
"language": {
"anyOf": [
{
"$ref": "#/$defs/String"
},
{
"type": "null"
}
]
},
"style": {
"$ref": "#/$defs/CodeStyle"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "python_doctest"
},
"timeout_seconds": {
"$ref": "#/$defs/FiniteNumber"
},
"python_bin": {
"anyOf": [
{
"$ref": "#/$defs/String"
},
{
"type": "null"
}
]
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind",
"scorers"
],
"properties": {
"kind": {
"const": "all"
},
"scorers": {
"type": "array",
"items": {
"$ref": "#/$defs/Scorer"
}
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind",
"scorers"
],
"properties": {
"kind": {
"const": "any"
},
"scorers": {
"type": "array",
"items": {
"$ref": "#/$defs/Scorer"
}
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
]
}
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::scorers::Scorer"
}
ScorerBreakdownAggregate metrics for one scorer kind.4 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
scorer_kind |
yes | NonEmptyString |
- | Scorer kind. Text containing at least one character. |
num_examples |
yes | NonNegativeInteger |
- | Num examples. A whole number greater than or equal to zero. |
mean_score |
yes | UnitInterval |
- | Mean score. A score or rate from 0 through 1, inclusive. |
pass_rate |
yes | UnitInterval |
- | Pass rate. A score or rate from 0 through 1, inclusive. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::ScorerBreakdown"
}
ScorerChoiceSynthesis scorer policy. Fixed scorers use a nested scorer field so both tagged unions remain unambiguous.0 fields
Type: object | object | object.
Composition and conditional rules
The following JSON is copied exactly from this schema node.
{
"oneOf": [
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "auto_detect"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind",
"scorer"
],
"properties": {
"kind": {
"const": "fixed"
},
"scorer": {
"$ref": "#/$defs/Scorer"
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
},
{
"type": "object",
"additionalProperties": true,
"required": [
"kind"
],
"properties": {
"kind": {
"const": "judge"
},
"judge_adapter": {
"anyOf": [
{
"$ref": "#/$defs/String"
},
{
"type": "null"
}
]
}
},
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
]
}
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::synthesis::ScorerChoice"
}
Sha256DigestA lowercase SHA-256 identity with an explicit algorithm prefix.0 fields
Type: string. Constraints: pattern ^sha256:[0-9a-f]{64}$.
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "String"
}
StringText, including an empty string.0 fields
Type: string.
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "String"
}
SuiteListResponseAll registered evaluation suites.1 field
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
suites |
yes | array<EvalSuiteSummary> |
- | Suites. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "SuiteListResponse"
}
SuiteResultComplete result for one suite and adapter, retaining independent reductions, raw completions, and a replay identity record.11 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
suite_name |
yes | EvalResourceName |
- | Suite name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
adapter |
yes | String | null |
- | Adapter. |
aggregation |
yes | EvalAggregation |
- | Aggregation. Explicit reduction from k raw completions to one independent example statistic. |
metrics |
yes | AggregateMetrics |
- | Metrics. Complete aggregate metrics for one suite/adapter run. |
aggregated_outcomes |
yes | array<AggregatedExampleOutcome> |
- | Aggregated outcomes. |
outcomes |
yes | array<ExampleOutcome> |
- | Outcomes. |
started_at |
yes | Rfc3339Timestamp |
- | Started at. An RFC 3339 timestamp. |
finished_at |
yes | Rfc3339Timestamp |
- | Finished at. An RFC 3339 timestamp. |
suite_hash |
yes | Sha256Digest |
- | Suite hash. A lowercase SHA-256 identity with an explicit algorithm prefix. |
effective_generation_hash |
no | Sha256Digest |
- | Effective generation hash. A lowercase SHA-256 identity with an explicit algorithm prefix. |
replay_record |
no | EvalReplayRecordV1 |
- | Replay record. Self-validating immutable suite, generation, model, scorer, environment, and raw-completion identity for one run. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::SuiteResult"
}
SuiteSaveResponseSuite persistence confirmation.3 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
name |
yes | EvalResourceName |
- | Name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
path |
yes | NonEmptyString |
- | Path. Text containing at least one character. |
status |
yes | any |
enum "created", "overwritten" | Status. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "SuiteSaveResponse"
}
SynthesisPreviewNon-persisted synthesis preview including its persisted source partition and completion reduction.7 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
examples |
yes | array<EvalExample> |
- | Examples. |
stats |
yes | SynthesisStats |
- | Stats. Synthesis input, filtering, sampling, output, scorer, and effective-seed counts. |
suite_name |
yes | EvalResourceName |
- | Suite name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
default_scorer_kind |
yes | NonEmptyString |
- | Default scorer kind. Text containing at least one character. |
aggregation |
yes | EvalAggregation |
- | Aggregation. Explicit reduction from k raw completions to one independent example statistic. |
completions_per_example |
yes | integer |
minimum 1; maximum 128 | Completions per example. |
source_split |
yes | DatasetSplit |
- | Source split. Persisted dataset partition. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "SynthesisPreview"
}
SynthesisPreviewBodyPreview a suite synthesized from one persisted partition without saving it. Source defaults to holdout.12 fields
Type: object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
suite_name |
yes | EvalResourceName |
- | Suite name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
description |
no | String | null |
- | Description. |
strategy |
no | SynthesisStrategy |
- | Strategy. How a conversation is decomposed into eval examples. |
scorer |
no | ScorerChoice |
- | Scorer. Synthesis scorer policy. Fixed scorers use a nested scorer field so both tagged unions remain unambiguous. |
generation |
no | EvalGenerationParams |
- | Generation. Eval decode parameters. Omitted thinking budgets inherit; explicit null is unlimited; finite values include zero. |
aggregation |
no | EvalAggregation |
- | Aggregation. Explicit reduction from k raw completions to one independent example statistic. |
sampling |
no | Sampling |
- | Sampling. Synthesis sampling and filtering controls. |
system_prompt |
no | String | null |
- | System prompt. |
strip_system_prompt |
no | Boolean |
- | Strip system prompt. Either true or false. |
suite_tools |
no | array<AnyJson> |
- | Suite tools. |
head_n |
no | NonNegativeInteger |
- | Head n. A whole number greater than or equal to zero. |
source_split |
no | DatasetSplit |
- | Source split. Persisted dataset partition. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "SynthesisPreviewBody",
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
SynthesisStatsSynthesis input, filtering, sampling, output, scorer, and effective-seed counts.11 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
trajectories_seen |
yes | NonNegativeInteger |
- | Trajectories seen. A whole number greater than or equal to zero. |
trajectories_used |
yes | NonNegativeInteger |
- | Trajectories used. A whole number greater than or equal to zero. |
examples_generated |
yes | NonNegativeInteger |
- | Examples generated. A whole number greater than or equal to zero. |
skipped_no_target |
yes | NonNegativeInteger |
- | Skipped no target. A whole number greater than or equal to zero. |
skipped_prompt_too_long |
yes | NonNegativeInteger |
- | Skipped prompt too long. A whole number greater than or equal to zero. |
skipped_target_too_long |
yes | NonNegativeInteger |
- | Skipped target too long. A whole number greater than or equal to zero. |
skipped_duplicate |
yes | NonNegativeInteger |
- | Skipped duplicate. A whole number greater than or equal to zero. |
skipped_strategy_match |
yes | NonNegativeInteger |
- | Skipped strategy match. A whole number greater than or equal to zero. |
sample_kept |
yes | NonNegativeInteger |
- | Sample kept. A whole number greater than or equal to zero. |
effective_seed |
yes | DecimalU64 |
- | Effective seed. An unsigned 64-bit value encoded as decimal text so JavaScript clients do not round it. |
auto_scorer_histogram |
yes | object |
- | Auto scorer histogram. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::synthesis::SynthesisStats"
}
SynthesisStrategyHow a conversation is decomposed into eval examples.0 fields
Type: string. Constraints: enum "final_assistant", "first_assistant_turn", "every_assistant_turn", "tool_call_predict", "tool_response_followup", "end_of_trajectory_answer".
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "SynthesisStrategy"
}
SynthesizeBodyPersist a suite synthesized from one partition and optionally queue it against adapters. Source defaults to holdout.13 fields
Type: object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
suite_name |
yes | EvalResourceName |
- | Suite name. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
description |
no | String | null |
- | Description. |
strategy |
no | SynthesisStrategy |
- | Strategy. How a conversation is decomposed into eval examples. |
scorer |
no | ScorerChoice |
- | Scorer. Synthesis scorer policy. Fixed scorers use a nested scorer field so both tagged unions remain unambiguous. |
generation |
no | EvalGenerationParams |
- | Generation. Eval decode parameters. Omitted thinking budgets inherit; explicit null is unlimited; finite values include zero. |
aggregation |
no | EvalAggregation |
- | Aggregation. Explicit reduction from k raw completions to one independent example statistic. |
sampling |
no | Sampling |
- | Sampling. Synthesis sampling and filtering controls. |
system_prompt |
no | String | null |
- | System prompt. |
strip_system_prompt |
no | Boolean |
- | Strip system prompt. Either true or false. |
suite_tools |
no | array<AnyJson> |
- | Suite tools. |
force |
no | Boolean |
- | Force. Either true or false. |
run_against |
no | array<String> | null |
- | Run against. |
source_split |
no | DatasetSplit |
- | Source split. Persisted dataset partition. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "SynthesizeBody",
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
SynthesizeDatasetResponsePersisted suite summary plus any auto-queued eval job IDs.3 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
suite |
yes | EvalSuiteSummary |
- | Suite. List-view projection of a registered suite. |
stats |
yes | SynthesisStats |
- | Stats. Synthesis input, filtering, sampling, output, scorer, and effective-seed counts. |
queued_eval_job_ids |
yes | array<String> |
- | Queued eval job IDs. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "SynthesizeDatasetResponse"
}
TagBreakdownPer-tag pass counts and interval.4 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
num_examples |
yes | NonNegativeInteger |
- | Num examples. A whole number greater than or equal to zero. |
num_pass |
yes | NonNegativeInteger |
- | Num pass. A whole number greater than or equal to zero. |
pass_rate |
yes | UnitInterval |
- | Pass rate. A score or rate from 0 through 1, inclusive. |
confidence_interval |
yes | PassRateConfidenceInterval |
- | Confidence interval. Wilson confidence interval for a pass rate. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::TagBreakdown"
}
ToolBreakdownPer-tool pass counts and interval.4 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
num_examples |
yes | NonNegativeInteger |
- | Num examples. A whole number greater than or equal to zero. |
num_pass |
yes | NonNegativeInteger |
- | Num pass. A whole number greater than or equal to zero. |
pass_rate |
yes | UnitInterval |
- | Pass rate. A score or rate from 0 through 1, inclusive. |
confidence_interval |
yes | PassRateConfidenceInterval |
- | Confidence interval. Wilson confidence interval for a pass rate. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::ToolBreakdown"
}
ToolCallWeightsRelative tool-call name, structure, and content weights.3 fields
Type: object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
name |
yes | FiniteNumber |
- | Name. A finite JSON number; NaN and infinities are not valid JSON. |
structure |
yes | FiniteNumber |
- | Structure. A finite JSON number; NaN and infinities are not valid JSON. |
content |
yes | FiniteNumber |
- | Content. A finite JSON number; NaN and infinities are not valid JSON. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "kiln_eval::scorers::ToolCallWeights",
"x-kiln-unknown-field-policy": "accepted_and_ignored"
}
UnitIntervalA score or rate from 0 through 1, inclusive.0 fields
Type: number. Constraints: minimum 0; maximum 1.
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "f32"
}
ValidateJudgmentResponseHeld-out judge-validation admission receipt.5 fields
Type: object. Constraints: closed object.
| Field | Required | Type | Constraints and default | Description |
|---|---|---|---|---|
status |
yes | any |
const "queued" | Status. |
eval_job_id |
yes | NonEmptyString |
- | Eval job ID. Text containing at least one character. |
effective_seed |
yes | DecimalU64 |
- | Effective seed. An unsigned 64-bit value encoded as decimal text so JavaScript clients do not round it. |
validation_suite |
yes | EvalResourceName |
- | Validation suite. A non-blank suite, dataset, or judgment name without path separators or the sequence '..'. |
warnings |
yes | array<String> |
- | Warnings. |
Kiln contract annotations
These machine-readable annotations are copied exactly from this schema node.
{
"x-kiln-field-schema-status": "complete",
"x-kiln-rust-type": "ValidateJudgmentResponse"
}