Why this model
Every answer carries its receipt: what the router optimised, who answered, and why the others did not.
The rule
- The router starts from the offers that can do the job and are healthy right now.
- It ranks them by the objective you asked for: cheapest, fastest, balanced, or private.
- Your floor, price ceiling and privacy policy remove the offers that do not fit; a hard cap refuses instead of spending over it.
- A provider that is down, out of balance or too slow is skipped and written down; a fallback that answers is named on the run.
It is the same router behind every Chat answer, every model page and every call to the endpoint; the receipt on a run is the router's own explanation, not a copy written for the page.
Try it
Sign in to ask one question
The demo is one real run on your own allowance. Signed out, the rule and the live offers are below.
Sign in with OpenVibeThe live offers it is choosing between
The cheapest priced offers in the catalog right now, with their measured speed and uptime.
| Model | Offer | In / out per M | Speed | Uptime |
|---|---|---|---|---|
| GPT-5 nano | OpenAI | $0.050 in / $0.40 out | 1.9 s p50 · 11.9 s p95 | 99.9% |
| GPT-4o mini | OpenAI | $0.15 in / $0.60 out | – p50 · – p95 | — |
| DeepSeek V4.1 Flash | DeepSeek | $0.30 in / $1.20 out | 2.2 s p50 · 2.2 s p95 | 4.3% |
| GPT-4.1 mini | OpenAI | $0.40 in / $1.60 out | – p50 · – p95 | — |
| GPT-5 mini | OpenAI | $0.25 in / $2.00 out | 2.6 s p50 · 6.1 s p95 | 99.6% |
| DeepSeek V4 Pro | DeepSeek | $1.32 in / $3.96 out | – p50 · – p95 | — |
Read it in the API
Every run response carries explain: the objective, the selected offer, the reasons, and every candidate with its estimated cost, latency and excluded reason. GET /api/v1/runs/:id on OpenVibe.AI returns the same object for a run you own.
curl -s https://ai.openvibe.services/api/v1/runs/$RUN \
-H "Authorization: Bearer $TOKEN" | jq .run.explainKeys and the endpoint: the API · Start building: four steps.