> ## Documentation Index
> Fetch the complete documentation index at: https://docs.openclaas.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Dashboards

> Built-in web dashboards for training metrics and eval results

# Dashboards

CLaaS includes two built-in web dashboards served by the API. No separate frontend is needed. They are rendered as HTML responses.

## Training Dashboard

**URL:** `http://localhost:8080/v1/dashboard`

The training dashboard shows recent feedback batches with a paginated table view.

### Features

* Each row is a feedback batch, expandable to reveal per-sample details
* Per-sample view shows prompt, response, and feedback text
* Batch-level timing breakdown (total time, training time, inference time)
* SDPO training metrics per batch:
  * **Local mode**: loss, KL regularization, importance sampling ratio, clip fraction
  * **Tinker mode**: `adv_mean`, `kl_mean`, and other Tinker-specific metrics
* Pagination: `?page=1&per_page=20` (max 200 per page)

### Data source

The dashboard reads JSON log files from the `FEEDBACK_LOG_DIR` directory (default `./data/feedback`). Each feedback submission creates a structured log entry.

***

## Eval Dashboard

**URL:** `http://localhost:8080/v1/eval?results_dir=./data/evals`

The eval dashboard displays results from running the [eval harness](/eval/overview) against your model.

### Features

* Discovers all eval runs under the results directory (newest first)
* Each run is a collapsible section showing:
  * **Summary table**: preference, LoRA ID, margin delta, compliance, capability ratio
  * **Embedded plots**: base64-encoded matplotlib PNGs from the `plots/` subdirectory
  * **Per-preference step tables** with expandable detail rows (step, timestamp, margin, delta, compliance, loss, timing)
  * **Expandable rollout transcripts** for each step
  * **Baseline metrics** (collapsible)
* Pagination: `?page=1&per_page=20` (max 200 per page)

### Query parameters

| Parameter     | Default        | Description                        |
| ------------- | -------------- | ---------------------------------- |
| `results_dir` | `./data/evals` | Path to the eval results directory |
| `page`        | `1`            | Page number (1-indexed)            |
| `per_page`    | `20`           | Number of runs per page (max 200)  |

<Warning>
  The `results_dir` parameter must be within `./data/evals`. Path traversal outside this directory is blocked.
</Warning>

## API endpoints

Both dashboards are served as `HTMLResponse` from FastAPI:

```
GET /v1/dashboard           → Training dashboard
GET /v1/eval                → Eval dashboard
```

They share a common pagination utility that handles page clamping and navigation rendering.
