Public data API

InferenceX API reference

Read benchmark, provenance, dataset, CollectiveX, and diagnostic data from the same sources that power InferenceX.

Machine-readable contract

OpenAPI 3.1 JSON

Inspect the canonical schema or pass it directly to your tooling.

Open OpenAPI JSON
Specification
v1 · OpenAPI 3.1
Authentication
AuthenticationPublished read endpoints do not require authentication.
Response format
Response formatResponses are JSON unless an endpoint explicitly documents CSV. Dates use YYYY-MM-DD and timestamps use UTC ISO 8601.
Base URL
https://inferencex.semianalysis.com

01 / Quickstart

Quickstart

Move from contract discovery to a real response in a few steps.

  1. 01

    Discover configurations

    Start with availability to choose real model, hardware, framework, and sequence values.

    curl "https://inferencex.semianalysis.com/api/v1/availability"
  2. 02

    Fetch benchmark rows

    Then request the latest raw benchmark rows for a supported display model.

    curl "https://inferencex.semianalysis.com/api/v1/benchmarks?model=DeepSeek-R1-0528"

02 / Conventions

Conventions

Shared request, error, and cache behavior for the supported surface.

Errors
JSON errors contain an error string. A 400 response means a parameter is missing or invalid, 404 means the requested record is absent, and 500 means the server query failed.
Caching
Read endpoints may be served from shared caches. CollectiveX uses short refresh windows, and framework releases use a one-hour shared cache.
Identifiers
Benchmark result IDs and GitHub run IDs are positive integers. Bulk diagnostic endpoints accept comma-separated, deduplicated IDs.

03 / Schema

BenchmarkRow and metrics

Interpret the primary benchmark payload and its measured fields.

BenchmarkRow

Configuration fields sit beside a metrics map. Metric keys evolve independently; values are numbers, time metrics are seconds, and throughput metrics use tokens per second per GPU unless their name states otherwise.

Shape

BenchmarkRows

Example

{
  "id": 421,
  "hardware": "h200_sxm",
  "framework": "vllm",
  "model": "dsr1",
  "precision": "fp8",
  "spec_method": "none",
  "disagg": false,
  "is_multinode": false,
  "prefill_tp": 8,
  "prefill_ep": 1,
  "prefill_dp_attention": false,
  "prefill_num_workers": 1,
  "decode_tp": 8,
  "decode_ep": 1,
  "decode_dp_attention": false,
  "decode_num_workers": 1,
  "num_prefill_gpu": 0,
  "num_decode_gpu": 8,
  "benchmark_type": "single_turn",
  "isl": 1024,
  "osl": 1024,
  "conc": 32,
  "offload_mode": "off",
  "image": "vllm/vllm-openai:v0.10.2",
  "metrics": {
    "median_ttft": 0.42,
    "median_tpot": 0.018,
    "tput_per_gpu": 128.4
  },
  "date": "2026-08-08",
  "run_url": "https://github.com/semianalysis/inference-benchmarks/actions/runs/123456789"
}
ID-keyed maps

Bulk diagnostic responses are JSON objects whose keys are decimal benchmark result IDs. A missing key means no value was available for that ID.

Shape

Record<string, value>

Example

{
  "421": true
}
CollectiveX versions

CollectiveX reads require an explicit supported contract version. Supported versions: 1.

Shape

CollectiveXDataset

04 / Reference

Endpoint reference

Expand an operation for parameters, statuses, and complete examples.

25 operations

Core benchmark data

Benchmark results, availability, workflow provenance, evaluations, and reliability.

GETStable/api/v1/availabilityList available benchmark configurations

Returns model, sequence, precision, hardware, framework, speculative method, benchmark type, and date combinations that have benchmark data.

Parameters

No parameters.

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/availability'

Responses

AvailabilityRows
200

Available configuration rows.

Media type: application/json

Response shape

{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "model": {
        "type": "string"
      },
      "isl": {
        "type": [
          "number",
          "null"
        ]
      },
      "osl": {
        "type": [
          "number",
          "null"
        ]
      },
      "precision": {
        "type": "string"
      },
      "hardware": {
        "type": "string"
      },
      "framework": {
        "type": "string"
      },
      "spec_method": {
        "type": "string"
      },
      "disagg": {
        "type": "boolean"
      },
      "benchmark_type": {
        "type": "string"
      },
      "date": {
        "type": "string",
        "format": "date"
      }
    },
    "required": [
      "model",
      "isl",
      "osl",
      "precision",
      "hardware",
      "framework",
      "spec_method",
      "disagg",
      "benchmark_type",
      "date"
    ],
    "additionalProperties": false
  }
}

Response example

[
  {
    "model": "dsr1",
    "isl": 1024,
    "osl": 1024,
    "precision": "fp8",
    "hardware": "h200_sxm",
    "framework": "vllm",
    "spec_method": "none",
    "disagg": false,
    "benchmark_type": "single_turn",
    "date": "2026-08-08"
  }
]
500

The availability query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETStable/api/v1/benchmarksRead benchmark results

Returns raw benchmark rows for a display model. Use date for an as-of snapshot, exact=true for that exact date, runId to constrain the latest lookup, or exactRun=true with a numeric runId to return only that workflow run. The page-owned calculator view is not part of this public contract.

Parameters

GET /api/v1/benchmarks: Parameters
NameLocationTypeRequirementDescriptionExample
modelquerystringRequiredDisplay model name.DeepSeek-R1-0528
datequerydateOptionalLatest data on or before YYYY-MM-DD, unless exact is true.2026-08-08
exactquerybooleanOptionalSet true to require the supplied date exactly.false
runIdqueryintegerOptionalNumeric GitHub Actions run ID. Non-numeric values are ignored.123456789
exactRunquerybooleanOptionalWith a numeric runId, return only that run instead of an as-of result.false

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/benchmarks?model=DeepSeek-R1-0528'

Responses

BenchmarkRows
200

Benchmark rows with scalar metrics in the metrics object.

Media type: application/json

Response shape

