The leaderboard you don't have to trust

A benchmark score you can't re-run is a press release. Peakstone ranks open & local models on coding, math, agentic and safety tasks by their held-out score โ€” only challenges published aftera model's release, so it couldn't have trained on them โ€” and every result is a signed, content-addressed run. Reproduce one on your own GPU and it counts toward the community-verified tier โ€” the tier that ranks.

bash
$ pipx install peakstone

Run it on your own hardware. The dashboard shows the board filtered to models that fit your GPU, serves and reproduces any run, then lets you submit your own signed results.

9
Models ranked
159
Challenges
1,816
Scored results
0
Independent reproductions

Leaderboard

Every model ranked by its held-out score โ€” plus agentic, planner and safety lenses.

Challenges

The verifiable corpus, with empirical pass-rates as the difficulty signal.

Submit a run

Benchmark a model on your own hardware and publish the signed bundle.

Evolution

The held-out capability frontier of open models over time.

Once installed

Peakstone isn't just a leaderboard โ€” it's a full local stack: a hardware dashboard, a model-swapping OpenAI gateway, and a browser chat UI.

Step 1

Launch the dashboard

$ peakstone

The terminal UI: the leaderboard filtered to yourGPU, browse & download models, run the benchmark, and keep a wishlist of models to test.

Step 2

Chat with your models

$ peakstone serve

Starts a local gateway that loads models on demand, then open the built-in chat UI at localhost:12434/chat.

Step 3

Use the OpenAI API

http://localhost:12434/v1

Point any OpenAI-compatible app or SDK at it. The model field selects which local model to serve โ€” no per-model servers to manage.

Drop-in OpenAI example
from openai import OpenAI

client = OpenAI(base_url="http://localhost:12434/v1", api_key="local")
client.chat.completions.create(          # the model field picks which local
    model="qwen3-coder",                 # model to load โ€” the gateway swaps it in
    messages=[{"role": "user", "content": "refactor this function..."}],
)