| .. | ||
| static | ||
| README.md | ||
| serve.sh | ||
| server.py | ||
Benchmark Visualizer
A standalone web service for visualizing benchmark results. Currently supports the LoComo benchmark with plans to add more benchmarks in the future.
Features
- Interactive web interface for viewing benchmark results
- Detailed breakdown by category (Multi-hop, Single-hop, Temporal, Open-domain)
- Filter options to view all, correct, or incorrect answers
- Expandable Q&A details with reasoning and retrieved memories
- Overall and per-item accuracy statistics
Running the Visualizer
Option 1: Using the serve script (recommended)
cd benchmarks/visualizer
./serve.sh
Option 2: Using uvicorn directly
cd benchmarks/visualizer
uv run uvicorn server:app --reload --host 0.0.0.0 --port 8001
Then open your browser to: http://localhost:8001
Usage
- Select a benchmark from the dropdown:
- LoComo (search): Traditional two-step approach (search → LLM answer generation)
- LoComo (think): Integrated approach using think API (single call for retrieval + reasoning)
- The visualization will automatically load and display:
- Overall accuracy statistics
- Category-wise performance breakdown
- Detailed results for each conversation
- Use the filter controls to show all answers, only incorrect, or only correct answers
- Expand individual conversations to see Q&A details, reasoning, and retrieved memories
API Endpoints
GET /- Main visualizer pageGET /api/locomo?mode={search|think}- Returns LoComo benchmark results as JSONmode=search(default): Returns results frombenchmark_results.jsonmode=think: Returns results frombenchmark_results_think.json
Requirements
- FastAPI
- Uvicorn
- Python 3.11+
The visualizer reads benchmark results from:
benchmarks/locomo/benchmark_results.jsonfor search modebenchmarks/locomo/benchmark_results_think.jsonfor think mode
Make sure to run the benchmark first to generate results:
- Search mode:
cd benchmarks/locomo && uv run python run_benchmark.py - Think mode:
cd benchmarks/locomo && uv run python run_benchmark.py --use-think