{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "integer"
      },
      "hardware": {
        "type": "string"
      },
      "framework": {
        "type": "string"
      },
      "model": {
        "type": "string"
      },
      "precision": {
        "type": "string"
      },
      "spec_method": {
        "type": "string"
      },
      "disagg": {
        "type": "boolean"
      },
      "is_multinode": {
        "type": "boolean"
      },
      "prefill_tp": {
        "type": "integer"
      },
      "prefill_ep": {
        "type": "integer"
      },
      "prefill_dp_attention": {
        "type": "boolean"
      },
      "prefill_num_workers": {
        "type": "integer"
      },
      "decode_tp": {
        "type": "integer"
      },
      "decode_ep": {
        "type": "integer"
      },
      "decode_dp_attention": {
        "type": "boolean"
      },
      "decode_num_workers": {
        "type": "integer"
      },
      "num_prefill_gpu": {
        "type": "integer"
      },
      "num_decode_gpu": {
        "type": "integer"
      },
      "benchmark_type": {
        "type": "string"
      },
      "isl": {
        "type": [
          "number",
          "null"
        ]
      },
      "osl": {
        "type": [
          "number",
          "null"
        ]
      },
      "conc": {
        "type": "integer"
      },
      "offload_mode": {
        "type": "string"
      },
      "image": {
        "type": [
          "string",
          "null"
        ]
      },
      "metrics": {
        "type": "object",
        "additionalProperties": {
          "type": "number"
        }
      },
      "workers": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "role": {
              "type": "string"
            },
            "worker_idx": {
              "type": "integer"
            },
            "hosts": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "num_gpus": {
              "type": "integer"
            },
            "avg_power_w": {
              "type": "number"
            },
            "avg_temp_c": {
              "type": "number"
            },
            "peak_temp_c": {
              "type": "number"
            },
            "avg_util_pct": {
              "type": "number"
            },
            "avg_mem_used_mb": {
              "type": "number"
            }
          },
          "required": [
            "role",
            "worker_idx",
            "num_gpus",
            "avg_power_w"
          ],
          "additionalProperties": false
        }
      },
      "date": {
        "type": "string",
        "format": "date"
      },
      "run_url": {
        "type": [
          "string",
          "null"
        ]
      }
    },
    "required": [
      "id",
      "hardware",
      "framework",
      "model",
      "precision",
      "spec_method",
      "disagg",
      "is_multinode",
      "prefill_tp",
      "prefill_ep",
      "prefill_dp_attention",
      "prefill_num_workers",
      "decode_tp",
      "decode_ep",
      "decode_dp_attention",
      "decode_num_workers",
      "num_prefill_gpu",
      "num_decode_gpu",
      "benchmark_type",
      "isl",
      "osl",
      "conc",
      "offload_mode",
      "image",
      "metrics",
      "date",
      "run_url"
    ],
    "additionalProperties": false
  }
}

Response example

[
  {
    "id": 421,
    "hardware": "h200_sxm",
    "framework": "vllm",
    "model": "dsr1",
    "precision": "fp8",
    "spec_method": "none",
    "disagg": false,
    "is_multinode": false,
    "prefill_tp": 8,
    "prefill_ep": 1,
    "prefill_dp_attention": false,
    "prefill_num_workers": 1,
    "decode_tp": 8,
    "decode_ep": 1,
    "decode_dp_attention": false,
    "decode_num_workers": 1,
    "num_prefill_gpu": 0,
    "num_decode_gpu": 8,
    "benchmark_type": "single_turn",
    "isl": 1024,
    "osl": 1024,
    "conc": 32,
    "offload_mode": "off",
    "image": "vllm/vllm-openai:v0.10.2",
    "metrics": {
      "median_ttft": 0.42,
      "median_tpot": 0.018,
      "tput_per_gpu": 128.4
    },
    "date": "2026-08-08",
    "run_url": "https://github.com/semianalysis/inference-benchmarks/actions/runs/123456789"
  }
]
400

The model is missing or unsupported.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Unknown model"
}
500

The benchmark query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETStable/api/v1/benchmarks/historyRead benchmark history

Returns every dated benchmark row for one model and fixed input/output token pair.

Parameters

GET /api/v1/benchmarks/history: Parameters
NameLocationTypeRequirementDescriptionExample
modelquerystringRequiredDisplay model name.DeepSeek-R1-0528
islqueryintegerRequiredPositive input sequence length in tokens.1024
oslqueryintegerRequiredPositive output sequence length in tokens.1024

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/benchmarks/history?model=DeepSeek-R1-0528&isl=1024&osl=1024'

Responses

BenchmarkRows
200

Historical benchmark rows.

Media type: application/json

Response shape

{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "integer"
      },
      "hardware": {
        "type": "string"
      },
      "framework": {
        "type": "string"
      },
      "model": {
        "type": "string"
      },
      "precision": {
        "type": "string"
      },
      "spec_method": {
        "type": "string"
      },
      "disagg": {
        "type": "boolean"
      },
      "is_multinode": {
        "type": "boolean"
      },
      "prefill_tp": {
        "type": "integer"
      },
      "prefill_ep": {
        "type": "integer"
      },
      "prefill_dp_attention": {
        "type": "boolean"
      },
      "prefill_num_workers": {
        "type": "integer"
      },
      "decode_tp": {
        "type": "integer"
      },
      "decode_ep": {
        "type": "integer"
      },
      "decode_dp_attention": {
        "type": "boolean"
      },
      "decode_num_workers": {
        "type": "integer"
      },
      "num_prefill_gpu": {
        "type": "integer"
      },
      "num_decode_gpu": {
        "type": "integer"
      },
      "benchmark_type": {
        "type": "string"
      },
      "isl": {
        "type": [
          "number",
          "null"
        ]
      },
      "osl": {
        "type": [
          "number",
          "null"
        ]
      },
      "conc": {
        "type": "integer"
      },
      "offload_mode": {
        "type": "string"
      },
      "image": {
        "type": [
          "string",
          "null"
        ]
      },
      "metrics": {
        "type": "object",
        "additionalProperties": {
          "type": "number"
        }
      },
      "workers": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "role": {
              "type": "string"
            },
            "worker_idx": {
              "type": "integer"
            },
            "hosts": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "num_gpus": {
              "type": "integer"
            },
            "avg_power_w": {
              "type": "number"
            },
            "avg_temp_c": {
              "type": "number"
            },
            "peak_temp_c": {
              "type": "number"
            },
            "avg_util_pct": {
              "type": "number"
            },
            "avg_mem_used_mb": {
              "type": "number"
            }
          },
          "required": [
            "role",
            "worker_idx",
            "num_gpus",
            "avg_power_w"
          ],
          "additionalProperties": false
        }
      },
      "date": {
        "type": "string",
        "format": "date"
      },
      "run_url": {
        "type": [
          "string",
          "null"
        ]
      }
    },
    "required": [
      "id",
      "hardware",
      "framework",
      "model",
      "precision",
      "spec_method",
      "disagg",
      "is_multinode",
      "prefill_tp",
      "prefill_ep",
      "prefill_dp_attention",
      "prefill_num_workers",
      "decode_tp",
      "decode_ep",
      "decode_dp_attention",
      "decode_num_workers",
      "num_prefill_gpu",
      "num_decode_gpu",
      "benchmark_type",
      "isl",
      "osl",
      "conc",
      "offload_mode",
      "image",
      "metrics",
      "date",
      "run_url"
    ],
    "additionalProperties": false
  }
}

Response example

[
  {
    "id": 421,
    "hardware": "h200_sxm",
    "framework": "vllm",
    "model": "dsr1",
    "precision": "fp8",
    "spec_method": "none",
    "disagg": false,
    "is_multinode": false,
    "prefill_tp": 8,
    "prefill_ep": 1,
    "prefill_dp_attention": false,
    "prefill_num_workers": 1,
    "decode_tp": 8,
    "decode_ep": 1,
    "decode_dp_attention": false,
    "decode_num_workers": 1,
    "num_prefill_gpu": 0,
    "num_decode_gpu": 8,
    "benchmark_type": "single_turn",
    "isl": 1024,
    "osl": 1024,
    "conc": 32,
    "offload_mode": "off",
    "image": "vllm/vllm-openai:v0.10.2",
    "metrics": {
      "median_ttft": 0.42,
      "median_tpot": 0.018,
      "tput_per_gpu": 128.4
    },
    "date": "2026-08-08",
    "run_url": "https://github.com/semianalysis/inference-benchmarks/actions/runs/123456789"
  }
]
400

