Politici

Obiectul de politică ce decide ce poate apela o organizație, unde poate rula și ce poate cheltui, câmp cu câmp.

O politică este stocată pe organizație și citită la fiecare cerere de inferență. Valorile implicite sunt cele sigure: găzduire deținută în UE sau în regiune UE, retenție zero, doar date publice și interne, o urmă obligatorie.

Câmpuri

Câmp Stocare Implicit Ce decide
residency_allowed JSON array ["eu_owned_eu_operated","eu_region_of_non_eu_parent"] Ce clase de găzduire poate avea un endpoint. Un filtru, nu o preferință: un endpoint din afara listei nu este niciodată ales.
providers_allow JSON array [] — any Gol înseamnă orice furnizor. O listă nevidă devine o listă de permisiuni.
providers_deny JSON array [] Furnizori care nu pot fi folosiți niciodată, verificați înaintea listei de permisiuni.
models_allow JSON array [] — any Gol înseamnă orice model. O listă nevidă devine o listă de permisiuni.
models_deny JSON array [] Modele care nu pot fi folosite niciodată.
max_usd_per_1m REAL, nullable null — no cap Cel mai mare preț combinat pe milion de tokeni pe care îl poate costa un endpoint. Peste acesta, endpointul este respins.
max_usd_per_day REAL, nullable null — no cap Plafonul zilnic de cheltuieli al organizației. La atingerea lui se răspunde cu 402 budget_exceeded.
retention TEXT zero Retenția permisă pentru prompturi. Doar retenția zero este implementată: orice altă valoare permisă de politică face cererea să eșueze, în loc să stocheze ceva.
data_classes_allowed JSON array ["public","internal"] Clase de date pe care o cerere le poate declara. O clasă din afara acestei liste este refuzată.
require_trace INTEGER 0/1 1 Dacă fiecare apel de inferență lasă un rând de urmă. La retenție zero, o urmă conține metadate, niciodată corpul unui prompt.
allow_partner_endpoints INTEGER 0/1 0 Dacă pot fi folosite endpointuri operate de o companie-mamă din afara UE. Dezactivat implicit.
json_logic JSON, nullable null Rezervat pentru o regulă personalizată viitoare. Nimic nu îl citește astăzi, deci nu schimbă nicio decizie.

Ce politică se aplică

O cerere poate indica una prin llmeu.policy_id. Fără acesta, se aplică politica implicită a organizației. Un policy_id care aparține altei organizații este refuzat cu policy_not_found, deoarece căutarea este întotdeauna limitată la organizația căreia îi aparține cheia.

"llmeu": { "policy_id": "the-uuid-from-the-console" }

Deoarece politica implicită se aplică fiecărei chei, promisiunea de rezidență a unei organizații nu este ceva din care un apelant se poate sustrage omitând un câmp.

Ordinea în care rulează regulile

Mai întâi tipul de endpoint — o intrare doar din catalog este respinsă înainte de orice altceva — apoi starea, apoi clasa de rezidență și regiunea, apoi listele de furnizori și modele, apoi regula pentru parteneri, viziunea, dimensiunea contextului și prețul. Secvența completă, cu codul de eroare pe care îl produce fiecare pas, se află pe pagina de rutare.

Editare

În consolă, sau cu PUT /platform/v1/policies/{id} folosind o cheie care are platform_write. O modificare se aplică la următoarea cerere; o cerere deja în curs păstrează politica sub care a început.