Suverenitet
Suverenitetsstigen L0–L4, faktaene om endepunktet som ligger bak (beregningsregion, ingen datalagring (ZDR), trening), og hvordan regler for arbeidsområdet og routeren håndhever disse for hver forespørsel.
«Er dataene i Europa?» og «kan myndighetene i et tredjeland kreve utlevering?» er to forskjellige spørsmål. Stav besvarer det andre med en suverenitetsstige, og det første med fakta som er registrert på hvert leverandørendepunkt.
Stigen
| Nivå | Navn | Betydning |
|---|---|---|
| L4 | Full suverenitet | Eierskap og kontroll i EU/EØS, en suverenitetsvurdering (ikke bare sikkerhet), og ingen avhengighet til tredjeland som kan trekkes tilbake |
| L3 | Eierskap og kontroll i EU/EØS | Operatøren som betjener forespørselen, er eid og kontrollert i EU/EØS |
| L2 | Drift og sertifisering i EU/EØS | Drift i EU/EØS, med uavhengig revidert sikkerhetssertifisering |
| L1 | Lokasjon i EU/EØS | Inferens skjer på jord i EU/EØS |
| L0 | Tredjelandsoperatør | Drives under et rettssystem utenfor EU/EØS, utenfor garantiene i EU/EØS |
| — | UNCLASSIFIED | Ikke vurdert ennå |
Trinnene følger sikringsnivåene i EUs foreslåtte Cloud and AI Development Act (CADA), med L0 lagt til nederst. CADA er et forslag, ikke en lov: nivåene er Stavs daterte vurdering, ikke en formell godkjenning fra myndighetene.
- Rekkefølge.
L0 < L1 < L2 < L3 < L4, slik at «minst L3» kan håndheves. - UNCLASSIFIED er ikke et trinn. Det vil aldri oppfylle et krav om L1 eller høyere.
Slik tildeles et nivå
Et nivå tilhører endepunktet som betjener forespørselen:
- en overstyring satt på det endepunktet, ellers
- inferensleverandørens vurderte nivå, ellers
UNCLASSIFIED.
Hvert fastsatte nivå logges med en versjon av registeret, slik at et nivå som registreres i dag, forblir forståelig selv om kriteriene endres.
Slik leser du nivået per forespørsel
Svar fra Chat Completions (både strømming og vanlige svar) inneholder nivået til endepunktet som betjente dem:
X-Stav-Sovereignty-Level: L3
Samme modell betjent av to forskjellige inferensleverandører kan gi to ulike nivåer.
raw = client.chat.completions.with_raw_response.create(
model="auto",
messages=[{"role": "user", "content": "…"}],
)
level = raw.headers.get("X-Stav-Sovereignty-Level")
if level in (None, "L0", "UNCLASSIFIED"):
log.warning("request %s served at %s", raw.headers["X-Stav-Request-Id"], level)
X-Stav-Sovereignty-Badge kan også forekomme. Denne fases ut; les X-Stav-Sovereignty-Level.
Nivået skrives også i forespørselsloggen (Arbeidsområdet ditt → Overvåk → Forespørselslogg).
Fakta om endepunkter
Tre fakta til registreres per leverandørendepunkt, hver med sin kilde:
| Fakta | Verdier |
|---|---|
| Beregningsland | ISO-landkode, eller ukjent |
| Beregningsregion | eu, eea, us, global, eller ukjent |
| Ingen datalagring (ZDR) | ja, nei, eller ukjent |
| Trener på inndata | nei, ja, eller ukjent |
Regler:
- Ukjent slipper aldri gjennom. Et krav om ZDR tillater bare endepunkter merket med ZDR. «Ingen trening» tillater bare endepunkter merket med trener ikke. Et krav om region tillater bare endepunkter der landet eller regionen ligger i den.
- En region beviser aldri et land. Et krav om EU tillater et land i EU eller regionen
eu. Et krav om EØS tillater også regioneneeaog Norge, Island og Liechtenstein.globaloppfyller ingenting. - Beregningsregion er der inferensen skjer. Det sier ingenting om underdatabehandlere. ZDR er leverandørens egen erklæring.
Fakta om land, region, ZDR og trening for endepunktet som betjener forespørselen, lagres på raden i forespørselsloggen når forespørselen kjører, og beregnes aldri på nytt.
Her setter du regler
Arbeidsområde: Arbeidsområdet ditt → Styr → Nøkkelpolicyer → Rekkevidde. Gjelder for alle nøkler i arbeidsområdet.
| Kontroll | Effekt |
|---|---|
| Nedre grense for suverenitet | Minimumsnivå på stigen (L0 = ingen nedre grense) |
| Beregningsregion | Alle, EU + EØS, eller bare EU |
| Bare null datalagring (ZDR) | Bare endepunkter med bekreftet ZDR |
| Ingen trening på dataene våre | Bare endepunkter som ikke trener på inndata. På som standard |
| Nedre grense for intelligens | Minimum skår for modellen, 0–100 |
Router: Arbeidsområdet ditt → Koble til → Routere → en navngitt router. En router kan sette sin egen nedre grense, region, ZDR og ingen trening, pluss tillatte og blokkerte modeller.
Blokkerte leverandørland: Arbeidsområdet ditt → Koble til → Routere → innstillinger for standardrouteren. Modeller der inferensleverandøren holder til i et oppført land, ekskluderes for arbeidsområdet.
Bare innstramming. Arbeidsområde og router kombineres til den strengeste verdien. En router kan heve den nedre grensen, snevre inn regionen eller legge til et krav. Den kan aldri løse opp kravene til arbeidsområdet.
nedre grense for arbeidsområde L1 + nedre grense for router L3 → L3
nedre grense for arbeidsområde L3 + nedre grense for router L1 → L3
Slik fungerer håndhevingen
- Rutede forespørsler (
model="auto",@workspace/router): reglene gjelder for kandidatgruppen før skåringen. Kostnad, svartid og kvalitet konkurrerer bare innenfor det tillatte utvalget. - Endepunktet som betjener forespørselen, kontrolleres også, ikke bare modellen. En modell med ett godkjent og ett ikke-godkjent endepunkt betjenes bare fra det godkjente.
- Låste modeller og endepunkter møter den samme policymuren. Ingenting faller tilbake til en reserve.
| Situasjon | Svar |
|---|---|
| Ingen kandidat oppfyller reglene for routeren | 404 no_eligible_models |
| Minimumskravet til intelligens fjernet alle kandidater | 400 quality_floor_unsatisfied |
| Låst modell har ingen endepunkter som oppfyller minimumskravet til arbeidsområdet | 403 model_below_sovereignty_floor |
| Låst endepunkt oppfyller ikke reglene for region, ZDR eller land | 403 endpoint_not_admissible |
| Låst modell er utelukket av innstillingene for arbeidsområdet | 403 model_not_permitted |
| Reglene for arbeidsområdet kunne ikke leses | 503 policy_unavailable — avvises ved feil, ingenting trekkes fra lommeboken, prøv på nytt med økende ventetid |
Avvisninger loggføres med regelen som stoppet dem, for eksempel Blocked by workspace policy: sovereignty floor L3.
Stopper heller enn å slippe gjennom. Reglene leses fra innstillingene bak en 60-sekunders buffer. Hvis lesingen mislykkes, avvises forespørselen med 503 policy_unavailable og ingenting trekkes fra lommeboken — kravene til nivå, region, ZDR og ingen trening reduseres aldri til ingen. Det er fortsatt headeren og loggen for hver forespørsel, ikke innstillingssiden, som er beviset du må kontrollere.
Klassifikatoren endrer ikke reglene
Stav klassifiserer rutede prompter, inkludert om de berører et sensitivt domene. Dette signalet loggføres. Det endrer aldri hvor en forespørsel kan betjenes. Hvor trafikken kan gå, angis én gang i innstillingene.
Blokkere en inferensleverandør
Noen ganger er kravet verken et nivå eller en region, men et navn: send aldri trafikken vår til det selskapet. Arbeidsområdet ditt → Styr → Nøkkelpolicyer → Rekkevidde → Blokkerte inferensleverandører er den bryteren.
- Hvert API. Det gjelder for
/v1/chat/completions,/v1/messages,/v1/responsesog/v1/embeddings, på hver nøkkel i arbeidsområdet. - Rutede forespørsler sendes utenom. Med
model="auto"eller en router er et endepunkt hos en blokkert leverandør aldri en kandidat. En modell som også betjenes av en annen leverandør, forblir tilgjengelig og betjenes der. - Navngitte og låste forespørsler avvises. En lås til et endepunkt hos en blokkert leverandør, eller en modell som bare blokkerte leverandører betjener, returnerer
403med kodenprovider_blocked. Ingenting slipper gjennom til den blokkerte leverandøren. - Gjelder hele arbeidsområdet og kan bare strammes inn. En router kan ikke oppheve blokkeringen av en leverandør som arbeidsområdet har blokkert.
{
"error": {
"message": "'mistral/mistral-large/azure' is served by the Inference Provider 'azure', which your workspace has blocked. …",
"type": "permission_error",
"param": "model",
"code": "provider_blocked"
}
}
En blokkeringsliste er ikke en jurisdiksjonsliste. Blokkerte land for leverandører avgjør hvor inferensen skjer; en blokkert leverandør avgjør hvem som utfører den. Bruk begge når begge deler er viktig.
Velge et minimumsnivå
| Situasjon | Innstilling |
|---|---|
| Generell trafikk, ingen regulerte data | Ikke noe minimumsnivå eller L1 |
| Personopplysninger for innbyggere i EU | L1, beregningsregion EU eller EØS |
| Utlevering til tredjeland er en reell risiko | L3 |
| Leverandøren kan ikke beholde noe | Bare null datalagring (ZDR) |
| Dataene skal ikke trene modeller | La Ingen trening på dataene dine stå på |
| Ett bestemt selskap skal aldri betjene trafikken din | Blokkerte inferensleverandører |
Et høyere minimumsnivå snevrer inn kandidatgruppen, vanligvis på bekostning av pris eller kvalitet på toppnivå.