Migrazzjoni

Base URL u key jittrasferixxu klijent OpenAI. Din il-paġna tgħid ukoll x'ma jagħmilx l-API, għax migrazzjoni li tiskopri dan fil-produzzjoni mhix migrazzjoni.

Il-forma drop-in

Ipponta l-URL bażi tal-klijent fuq https://api.llmeu.com/v1 u agħtih API key mill-konsola. Il-forma tat-talba ma tinbidilx.

from openai import OpenAI

client = OpenAI(base_url="https://api.llmeu.com/v1", api_key="llmeu_live_xxxxxxxx.your-secret")

resp = client.chat.completions.create(
    model="llmeu-auto",
    messages=[{"role": "user", "content": "Say hello from EU hosting."}],
)
print(resp.choices[0].message.content)

X'taċċetta l-endpoint tal-chat

Il-validator tat-talba f'apps/api/src/app.mjs jikkontrolla dan li ġej; dak li ma jikkontrollax jiġi mgħoddi jew injorat minflok ma jiġi rrifjutat, biex klijent aktar ġdid jibqa' jaħdem.

  • model u messages huma meħtieġa; messages għandu jkun array mhux vojt.
  • Kull messaġġ jeħtieġ rwol (system, user, assistant, tool jew developer) u content bħala string jew array ta' partijiet.
  • stream għandu jkun boolean meta jkun preżenti.
  • temperature, top_p, max_tokens, presence_penalty, frequency_penalty, seed u n iridu jkunu numri meta jkunu preżenti.
  • max_tokens għandu jkun mill-inqas 1.
  • n għandha tkun eżattament 1; kull ħaġa oħra tiġi rrifjutata.
  • stop jista' jkun string jew array ta' strings.
  • tools għandu jkun array meta jkun preżenti.
  • llmeu għandu jkun oġġett; qatt mhu meħtieġ.
  • tool_choice u response_format jiġu mgħoddija lill-backend flimkien mal-oqsma ta' hawn fuq; qasam żejjed mhux magħruf ma jiġix rrifjutat.

Żidiet tat-talba taħt llmeu

Oġġett llmeu b'namespace fil-body tat-talba; klijent li jinjora oqsma mhux magħrufa jista' jibgħatu bla periklu.

Qasam Valur Effett
residencyeu-hosted | eu-owned | de | anyJidjieq ir-routing għal endpoints f'dik ir-residenza; sett eliġibbli vojt jirritorna 409 no_endpoint_for_policy minflok ma jwessa' l-filtru.
taskisem ta' kompituIl-kompitu li r-router jadatta l-mudell għalih.
retentionzeroJiġi implimentat biss iż-zero. Talba għal aktar milli tippermetti l-politika tirritorna 403 retention_exceeds_policy; valur effettiv permess li mhuwiex zero jirritorna 501 retention_not_implemented.
data_classpublic | internal | confidential | restrictedIkkontrollat kontra l-klassijiet tad-dejta permessi mill-politika: klassi barra minnhom tirritorna 403 data_class_not_allowed, u klassi mhux magħrufa tirritorna 400 invalid_data_class.
policy_iduuidIsemmi politika tal-istess organizzazzjoni; id mhux magħruf jirritorna 404 policy_not_found.
max_usd_per_1mnumruLimitu massimu tal-prezz għal kull miljun token għal din it-talba.
allow_partnerstrue | falseJekk l-endpoints tal-imsieħba jistgħux jintużaw għal din it-talba.

Ċwievet mhux magħrufa ġewwa llmeu jiġu injorati; ċavetta magħrufa b'valur invalidu tiġi rrifjutata, għax data_class ħażina trid tfalli magħluqa minflok ma tfisser b'mod sieket li m'hemmx data class.

curl https://api.llmeu.com/v1/chat/completions \
  -H "Authorization: Bearer $LLMEU_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "llmeu-auto",
    "messages": [{"role": "user", "content": "Summarise this contract."}],
    "llmeu": {"residency": "eu-owned", "data_class": "confidential", "retention": "zero"}
  }'

Dak li ma jeżistix

Dawn it-tweġibiet huma deliberati, u klijent li jistenna dawn jara l-kodiċi tal-iżball minflok sostituzzjoni silenzjuża.

Talba Riżultat
POST /v1/completions501 not_implemented — l-endpoint tal-kompletamenti legacy mhuwiex offrut; uża /v1/chat/completions.
n > 1400 unsupported_n — n = 1 biss huwa appoġġjat.
POST /v1/embeddingsL-embeddings jeħtieġu mudell tal-embedding, u l-id mitlub default huwa bge-m3. Ħadd mhu servut fuq dan id-deployment, għalhekk ir-rotta mhix offruta hawn minflok ma tirritorna vettori placeholder.
/v1/files, /v1/batches, /v1/assistants, /v1/fine_tuning, /v1/audio, /v1/images404 unknown_route — mhux routed xejn; path /v1 li r-router ma jafx iwieġeb 404 unknown_route, u kwalunkwe path ieħor iwieġeb 404 not_found.

Ħruġ tad-dejta tiegħek

L-esportazzjoni tal-kont me.json iżżomm oqsma magħżula tal-kont, organizzazzjonijiet, metadata tal-API key mingħajr sigrieti, politiki attwali, l-aħħar 200 traċċi għal kull organizzazzjoni u aggregati tal-użu ta' kuljum għal 365 ġranet. Mhijiex kopja kompleta tad-dejta personali kollha u mhix rekord storiku tal-politiki.

L-esportazzjoni tal-awditjar NDJSON għandha default ta' 7 ġranet, tippermetti l-aktar 90 ġranet u tillimita t-traċċi għal 5000; il-manifest tagħha jġorr counts.truncated, li jimmarka esportazzjoni li laħqet il-limitu.

GET /app/exports/me.json
GET /app/exports/audit.ndjson?days=7
GET /app/exports/traces.json
GET /app/exports/usage.json
GET /app/exports/policies.json

It-tħassir tal-kont innifsu jsir fil-paġna tal-profil u huwa suġġett għar-regola tas-sjieda fil-paġna tal-konsola.

Cookie tas-sessjoni mhux kredenzjali tal-API

Sessjoni tal-browser tawtentika l-konsola, mhux l-API. Klijent OpenAI li jibgħat waħda jiġi rrifjutat b'403 api_key_required u jrid juża API key minflok.

Ċaħda hawnhekk issemmi kodiċi, allura migrazzjoni tista' tagħmel branch fuqu, u l-blokk llmeu fuq kull risposta jgħid x'ġara fil-fatt.