Required parameters are missing or the model is unsupported.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Missing required parameters"
}
500

The history query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETStable/api/v1/workflow-infoRead workflow provenance

Returns workflow runs, changelogs, available configurations, and per-run configuration coverage. Omit date for all dates.

Parameters

GET /api/v1/workflow-info: Parameters
NameLocationTypeRequirementDescriptionExample
datequerydateOptionalOptional YYYY-MM-DD filter.2026-08-08

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/workflow-info?date=2026-08-08'

Responses

WorkflowInfo
200

Workflow provenance grouped into four arrays.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "runs": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "github_run_id": {
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "conclusion": {
            "type": [
              "string",
              "null"
            ]
          },
          "run_attempt": {
            "type": "integer"
          },
          "html_url": {
            "type": [
              "string",
              "null"
            ]
          },
          "created_at": {
            "type": "string",
            "format": "date-time"
          },
          "date": {
            "type": "string",
            "format": "date"
          }
        },
        "required": [
          "github_run_id",
          "name",
          "conclusion",
          "run_attempt",
          "html_url",
          "created_at",
          "date"
        ],
        "additionalProperties": false
      }
    },
    "changelogs": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "configs": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "runConfigs": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    }
  },
  "required": [
    "runs",
    "changelogs",
    "configs",
    "runConfigs"
  ],
  "additionalProperties": false
}

Response example

{
  "runs": [
    {
      "github_run_id": 123456789,
      "name": "nightly-h200",
      "conclusion": "success",
      "run_attempt": 1,
      "html_url": "https://github.com/semianalysis/inference-benchmarks/actions/runs/123456789",
      "created_at": "2026-08-08T03:00:00Z",
      "date": "2026-08-08"
    }
  ],
  "changelogs": [],
  "configs": [],
  "runConfigs": []
}
400

date is not YYYY-MM-DD.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Invalid date format"
}
500

The workflow query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETStable/api/v1/evaluationsList evaluation aggregates

Returns latest-attempt evaluation results with configuration, task, provenance, and metric values.

Parameters

No parameters.

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/evaluations'

Responses

EvaluationRows
200

Evaluation result rows.

Media type: application/json

Response shape

{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "integer"
      },
      "config_id": {
        "type": "integer"
      },
      "hardware": {
        "type": "string"
      },
      "framework": {
        "type": "string"
      },
      "model": {
        "type": "string"
      },
      "precision": {
        "type": "string"
      },
      "spec_method": {
        "type": "string"
      },
      "disagg": {
        "type": "boolean"
      },
      "is_multinode": {
        "type": "boolean"
      },
      "prefill_tp": {
        "type": "integer"
      },
      "prefill_ep": {
        "type": "integer"
      },
      "prefill_dp_attention": {
        "type": "boolean"
      },
      "prefill_num_workers": {
        "type": "integer"
      },
      "decode_tp": {
        "type": "integer"
      },
      "decode_ep": {
        "type": "integer"
      },
      "decode_dp_attention": {
        "type": "boolean"
      },
      "decode_num_workers": {
        "type": "integer"
      },
      "num_prefill_gpu": {
        "type": "integer"
      },
      "num_decode_gpu": {
        "type": "integer"
      },
      "task": {
        "type": "string"
      },
      "date": {
        "type": "string",
        "format": "date"
      },
      "conc": {
        "type": [
          "number",
          "null"
        ]
      },
      "metrics": {
        "type": "object",
        "additionalProperties": {
          "type": "number"
        }
      },
      "timestamp": {
        "type": "string",
        "format": "date-time"
      },
      "run_url": {
        "type": [
          "string",
          "null"
        ]
      }
    },
    "required": [
      "id",
      "config_id",
      "hardware",
      "framework",
      "model",
      "precision",
      "spec_method",
      "disagg",
      "is_multinode",
      "prefill_tp",
      "prefill_ep",
      "prefill_dp_attention",
      "prefill_num_workers",
      "decode_tp",
      "decode_ep",
      "decode_dp_attention",
      "decode_num_workers",
      "num_prefill_gpu",
      "num_decode_gpu",
      "task",
      "date",
      "conc",
      "metrics",
      "timestamp",
      "run_url"
    ],
    "additionalProperties": false
  }
}

Response example

[
  {
    "id": 72,
    "config_id": 11,
    "hardware": "h200_sxm",
    "framework": "vllm",
    "model": "dsr1",
    "precision": "fp8",
    "spec_method": "none",
    "disagg": false,
    "is_multinode": false,
    "prefill_tp": 8,
    "prefill_ep": 1,
    "prefill_dp_attention": false,
    "prefill_num_workers": 1,
    "decode_tp": 8,
    "decode_ep": 1,
    "decode_dp_attention": false,
    "decode_num_workers": 1,
    "num_prefill_gpu": 0,
    "num_decode_gpu": 8,
    "task": "gpqa",
    "date": "2026-08-08",
    "conc": null,
    "metrics": {
      "accuracy": 0.78
    },
    "timestamp": "2026-08-08T03:00:00Z",
    "run_url": null
  }
]
500

The evaluation query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETStable/api/v1/reliabilityList benchmark reliability

Returns successful and total run counts by hardware and date.

Parameters

No parameters.

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/reliability'

Responses

ReliabilityRows
200

Reliability count rows.

Media type: application/json

Response shape

{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "hardware": {
        "type": "string"
      },
      "date": {
        "type": "string",
        "format": "date"
      },
      "n_success": {
        "type": "integer"
      },
      "total": {
        "type": "integer"
      }
    },
    "required": [
      "hardware",
      "date",
      "n_success",
      "total"
    ],
    "additionalProperties": false
  }
}

Response example

[
  {
    "hardware": "h200_sxm",
    "date": "2026-08-08",
    "n_success": 18,
    "total": 20
  }
]
500

The reliability query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}

External feeds

Stable feeds for spreadsheets, release tracking, submissions, and runtime images.

GETStable/api/v1/tco-feedCompute a TCO feed

Computes Pareto-frontier throughput points or weighted scores for spreadsheet TCO models. Every scoring assumption is encoded in the URL. CSV returns the same selected view as a flat table.

Parameters

GET /api/v1/tco-feed: Parameters
NameLocationTypeRequirementDescriptionExample
modelquerystringOptionalDB model key or display model name.dsv4
workloadsqueryCSV workload listOptionalComma-separated <isl>x<osl> token pairs.1024x1024,8192x1024
tiersqueryCSV number listOptionalPositive interactivity targets in output tokens per second per user.30,50,75,100
datequerydateOptionalUse data on or before YYYY-MM-DD. Omit for latest.2026-08-08
formatqueryenumOptionalResponse encoding.json
viewqueryenumOptionalpoints returns one row per hardware, workload, and tier. scores returns one row per hardware.points
weightsqueryCSV number listOptionalscores only. One non-negative weight per tier, normalized to sum to 1.0.35,0.4,0.2,0.05
workload_weightsqueryCSV number listOptionalscores only. One non-negative weight per workload, normalized to sum to 1. Defaults to equal weights.0.5,0.5
alphaquerynumberOptionalscores only. Input-token value ratio in [0, 10].0.25

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/tco-feed?model=dsv4&workloads=1024x1024,8192x1024&tiers=30,50,75,100&view=points&format=json'

