Modeller
Se listen over modeller, din nøgle kan kalde, læs om deres egenskaber, og adressér en model, et leverandørendepunkt eller en router.
Se, hvad din nøgle kan kalde
curl https://api.stav.ai/v1/models \
-H "Authorization: Bearer $STAV_API_KEY"
for m in client.models.list():
print(m.id)
Listen indeholder:
autoførst — Smart Router, som bruger dit arbejdsområdes standardrouter- alle modeller, dit arbejdsområde må bruge, og hvis inferensleverandør er tilgængelig i øjeblikket
- dit arbejdsområdes routere, som
@arbejdsområde/router-poster (owned_by: "stav")
Det er listen over, "hvad denne nøgle kan kalde nu", ikke hele kataloget. Kræver inference:models.
Læs om én model
curl https://api.stav.ai/v1/models/anthropic/claude-sonnet-4-5 \
-H "Authorization: Bearer $STAV_API_KEY"
{
"id": "anthropic/claude-sonnet-4-5",
"object": "model",
"owned_by": "anthropic",
"context_length": 200000,
"max_completion_tokens": 64000,
"top_provider": { "context_length": 200000, "max_completion_tokens": 64000 },
"stav_category": "llm",
"stav_context_window": 200000,
"stav_supports_thinking": true,
"stav_capabilities": {
stav_*-felterne er udvidelser; OpenAI SDK'et eksponerer dem via model_extra.
context_length, max_completion_tokens og top_provider bruger OpenRouters navne, så kode skrevet til OpenRouter kan læse dem uændret.
| Felt | Betydning |
|---|---|
context_length | Det mindste kontekstvindue, i tokens, på tværs af de leverandørendepunkter, din nøgle kan rutes til. Det gælder, uanset hvor forespørgslen ender. Kun chatmodeller |
max_completion_tokens | De færreste maksimale uddata-tokens på tværs af disse endepunkter. Kun chatmodeller |
top_provider | context_length og max_completion_tokens for det endepunkt, Stav prøver først |
stav_category | Modelkategori, f.eks. LLM eller embedding |
stav_context_window | Modellens eget kontekstvindue. Brug helst context_length |
stav_supports_thinking | Understøtter reasoning_effort / udvidet ræsonnering |
stav_capabilities | Flag for egenskaber, du kan tjekke før afsendelse |
stav_surfaces | Hvilke af chat, messages, responses, embeddings, transcriptions der betjener denne model. En model uden API-flade vises ikke |
stav_native_dialect | Protokolformat for modellens egen leverandør |
stav_max_upload_mb | På transcriptions-fladen: den største fil, /v1/audio/transcriptions tager imod for denne model, i MB. null ellers |
Brug dem til et tjek før kørsel:
info = client.models.retrieve("anthropic/claude-sonnet-4-5")
caps = info.model_extra.get("stav_capabilities") or {}
if not caps.get("vision"):
raise RuntimeError("denne behandlingskæde kræver en model med billedforståelse")
GET /v1/models/{id} tager imod alt, hvad du kan sende som model: det kanoniske modelskaber/model-id, et navn alene med præcis ét match (nb-whisper-large) eller en router (@dit-arbejdsområde/router). Svaret indeholder altid det kanoniske id. Et fastgjort endepunkt (modelskaber/model/leverandør) er ikke en model: find det under modellens /endpoints.
Se alle leverandørendepunkter
Forskellige inferensleverandører betjener den samme model med forskellige grænser og præcision. Se listen:
curl https://api.stav.ai/v1/models/openai/gpt-oss-120b/endpoints \
-H "Authorization: Bearer $STAV_API_KEY"
{
"data": {
"id": "openai/gpt-oss-120b",
"name": "gpt-oss-120b",
"endpoints": [
{
"id": "openai/gpt-oss-120b/groq",
"provider_name": "Groq",
"tag": "groq",
"context_length": 131072,
"max_completion_tokens": 65536,
"quantization": null,
"pricing": { "currency": "EUR",
- Tallene i dette eksempel er vejledende. Kald endepunktet for at få de gældende værdier.
- Listen indeholder kun de endepunkter, din nøgle har adgang til. Dit arbejdsområdes regler gælder: minimumsniveau for suverænitet, beregningsregion, ZDR og blokerede leverandører.
- Rækkefølgen er den rækkefølge, Stav tester dem i.
- Send et punkts
idsommodelfor at fastgøre det endepunkt. pricinger det, en forespørgsel på det endepunkt koster per token i dit arbejdsområdes valuta. Det er den samme pris, som faktureringen bruger.stav_conditional_rates: truebetyder, at endepunktet også har betingede priser, der afhænger af forespørgslen, f.eks. ved lang kontekst.- Formatet svarer til OpenRouters
/api/v1/models/{author}/{slug}/endpoints. - En router fungerer også her, og det samme gør
auto:GET /v1/models/@dit-arbejdsområde/router/endpointsviser alle endepunkter for alle modeller, som routeren kan vælge, ud fra både routerens egne regler (ZDR, region, niveau) og dit arbejdsområdes regler, med den bedste model først. Hvert punktsmodel_idangiver modellen, ogdata.stav_routerertrue. Modellerne vises med 100 per side:?page=2, ogdata.stav_total_modelser hele kandidatgruppen.
Model-id'er
| Form | Eksempel | Betydning |
|---|---|---|
auto | auto | Smart Router, dit arbejdsområdes standardrouter |
| Router | @acme/eu-only | En navngiven router, dit arbejdsområde har oprettet |
| Model | zai-org/glm-5-2 | Denne model; Stav vælger leverandørendepunktet |
| Leverandørendepunkt | zai-org/glm-5-2/fireworks-ai | Denne model hos denne inferensleverandør |
| Navn alene | claude-sonnet-4-5 | Omdannes til et modelskaber/model-id |
modelskaber/model
Den kanoniske form. Kopiér den fra /v1/models eller kataloget. Når en model har mere end ét leverandørendepunkt, vælger Stav blandt dem, som dit arbejdsområdes regler tillader.
modelskaber/model/leverandør
Fastgør én inferensleverandør. Nogle leverandører betjener den samme model i mere end én region; hver region er sit eget leverandørendepunkt, og modelskaber/model/leverandør lader Stav bruge alle dem, som dit arbejdsområdes regler tillader. En fastgørelse indsnævrer valget; den tilsidesætter aldrig dit arbejdsområdes regler.
For at fastgøre én region skal du tilføje dens kode efter et kolon: deepseek/deepseek-v3-2/amazon-bedrock:eu-west-2. GET /v1/models/{id}/endpoints viser alle endepunkter med deres id og deres stav_region.
Nogle inferensleverandører accepterer også et kort navn i fastgørelsen: baai/bge-m3/ovh fastgør det samme endepunkt som baai/bge-m3/ovhcloud-ai-endpoints. De korte navne er præcise; Stav gætter aldrig et navn. Reglerne beslutter sig for et kort navn på nøjagtig samme måde som for den fulde slug.
- Intet endepunkt med den slug →
endpoint_not_found. Meddelelsen viser de endepunkter for modellen, du kan fastgøre, med de nærmeste først, og spørger "Mente du …?", når ét tydeligvis er det navn, du mente. Stav sender aldrig forespørgslen til det foreslåede endepunkt; send den igen med den slug. - Endepunktet findes, men kan ikke betjene denne forespørgsel →
endpoint_not_admissible. Meddelelsen forklarer, hvilken kontrol der afviste den: endepunktet eller din node er offline, inferensleverandøren betjener ikke forespørgsler, den har ingen pris i dit arbejdsområdes valuta, Stav Tunnel er slået fra for dit arbejdsområde, eller en regel i dit arbejdsområdes regler (for eksempel beregningsland eller ingen dataopbevaring). Ret fejlen i kontrollen, eller brug model-slug'en alene for at lade Stav vælge.
Enkelte endepunkter har en anden variant efter et kolon, f.eks. zai-org/glm-5-2/fireworks-ai:fast. En sådan variant er ikke en region, og Stav bruger den kun, når du navngiver den.
Navne uden præfiks og aliasser
Et navn uden skråstreg bliver slået op i denne rækkefølge:
- et registreret alias — gamle slugs fra før omdøbningen til
modelskaber/modelsamt id'er, som inferensleverandøren selv bruger - den aktive model, hvis id ender på
/<navn>
Hvis to modeller deler det sidste segment, rammer navnet intet. Brug modelskaber/model i kode, du gemmer.
Ukendt model
{
"error": {
"message": "The model 'openai/gpt-4o-turbo' does not exist. Call GET /v1/models to list the models your workspace can use.",
"type": "invalid_request_error",
"param": "model",
"code": "model_not_found"
}
}
En model, der findes på Stav, men som du ikke kan kalde endnu, svarer med 404 model_not_published i stedet — det kan være en kladde, en model der kommer snart, eller en der er udgået. Meddelelsen forklarer hvilken. En model, som dit arbejdsområdes regler udelukker, giver en 403 model_not_permitted.
Gennemse hele kataloget
Det offentlige katalog kræver ingen nøgle:
curl "https://api.stav.ai/v1/public/models?page_size=20"
curl "https://api.stav.ai/v1/public/providers"
I dit arbejdsområde viser Forbind → Modeller og Forbind → Inferensleverandører det samme katalog med priser, suverænitet og endepunkter. Brug /v1/models til at se "hvad kan denne nøgle kalde"; brug kataloget til alt andet.
Filtrer efter type
Hver model har en type — den dør, den betjenes på: chat, embedding eller transcription. Kataloget åbner på Chat; brug category= for at skifte, og filtrer på typens egne fakta med capability=:
# embeddingmodeller med mindst 1024 dimensioner, der understøtter norsk
curl "https://api.stav.ai/v1/public/models?category=embedding&capability=embedding_dimensions:>=1024,languages:no"
# transskriptionsmodeller med tidsstempler på ordniveau, prissat til eller under 0,01 € per lydminut
curl "https://api.stav.ai/v1/public/models?category=transcription&capability=stt_timestamps_word&max_price=0.01&price_unit=audio_minutes"
En capability-term er en slug (vision_input), slug:>=N for et tal eller slug:kode for en liste; en ukendt slug eller en værdi, som faktummet ikke kan tage, afvises ved navn (422). Hvert element indeholder price_from og price_unit i typens egen enhed (tokens_in, request eller audio_minutes), og type_counts fortæller, hvor mange modeller af hver type der rammer de øvrige filtre. GET /v1/public/model-types viser typerne med deres filtre, enheder og benchmarksæt.## Fastgør eller ruter?
- Fastgør en model, når du skal reproducere en evaluering, eller hvis en kontrakt navngiver modellen.
- Fastgør et endepunkt, når du har brug for en specifik inferensleverandør.
- Brug en router til det meste produktionstrafik: automatisk skift, afvejning af pris og svartid samt et suverænitetsniveau, der er sat én gang for arbejdsområdet. Skift routeren, ikke din kode.