Routing-hints
Felter per forespørgsel, der påvirker routing uden at ændre dine regler — et session-id, der holder en agent-runde på én model, og et leverandørfilter, der bestemmer, hvor en forespørgsel må køre. Hints kan kun indsnævre; ingen af dem udvider.
Reglerne for dit arbejdsområde og dine routere bestemmer, hvad en forespørgsel må bruge. Routing hints lader en enkelt forespørgsel tilføje detaljer ovenpå. De udvider aldrig det, som din policy tillader.
Intet hint videresendes til en leverandør. Stav læser dem og fjerner dem, før forespørgslen sendes videre, så de kan ikke ændre prompten eller dens cache-præfiks.
session_id — navngiv samtalen
resp = client.chat.completions.create(
model="auto",
messages=[...],
extra_body={"session_id": "conv-8f21"},
)
Fortæller Smart Router, hvilken samtale denne forespørgsel tilhører, så den kan huske, hvad den valgte i sidste runde. Det er det, der lader en agent-løkke blive på samme model, mens verktøjskald afventer (se kontinuitetslåsen i Smart Router).
Accepteres på /v1/chat/completions, /v1/messages og /v1/responses.
Stav finder frem til samtalens identitet i denne rækkefølge og bruger den første, der er til stede:
session_idi bodyenX-Session-Id-headeren i forespørgslenprompt_cache_keyi bodyen- et fingeraftryk af samtalens start
Værdien hashes sammen med dit arbejdsområde og din API-nøgle, så to kunder, der sender "default", aldrig deler tilstand.
Svar kan indeholde en X-Session-Id-header. Send den tilbage ved næste forespørgsel, hvis du ønsker, at session-tracking skal være præcis frem for baseret på inferens.
provider — hvor en forespørgsel må køre, og hvem der må betjene den
provider indsnævrer en forespørgsel ovenpå reglerne for dit arbejdsområde. Den filtrerer leverandørendepunkter, så det endepunkt, der betjener, og hvert automatisk skift bliver inden for rammerne. Det fungerer på alle inferens-API'er, både for en navngiven model, auto og en router:
client.chat.completions.create(
model="mistralai/mistral-small-4-119b-2603",
messages=[...],
extra_body={"provider": {
"runs_in": "eu",
"ignore": ["deepinfra"],
"max_price": {"prompt": 2.0, "completion": 6.0},
}},
)
| Felt | Effekt | API'er |
|---|---|---|
runs_in (alias region) | "eu", "eea", en landekode eller en liste af landekoder | Alle |
only | Kun endepunkter fra disse inferensleverandører betjener | Alle |
ignore | Ingen endepunkter fra disse inferensleverandører betjener | Alle |
max_price | Den højeste pris et endepunkt må tage per million tokens i dit arbejdsområdes valuta: prompt, completion. Hver pris forespørgslen kan afregnes til tæller med, herunder en betinget pris for en lang prompt eller et billede og prisen for ræsonneringsuddata. Et ræsonneringsniveau eller en cacheskrivning, du beder om, tæller ikke. Et endepunkt med en ukendt pris passer ikke | Chat-API'er |
quantizations | Kun endepunkter, der betjener en af disse kvantiseringer (fp8, bf16, …). Læses fra endepunktet, ellers modellen. Et endepunkt med en ukendt kvantisering passer ikke | Chat-API'er |
sort | Sortér en navngiven models endepunkter: "price" (billigste for denne forespørgsel først), "latency" (hurtigste første token først) eller "throughput" (flest tokens per sekund først). Automatisk skift følger samme rækkefølge | Chat-API'er, navngiven model |
Hvis intet endepunkt passer, afvises forespørgslen i stedet for at blive betjent andetsteds. Se Vælg hvor en forespørgsel kører for alle API'er og alle afvisninger.
sort sorterer kun de endepunkter, som de andre felter og din policy tillader; den tilføjer aldrig et. Med model="auto" eller en router giver det en 400 unsupported_parameter: her vælger routerens målsætning. Uden sort vælger Stav et navngivet models endepunkt ud fra hastighed i sanntid.
client.chat.completions.create(
model="deepseek-ai/deepseek-v4-1-flash",
messages=[...],
extra_body={"provider": {"sort": "price", "runs_in": "eea"}},
)
require_parameters, allow_fallbacks og andre nøgler understøttes ikke. Hvis du sender en, får du en 400 unsupported_parameter, der navngiver feltet.
Se, hvad der skete
| Header | Betydning |
|---|---|
X-Stav-Model | den model, der betjente forespørgslen |
X-Stav-Route-Reason | hvorfor den blev valgt |
X-Stav-Route-Lock | den kontinuitetslås, der fastholdt routeren (tool_loop, signed_thinking), eller none |
X-Session-Id | samtalesessionens id, hvis en sådan blev fundet |