Responses

TcoFeed
200

The selected points or scores envelope.

Media type: application/json

Response shape

{
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "model": {
          "type": "string"
        },
        "db_model_keys": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "date": {
          "type": [
            "string",
            "null"
          ],
          "format": "date"
        },
        "workloads": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "tiers": {
          "type": "array",
          "items": {
            "type": "number"
          }
        },
        "rows": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "model",
        "db_model_keys",
        "date",
        "workloads",
        "tiers",
        "rows"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "model": {
          "type": "string"
        },
        "db_model_keys": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "date": {
          "type": [
            "string",
            "null"
          ],
          "format": "date"
        },
        "workloads": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "tiers": {
          "type": "array",
          "items": {
            "type": "number"
          }
        },
        "weights": {
          "type": "array",
          "items": {
            "type": "number"
          }
        },
        "workload_weights": {
          "type": "array",
          "items": {
            "type": "number"
          }
        },
        "alpha": {
          "type": "number"
        },
        "rows": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "model",
        "db_model_keys",
        "date",
        "workloads",
        "tiers",
        "weights",
        "workload_weights",
        "alpha",
        "rows"
      ],
      "additionalProperties": false
    }
  ]
}

Response example

{
  "model": "dsv4",
  "db_model_keys": [
    "dsv4"
  ],
  "date": null,
  "workloads": [
    "1024x1024"
  ],
  "tiers": [
    50
  ],
  "rows": [
    {
      "hardware": "h200_sxm",
      "workload": "1024x1024",
      "tier": 50,
      "tput_per_gpu": 118.2,
      "is_interpolated": true
    }
  ]
}

Alternate representation: text/csv

Response shape

{
  "type": "string"
}

Response example

model,hardware,workload,tier,tput_per_gpu
dsv4,h200_sxm,1024x1024,50,118.2
400

A model, date, view, format, workload, tier, weight, or alpha value is invalid.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Invalid tiers: expected comma-separated positive numbers"
}
500

The TCO calculation failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETStable/api/v1/submissionsRead submission coverage

Returns configuration-level submission summaries and daily hardware submission volume.

Parameters

No parameters.

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/submissions'

Responses

Submissions
200

Submission summary and volume arrays.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "summary": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string"
          },
          "hardware": {
            "type": "string"
          },
          "framework": {
            "type": "string"
          },
          "precision": {
            "type": "string"
          },
          "spec_method": {
            "type": "string"
          },
          "disagg": {
            "type": "boolean"
          },
          "is_multinode": {
            "type": "boolean"
          },
          "num_prefill_gpu": {
            "type": "integer"
          },
          "num_decode_gpu": {
            "type": "integer"
          },
          "date": {
            "type": "string",
            "format": "date"
          },
          "total_datapoints": {
            "type": "integer"
          },
          "distinct_sequences": {
            "type": "integer"
          },
          "distinct_concurrencies": {
            "type": "integer"
          },
          "max_concurrency": {
            "type": "integer"
          },
          "image": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "model",
          "hardware",
          "framework",
          "precision",
          "spec_method",
          "disagg",
          "is_multinode",
          "num_prefill_gpu",
          "num_decode_gpu",
          "date",
          "total_datapoints",
          "distinct_sequences",
          "distinct_concurrencies",
          "max_concurrency",
          "image"
        ],
        "additionalProperties": false
      }
    },
    "volume": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "format": "date"
          },
          "hardware": {
            "type": "string"
          },
          "datapoints": {
            "type": "integer"
          }
        },
        "required": [
          "date",
          "hardware",
          "datapoints"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "summary",
    "volume"
  ],
  "additionalProperties": false
}

Response example

{
  "summary": [
    {
      "model": "dsr1",
      "hardware": "h200_sxm",
      "framework": "vllm",
      "precision": "fp8",
      "spec_method": "none",
      "disagg": false,
      "is_multinode": false,
      "num_prefill_gpu": 0,
      "num_decode_gpu": 8,
      "date": "2026-08-08",
      "total_datapoints": 24,
      "distinct_sequences": 3,
      "distinct_concurrencies": 8,
      "max_concurrency": 256,
      "image": "vllm/vllm-openai:v0.10.2"
    }
  ],
  "volume": [
    {
      "date": "2026-08-08",
      "hardware": "h200_sxm",
      "datapoints": 24
    }
  ]
}
500

The submissions query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETStable/api/v1/framework-releasesRead latest framework releases

Returns the latest non-draft, non-prerelease GitHub release tag for vLLM and SGLang. A null value means the upstream lookup had no usable release.

Parameters

No parameters.

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/framework-releases'

Responses

FrameworkReleases
200

Framework keys mapped to release tags or null.

Media type: application/json

Response shape

{
  "type": "object",
  "additionalProperties": {
    "type": [
      "string",
      "null"
    ]
  }
}

Response example

{
  "vllm": "v0.10.2",
  "sglang": "v0.4.10"
}
500

The release lookup failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETStable/api/v1/latest-imagesRead latest runtime images

Returns the latest container image observed for each benchmark configuration and sequence.

Parameters

No parameters.

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/latest-images'

Responses

LatestImageRows
200

Latest image rows.

Media type: application/json

Response shape

{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "model": {
        "type": "string"
      },
      "hardware": {
        "type": "string"
      },
      "framework": {
        "type": "string"
      },
      "precision": {
        "type": "string"
      },
      "spec_method": {
        "type": "string"
      },
      "disagg": {
        "type": "boolean"
      },
      "isl": {
        "type": "integer"
      },
      "osl": {
        "type": "integer"
      },
      "image": {
        "type": "string"
      },
      "date": {
        "type": "string",
        "format": "date"
      }
    },
    "required": [
      "model",
      "hardware",
      "framework",
      "precision",
      "spec_method",
      "disagg",
      "isl",
      "osl",
      "image",
      "date"
    ],
    "additionalProperties": false
  }
}

Response example

[
  {
    "model": "dsr1",
    "hardware": "h200_sxm",
    "framework": "vllm",
    "precision": "fp8",
    "spec_method": "none",
    "disagg": false,
    "isl": 1024,
    "osl": 1024,
    "image": "vllm/vllm-openai:v0.10.2",
    "date": "2026-08-08"
  }
]
500

The image query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}

Datasets

Dataset registry, metadata, conversation indexes, and conversation structures.

GETStable/api/v1/datasetsList ingested datasets

Returns dataset registry cards without the large chart_data field.

Parameters

No parameters.

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/datasets'

Responses

DatasetRecords
200

Dataset registry records.

Media type: application/json

Response shape

{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string"
      },
      "slug": {
        "type": "string"
      },
      "label": {
        "type": "string"
      },
      "variant": {
        "type": "string"
      },
      "description": {
        "type": [
          "string",
          "null"
        ]
      },
      "hf_url": {
        "type": [
          "string",
          "null"
        ]
      },
      "license": {
        "type": [
          "string",
          "null"
        ]
      },
      "conversation_count": {
        "type": "integer"
      },
      "summary": {
        "type": "object",
        "additionalProperties": true
      },
      "ingested_at": {
        "type": "string",
        "format": "date-time"
      }
    },
    "required": [
      "id",
      "slug",
      "label",
      "variant",
      "description",
      "hf_url",
      "license",
      "conversation_count",
      "summary",
      "ingested_at"
    ],
    "additionalProperties": false
  }
}

