0d3cb498a3
CI / Shell Format Check (push) Has been cancelled
CI / Check Ruby (3.4) (push) Has been cancelled
CI / CI Config (push) Has been cancelled
CI / Test on Node ${{ matrix.node }} and ${{ matrix.os }}${{ matrix.shard && format(' (shard {0}/3)', matrix.shard) || '' }} (push) Has been cancelled
CI / Build on Node ${{ matrix.node }} (push) Has been cancelled
CI / Style Check (push) Has been cancelled
CI / Generate Assets (push) Has been cancelled
CI / Check Python (3.14) (push) Has been cancelled
CI / Check Python (3.9) (push) Has been cancelled
CI / Build Docs (push) Has been cancelled
CI / Code Scan Action (push) Has been cancelled
CI / Site tests (push) Has been cancelled
CI / webui tests (push) Has been cancelled
CI / Run Integration Tests (push) Has been cancelled
CI / Run Smoke Tests (push) Has been cancelled
CI / Go Tests (push) Has been cancelled
CI / Share Test (push) Has been cancelled
CI / Redteam (Production API) (push) Has been cancelled
CI / Redteam (Staging API) (push) Has been cancelled
CI / GitHub Actions Lint (push) Has been cancelled
CI / Check Ruby (3.0) (push) Has been cancelled
release-please / release-please (push) Has been cancelled
release-please / build (push) Has been cancelled
release-please / publish-npm (push) Has been cancelled
release-please / publish-npm-backfill (push) Has been cancelled
release-please / docker (push) Has been cancelled
release-please / publish-code-scan-action (push) Has been cancelled
release-please / attest-code-scan-action (push) Has been cancelled
Deploy local.promptfoo.app / Deploy to Cloudflare Pages (push) Has been cancelled
Test and Publish Multi-arch Docker Image / test (push) Has been cancelled
Test and Publish Multi-arch Docker Image / build-docker-and-push-digests (map[digest-suffix:linux-amd64 platform:linux/amd64 runner:ubuntu-latest]) (push) Has been cancelled
Test and Publish Multi-arch Docker Image / build-docker-and-push-digests (map[digest-suffix:linux-arm64 platform:linux/arm64 runner:ubuntu-24.04-arm]) (push) Has been cancelled
Test and Publish Multi-arch Docker Image / merge-docker-digests (push) Has been cancelled
Test and Publish Multi-arch Docker Image / Attest Multi-arch Image (push) Has been cancelled
Validate Renovate Config / Validate Renovate Configuration (push) Has been cancelled
147 lines
4.7 KiB
Markdown
147 lines
4.7 KiB
Markdown
---
|
|
title: Using the web viewer
|
|
sidebar_position: 30
|
|
sidebar_label: Web viewer
|
|
description: Compare LLM outputs side-by-side, rate responses for training data, share evaluations, and analyze results with Promptfoo's interactive web viewer.
|
|
---
|
|
|
|
# Using the web viewer
|
|
|
|
After [running an eval](/docs/getting-started), view results in your browser:
|
|
|
|
```sh
|
|
npx promptfoo@latest view
|
|
```
|
|
|
|
See [`promptfoo view`](/docs/usage/command-line#promptfoo-view) for CLI options.
|
|
|
|

|
|
|
|
## Keyboard Shortcuts
|
|
|
|
| Shortcut | Action |
|
|
| ------------------ | ----------------------- |
|
|
| `Ctrl+K` / `Cmd+K` | Open eval selector |
|
|
| `Esc` | Clear search |
|
|
| `Shift` (hold) | Show extra cell actions |
|
|
|
|
## Toolbar
|
|
|
|
- **Eval selector** - Switch between evals
|
|
- **Display mode** - Filter: All, Failures, Passes, Errors, Different, Highlights
|
|
- **Search** - Text or regex
|
|
- **Filters** - By metrics, metadata, pass/fail. Operators: `=`, `contains`, `>`, `<`
|
|
|
|

|
|
|
|
## Table Settings
|
|
|
|

|
|
|
|
- **Columns** - Toggle variable and prompt visibility
|
|
- **Zoom** - Scale columns (50%-200%)
|
|
- **Truncation** - Max text length, word wrap
|
|
- **Rendering** - Markdown, JSON prettification
|
|
- **Inference details** - Tokens, latency, cost, tokens/sec
|
|
- **Media** - Image size limits; double-click for lightbox
|
|
|
|
## Cell Actions
|
|
|
|
Hover to reveal actions. Hold `Shift` for more:
|
|
|
|
| | Action | Description |
|
|
| --- | --------- | ----------------------------------------------- |
|
|
| 🔍 | Details | Full output, prompt, variables, grading results |
|
|
| 👍 | Pass | Mark as passed (score = 1.0) |
|
|
| 👎 | Fail | Mark as failed (score = 0.0) |
|
|
| 🔢 | Score | Set custom score (0-1) |
|
|
| ✏️ | Comment | Add notes |
|
|
| ⭐ | Highlight | Mark for review (`Shift`) |
|
|
| 📋 | Copy | Copy to clipboard (`Shift`) |
|
|
| 🔗 | Share | Link to this output (`Shift`) |
|
|
|
|
Ratings and comments persist and are included in exports—use them to build training datasets.
|
|
|
|
## Eval Actions
|
|
|
|

|
|
|
|
- **Edit name** - Rename eval
|
|
- **Edit and re-run** - Open in eval creator
|
|
- **Compare** - Diff against another eval (green = added, red = removed)
|
|
- **View YAML** - Show config
|
|
- **Download** - Opens export dialog:
|
|
|
|
| Export | Use case |
|
|
| ----------------- | -------------------------------- |
|
|
| YAML config | Re-run the eval |
|
|
| Failed tests only | Debug failures |
|
|
| CSV / JSON | Analysis, reporting |
|
|
| DPO JSON | Preference training data |
|
|
| Human Eval YAML | Human labeling workflows |
|
|
| Burp payloads | Security testing (red team only) |
|
|
|
|
- **Copy** - Duplicate eval
|
|
- **Share** - Generate URL (see [Sharing](#sharing))
|
|
- **Delete**
|
|
|
|
## Results Charts
|
|
|
|
Toggle with **Show Charts**.
|
|
|
|

|
|
|
|
### Pass Rate
|
|
|
|
Percentage of tests where all [assertions](/docs/configuration/expected-outputs) passed.
|
|
|
|
### Score Distribution
|
|
|
|
Histogram of scores per prompt. Each test score = mean of its assertion scores. See [weighted assertions](/docs/configuration/expected-outputs#weighted-assertions).
|
|
|
|
### Scatter Plot
|
|
|
|
Compare two prompts head-to-head. Click to select prompts.
|
|
|
|
- **Green** = Prompt 2 scored higher
|
|
- **Red** = Prompt 1 scored higher
|
|
- **Gray** = Same score
|
|
|
|
## Sharing
|
|
|
|
**Eval actions → Share** generates a URL.
|
|
|
|
### Cloud
|
|
|
|
Free at [promptfoo.app](https://promptfoo.app/welcome). Links are private to your organization.
|
|
|
|
```sh
|
|
promptfoo auth login -k YOUR_API_KEY
|
|
promptfoo share
|
|
```
|
|
|
|
### Self-hosted
|
|
|
|
For [self-hosted deployments](/docs/usage/self-hosting):
|
|
|
|
```yaml title="promptfooconfig.yaml"
|
|
sharing:
|
|
apiBaseUrl: http://your-server:3000
|
|
appBaseUrl: http://your-server:3000
|
|
```
|
|
|
|
Or set via **API Settings** in the top-right menu. See [sharing docs](/docs/usage/sharing) for auth and CI/CD.
|
|
|
|
## URL Parameters
|
|
|
|
Viewer state syncs to the URL—bookmark or share filtered views:
|
|
|
|
| Parameter | Values |
|
|
| ------------ | ---------------------------------------------------------------- |
|
|
| `filterMode` | `all`, `failures`, `passes`, `errors`, `different`, `highlights` |
|
|
| `search` | Any text |
|
|
|
|
```text
|
|
/eval/abc123?filterMode=failures&search=timeout
|
|
```
|