Title: Migr%C3%A1ci%C3%B3 %E2%80%94 LLM EU Canonical: https://llmeu.com/hu/docs/migration/ Markdown mirror: https://llmeu.com/hu/docs/migration.md Machine-readable: https://llmeu.com/llms.txt (index) - https://llmeu.com/llms-full.txt (full catalogue) - https://llmeu.com/llms-catalogue.json Els%C5%91 l%C3%A9p%C3%A9sek - [Gyors kezd%C3%A9s](/hu/docs/quickstart/) - [Konzol](/hu/docs/console/) - [Migr%C3%A1ci%C3%B3](/hu/docs/migration/) - [API referencia](/hu/docs/api/) Referencia - [Hiteles%C3%ADt%C3%A9s](/hu/docs/authentication/) - [V%C3%A9gpontok](/hu/docs/endpoints/) - [Hib%C3%A1k](/hu/docs/errors/) - [Sebess%C3%A9gkorl%C3%A1tok](/hu/docs/rate-limits/) - [Streamel%C3%A9s](/hu/docs/streaming/) - [Szab%C3%A1lyzatok](/hu/docs/policies/) - [%C3%9Atv%C3%A1laszt%C3%A1s %C3%A9s ir%C3%A1nyelvek](/hu/docs/routing/) - [Tart%C3%B3zkod%C3%A1s %C3%A9s r%C3%A9gi%C3%B3k](/hu/docs/residency/) - [Bizony%C3%ADt%C3%A9kok %C3%A9s ellen%C5%91rz%C3%A9s](/hu/docs/evidence/) - [OpenAI kompatibilit%C3%A1s](/hu/docs/openai-compat/) %C3%9Czemeltet%C3%A9s - [Saj%C3%A1t %C3%BCzemeltet%C3%A9s](/hu/docs/self-hosting/) # Migr%C3%A1ci%C3%B3 Egy alap URL %C3%A9s egy kulcs %C3%A1tvisz egy OpenAI klienst. Ez az oldal azt is elmondja, mit nem tesz az API, mert egy migr%C3%A1ci%C3%B3, amely ezt %C3%A9les k%C3%B6rnyezetben fedezi fel, nem migr%C3%A1ci%C3%B3. ## A beilleszthet%C5%91 forma %C3%81ll%C3%ADtsa a kliens alap URL-j%C3%A9t a https://api.llmeu.com/v1 c%C3%ADmre, %C3%A9s adjon neki egy API-kulcsot a konzolb%C3%B3l. A k%C3%A9r%C3%A9s szerkezete nem v%C3%A1ltozik. ``` 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) ``` ## Mit fogad el a cseveg%C5%91v%C3%A9gpont Az apps/api/src/app.mjs k%C3%A9r%C3%A9s-%C3%A9rv%C3%A9nyes%C3%ADt%C5%91je a k%C3%B6vetkez%C5%91ket ellen%C5%91rzi; amit nem ellen%C5%91riz, az %C3%A1tenged%C3%A9sre ker%C3%BCl vagy figyelmen k%C3%ADv%C3%BCl marad, nem pedig elutas%C3%ADt%C3%A1sra, %C3%ADgy egy %C3%BAjabb kliens tov%C3%A1bbra is m%C5%B1k%C3%B6dik. - A model %C3%A9s a messages k%C3%B6telez%C5%91; a messages-nek nem %C3%BCres t%C3%B6mbnek kell lennie. - Minden %C3%BCzenethez kell egy szerep (system, user, assistant, tool vagy developer) %C3%A9s a tartalom sz%C3%B6vegk%C3%A9nt vagy r%C3%A9szek t%C3%B6mbjek%C3%A9nt. - A stream logikai %C3%A9rt%C3%A9k kell legyen, ha jelen van. - A temperature, top_p, max_tokens, presence_penalty, frequency_penalty, seed %C3%A9s n sz%C3%A1mok kell legyenek, ha jelen vannak. - A max_tokens %C3%A9rt%C3%A9k%C3%A9nek legal%C3%A1bb 1-nek kell lennie. - Az n %C3%A9rt%C3%A9ke pontosan 1 kell legyen; b%C3%A1rmi m%C3%A1s elutas%C3%ADt%C3%A1sra ker%C3%BCl. - A stop lehet sz%C3%B6veg vagy sz%C3%B6vegek t%C3%B6mbje. - A tools egy t%C3%B6mb kell legyen, ha jelen van. - Az llmeu-nak objektumnak kell lennie; soha nem k%C3%B6telez%C5%91. - A tool_choice %C3%A9s a response_format a fenti mez%C5%91kkel egy%C3%BCtt tov%C3%A1bb%C3%ADt%C3%A1sra ker%C3%BCl a h%C3%A1tt%C3%A9rrendszer fel%C3%A9; egy ismeretlen extra mez%C5%91 nem ker%C3%BCl elutas%C3%ADt%C3%A1sra. ## K%C3%A9r%C3%A9s-kieg%C3%A9sz%C3%ADt%C5%91k az llmeu alatt N%C3%A9vt%C3%A9rrel ell%C3%A1tott llmeu objektum a k%C3%A9r%C3%A9st%C3%B6rzsben; az ismeretlen mez%C5%91ket figyelmen k%C3%ADv%C3%BCl hagy%C3%B3 kliens biztons%C3%A1gosan k%C3%BCldheti. Az llmeu-n bel%C3%BCli ismeretlen kulcsok figyelmen k%C3%ADv%C3%BCl maradnak; egy ismert kulcs %C3%A9rv%C3%A9nytelen %C3%A9rt%C3%A9kkel elutas%C3%ADt%C3%A1sra ker%C3%BCl, mert egy hib%C3%A1s data_class-nek z%C3%A1rtan kell meghib%C3%A1sodnia, nem pedig csendben azt jelentenie, hogy nincs adatoszt%C3%A1ly. ``` 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"} }' ``` ## Mi nem l%C3%A9tezik Ezek a v%C3%A1laszok sz%C3%A1nd%C3%A9kosak, %C3%A9s az a kliens, amelyik ezeket v%C3%A1rja, a hibak%C3%B3dot l%C3%A1tja, nem pedig egy csendes helyettes%C3%ADt%C3%A9st. ## Adatok kivitele A fi%C3%B3kexport me.json kiv%C3%A1lasztott fi%C3%B3kmez%C3%B5ket, szervezeteket, API-kulcs metaadatokat titkok n%C3%A9lk%C3%BCl, aktu%C3%A1lis szab%C3%A1lyzatokat, szervezetenk%C3%A9nt a legut%C3%B3bbi 200 nyomk%C3%B6vet%C3%A9st %C3%A9s napi haszn%C3%A1lati %C3%B6sszes%C3%ADt%C3%A9seket tartalmaz 365 napra. Ez nem minden szem%C3%A9lyes adat teljes m%C3%A1solata, %C3%A9s nem t%C3%B6rt%C3%A9nelmi szab%C3%A1lyzati rekord. Az NDJSON audit export alap%C3%A9rtelmez%C3%A9sben 7 napot tartalmaz, legfeljebb 90 napot enged%C3%A9lyez, %C3%A9s a nyomk%C3%B6vet%C3%A9seket 5000-re korl%C3%A1tozza; a manifestje tartalmazza a counts.truncated %C3%A9rt%C3%A9ket, amely jel%C3%B6li, ha egy export el%C3%A9rte a korl%C3%A1tot. ``` 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 ``` A fi%C3%B3k t%C3%B6rl%C3%A9se a profiloldalon t%C3%B6rt%C3%A9nik, %C3%A9s a konzololdalon l%C3%A9v%C5%91 tulajdonosi szab%C3%A1ly vonatkozik r%C3%A1. ## A munkamenet-s%C3%BCti nem API-hiteles%C3%ADt%C5%91 adat A b%C3%B6ng%C3%A9sz%C5%91 munkamenete a konzolt hiteles%C3%ADti, nem az API-t. Az olyan OpenAI kliens, amely ilyet k%C3%BCld, 403 api_key_required hib%C3%A1val elutas%C3%ADt%C3%A1sra ker%C3%BCl, %C3%A9s helyette API-kulcsot kell haszn%C3%A1lnia. Az itteni elutas%C3%ADt%C3%A1s megnevez egy k%C3%B3dot, %C3%ADgy a migr%C3%A1ci%C3%B3 el%C3%A1gazhat r%C3%A1, %C3%A9s minden v%C3%A1lasz llmeu blokkja megmondja, mi t%C3%B6rt%C3%A9nt val%C3%B3j%C3%A1ban.