Response example

[
  {
    "id": "ds_01",
    "slug": "cc-traces-weka",
    "label": "CC Traces Weka",
    "variant": "default",
    "description": "Agentic coding traces",
    "hf_url": "https://huggingface.co/datasets/example/cc-traces-weka",
    "license": "Apache-2.0",
    "conversation_count": 1200,
    "summary": {
      "totalIn": 8200000,
      "totalOut": 1700000
    },
    "ingested_at": "2026-08-08T03:00:00Z"
  }
]
500

The dataset registry query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETStable/api/v1/datasets/{slug}Read dataset details

Returns one dataset registry record plus its precomputed chart_data distributions.

Parameters

GET /api/v1/datasets/{slug}: Parameters
NameLocationTypeRequirementDescriptionExample
slugpathstringRequiredDataset slug from the registry.cc-traces-weka

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/datasets/cc-traces-weka'

Responses

DatasetDetail
200

Dataset metadata with chart_data.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "slug": {
      "type": "string"
    },
    "label": {
      "type": "string"
    },
    "variant": {
      "type": "string"
    },
    "description": {
      "type": [
        "string",
        "null"
      ]
    },
    "hf_url": {
      "type": [
        "string",
        "null"
      ]
    },
    "license": {
      "type": [
        "string",
        "null"
      ]
    },
    "conversation_count": {
      "type": "integer"
    },
    "summary": {
      "type": "object",
      "additionalProperties": true
    },
    "ingested_at": {
      "type": "string",
      "format": "date-time"
    },
    "chart_data": {
      "type": "object",
      "additionalProperties": true
    }
  },
  "required": [
    "id",
    "slug",
    "label",
    "variant",
    "description",
    "hf_url",
    "license",
    "conversation_count",
    "summary",
    "ingested_at",
    "chart_data"
  ],
  "additionalProperties": false
}

Response example

{
  "id": "ds_01",
  "slug": "cc-traces-weka",
  "label": "CC Traces Weka",
  "variant": "default",
  "description": "Agentic coding traces",
  "hf_url": null,
  "license": "Apache-2.0",
  "conversation_count": 1200,
  "summary": {},
  "ingested_at": "2026-08-08T03:00:00Z",
  "chart_data": {
    "tokens": {
      "bins": [
        0,
        1000,
        2000
      ],
      "counts": [
        140,
        320
      ]
    }
  }
}
404

No dataset has this slug.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Not found"
}
500

The dataset query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETStable/api/v1/datasets/{slug}/conversationsList dataset conversations

Returns a searchable, sorted, paginated conversation index. It contains counts only, not the full conversation structure.

Parameters

GET /api/v1/datasets/{slug}/conversations: Parameters
NameLocationTypeRequirementDescriptionExample
slugpathstringRequiredDataset slug from the registry.cc-traces-weka
searchquerystringOptionalTrimmed conversation ID search, at most 100 characters.trace-018
limitqueryintegerOptionalPage size, clamped to 1 through 200.50
offsetqueryintegerOptionalZero-based row offset. Negative values become 0.0
sortqueryenumOptionalSort by tokens, turns, subagents, or id. Unknown values fall back to tokens.tokens

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/datasets/cc-traces-weka/conversations?limit=50&offset=0&sort=tokens'

Responses

ConversationList
200

Total count and conversation index items.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "total": {
      "type": "integer"
    },
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "conv_id": {
            "type": "string"
          },
          "models": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "num_turns": {
            "type": "integer"
          },
          "num_subagent_groups": {
            "type": "integer"
          },
          "total_in": {
            "type": "integer"
          },
          "total_out": {
            "type": "integer"
          },
          "total_cached": {
            "type": "integer"
          }
        },
        "required": [
          "conv_id",
          "models",
          "num_turns",
          "num_subagent_groups",
          "total_in",
          "total_out",
          "total_cached"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "total",
    "items"
  ],
  "additionalProperties": false
}

Response example

{
  "total": 1200,
  "items": [
    {
      "conv_id": "trace-018",
      "models": [
        "claude-sonnet-4"
      ],
      "num_turns": 42,
      "num_subagent_groups": 3,
      "total_in": 18200,
      "total_out": 4200,
      "total_cached": 9600
    }
  ]
}
400

search exceeds 100 characters.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "search too long"
}
404

No dataset has this slug.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Not found"
}
500

The conversation query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETStable/api/v1/datasets/{slug}/conversations/{convId}Read a conversation structure

Returns one conversation and its flamegraph-ready nested structure. App Router decodes each path value once.

Parameters

GET /api/v1/datasets/{slug}/conversations/{convId}: Parameters
NameLocationTypeRequirementDescriptionExample
slugpathstringRequiredDataset slug from the registry.cc-traces-weka
convIdpathstringRequiredConversation ID exactly as listed by the conversation index.trace-018

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/datasets/cc-traces-weka/conversations/trace-018'

Responses

ConversationDetail
200

Conversation counts and nested structure.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "conv_id": {
      "type": "string"
    },
    "models": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "num_turns": {
      "type": "integer"
    },
    "num_subagent_groups": {
      "type": "integer"
    },
    "total_in": {
      "type": "integer"
    },
    "total_out": {
      "type": "integer"
    },
    "total_cached": {
      "type": "integer"
    },
    "structure": {
      "type": "object",
      "additionalProperties": true
    }
  },
  "required": [
    "conv_id",
    "models",
    "num_turns",
    "num_subagent_groups",
    "total_in",
    "total_out",
    "total_cached",
    "structure"
  ],
  "additionalProperties": false
}

Response example

{
  "conv_id": "trace-018",
  "models": [
    "claude-sonnet-4"
  ],
  "num_turns": 42,
  "num_subagent_groups": 3,
  "total_in": 18200,
  "total_out": 4200,
  "total_cached": 9600,
  "structure": {
    "name": "trace-018",
    "children": []
  }
}
404

The dataset or conversation does not exist.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Not found"
}
500

The conversation query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}

CollectiveX

Versioned collective communication sweep results and run discovery.

GETBeta/api/v1/collectivex/latestRead the latest CollectiveX dataset

Discovers and ingests the latest sweep when needed, then returns its versioned neutral dataset. A stored run is served if refresh fails.

Parameters

GET /api/v1/collectivex/latest: Parameters
NameLocationTypeRequirementDescriptionExample
versionqueryenumRequiredCollectiveX contract version.1

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/collectivex/latest?version=1'

Responses

CollectiveXDataset
200

Latest CollectiveX run, coverage, series, and optional KV cases.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "version": {
      "type": "integer"
    },
    "run": {
      "type": "object",
      "properties": {
        "run_id": {
          "type": "string"
        },
        "run_attempt": {
          "type": "integer"
        },
        "generated_at": {
          "type": "string",
          "format": "date-time"
        },
        "conclusion": {
          "type": [
            "string",
            "null"
          ]
        },
        "source_sha": {
          "type": "string"
        },
        "requested_cases": {
          "type": "integer"
        },
        "terminal_cases": {
          "type": "integer"
        },
        "measured_cases": {
          "type": "integer"
        },
        "unsupported_cases": {
          "type": "integer"
        },
        "failed_cases": {
          "type": "integer"
        },
        "requested_points": {
          "type": "integer"
        },
        "terminal_points": {
          "type": "integer"
        },
        "measured_points": {
          "type": "integer"
        },
        "covered_skus": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "run_id",
        "run_attempt",
        "generated_at",
        "conclusion",
        "source_sha",
        "requested_cases",
        "terminal_cases",
        "measured_cases",
        "unsupported_cases",
        "failed_cases",
        "requested_points",
        "terminal_points",
        "measured_points",
        "covered_skus"
      ],
      "additionalProperties": false
    },
    "coverage": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "series": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    }
  },
  "required": [
    "version",
    "run",
    "coverage",
    "series"
  ],
  "additionalProperties": false
}

Response example

{
  "version": 1,
  "run": {
    "run_id": "123456789",
    "run_attempt": 1,
    "generated_at": "2026-08-08T03:00:00Z",
    "conclusion": "success",
    "source_sha": "0123456789abcdef",
    "requested_cases": 12,
    "terminal_cases": 12,
    "measured_cases": 10,
    "unsupported_cases": 2,
    "failed_cases": 0,
    "requested_points": 48,
    "terminal_points": 48,
    "measured_points": 40,
    "covered_skus": [
      "h200_sxm"
    ]
  },
  "coverage": [],
  "series": []
}
400

version is missing or unsupported.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Unknown version"
}
404

No stored or discoverable run exists.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Not found"
}
502

Upstream sweep discovery is unavailable and no stored fallback exists.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Unavailable"
}
503

Upstream sweep processing is temporarily unavailable.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Unavailable"
}
500

The stored run query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETBeta/api/v1/collectivex/runsList CollectiveX runs

Returns progressively discovered run summaries. discovery_complete=false means clients may poll while older runs are still being discovered.

Parameters

GET /api/v1/collectivex/runs: Parameters
NameLocationTypeRequirementDescriptionExample
versionqueryenumRequiredCollectiveX contract version.1

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/collectivex/runs?version=1'

Responses

CollectiveXRunList
200

Version, run summaries, and discovery state.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "version": {
      "type": "integer"
    },
    "runs": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "run_id": {
            "type": "string"
          },
          "run_attempt": {
            "type": "integer"
          },
          "generated_at": {
            "type": "string",
            "format": "date-time"
          },
          "conclusion": {
            "type": [
              "string",
              "null"
            ]
          },
          "covered_skus": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "requested_cases": {
            "type": "integer"
          },
          "measured_cases": {
            "type": "integer"
          },
          "requested_points": {
            "type": "integer"
          },
          "terminal_points": {
            "type": "integer"
          },
          "terminal_counts": {
            "type": "object",
            "properties": {
              "measured": {
                "type": "integer"
              },
              "unsupported": {
                "type": "integer"
              },
              "failed": {
                "type": "integer"
              }
            },
            "required": [
              "measured",
              "unsupported",
              "failed"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "run_id",
          "run_attempt",
          "generated_at",
          "conclusion",
          "covered_skus",
          "requested_cases",
          "measured_cases",
          "requested_points",
          "terminal_points",
          "terminal_counts"
        ],
        "additionalProperties": false
      }
    },
    "discovery_complete": {
      "type": "boolean"
    }
  },
  "required": [
    "version",
    "runs",
    "discovery_complete"
  ],
  "additionalProperties": false
}

Response example

{
  "version": 1,
  "runs": [
    {
      "run_id": "123456789",
      "run_attempt": 1,
      "generated_at": "2026-08-08T03:00:00Z",
      "conclusion": "success",
      "covered_skus": [
        "h200_sxm"
      ],
      "requested_cases": 12,
      "measured_cases": 10,
      "requested_points": 48,
      "terminal_points": 48,
      "terminal_counts": {
        "measured": 40,
        "unsupported": 8,
        "failed": 0
      }
    }
  ],
  "discovery_complete": true
}
400

version is missing or unsupported.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Unknown version"
}
502

Discovery failed and no stored run list exists.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Unavailable"
}
503

Discovery is temporarily unavailable.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Unavailable"
}
500

The stored run list query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETBeta/api/v1/collectivex/runs/{runId}Read a CollectiveX run

Returns one positive numeric run ID as a versioned CollectiveX dataset, discovering and ingesting it on demand when possible.

Parameters

GET /api/v1/collectivex/runs/{runId}: Parameters
NameLocationTypeRequirementDescriptionExample
runIdpathintegerRequiredPositive GitHub Actions run ID.123456789
versionqueryenumRequiredCollectiveX contract version.1

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/collectivex/runs/123456789?version=1'

Responses

CollectiveXDataset
200

The requested CollectiveX dataset.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "version": {
      "type": "integer"
    },
    "run": {
      "type": "object",
      "properties": {
        "run_id": {
          "type": "string"
        },
        "run_attempt": {
          "type": "integer"
        },
        "generated_at": {
          "type": "string",
          "format": "date-time"
        },
        "conclusion": {
          "type": [
            "string",
            "null"
          ]
        },
        "source_sha": {
          "type": "string"
        },
        "requested_cases": {
          "type": "integer"
        },
        "terminal_cases": {
          "type": "integer"
        },
        "measured_cases": {
          "type": "integer"
        },
        "unsupported_cases": {
          "type": "integer"
        },
        "failed_cases": {
          "type": "integer"
        },
        "requested_points": {
          "type": "integer"
        },
        "terminal_points": {
          "type": "integer"
        },
        "measured_points": {
          "type": "integer"
        },
        "covered_skus": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "run_id",
        "run_attempt",
        "generated_at",
        "conclusion",
        "source_sha",
        "requested_cases",
        "terminal_cases",
        "measured_cases",
        "unsupported_cases",
        "failed_cases",
        "requested_points",
        "terminal_points",
        "measured_points",
        "covered_skus"
      ],
      "additionalProperties": false
    },
    "coverage": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "series": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    }
  },
  "required": [
    "version",
    "run",
    "coverage",
    "series"
  ],
  "additionalProperties": false
}

Response example

{
  "version": 1,
  "run": {
    "run_id": "123456789",
    "run_attempt": 1,
    "generated_at": "2026-08-08T03:00:00Z",
    "conclusion": "success",
    "source_sha": "0123456789abcdef",
    "requested_cases": 12,
    "terminal_cases": 12,
    "measured_cases": 10,
    "unsupported_cases": 2,
    "failed_cases": 0,
    "requested_points": 48,
    "terminal_points": 48,
    "measured_points": 40,
    "covered_skus": [
      "h200_sxm"
    ]
  },
  "coverage": [],
  "series": []
}
400

version or runId is invalid.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Unknown version or run id"
}
404

The run does not exist.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Not found"
}
502

The run cannot be fetched from the upstream source.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Unavailable"
}
503

Upstream processing is temporarily unavailable.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Unavailable"
}
500

The run query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}

Diagnostic reads

Per-result trace, cache, request, sibling, and server metric diagnostics.

GETBeta/api/v1/agentic-aggregatesRead agentic aggregate percentiles

Returns ISL, OSL, KV-cache utilization, and prefix-cache hit-rate percentiles keyed by benchmark result ID. IDs are deduplicated and at most 200 are accepted.

Parameters

GET /api/v1/agentic-aggregates: Parameters
NameLocationTypeRequirementDescriptionExample
idsquerycomma-separated integersRequiredOne to 200 positive benchmark result IDs.421,422

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/agentic-aggregates?ids=421,422'

Responses

AgenticAggregateMap
200

Result IDs mapped to aggregate percentiles or null metric groups.

Media type: application/json

Response shape

{
  "type": "object",
  "additionalProperties": {
    "type": "object",
    "properties": {
      "id": {
        "type": "integer"
      },
      "isl": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "mean": {
                "type": "number"
              },
              "p50": {
                "type": "number"
              },
              "p75": {
                "type": "number"
              },
              "p90": {
                "type": "number"
              },
              "p99": {
                "type": "number"
              }
            },
            "required": [
              "mean",
              "p50",
              "p75",
              "p90",
              "p99"
            ],
            "additionalProperties": false
          },
          {
            "type": "null"
          }
        ]
      },
      "osl": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "mean": {
                "type": "number"
              },
              "p50": {
                "type": "number"
              },
              "p75": {
                "type": "number"
              },
              "p90": {
                "type": "number"
              },
              "p99": {
                "type": "number"
              }
            },
            "required": [
              "mean",
              "p50",
              "p75",
              "p90",
              "p99"
            ],
            "additionalProperties": false
          },
          {
            "type": "null"
          }
        ]
      },
      "kvCacheUtil": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "mean": {
                "type": "number"
              },
              "p50": {
                "type": "number"
              },
              "p75": {
                "type": "number"
              },
              "p90": {
                "type": "number"
              },
              "p99": {
                "type": "number"
              }
            },
            "required": [
              "mean",
              "p50",
              "p75",
              "p90",
              "p99"
            ],
            "additionalProperties": false
          },
          {
            "type": "null"
          }
        ]
      },
      "prefixCacheHitRate": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "mean": {
                "type": "number"
              },
              "p50": {
                "type": "number"
              },
              "p75": {
                "type": "number"
              },
              "p90": {
                "type": "number"
              },
              "p99": {
                "type": "number"
              }
            },
            "required": [
              "mean",
              "p50",
              "p75",
              "p90",
              "p99"
            ],
            "additionalProperties": false
          },
          {
            "type": "null"
          }
        ]
      }
    },
    "required": [
      "id",
      "isl",
      "osl",
      "kvCacheUtil",
      "prefixCacheHitRate"
    ],
    "additionalProperties": false
  }
}

Response example

{
  "421": {
    "id": 421,
    "isl": {
      "mean": 18320,
      "p50": 16440,
      "p75": 20110,
      "p90": 24880,
      "p99": 31900
    },
    "osl": null,
    "kvCacheUtil": null,
    "prefixCacheHitRate": null
  }
}
400

ids is missing, malformed, or exceeds 200 unique IDs.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Expected ids as comma-separated positive integers"
}
500

The aggregate query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETBeta/api/v1/benchmark-siblingsRead sibling benchmark points

Returns the benchmark SKU and every point in the same hardware, framework, model, precision, method, benchmark type, and workflow run.

Parameters

GET /api/v1/benchmark-siblings: Parameters
NameLocationTypeRequirementDescriptionExample
idqueryintegerRequiredPositive benchmark result ID.421

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/benchmark-siblings?id=421'

Responses

BenchmarkSiblings
200

SKU metadata and sibling navigation rows.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "sku": {
      "type": "object",
      "additionalProperties": true
    },
    "siblings": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    }
  },
  "required": [
    "sku",
    "siblings"
  ],
  "additionalProperties": false
}

Response example

{
  "sku": {
    "hardware": "h200_sxm",
    "framework": "vllm",
    "model": "dsr1",
    "precision": "fp8",
    "spec_method": "none",
    "benchmark_type": "agentic_traces",
    "github_run_id": 123456789,
    "date": "2026-08-08",
    "dataset_slug": "cc-traces-weka"
  },
  "siblings": [
    {
      "id": 421,
      "conc": 32,
      "offload_mode": "off",
      "decode_tp": 8,
      "decode_ep": 1,
      "decode_pp": null,
      "decode_dp_attention": false,
      "decode_num_workers": 1,
      "prefill_tp": 8,
      "prefill_ep": 1,
      "prefill_pp": null,
      "prefill_dp_attention": false,
      "prefill_num_workers": 1,
      "num_prefill_gpu": 0,
      "num_decode_gpu": 8,
      "disagg": false,
      "is_multinode": false,
      "tput_per_gpu": 128.4,
      "total_requests": 320,
      "is_current": true,
      "has_trace": true
    }
  ]
}
400

id is missing or invalid.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Expected a positive numeric id"
}
404

No benchmark result has this ID.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Not found"
}
500

The sibling query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETBeta/api/v1/derived-agentic-metricsRead derived agentic metrics

Returns normalized interactivity percentiles keyed by benchmark result ID. IDs are deduplicated and at most 200 are accepted.

Parameters

GET /api/v1/derived-agentic-metrics: Parameters
NameLocationTypeRequirementDescriptionExample
idsquerycomma-separated integersRequiredOne to 200 positive benchmark result IDs.421,422

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/derived-agentic-metrics?ids=421,422'

Responses

DerivedAgenticMetricMap
200

Result IDs mapped to p75 and p90 normalized interactivity.

Media type: application/json

Response shape

{
  "type": "object",
  "additionalProperties": {
    "type": "object",
    "properties": {
      "id": {
        "type": "integer"
      },
      "p75_e2e_norm_intvty": {
        "type": [
          "number",
          "null"
        ]
      },
      "p90_e2e_norm_intvty": {
        "type": [
          "number",
          "null"
        ]
      }
    },
    "required": [
      "id",
      "p75_e2e_norm_intvty",
      "p90_e2e_norm_intvty"
    ],
    "additionalProperties": false
  }
}

Response example

{
  "421": {
    "id": 421,
    "p75_e2e_norm_intvty": 31.2,
    "p90_e2e_norm_intvty": 24.8
  }
}
400

ids is missing, malformed, or exceeds 200 unique IDs.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Expected ids as comma-separated positive integers"
}
500

The derived metric query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETBeta/api/v1/request-timelineRead a request timeline

Returns a versioned benchmark window and per-request dispatch, acknowledgement, completion, token, phase, worker, and cancellation timing.

Parameters

GET /api/v1/request-timeline: Parameters
NameLocationTypeRequirementDescriptionExample
idqueryintegerRequiredPositive benchmark result ID.421

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/request-timeline?id=421'

Responses

RequestTimeline
200

Timeline metadata and request records. Nanosecond event fields are offsets from startNs.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "version": {
      "type": "integer"
    },
    "startNs": {
      "type": "integer"
    },
    "endNs": {
      "type": "integer"
    },
    "durationS": {
      "type": "number"
    },
    "requests": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "cid": {
            "type": "string"
          },
          "ti": {
            "type": "integer"
          },
          "wid": {
            "type": "string"
          },
          "ad": {
            "type": "integer"
          },
          "phase": {
            "type": "string"
          },
          "credit": {
            "type": "integer"
          },
          "start": {
            "type": "integer"
          },
          "ack": {
            "type": [
              "number",
              "null"
            ]
          },
          "end": {
            "type": "integer"
          },
          "ttftMs": {
            "type": [
              "number",
              "null"
            ]
          },
          "tpotMs": {
            "type": [
              "number",
              "null"
            ]
          },
          "isl": {
            "type": [
              "number",
              "null"
            ]
          },
          "osl": {
            "type": [
              "number",
              "null"
            ]
          },
          "cancelled": {
            "type": "boolean"
          }
        },
        "required": [
          "cid",
          "ti",
          "wid",
          "ad",
          "phase",
          "credit",
          "start",
          "ack",
          "end",
          "ttftMs",
          "tpotMs",
          "isl",
          "osl",
          "cancelled"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "version",
    "startNs",
    "endNs",
    "durationS",
    "requests"
  ],
  "additionalProperties": false
}

Response example

{
  "version": 5,
  "startNs": 1000000000,
  "endNs": 2400000000,
  "durationS": 1.4,
  "requests": [
    {
      "cid": "trace-018",
      "ti": 0,
      "wid": "7",
      "ad": 0,
      "phase": "profiling",
      "credit": 0,
      "start": 1200000,
      "ack": 1800000,
      "end": 420000000,
      "ttftMs": 42.3,
      "tpotMs": 18.1,
      "isl": 18320,
      "osl": 410,
      "cancelled": false
    }
  ]
}
400

id is missing or invalid.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Expected a positive numeric id"
}
404

No timeline exists for this result.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Not found"
}
500

The timeline query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETBeta/api/v1/server-logRead a benchmark server log

Returns the stored plain-text server log for one benchmark result ID.

Parameters

GET /api/v1/server-log: Parameters
NameLocationTypeRequirementDescriptionExample
idqueryintegerRequiredPositive benchmark result ID.421

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/server-log?id=421'

Responses

ServerLog
200

Benchmark result ID and server log text.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer"
    },
    "serverLog": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "serverLog"
  ],
  "additionalProperties": false
}

Response example

{
  "id": 421,
  "serverLog": "INFO engine initialized\nINFO benchmark complete"
}
400

id is missing or invalid.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Invalid id"
}
404

No server log exists for this result.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Not found"
}
500

The server log query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETBeta/api/v1/trace-availabilityCheck trace availability

Returns only benchmark result IDs that have a stored trace. IDs are deduplicated and at most 500 are accepted.

Parameters

GET /api/v1/trace-availability: Parameters
NameLocationTypeRequirementDescriptionExample
idsquerycomma-separated integersRequiredOne to 500 positive benchmark result IDs.421,422

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/trace-availability?ids=421,422'

Responses

TraceAvailabilityMap
200

Available result IDs mapped to true. Missing keys have no trace.

Media type: application/json

Response shape

{
  "type": "object",
  "additionalProperties": {
    "type": "boolean"
  }
}

Response example

{
  "421": true
}
400

ids is missing, malformed, or exceeds 500 unique IDs.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Expected ids as comma-separated positive integers"
}
500

The trace availability query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETBeta/api/v1/trace-histogramsRead trace histograms

Returns input and output token count arrays for each benchmark result ID. IDs are deduplicated and at most 200 are accepted.

Parameters

GET /api/v1/trace-histograms: Parameters
NameLocationTypeRequirementDescriptionExample
idsquerycomma-separated integersRequiredOne to 200 positive benchmark result IDs.421,422

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/trace-histograms?ids=421,422'

Responses

TraceHistogramMap
200

Result IDs mapped to raw ISL and OSL samples.

Media type: application/json

Response shape

{
  "type": "object",
  "additionalProperties": {
    "type": "object",
    "properties": {
      "id": {
        "type": "integer"
      },
      "isl": {
        "type": "array",
        "items": {
          "type": "number"
        }
      },
      "osl": {
        "type": "array",
        "items": {
          "type": "number"
        }
      }
    },
    "required": [
      "id",
      "isl",
      "osl"
    ],
    "additionalProperties": false
  }
}

Response example

{
  "421": {
    "id": 421,
    "isl": [
      18220,
      19340,
      15110
    ],
    "osl": [
      410,
      380,
      512
    ]
  }
}
400

ids is missing, malformed, or exceeds 200 unique IDs.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Expected ids as comma-separated positive integers"
}
500

The histogram query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}
GETBeta/api/v1/trace-server-metricsRead trace server metrics

Returns point metadata and chart-ready time series for cache usage, queue depth, prefill and decode throughput, prompt-token sources, and metric sources.

Parameters

GET /api/v1/trace-server-metrics: Parameters
NameLocationTypeRequirementDescriptionExample
idqueryintegerRequiredPositive benchmark result ID.421

Request

curl -sS 'https://inferencex.semianalysis.com/api/v1/trace-server-metrics?id=421'

Responses

TraceServerMetrics
200

Point metadata, window bounds, and server metric series.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "meta": {
      "type": "object",
      "additionalProperties": true
    },
    "startNs": {
      "type": "integer"
    },
    "endNs": {
      "type": "integer"
    },
    "durationS": {
      "type": "number"
    },
    "timeslicesCount": {
      "type": "integer"
    },
    "kvCacheUsage": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "prefixCacheHitRate": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "queueDepth": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "promptTokensBySource": {
      "type": "object",
      "additionalProperties": {
        "type": "array",
        "items": {
          "type": "object",
          "additionalProperties": true
        }
      }
    },
    "prefillTps": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "decodeTps": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "prefixCacheHitsTps": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "hostKvCacheUsage": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "kvCacheUsageByEngine": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "kvCachePoolTokens": {
      "type": [
        "number",
        "null"
      ]
    },
    "metricSources": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    }
  },
  "required": [
    "meta",
    "startNs",
    "endNs",
    "durationS",
    "timeslicesCount",
    "kvCacheUsage",
    "prefixCacheHitRate",
    "queueDepth",
    "promptTokensBySource",
    "prefillTps",
    "decodeTps",
    "prefixCacheHitsTps",
    "hostKvCacheUsage",
    "kvCacheUsageByEngine",
    "kvCachePoolTokens",
    "metricSources"
  ],
  "additionalProperties": false
}

Response example

{
  "meta": {
    "id": 421,
    "hardware": "h200_sxm",
    "framework": "vllm",
    "model": "dsr1",
    "conc": 32,
    "date": "2026-08-08"
  },
  "startNs": 1000000000,
  "endNs": 2400000000,
  "durationS": 1.4,
  "timeslicesCount": 2,
  "kvCacheUsage": [
    {
      "t": 0,
      "v": 0.44
    }
  ],
  "prefixCacheHitRate": [],
  "queueDepth": [],
  "promptTokensBySource": {},
  "prefillTps": [],
  "decodeTps": [],
  "prefixCacheHitsTps": [],
  "hostKvCacheUsage": [],
  "kvCacheUsageByEngine": [],
  "kvCachePoolTokens": 983040,
  "metricSources": []
}
400

id is missing or invalid.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Expected a positive numeric id"
}
404

No server metrics exist for this result.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Not found"
}
500

The server metric query failed.

Media type: application/json

Response shape

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    }
  },
  "required": [
    "error"
  ],
  "additionalProperties": true
}

Response example

{
  "error": "Internal server error"
}