Files
OmniRoute/src/i18n/messages/no.json

2353 lines
116 KiB
JSON
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"common": {
"save": "Lagre",
"cancel": "Avbryt",
"delete": "Slett",
"loading": "Laster inn...",
"error": "Det oppsto en feil",
"success": "Suksess",
"confirm": "Er du sikker?",
"refresh": "Oppdater",
"close": "Lukk",
"add": "Legg til",
"edit": "Rediger",
"search": "Søk",
"back": "Tilbake",
"next": "Neste",
"submit": "Send inn",
"reset": "Tilbakestill",
"copy": "Kopier",
"copied": "Kopiert!",
"enabled": "Aktivert",
"disabled": "Deaktivert",
"active": "Aktiv",
"inactive": "Inaktiv",
"noData": "Ingen data tilgjengelig",
"configure": "Konfigurer",
"manage": "Administrer",
"name": "Navn",
"actions": "Handlinger",
"status": "Status",
"type": "Type",
"model": "Modell",
"models": "modeller",
"provider": "Leverandør",
"account": "Konto",
"time": "Tid",
"details": "Detaljer",
"created": "Opprettet",
"lastUsed": "Sist brukt",
"loadMore": "Last inn mer",
"noResults": "Ingen resultater funnet",
"reloadPage": "Last inn siden på nytt",
"connected": "Tilkoblet",
"disconnected": "Koblet fra",
"notConfigured": "Ikke konfigurert",
"testConnection": "Test tilkobling",
"enable": "Aktiver",
"disable": "Deaktiver",
"columns": "Kolonner",
"newest": "Nyeste",
"oldest": "Eldst",
"all": "Alle",
"none": "Ingen",
"yes": "Ja",
"no": "Nei",
"warning": "Advarsel",
"note": "Merk",
"free": "Gratis",
"skipToContent": "Gå til innhold"
},
"sidebar": {
"home": "Hjem",
"dashboard": "Dashbord",
"providers": "Leverandører",
"combos": "Combos",
"usage": "Bruk",
"analytics": "Analytics",
"costs": "Kostnader",
"health": "Helse",
"limits": "Grenser og kvoter",
"cliTools": "CLI-verktøy",
"media": "Medier",
"settings": "Innstillinger",
"translator": "Oversetter",
"docs": "Dokumenter",
"issues": "Problemer",
"endpoint": "Endepunkt",
"mcp": "MCP",
"a2a": "A2A",
"apiManager": "API-behandler",
"logs": "Logger",
"auditLog": "Revisjonslogg",
"shutdown": "Avslutning",
"restart": "Start på nytt",
"shutdownConfirm": "Slå av OmniRoute?",
"restartConfirm": "Starte OmniRoute på nytt?",
"version": "v{version}",
"debug": "Feilsøk",
"system": "System",
"help": "Hjelp",
"serverDisconnected": "Server frakoblet",
"serverDisconnectedMsg": "Proxy-serveren er stoppet eller starter på nytt.",
"expandSidebar": "Utvid sidefeltet",
"collapseSidebar": "Skjul sidefeltet",
"themes": "Themes",
"presetColors": "Popular colors",
"createTheme": "Create theme",
"chooseColor": "Pick one color",
"themeCoral": "Coral",
"themeBlue": "Blue",
"themeRed": "Red",
"themeGreen": "Green",
"themeViolet": "Violet",
"themeOrange": "Orange",
"themeCyan": "Cyan"
},
"themesPage": {
"title": "Themes",
"description": "Choose a preset theme or create your own with a single color",
"presetColors": "Popular colors",
"customTheme": "Custom theme",
"customThemeDesc": "Click create theme and pick one color",
"createTheme": "Create theme",
"activePreset": "Active theme"
},
"header": {
"logout": "Logg ut",
"language": "Språk",
"providers": "Leverandører",
"providerDescription": "Administrer AI-leverandørtilkoblingene dine",
"combos": "Combos",
"comboDescription": "Modellkombinasjoner med fallback",
"usage": "Bruk og analyse",
"usageDescription": "Overvåk API-bruken din, tokenforbruk og forespørselslogger",
"analytics": "Analytics",
"analyticsDescription": "Diagrammer, trender og evalueringsinnsikt",
"cliTools": "CLI-verktøy",
"cliToolsDescription": "Konfigurer CLI-verktøy",
"home": "Hjem",
"homeDescription": "Velkommen til OmniRoute",
"endpoint": "Endepunkt",
"endpointDescription": "API-endepunktkonfigurasjon",
"mcp": "MCP Management",
"mcpDescription": "Monitor MCP server process, tools, and operational controls",
"a2a": "A2A Management",
"a2aDescription": "Monitor Agent2Agent status, tasks, and streaming activity",
"settings": "Innstillinger",
"settingsDescription": "Administrer dine preferanser",
"openaiCompatible": "OpenAI-kompatibel",
"anthropicCompatible": "Antropisk kompatibel",
"media": "Media",
"mediaDescription": "Generate images, videos, and music",
"themes": "Themes",
"themesDescription": "Choose a color theme for the whole dashboard panel"
},
"home": {
"quickStart": "Rask start",
"quickStartDesc": "Kom i gang i 4 trinn. Koble til leverandører, rutemodeller, overvåk alt.",
"fullDocs": "Fulle dokumenter",
"step1Title": "1. Opprett API-nøkkel",
"step1Desc": "Gå til <endpoint>Endpoint</endpoint> -> Registrerte nøkler. Generer én nøkkel per miljø.",
"step2Title": "2. Koble til leverandører",
"step2Desc": "Legg til kontoer i <providers>Providers</providers>. Støtter OAuth, API Key og gratis nivåer.",
"step3Title": "3. Pek klienten din",
"step3Desc": "Angi basis-URL til {url} i IDE- eller API-klienten.",
"step4Title": "4. Overvåk og optimaliser",
"step4Desc": "Spor tokens, kostnader og feil i <logs>Request Logs</logs> og <analytics>Analytics</analytics>.",
"providersOverview": "Oversikt over leverandører",
"configuredOf": "{configured} konfigurert av {total} tilgjengelige leverandører",
"noModelsAvailable": "Ingen modeller tilgjengelig for denne leverandøren.",
"configureFirst": "Konfigurer en tilkobling først i {providers}",
"configureProvider": "Konfigurer leverandør",
"modelAvailable": "{count} modell tilgjengelig",
"modelsAvailable": "{count} modeller tilgjengelig",
"connectionsActive": "{count} tilkobling aktiv",
"connectionsActivePlural": "{count} tilkoblinger aktive",
"copyModelName": "Kopier modellnavnet",
"documentation": "Dokumentasjon",
"healthMonitor": "Helsemonitor",
"reportIssue": "Rapporter problem",
"activeError": "{active} aktiv · {errors} feil",
"oauthLabel": "OAuth",
"apiKeyLabel": "API-nøkkel",
"requestsShort": "{count} req",
"providerModelsTitle": "{provider} - Modeller",
"copiedModel": "Kopiert: {model}",
"aliasLabel": "alias"
},
"analytics": {
"title": "Analytics",
"overviewDescription": "Overvåk API-bruksmønstre, tokenforbruk, kostnader og aktivitetstrender på tvers av alle leverandører og modeller.",
"evalsDescription": "Kjør evalueringspakker for å teste og validere LLM-endepunktene dine. Sammenlign modellkvalitet, registrer regresjoner og benchmark latens.",
"overview": "Oversikt",
"evals": "Evals"
},
"apiManager": {
"title": "API-nøkler",
"createKey": "Opprett API-nøkkel",
"key": "Nøkkel",
"revokeKey": "Tilbakekall nøkkel",
"revokeConfirm": "Er du sikker på at du vil tilbakekalle denne API-nøkkelen?",
"noKeys": "Ingen API-nøkler ennå",
"noKeysDesc": "Lag din første API-nøkkel for å autentisere forespørsler til endepunktet ditt",
"keyLabel": "Nøkkeletikett",
"permissions": "Tillatelser",
"expiresAt": "Utløper",
"never": "Aldri",
"revoke": "Oppheve",
"showKey": "Vis nøkkel",
"hideKey": "Skjul nøkkel",
"copyKey": "Kopier API-nøkkel",
"allModels": "Alle modeller",
"selectedModels": "Utvalgte modeller",
"readOnly": "Kun lesetilgang",
"fullAccess": "Full tilgang",
"keyManagement": "API Key Management",
"keyManagementDesc": "Opprett og administrer API-nøkler for autentisering av forespørsler til endepunktet ditt",
"totalKeys": "Totalnøkler",
"restricted": "Begrenset",
"totalRequests": "Totalt antall forespørsler",
"modelsAvailable": "Modeller tilgjengelig",
"registeredKeys": "Registrerte nøkler",
"keysRegistered": "{count} nøkler registrert",
"keyRegistered": "{count} nøkkel registrert",
"keysSecurityNote": "Hver nøkkel isolerer brukssporing og kan trekkes tilbake uavhengig. Nøkler er maskert etter opprettelse for sikkerhet.",
"createFirstKey": "Lag din første nøkkel",
"name": "Navn",
"usage": "Bruk",
"created": "Opprettet",
"actions": "Handlinger",
"reqs": "krav",
"neverUsed": "Aldri brukt",
"deleteConfirm": "Vil du slette denne API-nøkkelen?",
"usageTips": "Brukstips",
"tipAuth": "Bruk API-nøkler i autorisasjonsoverskriften som bærer DIN_KEY",
"tipSecure": "Nøkler vises bare én gang under opprettelsen oppbevar dem sikkert",
"tipSeparate": "Lag separate nøkler for forskjellige klienter eller miljøer",
"tipRestrict": "Begrens nøkler til spesifikke modeller for bedre sikkerhet og kostnadskontroll",
"keyName": "Nøkkelnavn",
"keyNamePlaceholder": "f.eks. produksjonsnøkkel, utviklingsnøkkel",
"keyNameDesc": "Velg et beskrivende navn for å identifisere formålet med denne nøkkelen",
"keyCreated": "API-nøkkel opprettet",
"keyCreatedSuccess": "Nøkkel ble opprettet!",
"keyCreatedNote": "Kopier og lagre denne nøkkelen nå den vises ikke igjen.",
"done": "Ferdig",
"savePermissions": "Lagre tillatelser",
"allowAll": "Tillat alle",
"restrict": "Begrens",
"allowAllInfo": "Denne nøkkelen har tilgang til alle tilgjengelige modeller.",
"restrictInfo": "Denne nøkkelen har tilgang til {selected} av {total}-modeller.",
"selected": "{count} valgt",
"all": "Alle",
"clear": "Klart",
"searchModels": "Søk etter modeller etter navn eller leverandør...",
"noModelsFound": "Ingen modeller funnet",
"keyNameRequired": "Nøkkelnavn er påkrevd",
"keyNameTooLong": "Nøkkelnavnet må være {max} tegn eller mindre",
"keyNameInvalid": "Nøkkelnavn kan bare inneholde bokstaver, tall, mellomrom, bindestreker og understreker",
"invalidKeyName": "Ugyldig nøkkelnavn",
"failedCreateKey": "Kunne ikke opprette nøkkel",
"failedCreateKeyRetry": "Kunne ikke opprette nøkkel. Vennligst prøv igjen.",
"invalidKeyId": "Ugyldig nøkkel-ID",
"failedDeleteKey": "Kunne ikke slette nøkkelen",
"failedDeleteKeyRetry": "Kunne ikke slette nøkkelen. Vennligst prøv igjen.",
"invalidModelsSelection": "Ugyldig modellvalg",
"cannotSelectMoreThanModels": "Kan ikke velge mer enn {max} modeller",
"failedUpdatePermissions": "Kunne ikke oppdatere tillatelser",
"failedUpdatePermissionsRetry": "Kunne ikke oppdatere tillatelser. Vennligst prøv igjen.",
"unknownProvider": "ukjent",
"copyMaskedKey": "Kopier maskert nøkkel",
"modelsCount": "{count, plural, one {# model} other {# models}}",
"lastUsedOn": "Siste: {date}",
"editPermissions": "Rediger tillatelser",
"deleteKey": "Slett nøkkel",
"model": "{count} modell",
"models": "{count} modeller",
"permissionsTitle": "Tillatelser: {name}",
"allowAllDesc": "Denne nøkkelen har tilgang til alle tilgjengelige modeller.",
"restrictDesc": "Denne nøkkelen har tilgang til {selectedCount} av {totalModels}-modeller.",
"selectedCount": "{count} valgt"
},
"auditLog": {
"title": "Revisjonslogg",
"searchPlaceholder": "Søkehandlinger...",
"action": "Handling",
"actor": "Skuespiller",
"target": "Mål",
"ipAddress": "IP-adresse",
"timestamp": "Tidsstempel",
"noEntries": "Ingen revisjonsoppføringer funnet",
"filterByAction": "Filtrer etter handling...",
"filterByActor": "Filtrer etter skuespiller...",
"filterEntriesAria": "Filtrer revisjonsloggoppføringer",
"filterByActionTypeAria": "Filtrer etter handlingstype",
"filterByActorAria": "Filtrer etter skuespiller",
"refreshAuditLogAria": "Oppdater revisjonslogg",
"tableAria": "Revisjonsloggoppføringer",
"failedFetchAuditLog": "Kunne ikke hente revisjonsloggen",
"notAvailable": "—",
"description": "Administrative handlinger og sikkerhetshendelser",
"showing": "Viser {count} oppføringer (offset {offset})",
"previous": "Forrige"
},
"media": {
"title": "Medialab",
"subtitle": "Generer bilder, videoer og musikk",
"model": "Model",
"prompt": "Prompt",
"generate": "Generer",
"generating": "Generating...",
"loadingModels": "Loading available models...",
"noModels": "No models available. Configure providers with media capabilities first.",
"error": "Generation Failed",
"result": "Result",
"imageDescription": "Generate images from text prompts using OpenAI, xAI, Together, Hyperbolic, SD WebUI, ComfyUI and more.",
"videoDescription": "Create videos with AnimateDiff, Stable Video Diffusion via ComfyUI or SD WebUI.",
"musicDescription": "Compose music using Stable Audio Open or MusicGen via ComfyUI."
},
"cliTools": {
"title": "CLI-verktøy",
"noActiveProviders": "Ingen aktive tilbydere",
"noActiveProvidersDesc": "Vennligst legg til og koble til leverandører først for å konfigurere CLI-verktøy.",
"mapModels": "Kartmodeller",
"testConnection": "Test tilkobling",
"connectionStatus": "Tilkoblingsstatus",
"configureEndpoint": "Konfigurer endepunkt",
"instructions": "Instruksjoner",
"modelMapping": "Modellkartlegging",
"baseUrl": "Base URL",
"apiKey": "API-nøkkel",
"configured": "Konfigurert",
"notConfigured": "Ikke konfigurert",
"notInstalled": "Ikke installert",
"custom": "Egendefinert",
"unknown": "Ukjent",
"lastSavedAt": "Sist lagret: {date}",
"never": "Aldri",
"justNow": "akkurat nå",
"minutesAgoShort": "{count}m siden",
"hoursAgoShort": "{count}t siden",
"daysAgoShort": "{count}d siden",
"monthsAgoShort": "{count}mnd siden",
"yearsAgoShort": "{count}y siden",
"runtimeCheckFailed": "Kjøretidssjekk mislyktes",
"yourApiKeyPlaceholder": "din-api-nøkkelen",
"modelPlaceholder": "leverandør/modell-id",
"configurationSaved": "Konfigurasjonen er lagret.",
"failedToSave": "Kunne ikke lagre konfigurasjonen.",
"noApiKeysCreateOne": "Ingen API-nøkler Opprett en på Nøkler-siden",
"defaultOmnirouteKey": "sk_omniroute (standard)",
"selectModel": "Velg modell",
"selectModelForAlias": "Velg modell for {alias}",
"selectModelForTool": "Velg modell for {tool}",
"select": "Velg",
"clear": "Klart",
"comingSoon": "Kommer snart",
"checkingRuntime": "Sjekker kjøretidsstatus ...",
"guideOnlyIntegration": "Integrasjon kun for guide (ingen lokal kjøretid kreves)",
"cliRuntimeDetected": "CLI kjøretid oppdaget og klar",
"cliFoundNotRunnable": "CLI funnet, men ikke kjørbar{reason}",
"cliRuntimeNotDetected": "CLI kjøretid ikke oppdaget",
"binary": "Binær",
"configPath": "Konfigurasjonsbane",
"configPathShort": "Konfig",
"failedCheckRuntimeStatus": "Kunne ikke sjekke kjøretidsstatus.",
"copy": "Kopier",
"copied": "Kopiert",
"copyConfig": "Kopier konfig",
"saveConfig": "Lagre konfig",
"selectionSaved": "Utvalget lagret",
"guide": "Veiledning",
"detected": "Oppdaget",
"notReady": "Ikke klar",
"active": "Aktiv",
"inactive": "Inaktiv",
"startMitm": "Start MITM",
"stopMitm": "Stopp MITM",
"mitmStarted": "MITM startet vellykket!",
"mitmStopped": "MITM stoppet vellykket!",
"failedStart": "Kunne ikke starte MITM",
"failedStop": "Kunne ikke stoppe MITM",
"saveMappings": "Lagre tilordninger",
"mappingsSaved": "Kartene er lagret!",
"failedSaveMappings": "Kunne ikke lagre tilordninger",
"howItWorks": "Slik fungerer det:",
"antigravityHowWorksDesc": "Antigravity sender forespørsler til Googles endepunkt. MITM avskjærer og omdirigerer dem til OmniRoute.",
"antigravityStep1": "1. Start MITM for å rute forespørsler gjennom OmniRoute.",
"antigravityStep2Prefix": "2. Legg til",
"antigravityStep2Suffix": "til vertsfilen din som 127.0.0.1.",
"antigravityStep3": "3. Åpne Antigravity og forespørsler vil bli fullført.",
"sudoPasswordRequiredTitle": "Sudo-passord kreves",
"sudoPasswordHint": "Administratorpassord kreves for å endre vertsfil og systemproxyinnstillinger.",
"enterSudoPassword": "Skriv inn sudo-passord",
"sudoPasswordRequiredError": "Sudo-passord kreves.",
"cancel": "Avbryt",
"confirm": "Bekreft",
"settingsApplied": "Innstillingene ble brukt!",
"failedApplySettings": "Kunne ikke bruke innstillingene",
"settingsReset": "Innstillinger tilbakestilt!",
"failedResetSettings": "Kunne ikke tilbakestille innstillingene",
"backupRestored": "Sikkerhetskopien gjenopprettet!",
"failedRestore": "Kunne ikke gjenopprette",
"checkingCli": "Sjekker {tool} CLI...",
"cliNotRunnable": "{tool} CLI installert, men ikke kjørbar",
"cliNotInstalled": "{tool} CLI ikke installert",
"cliNotDetected": "{tool} CLI ikke oppdaget",
"cliDetectedReady": "{tool} CLI oppdaget og klar",
"cliFoundFailedHealthcheck": "{tool} CLI ble funnet, men mislyktes med kjøretidshelsesjekk{reason}.",
"installCliPrompt": "Installer {tool} CLI for å bruke denne funksjonen.",
"installCodexPrompt": "Installer Codex CLI for å bruke funksjonen for automatisk bruk.",
"hide": "Skjul",
"howToInstall": "Hvordan installere",
"installationGuide": "Installasjonsveiledning",
"platforms": "macOS / Linux / Windows:",
"afterInstallationRun": "Etter installasjon, kjør",
"toVerify": "å verifisere.",
"current": "Gjeldende",
"baseUrlPlaceholder": "https://.../v1",
"resetToDefault": "Tilbakestill til standard",
"providerModelPlaceholder": "leverandør/modell-id",
"apply": "Søk",
"reset": "Tilbakestill",
"manualConfig": "Manuell konfig",
"backups": "Sikkerhetskopier",
"configBackups": "Konfigurer sikkerhetskopier",
"noBackupsYet": "Ingen sikkerhetskopier ennå. Sikkerhetskopier opprettes automatisk før hver bruk eller tilbakestilling.",
"restore": "Gjenopprett",
"backupRestoredReloading": "Sikkerhetskopien gjenopprettet! Laster inn status på nytt ...",
"failedRestoreBackup": "Kunne ikke gjenopprette sikkerhetskopien",
"applied": "Søkt!",
"failed": "Mislyktes",
"resetDone": "Tilbakestill!",
"omnirouteConfiguredOpenAiCompatible": "OmniRoute er konfigurert som OpenAI-kompatibel leverandør",
"provider": "Leverandør",
"model": "Modell",
"providers": "Leverandører",
"auth": "Auth",
"noApiKeysAvailable": "Ingen API-nøkler tilgjengelig",
"usingDefaultOmniroute": "Bruker standard: sk_omniroute",
"updateConfig": "Oppdater konfig",
"applyConfig": "Bruk Config",
"noBackupsAvailable": "Ingen sikkerhetskopier tilgjengelig.",
"profileSaved": "Profilen \"{name}\" er lagret!",
"failedSaveProfile": "Kunne ikke lagre profilen",
"profileActivated": "Profil aktivert!",
"failedActivateProfile": "Kunne ikke aktivere profilen",
"profiles": "Profiler",
"savedProfiles": "Lagrede profiler",
"noProfilesYet": "Ingen profiler er lagret ennå. Lagre gjeldende konfigurasjon som en profil nedenfor.",
"activate": "Aktiver",
"deleteProfile": "Slett profil",
"profileNamePlaceholder": "Profilnavn (f.eks. personlig konto)",
"saveCurrent": "Lagre gjeldende",
"codexAuthNotePrefix": "Codex bruker",
"codexAuthNoteMiddle": "med",
"codexAuthNoteSuffix": "Klikk \"Bruk\" for å konfigurere automatisk.",
"claudeManualConfiguration": "Claude CLI - Manuell konfigurasjon",
"codexManualConfiguration": "Codex CLI - Manual Configuration",
"droidManualConfiguration": "Factory Droid - Manuell konfigurasjon",
"openClawManualConfiguration": "Åpne Claw - Manuell konfigurasjon",
"clineManualConfiguration": "Cline manuell konfigurasjon",
"kiloManualConfiguration": "Kilokode manuell konfigurasjon",
"toolDescriptions": {
"antigravity": "Google Antigravity IDE med MITM",
"claude": "Antropisk Claude Code CLI",
"codex": "OpenAI Codex CLI",
"droid": "Factory Droid AI Assistant",
"openclaw": "Åpne Claw AI Assistant",
"cline": "Cline AI-kodingsassistent CLI",
"kilo": "Kilokode AI Assistant CLI",
"cursor": "Cursor AI Code Editor",
"continue": "Fortsett AI Assistant"
},
"guides": {
"cursor": {
"notes": {
"0": "Krever Cursor Pro-konto for å bruke denne funksjonen.",
"1": "Markøren ruter forespørsler gjennom sin egen server, så lokalt endepunkt støttes ikke. Aktiver Cloud Endpoint i Innstillinger."
},
"steps": {
"1": {
"title": "Åpne Innstillinger",
"desc": "Gå til Innstillinger -> Modeller"
},
"2": {
"title": "Aktiver OpenAI API",
"desc": "Aktiver alternativet \"OpenAI API-nøkkel\"."
},
"3": {
"title": "Base URL"
},
"4": {
"title": "API-nøkkel"
},
"5": {
"title": "Legg til egendefinert modell",
"desc": "Klikk \"Vis alle modeller\" -> \"Legg til egendefinert modell\""
},
"6": {
"title": "Velg modell"
}
}
},
"continue": {
"steps": {
"1": {
"title": "Åpne Config",
"desc": "Åpne Fortsett konfigurasjonsfil"
},
"2": {
"title": "API-nøkkel"
},
"3": {
"title": "Velg modell"
},
"4": {
"title": "Legg til modellkonfig",
"desc": "Legg til følgende konfigurasjon til modellarrayet ditt:"
}
}
}
}
},
"combos": {
"title": "Combos",
"description": "Lag modellkombinasjoner med vektet ruting og reservestøtte",
"createCombo": "Opprett kombinasjon",
"editCombo": "Rediger kombinasjon",
"deleteCombo": "Slett kombinasjon",
"noModels": "Ingen modeller",
"noModelsYet": "Ingen modeller lagt til ennå",
"addModel": "Legg til modell",
"addModelToCombo": "Legg til modell i kombinasjon",
"routingStrategy": "Rutingstrategi",
"maxRetries": "Max prøver på nytt",
"timeout": "Tidsavbrudd (ms)",
"healthcheck": "Helsesjekk",
"priority": "Prioritet",
"fallback": "Tilbakeslag",
"roundRobin": "Round Robin",
"random": "Tilfeldig",
"leastLatency": "Minste ventetid",
"comboName": "Kombinasjonsnavn",
"comboNamePlaceholder": "min-kombo",
"deleteConfirm": "Vil du slette denne kombinasjonen?",
"noCombosYet": "Ingen kombinasjoner ennå",
"comboCreated": "Kombinasjonen ble opprettet",
"comboUpdated": "Kombinasjonen ble oppdatert",
"comboDeleted": "Combo slettet",
"failedCreate": "Kunne ikke opprette kombinasjon",
"failedUpdate": "Kunne ikke oppdatere kombinasjonen",
"errorCreating": "Feil ved opprettelse av kombinasjon",
"errorUpdating": "Feil ved oppdatering av kombinasjon",
"errorDeleting": "Feil ved sletting av kombinasjon",
"testFailed": "Testforespørsel mislyktes",
"failedToggle": "Kunne ikke bytte kombinasjon",
"testResults": "Testresultater — {name}",
"resolvedBy": "Løst av:",
"more": "+{count} til",
"reqs": "krav",
"success": "suksess",
"proxyConfigured": "Proxy konfigurert",
"copyComboName": "Kopier kombinasjonsnavnet",
"enableCombo": "Aktiver kombinasjon",
"disableCombo": "Deaktiver kombinasjon",
"testCombo": "Testkombo",
"duplicate": "Duplikat",
"proxyConfig": "Proxy-konfigurasjon",
"nameRequired": "Navn er påkrevd",
"nameInvalid": "Bare bokstaver, tall, -, _, / og . tillatt",
"nameHint": "Bokstaver, tall, -, _, / og . tillatt",
"priorityDesc": "Sekvensiell fallback: prøver modell 1 først, deretter 2 osv.",
"weightedDesc": "Fordeler trafikk etter vektprosent med reserve",
"roundRobinDesc": "Sirkulær fordeling: hver forespørsel går til neste modell i rotasjon",
"randomDesc": "Ensartet tilfeldig valg, deretter fallback til gjenværende modeller",
"leastUsedDesc": "Velger modellen med færrest forespørsler, og balanserer belastningen over tid",
"costOptimizedDesc": "Ruter til den billigste modellen først basert på priser",
"models": "Modeller",
"autoBalance": "Autobalanse",
"advancedSettings": "Avanserte innstillinger",
"retryDelay": "Forsinkelse på nytt (ms)",
"concurrencyPerModel": "Samtidighet / modell",
"queueTimeout": "Tidsavbrudd for kø (ms)",
"advancedHint": "La stå tomt for å bruke globale standardinnstillinger. Disse overstyrer innstillingene per leverandør.",
"moveUp": "Flytt opp",
"moveDown": "Flytt ned",
"removeModel": "Fjern",
"saving": "Lagrer...",
"weighted": "Vektet",
"leastUsed": "Minst brukt",
"costOpt": "Cost-Opt",
"strategyGuideTitle": "How to use this strategy",
"strategyGuideWhen": "When to use",
"strategyGuideAvoid": "Avoid when",
"strategyGuideExample": "Example",
"strategyGuide": {
"priority": {
"when": "You have one preferred model and only want fallback on failure.",
"avoid": "You need request distribution across models.",
"example": "Primary coding model with cheaper backup for outages."
},
"weighted": {
"when": "You need controlled traffic split across models.",
"avoid": "You cannot maintain accurate weights over time.",
"example": "80% stable model + 20% canary model rollout."
},
"round-robin": {
"when": "You want predictable and even distribution.",
"avoid": "Models differ too much in latency or cost.",
"example": "Same model on multiple accounts to spread throughput."
},
"random": {
"when": "You want simple distribution with minimal setup.",
"avoid": "You need strict traffic guarantees.",
"example": "Quick prototyping with equivalent models."
},
"least-used": {
"when": "You want adaptive balancing based on live demand.",
"avoid": "Traffic is too low to benefit from usage balancing.",
"example": "Mixed workloads where one model often gets overloaded."
},
"cost-optimized": {
"when": "Cost reduction is your top priority.",
"avoid": "Pricing data is missing or outdated.",
"example": "Background or batch jobs where lower cost is preferred."
}
},
"advancedHelp": {
"maxRetries": "How many retries are attempted before failing a request.",
"retryDelay": "Initial wait between retries. Higher values reduce burst pressure.",
"timeout": "Maximum request duration before aborting.",
"healthcheck": "Skips unhealthy models/providers from routing decisions.",
"concurrencyPerModel": "Max simultaneous requests allowed per model in round-robin.",
"queueTimeout": "How long a request can wait in queue before timing out."
},
"templatesTitle": "Quick templates",
"templatesDescription": "Apply a starting profile, then adjust models and config.",
"templateApply": "Apply template",
"templateHighAvailability": "High availability",
"templateHighAvailabilityDesc": "Priority routing with health checks and safe retries.",
"templateCostSaver": "Cost saver",
"templateCostSaverDesc": "Cost-optimized routing for budget-first workloads.",
"templateBalanced": "Balanced load",
"templateBalancedDesc": "Least-used routing to spread demand over time.",
"usageGuideHide": "Hide",
"usageGuideDontShowAgain": "Don't show again",
"usageGuideShow": "Show guide",
"quickTestTitle": "Combo ready to validate",
"quickTestDescription": "Run a test now to confirm fallback and latency behavior.",
"testNow": "Test now",
"pricingCoverage": "Pricing coverage",
"pricingCoverageHint": "Cost-optimized works best when all combo models have pricing.",
"pricingAvailable": "Pricing available",
"pricingMissing": "No pricing",
"pricingAvailableShort": "priced",
"pricingMissingShort": "no-price",
"warningRoundRobinSingleModel": "Round-robin is most useful with at least 2 models.",
"warningCostOptimizedPartialPricing": "Only {priced} of {total} models have pricing. Routing may be partially cost-aware.",
"warningCostOptimizedNoPricing": "No pricing data found for this combo. Cost-optimized may route unexpectedly."
},
"costs": {
"title": "Kostnader",
"budget": "Budsjett",
"totalCost": "Total kostnad",
"breakdown": "Kostnadsfordeling",
"noData": "Ingen kostnadsdata",
"byModel": "Etter modell",
"byProvider": "Av leverandør"
},
"endpoint": {
"title": "API-endepunkt",
"available": "Tilgjengelige endepunkter",
"cloudProxy": "Cloud Proxy",
"disableConfirm": "Er du sikker på at du vil deaktivere skyproxy?",
"baseUrl": "Base URL",
"apiKeyLabel": "API-nøkkel",
"registeredKeys": "Registrerte nøkler",
"chatCompletions": "Chatfullføringer",
"responses": "Svar",
"listModels": "Liste over modeller",
"usingCloudProxy": "Bruker Cloud Proxy",
"usingLocalServer": "Bruker lokal server",
"machineId": "Maskin-ID: {id}...",
"disableCloud": "Deaktiver Cloud",
"enableCloud": "Aktiver Cloud",
"modelsAcrossEndpoints": "{models} modeller på tvers av {endpoints} endepunkter",
"chatDesc": "Streaming og ikke-streaming chat med alle leverandører",
"embeddings": "Innstøpinger",
"embeddingsDesc": "Tekstinnbygging for søk og RAG-rørledninger",
"imageGeneration": "Bildegenerering",
"imageDesc": "Generer bilder fra tekstmeldinger",
"rerank": "Ranger på nytt",
"rerankDesc": "Ranger dokumenter på nytt etter relevans for en spørring",
"audioTranscription": "Lydtranskripsjon",
"audioTranscriptionDesc": "Transkribere lydfiler til tekst (Whisper)",
"textToSpeech": "Tekst til tale",
"textToSpeechDesc": "Konverter tekst til tale med naturlig lyd",
"moderations": "Moderasjoner",
"moderationsDesc": "Innholdsmoderering og sikkerhetsklassifisering",
"responsesDesc": "OpenAI Responses API for Codex and advanced agentic workflows",
"listModelsDesc": "List all available models across all connected providers",
"settingsApiDesc": "Read and modify OmniRoute configuration via API",
"settingsApi": "Settings API",
"categoryCore": "Kjerne-API-er",
"categoryMedia": "Media & Multi-Modal",
"categoryUtility": "Verktøy & Administrasjon",
"enableCloudTitle": "Aktiver Cloud Proxy",
"whatYouGet": "Hva du vil få",
"cloudBenefitAccess": "Få tilgang til API-en din fra hvor som helst i verden",
"cloudBenefitShare": "Del enkelt endepunkt med teamet ditt",
"cloudBenefitPorts": "Du trenger ikke å åpne porter eller konfigurere brannmur",
"cloudBenefitEdge": "Rask globalt kantnettverk",
"cloudSessionNote": "Cloud vil beholde godkjenningsøkten din i 1 dag. Hvis den ikke brukes, slettes den automatisk.",
"cloudUnstableNote": "Cloud er for øyeblikket ustabil med Claude Code OAuth i noen tilfeller.",
"cloudConnected": "Cloud Proxy tilkoblet!",
"connectingToCloud": "Kobler til skyen ...",
"verifyingConnection": "Bekrefter tilkoblingen …",
"connecting": "Kobler til...",
"verifying": "Bekrefter...",
"connected": "Tilkoblet!",
"disableCloudTitle": "Deaktiver Cloud Proxy",
"disableWarning": "Alle autentiseringsøkter vil bli slettet fra skyen.",
"syncingData": "Synkroniserer siste data ...",
"disablingCloud": "Deaktiverer skyen …",
"syncing": "Synkroniserer...",
"disabling": "Deaktiverer...",
"cloudConnectedVerified": "Cloud Proxy tilkoblet og bekreftet!",
"connectedVerificationPending": "Tilkoblet — bekreftelse venter",
"connectedVerificationPendingWithError": "Tilkoblet — bekreftelse venter: {error}",
"cloudDisabledSuccess": "Cloud deaktivert",
"syncedSuccess": "Synkronisert vellykket",
"failedDisable": "Kunne ikke deaktivere skyen",
"failedEnable": "Kunne ikke aktivere skyen",
"cloudRequestTimeout": "Tidsavbrudd for skyforespørsel",
"cloudRequestFailed": "Skyforespørsel mislyktes",
"cloudWorkerUnreachable": "Kunne ikke nå skyarbeideren. Sørg for at skytjenesten kjører (npm kjør dev in /cloud).",
"connectionFailed": "Tilkobling mislyktes",
"syncFailed": "Kunne ikke synkronisere skydata",
"providerModelsTitle": "{provider} — Modeller",
"noModelsForProvider": "Ingen modeller tilgjengelig for denne leverandøren.",
"chat": "Chat",
"embedding": "Innebygging",
"image": "Bilde",
"custom": "tilpasset",
"modelsCount": "{count, plural, one {# model} other {# models}}",
"sectionTitle": "Integration Surface",
"sectionDescription": "OpenAI-compatible APIs and operational protocol endpoints",
"tabApis": "OpenAI-compatible APIs",
"tabProtocols": "Protocols",
"tabsAria": "Endpoint sections",
"protocolsTitle": "Protocols",
"protocolsDescription": "MCP and A2A are first-class endpoints with dedicated observability and controls.",
"mcpCardTitle": "MCP Server",
"mcpCardDescription": "Model Context Protocol over stdio",
"a2aCardTitle": "A2A Server",
"a2aCardDescription": "Agent2Agent JSON-RPC endpoint",
"protocolToolsLabel": "Tools",
"protocolTasksLabel": "Tasks",
"protocolActiveStreamsLabel": "Active streams",
"protocolLastActivity": "Last activity",
"quickStart": "Quick Start",
"openMcpDashboard": "Open MCP management",
"openA2aDashboard": "Open A2A management",
"mcpQuickStartTitle": "MCP Quick Start",
"mcpQuickStartStep1": "Run the MCP server via `omniroute --mcp`.",
"mcpQuickStartStep2": "Configure your MCP client to connect over stdio transport.",
"mcpQuickStartStep3": "Påkall verktøy som `omniroute_get_health` og `omniroute_list_combos`.",
"a2aQuickStartTitle": "A2A hurtigstart",
"a2aQuickStartStep1": "Oppdag agentkortet på `/.well-known/agent.json`.",
"a2aQuickStartStep2": "Send JSON-RPC-forespørsler til `POST /a2a` ved å bruke `message/send` eller `message/stream`.",
"a2aQuickStartStep3": "Spor og kontroller oppgaver ved å bruke `tasks/get` og `tasks/cancel`."
},
"mcpDashboard": {
"loading": "Laster inn MCP-dashbordet ...",
"activate": "aktivere",
"deactivate": "deaktivere",
"confirmSwitchCombo": "Bekreft {action} kombinasjonen \"{combo}\"?",
"switchComboFailed": "Kunne ikke bytte kombinasjonstilstand.",
"switchComboSuccess": "Combo \"{combo}\" updated.",
"confirmApplyProfile": "Apply resilience profile \"{profile}\"?",
"applyProfileFailed": "Failed to apply resilience profile.",
"applyProfileSuccess": "Profile \"{profile}\" applied.",
"confirmResetBreakers": "Reset all circuit breakers?",
"resetBreakersFailed": "Failed to reset circuit breakers.",
"resetBreakersSuccess": "Circuit breakers reset.",
"processStatus": "Process status",
"online": "Online",
"offline": "Offline",
"pid": "PID",
"sessionUptime": "Session uptime",
"lastHeartbeat": "Last heartbeat",
"activity24h": "Activity (24h)",
"totalCalls": "Total calls",
"successRate": "Success rate",
"avgLatency": "Avg latency",
"topTools": "Top tools",
"noToolCalls24h": "No tool calls in the last 24 hours.",
"runtimeDetails": "Runtime details",
"transport": "Transport",
"scopesEnforced": "Scopes enforced",
"yes": "yes",
"no": "no",
"lastCall": "Last call",
"heartbeatPath": "Heartbeat path",
"operationalControls": "Operational controls",
"switchCombo": "Switch combo",
"inactive": "inactive",
"active": "active",
"activateCombo": "Activate combo",
"deactivateCombo": "Deactivate combo",
"applyResilienceProfile": "Apply resilience profile",
"profileAggressive": "aggressive",
"profileBalanced": "balanced",
"profileConservative": "conservative",
"applyProfile": "Apply profile",
"resetCircuitBreakers": "Reset circuit breakers",
"resetCircuitBreakersHelp": "Clears current breaker state and failure counters for providers.",
"resetAllBreakers": "Reset all breakers",
"toolsAndScopes": "Tools and scopes",
"tableTool": "Tool",
"tableScopes": "Scopes",
"tablePhase": "Phase",
"tableAudit": "Audit",
"auditLog": "Audit log",
"auditSummary": "Calls: {total} | page {page} of {totalPages}",
"allTools": "All tools",
"allResults": "All results",
"success": "Success",
"failure": "Failure",
"apiKeyIdPlaceholder": "apiKeyId",
"loadingAuditEntries": "Loading audit entries...",
"noAuditEntriesForFilters": "No audit entries found for current filters.",
"tableTimestamp": "Timestamp",
"tableDuration": "Duration",
"tableResult": "Result",
"tableApiKey": "API key",
"failed": "failed",
"previous": "Previous",
"next": "Next"
},
"a2aDashboard": {
"loading": "Loading A2A dashboard...",
"confirmCancelTask": "Cancel task {taskId}?",
"cancelTaskFailed": "Failed to cancel task.",
"cancelTaskSuccess": "Task {taskId} cancelled.",
"smokeSendFailed": "message/send smoke test failed.",
"smokeSendSuccessWithTask": "message/send ok (task {taskId}).",
"smokeSendSuccess": "message/send ok.",
"smokeStreamFailed": "message/stream smoke test failed.",
"smokeStreamSuccessWithTask": "message/stream ok (task {taskId}{stateSuffix}).",
"smokeStreamNoTaskId": "message/stream finished without task id.",
"health": "Health",
"ok": "ok",
"totalTasks": "Total tasks",
"activeStreams": "Active streams",
"lastTask": "Last task",
"taskStateOverview": "Task state overview",
"state": {
"submitted": "submitted",
"working": "working",
"completed": "completed",
"failed": "failed",
"cancelled": "cancelled"
},
"agentCard": "Agent card",
"version": "Version",
"url": "URL",
"capabilities": "Capabilities",
"agentCardNotAvailable": "Agent card not available.",
"quickValidation": "Quick validation",
"quickValidationDescription": "Executes smoke calls through the live `/a2a` endpoint.",
"runMessageSend": "Run message/send",
"runMessageStream": "Run message/stream",
"taskManagement": "Task management",
"taskSummary": "{total} tasks | page {page} of {totalPages}",
"allStates": "all",
"allSkills": "all skills",
"loadingTasks": "Loading tasks...",
"noTasksForFilters": "No tasks found for current filters.",
"tableTask": "Task",
"tableSkill": "Skill",
"tableState": "State",
"tableUpdated": "Updated",
"tableActions": "Actions",
"view": "View",
"cancel": "Cancel",
"previous": "Previous",
"next": "Next",
"taskDetail": "Task detail",
"close": "Close",
"metadata": "Metadata",
"events": "Events",
"artifacts": "Artifacts"
},
"health": {
"title": "Systemhelse",
"description": "Sanntidsovervåking av din OmniRoute-forekomst",
"healthy": "Sunn",
"degraded": "Degradert",
"down": "Ned",
"uptime": "Oppetid",
"memory": "Minne",
"memoryRss": "Minne (RSS)",
"heap": "Heap",
"cpu": "CPU",
"database": "Database",
"version": "Versjon",
"lastCheck": "Siste sjekk",
"providerHealth": "Leverandørhelse",
"systemMetrics": "Systemmålinger",
"tokenHealth": "Token Health",
"refreshAll": "Oppdater alle",
"checkNow": "Sjekk nå",
"loadingHealth": "Laster inn helsedata ...",
"failedToLoad": "Kunne ikke laste inn helsedata: {error}",
"retry": "Prøv på nytt",
"allOperational": "Alle systemer i drift",
"issuesDetected": "Systemproblemer oppdaget",
"updatedAt": "Oppdatert {time}",
"latency": "Latens",
"latencyP50": "p50",
"latencyP95": "s95",
"latencyP99": "s99",
"millisecondsShort": "{value}ms",
"notAvailable": "—",
"totalRequests": "Totalt antall forespørsler",
"noDataYet": "Ingen data ennå",
"promptCache": "Spør Cache",
"entries": "Oppføringer",
"hitRate": "Trefffrekvens",
"hitsMisses": "Treffer / savner",
"signatureCache": "Signaturbuffer",
"signatureDefaults": "Standarder",
"signatureTool": "Verktøy",
"signatureFamily": "Familie",
"signatureSession": "Sesjon",
"recovering": "Gjenoppretter",
"noCBData": "Ingen strømbryterdata tilgjengelig. Kom med noen forespørsler først.",
"providerHealthStatusAria": "Leverandørens helsestatus",
"issuesLabel": "Problemer oppdaget",
"operational": "Operasjonell",
"providers": "Leverandører",
"healthyCount": "{count} sunn",
"nodeVersion": "Node {version}",
"failures": "{count} feil",
"failuresPlural": "{count} feil",
"lastFailure": "Sist",
"rateLimitStatus": "Takstgrensestatus",
"activeLimiters": "{count} aktiv begrenser",
"activeLimitersPlural": "{count} aktive begrensere",
"queued": "I kø",
"queuedCount": "{count} i kø",
"running": "løping",
"runningCount": "{count} kjører",
"ok": "OK",
"activeLockouts": "Aktive lockouter",
"resetConfirm": "Tilbakestille alle effektbrytere til sunn tilstand? Dette vil slette alle feiltellinger og gjenopprette alle leverandører til driftsstatus.",
"resetAllTitle": "Tilbakestill alle effektbrytere til sunn tilstand",
"resetting": "Tilbakestiller...",
"resetAll": "Tilbakestill alle",
"until": "Inntil {time}"
},
"limits": {
"title": "Grenser og kvoter",
"rateLimit": "Satsgrense",
"remaining": "Gjenværende",
"requestsPerMinute": "Forespørsler/min",
"tokensPerMinute": "Poletter/min",
"dailyLimit": "Daglig grense"
},
"logs": {
"title": "Logger",
"requestLogs": "Be om logger",
"proxyLogs": "Proxy-logger",
"auditLog": "Revisjonslogg",
"console": "Konsoll",
"auditLogDesc": "Administrative handlinger og sikkerhetshendelser",
"loading": "Laster inn...",
"refresh": "Oppdater",
"filterByAction": "Filtrer etter handling...",
"filterByActor": "Filtrer etter skuespiller...",
"filterEntriesAria": "Filtrer revisjonsloggoppføringer",
"filterByActionTypeAria": "Filtrer etter handlingstype",
"filterByActorAria": "Filtrer etter skuespiller",
"refreshAuditLogAria": "Oppdater revisjonslogg",
"tableAria": "Revisjonsloggoppføringer",
"failedFetchAuditLog": "Kunne ikke hente revisjonsloggen",
"showing": "Viser {count} oppføringer (offset {offset})",
"search": "Søk",
"timestamp": "Tidsstempel",
"action": "Handling",
"actor": "Skuespiller",
"target": "Mål",
"details": "Detaljer",
"ipAddress": "IP-adresse",
"notAvailable": "—",
"noEntries": "Ingen revisjonsloggoppføringer funnet",
"previous": "Forrige",
"next": "Neste"
},
"onboarding": {
"welcome": "Velkommen",
"security": "Sikkerhet",
"test": "Test",
"ready": "Klar!",
"setPassword": "Angi passord",
"addProvider": "Legg til din første leverandør",
"getStarted": "Kom i gang",
"skip": "Hopp over",
"skipWizard": "Hopp over veiviseren helt",
"skipPassword": "Hopp over passordoppsett",
"skipAndContinue": "Hopp over og fortsett",
"passwordLabel": "Passord",
"confirmPassword": "Bekreft passord",
"enterPassword": "Skriv inn passord",
"confirmPasswordPlaceholder": "Bekreft passord",
"passwordsMismatch": "Passord stemmer ikke",
"setupComplete": "Oppsettet er fullført!",
"goToDashboard": "Gå til Dashboard →",
"welcomeDesc": "OmniRoute er din lokale AI API-proxy. Den ruter forespørsler til flere AI-leverandører med lastbalansering, failover og brukssporing.",
"multiProvider": "Multileverandør",
"usageTracking": "Brukssporing",
"apiKeyMgmt": "API Key Mgmt",
"securityDesc": "Angi et passord for å beskytte dashbordet ditt, eller hopp over nå.",
"providerDesc": "Koble til din første AI-leverandør. Du kan legge til flere senere.",
"apiKeyRequired": "API-nøkkel (påkrevd)",
"customUrlOptional": "Egendefinert URL (valgfritt)",
"testDesc": "La oss kontrollere at leverandørtilkoblingen din fungerer.",
"runTest": "Kjør tilkoblingstest",
"testingConnection": "Tester tilkoblingen...",
"connectionSuccessful": "Tilkoblingen var vellykket! Leverandøren din er klar.",
"noProviderFound": "Ingen leverandør funnet. Du kan legge til en fra dashbordet senere.",
"testFailed": "Testen mislyktes, men du kan konfigurere dette senere.",
"couldNotTest": "Kunne ikke teste akkurat nå. Du kan teste fra dashbordet.",
"doneDesc": "Du er klar! OmniRoute-forekomsten din er konfigurert og klar til å fullføre AI-forespørsler.",
"yourEndpoint": "Ditt endepunkt:",
"continue": "Fortsett",
"retry": "Prøv på nytt",
"failedSetPassword": "Kunne ikke angi passord. Prøv igjen.",
"failedAddProvider": "Kunne ikke legge til leverandør. Prøv igjen.",
"connectionError": "Tilkoblingsfeil. Vennligst prøv igjen.",
"provider": "Leverandør"
},
"providers": {
"title": "Leverandører",
"addProvider": "Legg til leverandør",
"editProvider": "Rediger leverandør",
"deleteProvider": "Slett leverandør",
"noProviders": "Ingen leverandører er konfigurert",
"modelAvailability": "Modelltilgjengelighet",
"accounts": "Kontoer",
"newAccount": "Ny konto",
"deleteConfirm": "Er du sikker på at du vil slette denne leverandøren?",
"testing": "Tester...",
"testConnection": "Test tilkobling",
"testSuccess": "Tilkoblingen var vellykket",
"testFailed": "Tilkobling mislyktes",
"available": "Tilgjengelig",
"cooldown": "Nedkjøling",
"unavailable": "Utilgjengelig",
"unknown": "Ukjent",
"oauthLabel": "OAuth",
"compatibleLabel": "Kompatibel",
"chat": "Chat",
"responses": "Svar",
"messages": "Meldinger",
"oauthProviders": "OAuth-leverandører",
"freeProviders": "Gratis leverandører",
"apiKeyProviders": "API-nøkkelleverandører",
"compatibleProviders": "API-nøkkel-kompatible leverandører",
"testAll": "Test alle",
"testAllOAuth": "Test alle OAuth-tilkoblinger",
"testAllFree": "Test alle gratis tilkoblinger",
"testAllApiKey": "Test alle API-nøkkeltilkoblinger",
"testAllCompatible": "Test alle kompatible tilkoblinger",
"connected": "{count} Tilkoblet",
"errorCount": "{count} Feil ({code})",
"errorCountNoCode": "{count} Feil",
"noConnections": "Ingen tilkoblinger",
"disabled": "Deaktivert",
"enableProvider": "Aktiver leverandør",
"disableProvider": "Deaktiver leverandør",
"testResults": "Testresultater",
"noCompatibleYet": "Ingen kompatible leverandører lagt til ennå",
"compatibleHint": "Bruk knappene ovenfor for å legge til OpenAI eller Anthropic-kompatible endepunkter",
"addOpenAICompatible": "Legg til OpenAI-kompatibel",
"addAnthropicCompatible": "Legg til Antropisk kompatibel",
"addNewProvider": "Legg til ny leverandør",
"backToProviders": "Tilbake til Leverandører",
"configureNewProvider": "Konfigurer en ny AI-leverandør som skal brukes med applikasjonene dine.",
"providerLabel": "Leverandør",
"selectProvider": "Velg en leverandør",
"selectedProvider": "Valgt leverandør",
"authMethod": "Autentiseringsmetode",
"apiKeyLabel": "API-nøkkel",
"apiKeyRequired": "API-nøkkel kreves",
"selectProviderRequired": "Velg en leverandør",
"enterApiKey": "Skriv inn API-nøkkelen din",
"apiKeySecure": "API-nøkkelen din vil bli kryptert og lagret sikkert.",
"oauth2Connect": "Koble til OAuth2",
"oauth2Label": "OAuth2",
"oauth2Desc": "Koble til kontoen din med OAuth2-autentisering.",
"displayName": "Vist navn",
"displayNamePlaceholder": "f.eks. Production API, Dev Environment",
"displayNameHint": "Valgfritt. Et vennlig navn for å identifisere denne konfigurasjonen.",
"active": "Aktiv",
"activeDescription": "Aktiver denne leverandøren for bruk i appene dine",
"cancel": "Avbryt",
"createProvider": "Opprett leverandør",
"failedCreate": "Kunne ikke opprette leverandør",
"errorOccurred": "Det oppsto en feil. Vennligst prøv igjen.",
"modelStatus": "Modellstatus",
"allModelsOperational": "Alle modeller i drift",
"modelsWithIssues": "{count} modell(er) med problemer",
"allModelsNormal": "Alle modellene reagerer normalt.",
"cooldownCleared": "Nedkjøling ryddet for {model}",
"failedClearCooldown": "Kunne ikke fjerne nedkjøling",
"loadingAvailability": "Laster modelltilgjengelighet ...",
"clearCooldown": "Klart",
"clearing": "Rydder...",
"until": "Inntil {time}",
"providerTestFailed": "Providertesten mislyktes",
"modeTest": "{mode} Test",
"passedCount": "{count} bestått",
"failedCount": "{count} mislyktes",
"testedCount": "{count} testet",
"millisecondsAbbr": "{value}ms",
"okShort": "OK",
"errorShort": "FEIL",
"noActiveConnectionsInGroup": "Fant ingen aktive tilkoblinger for denne gruppen.",
"allTestsPassed": "Alle {total} tester bestått",
"testSummary": "{passed}/{total} bestått, {failed} mislyktes",
"nameLabel": "Navn",
"prefixLabel": "Prefiks",
"baseUrlLabel": "Base URL",
"apiTypeLabel": "API-type",
"prefixHint": "Obligatorisk. Unikt prefiks for modellnavn.",
"nameHint": "Obligatorisk. En vennlig etikett for denne noden.",
"baseUrlHint": "Obligatorisk. Leverandørens API-base-URL.",
"anthropicPrefixPlaceholder": "ac-prod",
"openaiPrefixPlaceholder": "oc-prod",
"anthropicBaseUrlPlaceholder": "https://api.anthropic.com/v1",
"openaiBaseUrlPlaceholder": "https://api.openai.com/v1",
"validateConnection": "Bekreft tilkoblingen",
"validating": "Validerer...",
"connectionValid": "Tilkoblingen er gyldig!",
"connectionFailed": "Tilkobling mislyktes. Sjekk URL og nøkkel.",
"testKeyLabel": "Test API-nøkkel",
"testKeyPlaceholder": "sk-... (kun for validering)",
"providerNotFound": "Finner ikke leverandør",
"deleteConnectionConfirm": "Vil du slette denne tilkoblingen?",
"failedSetAlias": "Kunne ikke angi alias",
"failedSaveConnection": "Kunne ikke lagre tilkoblingen",
"failedSaveConnectionRetry": "Kunne ikke lagre tilkoblingen. Vennligst prøv igjen.",
"failedRetestConnection": "Kunne ikke teste tilkoblingen på nytt",
"deleteCompatibleNodeConfirm": "Vil du slette denne {type}-kompatible noden?",
"anthropicCompatibleDetails": "Antropisk kompatible detaljer",
"openaiCompatibleDetails": "OpenAI-kompatible detaljer",
"messagesApi": "Messages API",
"responsesApi": "Responses API",
"chatCompletions": "Chatfullføringer",
"importingModels": "Importerer...",
"importFromModels": "Importer fra /models",
"addConnectionToImport": "Legg til en tilkobling for å aktivere import.",
"noModelsConfigured": "Ingen modeller er konfigurert",
"connectionCount": "{count} tilkobling(er)",
"fetchingModels": "Henter tilgjengelige modeller...",
"failedFetchModels": "Kunne ikke hente modellene",
"noModelsFound": "Ingen modeller funnet",
"importFailed": "Import mislyktes",
"noNewModelsAdded": "Ingen nye modeller ble lagt til.",
"adding": "Legger til...",
"importingModelsTitle": "Importere modeller",
"copyModel": "Kopier modell",
"removeModel": "Fjern modellen",
"rateLimitProtected": "Beskyttet",
"rateLimitUnprotected": "Ubeskyttet",
"enableRateLimitProtection": "Klikk for å aktivere satsgrensebeskyttelse",
"disableRateLimitProtection": "Klikk for å deaktivere satsgrensebeskyttelse",
"productionKey": "Produksjonsnøkkel",
"enterNewApiKey": "Skriv inn ny API-nøkkel",
"optional": "Valgfritt",
"anthropicCompatibleName": "Antropisk kompatibel",
"openaiCompatibleName": "OpenAI-kompatibel",
"failedImportModels": "Kunne ikke importere modeller",
"noModelsReturnedFromEndpoint": "Ingen modeller returnert fra /models endepunkt.",
"importingModelsProgress": "Importerer {current} av {total} modeller ...",
"foundModelsStartingImport": "Fant {count} modeller. Starter import...",
"importingModelById": "Importerer {modelId}...",
"importSuccessCount": "Vellykket importert {count, plural, one {# model} other {# models}}!",
"noNewModelsAddedExisting": "Ingen nye modeller ble lagt til (alle finnes allerede).",
"importDoneCount": "✓ Ferdig! {count, plural, one {# model imported.} other {# models imported.}}",
"unexpectedErrorOccurred": "Det oppstod en uventet feil",
"connectionCountLabel": "{count, plural, one {# connection} other {# connections}}",
"messagesPath": "meldinger",
"responsesPath": "svar",
"chatCompletionsPath": "chat/fullføringer",
"add": "Legg til",
"edit": "Rediger",
"delete": "Slett",
"anthropic": "Antropisk",
"openai": "OpenAI",
"singleConnectionPerCompatible": "Bare én tilkobling er tillatt per kompatibel node. Legg til en annen node hvis du trenger flere tilkoblinger.",
"connections": "Tilkoblinger",
"providerProxyTitleConfigured": "Leverandørproxy: {host}",
"configured": "konfigurert",
"providerProxyConfigureHint": "Konfigurer proxy for alle tilkoblinger til denne leverandøren",
"providerProxy": "Leverandørfullmakt",
"noConnectionsYet": "Ingen tilkoblinger ennå",
"addFirstConnectionHint": "Legg til din første tilkobling for å komme i gang",
"addConnection": "Legg til tilkobling",
"availableModels": "Tilgjengelige modeller",
"pageAutoRefresh": "Siden oppdateres automatisk...",
"statusDisabled": "deaktivert",
"statusConnected": "tilkoblet",
"statusRuntimeIssue": "kjøretidsproblem",
"statusAuthFailed": "auth mislyktes",
"statusRateLimited": "sats begrenset",
"statusNetworkIssue": "nettverksproblem",
"statusTestUnsupported": "test støttes ikke",
"statusUnavailable": "utilgjengelig",
"statusFailed": "mislyktes",
"statusError": "feil",
"oauthAccount": "OAuth-konto",
"errorTypeRuntime": "Lokal kjøretid",
"errorTypeUpstreamAuth": "Oppstrøms auth",
"errorTypeMissingCredential": "Mangler legitimasjon",
"errorTypeRefreshFailed": "Oppdatering mislyktes",
"errorTypeTokenExpired": "Token utløpt",
"errorTypeRateLimited": "Begrenset pris",
"errorTypeUpstreamUnavailable": "Oppstrøms utilgjengelig",
"errorTypeNetworkError": "Nettverksfeil",
"errorTypeTestUnsupported": "Testen støttes ikke",
"errorTypeUpstreamError": "Oppstrøms feil",
"proxySourceGlobal": "Globalt",
"proxySourceProvider": "Leverandør",
"proxySourceKey": "Nøkkel",
"proxyConfiguredBySource": "Fullmakt ({source}): {host}",
"autoPriority": "Auto: {priority}",
"proxy": "Fullmakt",
"retestAuthentication": "Test autentisering på nytt",
"retest": "Test på nytt",
"disableConnection": "Deaktiver tilkobling",
"enableConnection": "Aktiver tilkobling",
"reauthenticateConnection": "Autentiser denne tilkoblingen på nytt",
"proxyConfig": "Proxy konfig",
"aliasExistsAlert": "Aliaset \"{alias}\" eksisterer allerede. Bruk en annen modell eller rediger eksisterende alias.",
"openRouterAnyModelHint": "OpenRouter støtter alle modeller. Legg til modeller og lag aliaser for rask tilgang.",
"modelIdFromOpenRouter": "Modell-ID (fra OpenRouter)",
"openRouterModelPlaceholder": "antropisk/claude-3-opus",
"customModels": "Egendefinerte modeller",
"customModelsHint": "Legg til modell-ID-er som ikke er i standardlisten. Disse vil være tilgjengelige for ruting.",
"modelId": "Modell-ID",
"customModelPlaceholder": "f.eks. gpt-4.5-turbo",
"loading": "Laster inn...",
"removeCustomModel": "Fjern tilpasset modell",
"noCustomModels": "Ingen tilpassede modeller lagt til ennå.",
"allSuggestedAliasesExist": "Alle foreslåtte aliaser finnes allerede. Velg en annen modell eller fjern motstridende aliaser.",
"failedSaveCustomModel": "Kunne ikke lagre egendefinert modell",
"modelAddedSuccess": "Modell {modelId} ble lagt til",
"failedAddModelTryAgain": "Kunne ikke legge til modell. Vennligst prøv igjen.",
"failedSaveImportedModel": "Kunne ikke lagre importert modell til egendefinert database",
"failedImportModelsTryAgain": "Kunne ikke importere modeller. Vennligst prøv igjen.",
"failedRemoveModelFromDatabase": "Kunne ikke fjerne modellen fra databasen",
"modelRemovedSuccess": "Modellen ble fjernet",
"failedDeleteModelTryAgain": "Kunne ikke slette modellen. Vennligst prøv igjen.",
"compatibleModelsDescription": "Legg til {type}-kompatible modeller manuelt eller importer dem fra /models-endepunktet.",
"anthropicCompatibleModelPlaceholder": "claude-3-opus-20240229",
"openaiCompatibleModelPlaceholder": "gpt-4o",
"apiKeyValidationFailed": "API-nøkkelvalidering mislyktes. Sjekk nøkkelen din og prøv igjen.",
"addProviderApiKeyTitle": "Legg til {provider} API-nøkkel",
"checking": "Sjekker...",
"check": "Sjekk",
"valid": "Gyldig",
"invalid": "Ugyldig",
"creating": "Oppretter...",
"validationChecksAnthropicCompatible": "Valideringssjekker {provider} ved å bekrefte API-nøkkelen.",
"validationChecksOpenAiCompatible": "Valideringssjekker {provider} via /models på din basis-URL.",
"priorityLabel": "Prioritet",
"saving": "Lagrer...",
"save": "Lagre",
"editConnection": "Rediger tilkobling",
"accountName": "Kontonavn",
"email": "E-post",
"healthCheckMinutes": "Helsesjekk (min)",
"healthCheckHint": "Proaktivt token-oppdateringsintervall. 0 = deaktivert.",
"failedTestConnection": "Kunne ikke teste tilkoblingen",
"failed": "Mislyktes",
"leaveBlankKeepCurrentApiKey": "La stå tomt for å beholde gjeldende API-nøkkel.",
"editCompatibleTitle": "Rediger {type} Kompatibel",
"compatibleBaseUrlHint": "Bruk basis-URLen (som slutter på /v1) for din {type}-kompatible API.",
"apiKeyForCheck": "API-nøkkel (for sjekk)",
"compatibleProdPlaceholder": "{type} Kompatibel (Prod)"
},
"settings": {
"title": "Innstillinger",
"general": "Generelt",
"security": "Sikkerhet",
"appearance": "Utseende",
"routing": "Ruting",
"cache": "Cache",
"resilience": "Spenst",
"systemPrompt": "Systemmelding",
"thinkingBudget": "Tenker budsjett",
"proxy": "Fullmakt",
"pricing": "Prissetting",
"storage": "Oppbevaring",
"policies": "Retningslinjer",
"ipFilter": "IP-filter",
"comboDefaults": "Combo standarder",
"fallbackChains": "Reservekjeder",
"changePassword": "Endre passord",
"enablePassword": "Aktiver passord",
"darkMode": "Mørk modus",
"lightMode": "Lysmodus",
"systemTheme": "Systemtema",
"enableCache": "Aktiver cache",
"cacheTTL": "Cache TTL",
"maxCacheSize": "Maks cachestørrelse",
"clearCache": "Tøm buffer",
"cacheHits": "Cache-treff",
"cacheMisses": "Cache Misses",
"hitRate": "Trefffrekvens",
"cacheEntries": "Bufferoppføringer",
"circuitBreaker": "Strømbryter",
"retryPolicy": "Retningslinjer for forsøk",
"maxRetries": "Max prøver på nytt",
"retryDelay": "Forsinkelse på nytt",
"timeoutMs": "Tidsavbrudd (ms)",
"enableSystemPrompt": "Aktiver systemforespørsel",
"systemPromptText": "Systemmeldingstekst",
"enableThinking": "Aktiver tenkning",
"maxThinkingTokens": "Max Thinking Tokens",
"enableProxy": "Aktiver proxy",
"proxyUrl": "Proxy URL",
"pricingRates": "Prisformat",
"currentPricing": "Gjeldende prisoversikt",
"loadingPricing": "Laster inn prisdata ...",
"noPricing": "Ingen prisdata tilgjengelig",
"input": "Inndata",
"output": "Utgang",
"cached": "Bufret",
"reasoning": "Resonnement",
"cacheCreation": "Oppretting av cache",
"customPricing": "Egendefinerte priser",
"databaseSize": "Databasestørrelse",
"backupDb": "Sikkerhetskopier database",
"restoreDb": "Gjenopprett database",
"exportData": "Eksporter data",
"importData": "Importer data",
"clearData": "Fjern alle data",
"clearDataConfirm": "Dette vil slette alle data permanent. Er du sikker?",
"enableRequestLogs": "Aktiver forespørselslogger",
"logRetention": "Loggoppbevaring",
"ipWhitelist": "IP-hviteliste",
"ipBlacklist": "IP svarteliste",
"addIP": "Legg til IP",
"savedSuccessfully": "Innstillingene er lagret",
"ai": "AI",
"advanced": "Avansert",
"localMode": "Lokal modus — Alle data som er lagret på maskinen din",
"settingsSectionsAria": "Innstillinger-seksjoner",
"switchThemes": "Bytt mellom lyse og mørke temaer",
"themeSelectionAria": "Temavalg",
"themeLight": "Lys",
"themeDark": "Mørkt",
"themeSystem": "System",
"hideHealthLogs": "Skjul helsesjekklogger",
"hideHealthLogsDesc": "Når PÅ, undertrykk [HealthCheck]-meldinger i serverkonsollen",
"themeAccent": "Temafarge",
"themeAccentDesc": "Velg en forhåndsinnstilt farge eller lag ditt eget tema med én farge",
"themeCreate": "Opprett tema",
"themeCustom": "Egendefinert tema",
"themeBlue": "Blå",
"themeRed": "Rød",
"themeGreen": "Grønn",
"themeViolet": "Fiolett",
"themeOrange": "Oransje",
"themeCyan": "Cyan",
"promptCache": "Spør Cache",
"flushCache": "Skyll cache",
"flushing": "Skyller …",
"size": "Størrelse",
"hits": "Treffer",
"evictions": "Utkastelser",
"loadingCacheStats": "Laster cachestatistikk …",
"globalProxy": "Global proxy",
"globalProxyDesc": "Konfigurer en global utgående proxy for alle API-kall. Individuelle leverandører, kombinasjoner og nøkler kan overstyre dette.",
"noGlobalProxy": "Ingen global proxy er konfigurert",
"globalLabel": "Globalt",
"configure": "Konfigurer",
"globalSystemPrompt": "Global systemforespørsel",
"systemPromptDesc": "Injisert i alle forespørsler på proxy-nivå",
"saved": "Lagret",
"systemPromptPlaceholder": "Skriv inn systemforespørselen for å injisere i alle forespørsler...",
"systemPromptHint": "Denne ledeteksten vises foran systemmeldingen for hver forespørsel. Bruk for globale instruksjoner, sikkerhetsretningslinjer eller regler for responsformatering.",
"chars": "{count} tegn",
"thinkingBudgetTitle": "Tenker budsjett",
"thinkingBudgetDesc": "Kontroller bruk av AI-resonnementstoken på tvers av alle forespørsler",
"passthrough": "Gjennomgang",
"passthroughDesc": "Ingen endringer klienten kontrollerer tenkebudsjettet",
"auto": "Auto",
"autoDesc": "Fjern all tenkekonfigurasjon la leverandøren bestemme",
"custom": "Egendefinert",
"customDesc": "Angi et fast tokenbudsjett for alle forespørsler",
"adaptive": "Adaptiv",
"adaptiveDesc": "Skaler budsjett basert på forespørselskompleksitet",
"effortNone": "Ingen (0 tokens)",
"effortLow": "Lav (1K tokens)",
"effortMedium": "Medium (10 000 tokens)",
"effortHigh": "Høy (128 000 tokens)",
"tokenBudget": "Tokenbudsjett",
"tokens": "tokens",
"baseEffortLevel": "Grunninnsatsnivå",
"adaptiveHint": "Adaptiv modus skalerer fra dette basisnivået basert på antall meldinger, verktøybruk og forespørselslengde.",
"requireLogin": "Krev innlogging",
"requireLoginDesc": "Når PÅ, krever dashbordet passord. Når AV, tilgang uten pålogging.",
"currentPassword": "Gjeldende passord",
"enterCurrentPassword": "Skriv inn gjeldende passord",
"newPassword": "Nytt passord",
"enterNewPassword": "Skriv inn nytt passord",
"confirmPassword": "Bekreft nytt passord",
"confirmPasswordPlaceholder": "Bekreft nytt passord",
"passwordsNoMatch": "Passord stemmer ikke",
"passwordUpdated": "Passordet ble oppdatert",
"failedUpdatePassword": "Kunne ikke oppdatere passordet",
"errorOccurred": "Det oppsto en feil",
"updatePassword": "Oppdater passord",
"setPassword": "Angi passord",
"apiEndpointProtection": "API-endepunktbeskyttelse",
"requireAuthModels": "Krev API-nøkkel for /modeller",
"requireAuthModelsDesc": "Når PÅ, returnerer /v1/models-endepunktet 404 for uautentiserte forespørsler. Forhindrer modelloppdagelse av uautoriserte brukere.",
"blockedProviders": "Blokkerte leverandører",
"blockedProvidersDesc": "Skjul spesifikke leverandører fra /v1/models-svaret. Blokkerte leverandører vil ikke vises i modelloppføringer.",
"providersBlocked": "{count} leverandør(er) blokkert fra /modeller",
"blockProviderTitle": "Blokkér {provider}",
"unblockProviderTitle": "Fjern blokkering av {provider}",
"routingStrategy": "Rutingstrategi",
"fillFirst": "Fyll først",
"fillFirstDesc": "Bruk kontoer i prioritert rekkefølge",
"roundRobin": "Round Robin",
"roundRobinDesc": "Bla gjennom alle kontoer",
"p2c": "P2C",
"p2cDesc": "Velg 2 tilfeldig, bruk den sunnere",
"random": "Tilfeldig",
"randomDesc": "Tilfeldig konto hver forespørsel",
"leastUsed": "Minst brukt",
"leastUsedDesc": "Velg minst nylig brukte konto",
"costOpt": "Kostnad Opt",
"costOptDesc": "Foretrekker den billigste tilgjengelige kontoen",
"stickyLimit": "Sticky Limit",
"stickyLimitDesc": "Anrop per konto før bytte",
"modelAliases": "Modellaliaser",
"modelAliasesTitle": "Modellaliaser",
"modelAliasesDesc": "Jokertegnmønstre for å tilordne modellnavn på nytt • Bruk * og ?",
"addCustomAlias": "Legg til Tilpasset Alias",
"deprecatedModelId": "Utdatert modell-ID",
"newModelId": "Ny modell-ID",
"customAliases": "Tilpassede Aliaser",
"builtInAliases": "Innebygde Aliaser",
"backgroundDegradationTitle": "Bakgrunnsoppgave Degradering",
"backgroundDegradationDesc": "Oppdager automatisk bakgrunnsoppgaver (titler, sammendrag) og ruter til billigere modeller",
"enableDegradation": "Aktiver Bakgrunnsdegradation",
"enableDegradationHint": "Når aktivert, rutes bakgrunnsoppgaver som tittelegenerering og sammendrag automatisk til billigere modeller",
"tasksDetected": "Oppgaver oppdaget",
"degradationMap": "Modelldegraderingsschema",
"premiumModel": "Premiummodell",
"cheapModel": "Billig modell",
"detectionPatterns": "Deteksjonsmønstre",
"newPattern": "f.eks. \"generer en tittel\"",
"aliasPatternPlaceholder": "claude-sonnett-*",
"aliasTargetPlaceholder": "claude-sonnett-4-20250514",
"pattern": "Mønster",
"targetModel": "Målmodell",
"add": "+ Legg til",
"session": "Sesjon",
"sessionDetailsAria": "Sesjonsdetaljer",
"status": "Status",
"authenticated": "Autentisert",
"guest": "Gjest",
"loginTime": "Påloggingstid",
"sessionAge": "Sesjonsalder",
"browser": "Nettleser",
"clearLocalData": "Fjern lokale data",
"logout": "Logg ut",
"clearLocalDataConfirm": "Vil du slette alle lokale data? Dette vil tilbakestille innstillingene dine.",
"unknown": "Ukjent",
"systemActor": "systemet",
"ipAccessControl": "IP-tilgangskontroll",
"ipAccessControlDesc": "Blokker eller tillat bestemte IP-adresser",
"ipModeDisabled": "Deaktivert",
"ipModeBlacklist": "Svarteliste",
"ipModeWhitelist": "Hviteliste",
"ipModeWhitelistPriority": "WL prioritet",
"addIpAddress": "Legg til IP-adresse",
"ipAddressPlaceholder": "192.168.1.0/24 eller 10.0.*.*",
"block": "+ Blokker",
"allow": "+ Tillat",
"blocked": "Blokkert ({count})",
"allowed": "Tillatt ({count})",
"temporaryBans": "Midlertidig utestengelse ({count})",
"minLeft": "{min}m igjen",
"auditLog": "Revisjonslogg",
"searchAuditLogs": "Søk i revisjonslogger...",
"failedLoadAuditLog": "Kunne ikke laste inn revisjonsloggen",
"noAuditEvents": "Ingen revisjonshendelser funnet",
"action": "Handling",
"actor": "Skuespiller",
"details": "Detaljer",
"time": "Tid",
"fallbackChainsTitle": "Reservekjeder",
"fallbackChainsDesc": "Definer leverandørens reserveordre per modell",
"addChain": "+ Legg til kjede",
"modelName": "Modellnavn",
"modelNamePlaceholder": "claude-sonnett-4-20250514",
"providersCommaSeparated": "Leverandører (kommaseparert, i prioritert rekkefølge)",
"providersCommaSeparatedPlaceholder": "antropisk, openai, gemini",
"createChain": "Lag kjede",
"noFallbackChains": "Ingen reservekjeder",
"noFallbackChainsDesc": "Opprett en kjede for å definere leverandørens reserveordre for en modell.",
"loadingFallbackChains": "Laster inn reservekjeder...",
"deleteChainConfirm": "Vil du slette reservekjeden for «{model}»?",
"chainCreated": "Kjede opprettet for {model}",
"chainDeleted": "Kjede slettet for {model}",
"failedCreateChain": "Kunne ikke opprette kjede",
"failedDeleteChain": "Kunne ikke slette kjeden",
"deleteChain": "Slett kjede",
"fillModelAndProviders": "Fyll ut modellnavn og leverandører",
"addAtLeastOneProvider": "Legg til minst én leverandør",
"comboDefaultsTitle": "Combo standarder",
"globalComboConfig": "Global kombinasjonskonfigurasjon",
"defaultStrategy": "Standardstrategi",
"defaultStrategyDesc": "Brukes på nye kombinasjoner uten eksplisitt strategi",
"comboStrategyAria": "Kombinasjonsstrategi",
"priority": "Prioritet",
"weighted": "Vektet",
"maxRetriesLabel": "Max prøver på nytt",
"retryDelayLabel": "Forsinkelse på nytt (ms)",
"timeoutLabel": "Tidsavbrudd (ms)",
"healthCheck": "Helsesjekk",
"healthCheckDesc": "Forhåndssjekk leverandørens tilgjengelighet",
"trackMetrics": "Spor beregninger",
"trackMetricsDesc": "Registrer beregninger for forespørsel per kombinasjon",
"providerOverrides": "Leverandøroverstyringer",
"providerOverridesDesc": "Overstyr tidsavbrudd og forsøk på nytt per leverandør. Leverandørinnstillinger overstyrer globale standardinnstillinger.",
"providerMaxRetriesAria": "{provider} maksimalt forsøk",
"providerTimeoutAria": "{provider} tidsavbrudd ms",
"removeProviderOverrideAria": "Fjern {provider} overstyring",
"newProviderNamePlaceholder": "f.eks. google, åpne...",
"newProviderNameAria": "Nytt leverandørnavn",
"retries": "prøver på nytt",
"ms": "ms",
"saveComboDefaults": "Lagre Combo-standarder",
"maxNestingDepth": "Maks hekkedybde",
"concurrencyPerModel": "Samtidighet / modell",
"queueTimeout": "Tidsavbrudd for kø (ms)",
"providerProfiles": "Leverandørprofiler",
"providerProfilesDesc": "Separate innstillinger for motstandskraft for OAuth (øktbasert) og API Key (målt) leverandører. OAuth-leverandører har strengere terskler på grunn av lavere takstgrenser.",
"oauthProviders": "OAuth-leverandører",
"apiKeyProviders": "API-nøkkelleverandører",
"transientCooldown": "Forbigående nedkjøling",
"rateLimitCooldown": "Rate Limit Cooldown",
"maxBackoffLevel": "Maks Backoff Level",
"cbThreshold": "CB-terskel",
"cbResetTime": "CB-tilbakestillingstid",
"rateLimiting": "Satsbegrensende",
"rateLimitingDesc": "API-nøkkelleverandører er automatisk hastighetsbegrenset med sikre standardinnstillinger. Grenser læres fra responsoverskrifter og tilpasses over tid.",
"defaultSafetyNet": "Standard sikkerhetsnett",
"rpm": "RPM",
"minGap": "Min Gap",
"maxConcurrent": "Maks samtidig",
"activeLimiters": "Aktive begrensere",
"noActiveLimiters": "Ingen aktive ratebegrensere ennå.",
"reservoir": "Reservoar",
"running": "Løper",
"queued": "I kø",
"circuitBreakers": "Strømbrytere",
"breakerStateClosed": "Stengt",
"breakerStateOpen": "Åpne",
"breakerStateHalfOpen": "Halvåpent",
"tripped": "{count} utløste",
"healthy": "{count} sunn",
"resetAll": "Tilbakestill alle",
"noCircuitBreakers": "Ingen effektbrytere aktive ennå. De opprettes automatisk når forespørsler strømmer gjennom kombinasjonsrørledningen.",
"failures": "{count} feil(er)",
"policiesLocked": "Retningslinjer og låste identifikatorer",
"allOperational": "Alle systemer er i drift - ingen sperringer eller utløste brytere",
"loadingPolicies": "Laster inn retningslinjer ...",
"lockedIdentifiers": "Låste identifikatorer",
"unlockedIdentifier": "Ulåst: {identifier}",
"sinceDate": "siden {date}",
"forceUnlock": "Tving opplåsing",
"unlocking": "Låser opp ...",
"failedUnlock": "Kunne ikke låse opp",
"failedLoadWithStatus": "Kunne ikke laste inn: {status}",
"failedLoadResilience": "Kunne ikke laste inn resiliensstatus",
"saveFailed": "Lagring mislyktes",
"resetFailed": "Tilbakestilling mislyktes",
"loadingResilience": "Laster motstandsstatus ...",
"retry": "Prøv på nytt",
"systemStorage": "System og lagring",
"allDataLocal": "Alle data lagret lokalt på maskinen din",
"databasePath": "Databasebane",
"exportDatabase": "Eksporter database",
"exportAll": "Eksporter alle (.tar.gz)",
"importDatabase": "Importer database",
"confirmDbImport": "Bekreft databaseimport",
"confirmDbImportDesc": "Dette vil erstatte alle gjeldende data med innholdet fra {file}. En sikkerhetskopi opprettes automatisk før importen.",
"yesImport": "Ja, import",
"lastBackup": "Siste sikkerhetskopi",
"noBackupYet": "Ingen sikkerhetskopi ennå",
"backupNow": "Sikkerhetskopier nå",
"backupRestore": "Sikkerhetskopiering og gjenoppretting",
"viewBackups": "Se sikkerhetskopier",
"hide": "Skjul",
"backupRetentionDesc": "Database-øyeblikksbilder opprettes automatisk før gjenoppretting og hvert 15. minutt når data endres. Oppbevaring: 24 timer i timen + 30 daglige sikkerhetskopier med smart rotasjon.",
"loadingBackups": "Laster inn sikkerhetskopier...",
"noBackupsYet": "Ingen sikkerhetskopier tilgjengelig ennå. Sikkerhetskopier opprettes automatisk når data endres.",
"backupsAvailable": "{count} sikkerhetskopi(er) tilgjengelig",
"refresh": "Oppdater",
"confirm": "Bekrefte?",
"yes": "Ja",
"no": "Nei",
"restore": "Gjenopprett",
"invalidFileType": "Ugyldig filtype. Bare .sqlite-filer godtas.",
"exportFailed": "Eksporten mislyktes",
"exportFailedWithError": "Eksport mislyktes: {error}",
"fullExportFailedWithError": "Full eksport mislyktes: {error}",
"backupCreated": "Sikkerhetskopi opprettet: {file}",
"restoreSuccess": "Gjenopprettet! {connections} tilkoblinger, {nodes} noder, {combos} kombinasjoner, {apiKeys} API-nøkler.",
"importSuccess": "Database importert! {connections} tilkoblinger, {nodes} noder, {combos} kombinasjoner, {apiKeys} API-nøkler.",
"justNow": "akkurat nå",
"minutesAgo": "{count}m siden",
"hoursAgo": "{count}t siden",
"daysAgo": "{count}d siden",
"backupReasonManual": "manuell",
"backupReasonPreRestore": "forhåndsgjenoppretting",
"connectionsCount": "{count, plural, one {# connection} other {# connections}}",
"noChangesSinceBackup": "Ingen endringer siden siste sikkerhetskopiering",
"backupFailed": "Sikkerhetskopiering mislyktes",
"restoreFailed": "Gjenoppretting mislyktes",
"importFailed": "Import mislyktes",
"errorDuringRestore": "Det oppstod en feil under gjenoppretting",
"errorDuringImport": "Det oppstod en feil under import",
"modelPricing": "Modellprising",
"modelPricingDesc": "Konfigurer kostnadssatser per modell • Alle priser i $/1M tokens",
"providers": "Leverandører",
"registry": "Register",
"priced": "Priset",
"searchProvidersModels": "Søk etter leverandører eller modeller...",
"showAll": "Vis alle",
"noProvidersMatch": "Ingen leverandører samsvarer med søket ditt.",
"howPricingWorks": "Hvordan prissetting fungerer",
"cacheWrite": "Cache-skriving",
"unsaved": "ikke lagret",
"resetDefaults": "Tilbakestill standarder",
"saveProvider": "Lagre leverandør",
"saving": "Lagrer...",
"model": "Modell",
"models": "modeller",
"moreProviders": "{count} flere leverandører",
"withPricing": "med konfigurert pris",
"policiesCircuitBreakers": "Retningslinjer og effektbrytere",
"activeIssuesDetected": "Aktive problemer oppdaget",
"off": "Av",
"resetPricingConfirm": "Vil du tilbakestille all prissetting for {provider} til standardverdiene?",
"pricingDescInput": "Inndata: tokens sendt til modellen",
"pricingDescOutput": "Utgang: tokens generert",
"pricingDescCached": "Bufret: gjenbrukt inndata (~50 % av inndatahastigheten)",
"pricingDescReasoning": "Begrunnelse: tenketegn (faller tilbake til utgang)",
"pricingDescCacheWrite": "Cache Write: lage cache-oppføringer (faller tilbake til Input)",
"pricingDescFormula": "Kostnad = (input × input_rate) + (output × output_rate) + (cached × cached_rate) per million tokens.",
"pricingSettingsTitle": "Prisinnstillinger",
"totalModels": "Totalt antall modeller",
"active": "Aktiv",
"costCalculation": "Kostnadsberegning",
"costCalculationDesc": "Kostnadene beregnes basert på tokenbruk og prissatser som er konfigurert for hver modell.",
"pricingFormat": "Prisformat",
"pricingFormatDesc": "Alle priser er i $/1M tokens (dollar per million tokens).",
"tokenTypes": "Tokentyper",
"inputTokenDesc": "Standard prompt-tokens",
"outputTokenDesc": "Fullførings-/svarbrikke",
"cachedTokenDesc": "Bufret inndatatoken (vanligvis 50 % av inndatahastigheten)",
"reasoningTokenDesc": "Spesielle resonnement-/tenkesymboler (tilbakeslag til produksjonshastighet)",
"cacheCreationTokenDesc": "Tokens som brukes til å lage cache-oppføringer (tilbake til inngangshastighet)",
"customPricingNote": "Du kan overstyre standardpriser for spesifikke modeller. Egendefinerte overstyringer prioriteres fremfor automatisk oppdagede priser.",
"editPricing": "Rediger priser",
"viewFullDetails": "Se alle detaljer"
},
"translator": {
"title": "Oversetter",
"metaTitle": "Oversetter Lekeplass | OmniRoute",
"metaDescription": "Feilsøk, test og visualiser API-formatoversettelser mellom leverandører",
"playgroundTitle": "Oversetter Lekeplass",
"playground": "Lekeplass",
"realtime": "Oversettelsesaktivitet i sanntid",
"chatTester": "Chat Tester",
"testBench": "Testbenk",
"liveMonitor": "Live Monitor",
"modeDescriptionPlayground": "Lim inn en hvilken som helst API-forespørselstekst og se hvordan OmniRoute oversetter den mellom leverandørformater (OpenAI ↔ Claude ↔ Gemini ↔ Responses API)",
"modeDescriptionChatTester": "Send ekte chatteforespørsler gjennom OmniRoute og inspiser hele rundturen: inndata, oversatt forespørsel, leverandørsvar og oversatt utdata.",
"modeDescriptionTestBench": "Kjør forhåndsdefinerte scenarier og sammenlign kompatibilitet på tvers av leverandører og modeller.",
"modeDescriptionLiveMonitor": "Se oversettelsesbegivenheter i sanntid mens forespørsler strømmer gjennom OmniRoute.",
"modeDescriptionFallback": "Feilsøk, test og visualiser hvordan OmniRoute oversetter API-forespørsler mellom leverandører.",
"recentTranslations": "Nylige oversettelser",
"noTranslations": "Ingen oversettelser ennå",
"source": "Kilde",
"target": "Mål",
"time": "Tid",
"model": "Modell",
"status": "Status",
"latency": "Latens",
"totalTranslations": "Totale oversettelser",
"successful": "Vellykket",
"errors": "Feil",
"avgLatency": "Gj.sn. ventetid",
"millisecondsShort": "{value}ms",
"notAvailableSymbol": "—",
"liveAutoRefreshing": "Live — Automatisk oppdatering",
"paused": "Pause",
"eventsAppearHint": "Oversettelseshendelser vises her når forespørsler strømmer gjennom OmniRoute. Bruk en av disse metodene for å generere hendelser:",
"chatTesterTab": "Chat Tester-fanen",
"testBenchTab": "Testbenk-fanen",
"externalApiCalls": "Eksterne API-anrop",
"ideCliIntegrations": "IDE/CLI-integrasjoner",
"inMemoryNote": "Merk: Hendelser lagres i minnet og tilbakestilles når serveren starter på nytt.",
"ok": "OK",
"errorShort": "FEIL",
"formatConverter": "Formatkonvertering",
"formatConverterDescription": "Lim inn eller skriv inn en JSON-forespørselstekst. Oversetteren vil automatisk oppdage kildeformatet og konvertere det til målformatet. Bruk denne til å feilsøke hvordan OmniRoute oversetter forespørsler mellom formater (OpenAI ↔ Claude ↔ Gemini ↔ Responses API).",
"input": "Inndata",
"output": "Utgang",
"auto": "Auto",
"swapFormats": "Bytt formater",
"translateAction": "Oversett",
"clear": "Klart",
"inputPlaceholder": "Lim inn en forespørselstekst her eller velg en mal nedenfor...",
"exampleTemplates": "Eksempelmaler",
"exampleTemplatesHint": "— Klikk for å laste",
"templateLoadHint": "Malen laster forespørselen i {format}-format. Endre kildeformat for å laste inn i et annet format.",
"compatibilityTester": "Kompatibilitetstester",
"compatibilityReport": "Kompatibilitetsrapport",
"testBenchDescription": "Kjør forhåndsdefinerte scenarier (Simple Chat, Tool Calling, etc.) for å bekrefte oversettelse og leverandørkompatibilitet. Velg et kildeformat og målleverandør, og kjør deretter alle testene for å se en kompatibilitetsprosent. Bruk denne for å finne hvilke funksjoner som fungerer på tvers av leverandører.",
"targetProvider": "Målleverandør",
"runAllTests": "Kjør alle tester",
"runTest": "Kjør test",
"reRun": "Kjør på nytt",
"running": "Kjører...",
"passed": "bestått",
"failed": "mislyktes",
"passedIconLabel": "✅ Bestått",
"chunks": "biter",
"scenarioSimpleChat": "Enkel chat",
"scenarioToolCalling": "Verktøyanrop",
"scenarioMultiTurn": "Multisving",
"scenarioThinking": "Tenker",
"scenarioSystemPrompt": "Systemmelding",
"scenarioStreaming": "Streaming",
"templateNames": {
"simple-chat": "Enkel chat",
"tool-calling": "Verktøyanrop",
"multi-turn": "Multisving",
"thinking": "Tenker",
"system-prompt": "Systemmelding",
"streaming": "Streaming"
},
"templateDescriptions": {
"simple-chat": "Grunnleggende tekstmelding",
"tool-calling": "Funksjon/verktøy-påkalling",
"multi-turn": "Samtale med historien",
"thinking": "Utvidet tenkning / resonnement",
"system-prompt": "Komplekse systeminstruksjoner",
"streaming": "SSE-strømforespørsel"
},
"templatePayloads": {
"simpleChat": {
"system": "Du er en hjelpsom assistent.",
"userGreeting": "Hei! Hvordan har du det i dag?"
},
"toolCalling": {
"userWeather": "Hvordan er været i São Paulo?",
"toolDescription": "Få gjeldende vær for et sted",
"cityNameDescription": "Bynavn"
},
"multiTurn": {
"system": "Du er en kodeassistent.",
"userInitial": "Skriv en funksjon for å sortere en matrise i Python.",
"assistantExample": "Her er en enkel sorteringsfunksjon:\n\n``` python\ndef sort_array(arr):\n return sortert(arr)\n```",
"userFollowUp": "Gjør det nå sortert i synkende rekkefølge."
},
"thinking": {
"question": "Hva er summen av de første 100 primtallene?"
},
"systemPrompt": {
"systemInstruction": "Du er en senior programvareingeniør med spesialisering i distribuerte systemer. Svar konsist på spørsmål ved å bruke bransjens beste praksis. Gi alltid kodeeksempler når det er relevant. Formater svarene dine med markdown.",
"question": "Hvordan implementerer jeg et strømbrytermønster?"
},
"streaming": {
"prompt": "Fortell meg en kort historie om en robot som lærer å male."
}
},
"openaiCompatibleLabel": "OpenAI-kompatibel",
"anthropicCompatibleLabel": "Antropisk kompatibel",
"noTemplateForFormat": "Ingen mal for dette formatet",
"translationFailed": "Oversettelse mislyktes: {error}",
"pipelineDebugger": "Pipeline Debugger",
"translationPipeline": "Oversettelsesrørledning",
"pipelineVisualization": "Visualisering av pipeline",
"pipelineVisualizationHint": "Send en melding for å se hvordan forespørselen din flyter gjennom gjenkjenning → oversettelse → leverandøranrop.",
"chatTesterDescription": "Send meldinger som et spesifikt klientformat og inspiser hvert trinn i oversettelsespipelinen.",
"chatTesterFlow": "Klientforespørsel → Formatdeteksjon → OpenAI Intermediate → Leverandørformat → Svar",
"clickStepToInspect": "Klikk på et hvilket som helst trinn for å inspisere dataene på det stadiet.",
"clientFormat": "Klientformat",
"provider": "Leverandør",
"modelPlaceholder": "Velg eller skriv inn et modellnavn...",
"sendMessageToSeePipeline": "Send en melding for å se oversettelsespipeline",
"chatMessageHintPrefix": "Meldingen din vil bli formatert som en",
"chatMessageHintSuffix": "forespørsel, oversatt gjennom rørledningen og sendt til den valgte leverandøren.",
"youWithFormat": "Du ({format})",
"assistant": "Assistent",
"typeMessage": "Skriv inn en melding...",
"send": "Send",
"clientRequest": "Kundeforespørsel",
"clientRequestDescription": "Forespørselsteksten slik klienten din ville sende den",
"formatDetected": "Format oppdaget",
"formatDetectedDescription": "OmniRoute oppdager automatisk API-formatet fra forespørselsstrukturen",
"openaiIntermediate": "OpenAI Intermediate",
"openaiIntermediateDescription": "Alle formater normaliseres først til OpenAI-format (den universelle broen)",
"providerFormat": "Leverandørformat",
"providerFormatDescription": "OpenAI-formatet er oversatt til leverandørens opprinnelige format",
"providerResponse": "Leverandørens svar",
"providerResponseRawDescription": "Råsvaret fra leverandørens API",
"providerResponseSseDescription": "Den rå SSE-strømmen fra leverandørens API",
"unexpectedError": "Det oppstod en uventet feil",
"error": "Feil",
"errorMessage": "Feil: {message}",
"requestFailed": "Forespørselen mislyktes",
"noTextExtracted": "(Ingen tekst er trukket ut)",
"liveMonitorDescriptionPrefix": "Viser oversettelseshendelser når API-anrop flyter gjennom OmniRoute. Hendelser kommer fra bufferen i minnet (tilbakestilles ved omstart). Bruk",
"liveMonitorDescriptionSuffix": ", eller eksterne API-kall for å generere hendelser."
},
"usage": {
"title": "Bruk",
"loggerTab": "Logger",
"proxyTab": "Fullmakt",
"budgetManagement": "Budsjettstyring",
"budgetSaved": "Budsjettgrenser lagret",
"budgetSaveFailed": "Kunne ikke lagre budsjettet",
"loadingBudgetData": "Laster inn budsjettdata ...",
"noApiKeysTitle": "Ingen API-nøkler",
"noApiKeysDescription": "Legg til API-nøkler først for å sette opp budsjettgrenser.",
"apiKey": "API-nøkkel",
"todaysSpend": "Dagens forbruk",
"thisMonth": "Denne måneden",
"setLimits": "Sett grenser",
"dailyLimitUsd": "Daglig grense (USD)",
"monthlyLimitUsd": "Månedlig grense (USD)",
"warningThresholdPercent": "Advarselsterskel (%)",
"dailyLimitPlaceholder": "f.eks. 5.00",
"monthlyLimitPlaceholder": "f.eks. 50,00",
"warningThresholdPlaceholder": "80",
"saveLimits": "Lagre grenser",
"budgetOk": "Budsjett OK — {remaining} gjenstår",
"budgetExceeded": "Budsjettet overskredet forespørsler kan bli blokkert",
"totalRequests": "Totalt antall forespørsler",
"noDataYet": "Ingen data ennå",
"latency": "Latens",
"latencyP50": "p50",
"latencyP95": "s95",
"latencyP99": "s99",
"promptCache": "Spør Cache",
"systemHealth": "Systemhelse",
"entries": "Oppføringer",
"activeCount": "{count} aktiv",
"openCircuitBreakersDetected": "Åpne strømbrytere oppdaget",
"hitRate": "Trefffrekvens",
"hitsMisses": "Treffer / savner",
"circuitBreakers": "Strømbrytere",
"lockedIPs": "Låste IP-er",
"lockoutsAutoRefreshHint": "Per-modell hastighetsgrense låser • Auto-refresh 10s",
"lockedCount": "{count, plural, one {# locked} other {# locked}}",
"timeLeft": "{time} igjen",
"howItWorks": "Hvordan det fungerer",
"howItWorksSubtitle": "Finn ut hvordan evalueringer validerer LLM-svarene dine",
"define": "Definer",
"defineStepDescription": "Opprett testtilfeller med inndatameldinger og forventede utdatakriterier ved å bruke strategier som inneholder, regulært uttrykk eller eksakt samsvar.",
"run": "Løp",
"runStepDescription": "Utfør testsaker mot LLM-endepunktene dine gjennom OmniRoute. Hver sak sendes som en ekte API-forespørsel.",
"evaluate": "Vurder",
"evaluateStepDescription": "Svar sammenlignes mot forventede kriterier. Se bestått/ikke bestått for hver sak med ventetid og detaljert tilbakemelding.",
"evalSuites": "Evalueringssuiter",
"evalSuitesHint": "Klikk på en suite for å se testtilfeller, og kjør deretter for å evaluere LLM-endepunktene dine",
"evalsLoading": "Laster inn eval suiter...",
"noEvalSuitesFound": "Ingen Eval-suiter funnet",
"noEvalSuitesDescription": "Eval-suiter kan defineres via API eller i kode. De tester modellutdata mot forventede resultater ved å bruke strategier som inneholder, regulært uttrykk, eksakt samsvar og tilpassede funksjoner.",
"columnCase": "Sak",
"columnStatus": "Status",
"columnLatency": "Latens",
"columnDetails": "Detaljer",
"columnModel": "Modell",
"columnStrategy": "Strategi",
"columnExpected": "Forventet",
"statsSuites": "Suiter",
"statsTestCases": "Testtilfeller",
"statsModels": "Modeller",
"statsCoverage": "Dekning",
"statsStrategiesCount": "{count} strategier",
"evaluationStrategies": "Evalueringsstrategier",
"modelsUnderTest": "Modeller under test",
"searchSuitesPlaceholder": "Søk etter suiter...",
"passSuffix": "pass",
"casesCount": "{count, plural, one {# case} other {# cases}}",
"runEval": "Kjør Eval",
"runningProgress": "Kjører {current}/{total}...",
"passRate": "bestått rate",
"summaryBreakdown": "{passed} bestått · {failed} mislyktes · {total} totalt",
"passedIconLabel": "✅ Bestått",
"failedIconLabel": "❌ Mislyktes",
"detailsContains": "Inneholder: \"{term}\"",
"detailsRegex": "Regex: {pattern}",
"detailsExpected": "Forventet: \"{expected}\"",
"noResultsYet": "Ingen resultater ennå",
"testCasesCount": "Testtilfeller ({count})",
"noTestCasesDefined": "Ingen testtilfeller definert",
"runEvalHint": "Klikk \"Run Eval\" for å utføre alle saker mot ditt LLM-endepunkt. Hver test sender en reell forespørsel gjennom OmniRoute.",
"notifyNoTestCases": "Ingen testtilfeller definert for denne suiten",
"notifyAllCasesPassed": "Alle {total} saker bestått ✅",
"notifySomeCasesFailed": "{passed}/{total} bestått, {failed} mislyktes",
"notifyEvalRunFailed": "Evalkjøring mislyktes",
"notifyEvalTitle": "Eval: {name}",
"modelEvals": "Modellvurderinger",
"evalsHeroDescription": "Test og valider LLM-endepunktene dine ved å kjøre forhåndsdefinerte evalueringspakker. Hver suite inneholder testtilfeller som sender reelle spørsmål gjennom OmniRoute og sammenligner svar med forventede kriterier som hjelper deg med å oppdage regresjoner, sammenligne modeller og sikre svarkvalitet på tvers av leverandører.",
"qualityValidation": "Kvalitetsvalidering",
"modelComparison": "Modellsammenligning",
"regressionDetection": "Regresjonsdeteksjon",
"latencyBenchmarks": "Latency Benchmarks",
"modelLockouts": "Modellsperringer",
"noLockouts": "Ingen modeller er for øyeblikket låst",
"activeSessions": "Aktive økter",
"noSessions": "Ingen aktive økter",
"sessionsHint": "Økter vises når forespørsler flyter gjennom proxyen",
"sessionsTrackedHint": "Spores via forespørsel om fingeravtrykk • Auto-refresh 5s",
"session": "Sesjon",
"age": "Alder",
"requests": "Forespørsler",
"connection": "Tilkobling",
"durationMillisecondsShort": "{value}ms",
"durationSecondsShort": "{value}s",
"durationMinutesShort": "{value}m",
"durationHoursShort": "{value}t",
"reasonSeparator": " - ",
"notAvailableSymbol": "-",
"providerLimits": "Leverandørgrenser",
"noProviders": "Ingen leverandører tilkoblet",
"connectProvidersForQuota": "Koble til leverandører med OAuth for å spore API-kvotegrenser og bruk.",
"accountsCount": "{count, plural, one {# account} other {# accounts}}",
"filteredFromCount": "(filtrert fra {count})",
"autoRefresh": "Automatisk oppdatering",
"refreshAll": "Oppdater alle",
"loadingQuotas": "Laster inn...",
"account": "Konto",
"modelQuotas": "Modellkvoter",
"lastUsed": "Sist brukt",
"actions": "Handlinger",
"refreshQuota": "Oppdater kvote",
"today": "I dag",
"tomorrow": "I morgen",
"dayTimeFormat": "{day}, {time}",
"inDuration": "i {duration}",
"notApplicable": "N/A",
"rawPlanWithValue": "Rå plan: {plan}",
"noPlanFromProvider": "Ingen plan fra leverandøren",
"noQuotaData": "Ingen kvotedata",
"noQuotaDataAvailable": "Ingen kvotedata tilgjengelig",
"noAccountsForTierFilter": "Fant ingen kontoer for nivåfilter",
"tierAll": "Alle",
"tierEnterprise": "Enterprise",
"tierTeam": "Team",
"tierBusiness": "Business",
"tierUltra": "Ultra",
"tierPro": "Pro",
"tierPlus": "Pluss",
"tierFree": "Gratis",
"tierUnknown": "Ukjent"
},
"modals": {
"waitingAuth": "Venter på autorisasjon",
"verificationUrl": "Verifiserings-URL",
"yourCode": "Din kode",
"remoteAccess": "Fjerntilgang:",
"connectedSuccess": "Tilkoblet vellykket!",
"connectionFailed": "Tilkobling mislyktes",
"chooseAuthMethod": "Velg autentiseringsmetode:",
"awsBuilderId": "AWS Builder ID",
"awsIamIdentity": "AWS IAM Identity Center",
"googleAccount": "Google-konto",
"githubAccount": "GitHub-konto",
"importToken": "Importer token",
"pasteToken": "Lim inn oppdateringstoken fra Kiro IDE.",
"awsRegion": "AWS-regionen",
"autoDetecting": "Automatisk oppdager tokens...",
"readingFromCache": "Leser fra AWS SSO-cache",
"readingFromCursor": "Leser fra Cursor IDE-databasen",
"initializing": "Initialiserer...",
"pricingConfig": "Priskonfigurasjon",
"loadingPricing": "Laster inn prisdata ...",
"pricingRatesFormat": "Prisformat",
"noPricingData": "Ingen prisdata tilgjengelig",
"noModelsFound": "Ingen modeller funnet"
},
"loggers": {
"allProviders": "Alle leverandører",
"allModels": "Alle modeller",
"allAccounts": "Alle kontoer",
"allApiKeys": "Alle API-nøkler",
"allTypes": "Alle typer",
"allLevels": "Alle nivåer",
"modelAZ": "Modell A-Z",
"modelZA": "Modell Z-A",
"loadingLogs": "Laster inn logger...",
"loadingProxyLogs": "Laster inn proxy-logger ...",
"noLogEntries": "Ingen loggoppføringer funnet",
"noPayloadData": "Ingen nyttelastdata tilgjengelig for denne loggoppføringen.",
"proxyEvent": "Proxy-hendelse",
"proxy": "Fullmakt",
"level": "Nivå",
"directNative": "Direkte (innfødt)",
"combo": "Combo",
"inputTokens": "jeg:",
"outputTokens": "O:"
},
"stats": {
"usageOverview": "Bruksoversikt",
"outputTokens": "Output tokens",
"totalCost": "Total kostnad",
"usageByModel": "Bruk etter modell",
"usageByAccount": "Bruk etter konto",
"failedToLoad": "Kunne ikke laste inn bruksstatistikk.",
"tokenHealth": "Token Health",
"totalOAuth": "Totalt OAuth",
"healthy": "Sunn",
"warning": "Advarsel",
"errored": "Feil",
"lastCheck": "Siste sjekk",
"noData": "Ingen data",
"share": "Del",
"unableToLoad": "Kan ikke laste inn systemberegninger",
"product": "Produkt",
"resources": "Ressurser",
"company": "Selskapet"
},
"auth": {
"welcome": "Velkommen",
"signIn": "Logg på",
"enterPassword": "Skriv inn passordet ditt for å fortsette",
"password": "Passord",
"unifiedProxy": "Unified AI API Proxy",
"unifiedAiApiProxy": "Unified AI API Proxy",
"unifiedAiApiProxyDesc": "Rut forespørsler til flere AI-leverandører gjennom ett enkelt endepunkt. Lastbalansering, failover og brukssporing innebygd.",
"passwordNotEnabled": "Passordbeskyttelse er ikke aktivert",
"loading": "Laster inn...",
"invalidPassword": "Ugyldig passord",
"errorOccurredRetry": "Det oppsto en feil. Vennligst prøv igjen.",
"configureInstance": "La oss få konfigurert OmniRoute-forekomsten",
"runOnboardingWizard": "Kjør onboarding-veiviseren for å sette opp passordet ditt og koble til din første AI-leverandør.",
"startOnboarding": "Start onboarding",
"secureYourInstance": "Sikre din forekomst",
"setPasswordDescription": "Angi et passord for å beskytte dashbordet og sikre API-endepunktene dine mot uautorisert tilgang.",
"configurePassword": "Konfigurer passord",
"continue": "Fortsett",
"windowWillClose": "Dette vinduet lukkes automatisk...",
"closeTabNow": "Du kan lukke denne fanen nå.",
"copyUrlManual": "Vennligst kopier URL-en fra adressefeltet og lim den inn i applikasjonen.",
"accessDeniedDescription": "Du har ikke tillatelse til å få tilgang til denne ressursen. Sjekk API-nøkkelen din eller kontakt administratoren.",
"goToDashboard": "Gå til Dashboard",
"featureMultiProviderTitle": "Multileverandør",
"featureMultiProviderDesc": "OpenAI, Anthropic, Google og mer",
"featureLoadBalancingTitle": "Lastbalansering",
"featureLoadBalancingDesc": "Distribuer forespørsler intelligent",
"featureUsageTrackingTitle": "Brukssporing",
"featureUsageTrackingDesc": "Overvåk kostnader og tokens",
"resetPassword": "Tilbakestill passord",
"resetDescription": "Velg en metode for å gjenopprette tilgangen til dashbordet",
"stopServer": "Stopp OmniRoute-serveren",
"processing": "Behandler...",
"pleaseWait": "Vennligst vent mens vi fullfører autorisasjonen.",
"authSuccess": "Godkjenning vellykket!",
"copyUrl": "Kopier denne nettadressen",
"accessDenied": "Tilgang nektet",
"methodCliTitle": "Metode 1: CLI-tilbakestilling",
"methodCliDescription": "Kjør følgende kommando på serveren der OmniRoute kjører:",
"methodCliHint": "Dette vil be deg om å angi et nytt passord. Serveren må stoppes først.",
"methodManualTitle": "Metode 2: Manuell tilbakestilling",
"methodManualDescription": "Slett passordet fra databasen og sett et nytt ved oppstart:",
"setPasswordInYour": "Sett et nytt passord i din",
"fileLabelSuffix": "fil:",
"newPasswordPlaceholder": "ditt_nye_passord",
"deleteSettingsFile": "Slett",
"orRemovePasswordHashField": "eller fjern passordHash-feltet",
"restartServerWithNewPassword": "Start serveren på nytt - den vil bruke det nye passordet",
"backToLogin": "Tilbake til pålogging",
"forgotPassword": "Glemt passord?"
},
"landing": {
"brandName": "OmniRoute",
"navigateHome": "Naviger til hjem",
"toggleMenu": "Bytt meny",
"featuresLink": "Funksjoner",
"docsLink": "Dokumenter",
"github": "GitHub",
"versionLive": "v1.0 er nå live",
"oneEndpoint": "Ett endepunkt for",
"allProviders": "Alle AI-leverandører",
"heroDescription": "AI-endepunktproxy med web-dashboard - En JavaScript-port av CLIProxyAPI. Fungerer sømløst med Claude Code, OpenAI Codex, Cline, RooCode og andre CLI-verktøy.",
"getStarted": "Kom i gang",
"viewOnGithub": "Se på GitHub",
"powerfulFeatures": "Kraftige funksjoner",
"featuresSubtitle": "Alt du trenger for å administrere AI-infrastrukturen din på ett sted, bygget for skala.",
"featureUnifiedEndpointTitle": "Samlet endepunkt",
"featureUnifiedEndpointDesc": "Få tilgang til alle leverandører via en enkelt standard API-URL.",
"featureEasySetupTitle": "Enkelt oppsett",
"featureEasySetupDesc": "Kom i gang på få minutter med npx-kommandoen.",
"featureModelFallbackTitle": "Modell Fallback",
"featureModelFallbackDesc": "Bytt leverandør automatisk ved feil eller høy ventetid.",
"featureUsageTrackingTitle": "Brukssporing",
"featureUsageTrackingDesc": "Detaljert analyse og kostnadsovervåking på tvers av alle modeller.",
"featureOAuthApiKeysTitle": "OAuth- og API-nøkler",
"featureOAuthApiKeysDesc": "Administrer legitimasjon på en sikker måte i ett hvelv.",
"featureCloudSyncTitle": "Cloud Sync",
"featureCloudSyncDesc": "Synkroniser konfigurasjonene dine på tvers av enheter umiddelbart.",
"featureCliSupportTitle": "CLI-støtte",
"featureCliSupportDesc": "Fungerer med Claude Code, Codex, Cline, Cursor og mer.",
"featureDashboardTitle": "Dashbord",
"featureDashboardDesc": "Visuelt dashbord for trafikkanalyse i sanntid.",
"howItWorks": "Hvordan OmniRoute fungerer",
"howItWorksDescription": "Data flyter sømløst fra applikasjonen din gjennom vårt intelligente rutinglag til den beste leverandøren for jobben.",
"howItWorksStep1Title": "1. CLI og SDK-er",
"howItWorksStep1Description": "Forespørslene dine starter fra favorittverktøyene dine eller vår enhetlige SDK. Bare endre basis-URLen.",
"howItWorksStep2Title": "2. OmniRoute Hub",
"howItWorksStep2Description": "Motoren vår analyserer forespørselen, sjekker leverandørens helse og ruter for lavest ventetid eller kostnad.",
"howItWorksStep3Title": "3. AI-leverandører",
"howItWorksStep3Description": "Forespørselen oppfylles av OpenAI, Anthropic, Gemini eller andre umiddelbart.",
"getStartedIn30Seconds": "Kom i gang på 30 sekunder",
"getStartedDescription": "Installer OmniRoute, konfigurer leverandørene dine via nettdashbordet, og begynn å rute AI-forespørsler.",
"installOmniRoute": "Installer OmniRoute",
"installStepDescription": "Kjør npx-kommandoen for å starte serveren umiddelbart",
"openDashboard": "Åpne Dashboard",
"openDashboardStepDescription": "Konfigurer leverandører og API-nøkler via webgrensesnitt",
"routeRequests": "Ruteforespørsler",
"routeRequestsStepDescription": "Pek CLI-verktøyene dine til {endpoint}",
"terminal": "terminal",
"copy": "Kopier",
"copied": "✓ Kopiert",
"startingOmniRoute": "Starter OmniRoute...",
"serverRunningOnLabel": "Server kjører på",
"dashboardLabel": "Dashbord",
"readyToRoute": "Klar til rute! ✓",
"configureProvidersNote": "📝 Konfigurer leverandører i dashbordet eller bruk miljøvariabler",
"dataLocation": "Dataplassering:",
"dataLocationMacLinux": " macOS/Linux:",
"dataLocationWindows": " Windows:",
"product": "Produkt",
"dashboardLink": "Dashbord",
"changelog": "Endringslogg",
"resources": "Ressurser",
"documentation": "Dokumentasjon",
"npm": "NPM",
"legal": "Lovlig",
"mitLicense": "MIT-lisens",
"footerTagline": "Det enhetlige endepunktet for AI-generering. Koble til, rute og administrer AI-leverandørene dine på en enkel måte.",
"copyright": "© {year} OmniRoute. Alle rettigheter forbeholdt.",
"flowToolClaudeCode": "Claude Code",
"flowToolOpenAICodex": "OpenAI Codex",
"flowToolCline": "Cline",
"flowToolCursor": "Markør",
"flowProviderOpenAI": "OpenAI",
"flowProviderAnthropic": "Antropisk",
"flowProviderGemini": "Tvillingene",
"flowProviderGithubCopilot": "GitHub Copilot",
"interactiveDiagram": "Interaktivt diagram synlig på skrivebordet",
"ctaTitle": "Klar til å forenkle AI-infrastrukturen din?",
"ctaDescription": "Bli med utviklere som strømlinjeformer AI-integrasjonene sine med OmniRoute. Åpen kildekode og gratis å starte.",
"startFree": "Start gratis",
"readDocumentation": "Les dokumentasjon"
},
"docs": {
"title": "Dokumentasjon",
"quickStart": "Rask start",
"features": "Funksjoner",
"supportedProviders": "Støttede leverandører",
"supportedProvidersToc": "Leverandører",
"commonUseCases": "Vanlige brukstilfeller",
"clientCompatibility": "Klientkompatibilitet",
"protocolsToc": "Protocols",
"apiReference": "API-referanse",
"method": "Metode",
"path": "Sti",
"notes": "Notater",
"modelPrefixes": "Modellprefikser",
"prefix": "Prefiks",
"troubleshooting": "Feilsøking",
"supportsChat": "Støtter både chat- og svarendepunkter.",
"oauthAutoRefresh": "OAuth-tilkobling med automatisk tokenoppdatering.",
"fullStreaming": "Full streamingstøtte for alle modeller.",
"docsLabel": "Dokumenter",
"docsHeroDescription": "AI-gateway for LLM-er med flere leverandører. Ett endepunkt for OpenAI, Anthropic, Gemini, GitHub Copilot, Claude Code, Cursor og mer enn 20 leverandører.",
"openDashboard": "Åpne Dashboard",
"endpointPage": "Sluttpunktside",
"github": "GitHub",
"reportIssue": "Rapporter problem",
"onThisPage": "På denne siden",
"documentationVersion": "Dokumentasjon - v{version}",
"quickStartStep1Title": "1. Installer og kjør",
"quickStartStep1Prefix": "Løp",
"quickStartStep1Middle": "eller klone fra GitHub og kjøre",
"quickStartStep2Title": "2. Opprett API-nøkkel",
"quickStartStep2Text": "Gå til endepunkt -> Registrerte nøkler. Generer én nøkkel per miljø.",
"quickStartStep3Title": "3. Koble til leverandører",
"quickStartStep3Text": "Legg til leverandørkontoer via OAuth-pålogging, API-nøkkel eller gratis-lags automatisk tilkobling.",
"quickStartStep4Title": "4. Angi klientbase-URL",
"quickStartStep4Prefix": "Pek IDE- eller API-klienten din til",
"quickStartStep4Suffix": "Bruk for eksempel leverandørprefiks",
"featureRoutingTitle": "Ruting for flere leverandører",
"featureRoutingText": "Rut forespørsler til 30+ AI-leverandører gjennom ett enkelt OpenAI-kompatibelt endepunkt. Støtter chat, svar, lyd og bilde-APIer.",
"featureCombosTitle": "Kombinasjoner og balansering",
"featureCombosText": "Lag modellkombinasjoner med reservekjeder og balanseringsstrategier: round-robin, prioritet, tilfeldig, minst brukt og kostnadsoptimalisert.",
"featureUsageTitle": "Bruk og kostnadssporing",
"featureUsageText": "Sanntids-tokentelling, kostnadsberegning per leverandør/modell og detaljert bruksoppdeling etter API-nøkkel og konto.",
"featureAnalyticsTitle": "Analytics Dashboard",
"featureAnalyticsText": "Visuell analyse med diagrammer for forespørsler, tokens, feil, ventetid, kostnader og modellpopularitet over tid.",
"featureHealthTitle": "Helseovervåking",
"featureHealthText": "Live helsesjekker, leverandørstatus, strømbrytertilstander og automatisk hastighetsgrensedeteksjon med eksponentiell tilbakekobling.",
"featureCliTitle": "CLI-verktøy",
"featureCliText": "Administrer IDE-konfigurasjoner, eksporter/importer sikkerhetskopier, oppdag kodex-profiler og konfigurer innstillinger fra dashbordet.",
"featureSecurityTitle": "Sikkerhet og retningslinjer",
"featureSecurityText": "API-nøkkelautentisering, IP-filtrering, prompt-injeksjonsvakt, domenepolicyer, øktadministrasjon og revisjonslogging.",
"featureCloudSyncTitle": "Cloud Sync",
"featureCloudSyncText": "Synkroniser konfigurasjonen din med Cloudflare Workers for ekstern tilgang med kryptert legitimasjon og automatisk failover.",
"providersAcrossConnectionTypes": "{count}-leverandører på tvers av tre tilkoblingstyper.",
"manageProviders": "Administrer leverandører",
"providersCount": "{count} leverandører",
"providerTypeFree": "Gratis lag",
"providerTypeOAuth": "OAuth",
"providerTypeApiKey": "API-nøkkel",
"useCaseSingleEndpointTitle": "Enkelt endepunkt for mange leverandører",
"useCaseSingleEndpointText": "Pek klienter til én basis-URL og rute etter modellprefiks (for eksempel: gh/, cc/, kr/, openai/).",
"useCaseFallbackTitle": "Fallback og modellbytte med kombinasjoner",
"useCaseFallbackText": "Lag kombinasjonsmodeller i Dashboard og hold klientkonfigurasjonen stabil mens leverandørene roterer internt.",
"useCaseUsageVisibilityTitle": "Bruk, kostnader og feilsøkingssynlighet",
"useCaseUsageVisibilityText": "Spor tokens og kostnader etter leverandør, konto og API-nøkkel i fanene Bruk og Analytics.",
"clientCherryStudioTitle": "Cherry Studio",
"baseUrlLabel": "Base URL",
"chatEndpointLabel": "Chat-endepunkt",
"modelRecommendationLabel": "Modellanbefaling: eksplisitt prefiks",
"clientCodexTitle": "Codex / GitHub Copilot-modeller",
"clientCodexBullet1": "Bruk modell-ID-er med",
"clientCodexBullet2": "Codex-familiemodeller rutes automatisk til",
"clientCodexBullet3": "Ikke-Codex-modeller fortsetter",
"clientCursorTitle": "Markør IDE",
"clientCursorBullet1": "Bruk",
"clientCursorBullet1Suffix": "prefiks for Cursor-modeller.",
"clientCursorBullet2": "OAuth-tilkobling - logg på fra siden Leverandører.",
"clientClaudeTitle": "Claude Code / Antigravity",
"clientClaudeBullet1Prefix": "Bruk",
"clientClaudeBullet1Middle": "(Claude) eller",
"clientClaudeBullet1Suffix": "(Antigravity) prefiks.",
"protocolsTitle": "Protocols: MCP & A2A",
"protocolsDescription": "OmniRoute exposes two operational protocols in addition to OpenAI-compatible APIs: MCP for tool execution and A2A for agent-to-agent workflows.",
"protocolMcpTitle": "MCP (Model Context Protocol)",
"protocolMcpDesc": "Use MCP over stdio to let clients discover and call OmniRoute tools with audit visibility.",
"protocolMcpStep1": "Start MCP transport with `omniroute --mcp`.",
"protocolMcpStep2": "Point your MCP client to stdio transport.",
"protocolMcpStep3": "Call `omniroute_get_health` and `omniroute_list_combos` to validate connectivity.",
"protocolA2aTitle": "A2A (Agent2Agent)",
"protocolA2aDesc": "Use A2A JSON-RPC to submit tasks synchronously or via SSE streaming.",
"protocolA2aStep1": "Read `/.well-known/agent.json` for agent discovery.",
"protocolA2aStep2": "Send `message/send` or `message/stream` requests to `POST /a2a`.",
"protocolA2aStep3": "Manage task lifecycle with `tasks/get` and `tasks/cancel`.",
"protocolTroubleshootingTitle": "Protocol Troubleshooting",
"protocolTroubleshooting1": "If MCP status is offline, verify the stdio process is running and heartbeat file is updating.",
"protocolTroubleshooting2": "If A2A tasks stay in `working`, inspect `/api/a2a/tasks/:id` and stream events for terminal state.",
"protocolTroubleshooting3": "Use `/dashboard/mcp` and `/dashboard/a2a` for operational controls and audit visibility.",
"endpointChatNote": "OpenAI-kompatibelt chat-endepunkt (standard).",
"endpointResponsesNote": "Responses API-endepunkt (Codex, o-serien).",
"endpointModelsNote": "Modellkatalog for alle tilkoblede leverandører.",
"endpointAudioNote": "Lydtranskripsjon (Deepgram, AssemblyAI).",
"endpointImagesNote": "Bildegenerering (NanoBanana).",
"endpointRewriteChatNote": "Omskrivehjelper for klienter uten /v1.",
"endpointRewriteResponsesNote": "Omskriv hjelper for svar uten /v1.",
"endpointRewriteModelsNote": "Omskrivehjelper for modelloppdagelse uten /v1.",
"modelPrefixesDescriptionStart": "Bruk leverandørprefikset før modellnavnet for å rute til en bestemt leverandør. Eksempel:",
"modelPrefixesDescriptionEnd": "ruter til GitHub Copilot.",
"provider": "Leverandør",
"type": "Type",
"troubleshootingModelRouting": "Hvis klienten mislykkes med modellruting, bruk eksplisitt leverandør/modell (for eksempel: gh/gpt-5.1-codex).",
"troubleshootingAmbiguousModels": "Hvis du får tvetydige modellfeil, velger du et leverandørprefiks i stedet for en bare modell-ID.",
"troubleshootingCodexFamily": "For GitHub Codex-familiemodeller, behold modellen som gh/codex-model; ruteren velger /responser automatisk.",
"troubleshootingTestConnection": "Bruk Dashboard > Leverandører > Test tilkobling før du tester fra IDE-er eller eksterne klienter.",
"troubleshootingCircuitBreaker": "Hvis en leverandør viser at strømbryteren er åpen, vent på nedkjøling eller sjekk helsesiden for detaljer.",
"troubleshootingOAuth": "For OAuth-leverandører, autentiser på nytt hvis tokens utløper. Sjekk leverandørkortets statusindikator."
},
"legal": {
"privacyPolicy": "Personvernerklæring",
"termsOfService": "Vilkår for bruk",
"providerConfigurations": "Leverandørkonfigurasjoner",
"apiKeys": "API-nøkler",
"usageLogs": "Brukslogger",
"applicationSettings": "Applikasjonsinnstillinger",
"viewExportAnalytics": "Se og eksporter bruksanalyse",
"clearHistory": "Tøm brukshistorikken når som helst",
"configureRetention": "Konfigurer retningslinjer for loggoppbevaring",
"backupRestore": "Sikkerhetskopier og gjenopprett databasen",
"privacyMetadataTitle": "Personvernerklæring | OmniRoute",
"privacyMetadataDescription": "Personvernregler for OmniRoute AI API-proxy-ruteren.",
"termsMetadataTitle": "Vilkår for bruk | OmniRoute",
"termsMetadataDescription": "Vilkår for bruk for OmniRoute AI API-proxy-ruteren.",
"backToHome": "Tilbake til hjemmet",
"lastUpdated": "Sist oppdatert: {date}",
"policyLastUpdatedDate": "13. februar 2026",
"listSeparator": "-",
"questionsVisit": "Spørsmål? Besøk vår",
"githubRepository": "GitHub-depot",
"privacySection1Title": "1. Lokal-først arkitektur",
"privacySection1Text": "OmniRoute er designet som en lokal først-applikasjon. All databehandling og lagring skjer utelukkende på maskinen din. Det er ingen sentralisert server som samler inn informasjonen din.",
"privacySection2Title": "2. Data vi lagrer",
"privacyDataStoredIn": "Følgende data lagres lokalt i",
"privacyDataProviderConfigurationsDesc": "tilkoblings-URLer, leverandørtyper og prioritetsinnstillinger",
"privacyDataApiKeysDesc": "kryptert og lagret lokalt for autentisering med AI-leverandører",
"privacyDataUsageLogsDesc": "antall forespørsler, tokenbruk, modellnavn, tidsstempler og responstider",
"privacyDataApplicationSettingsDesc": "temapreferanser, rutingstrategi og kombinasjonskonfigurasjoner",
"privacySection3Title": "3. Ingen telemetri",
"privacySection3Text": "OmniRoute samler ikke inn telemetri, analyser eller krasjrapporter. Ingen data sendes til oss eller noen tredjepart. Dine bruksmønstre, API-kall og konfigurasjoner forblir helt private.",
"privacySection4Title": "4. Tredjeparts AI-leverandører",
"privacySection4Text": "Når du foretar API-anrop gjennom OmniRoute, blir forespørslene dine videresendt til AI-leverandørene du har konfigurert (for eksempel: OpenAI, Anthropic, Google). Disse leverandørene har sine egne retningslinjer for personvern som styrer hvordan de håndterer dataene dine. Vennligst se gjennom:",
"privacyOpenAiPolicy": "OpenAI personvernerklæring",
"privacyAnthropicPolicy": "Antropiske retningslinjer for personvern",
"privacyGooglePolicy": "Googles personvernregler",
"privacySection5Title": "5. Cloud Sync (valgfritt)",
"privacySection5Text": "Hvis du aktiverer den valgfrie skysynkroniseringsfunksjonen, kan leverandørkonfigurasjoner og API-nøkler overføres til et konfigurert skyendepunkt. Denne funksjonen er deaktivert som standard og krever eksplisitt opt-in.",
"privacySection6Title": "6. Logging",
"privacyLoggingIntro": "Forespørselslogger kan konfigureres gjennom dashbordinnstillingene. Du kan:",
"privacySection7Title": "7. Dine rettigheter",
"privacySection7TextStart": "Siden all data er lagret lokalt, har du full kontroll. Du kan slette dataene dine når som helst ved å fjerne",
"privacySection7TextEnd": "katalogen eller bruke funksjonene for sikkerhetskopiering og gjenoppretting av databasen i dashbordet.",
"termsSection1Title": "1. Oversikt",
"termsSection1Text": "OmniRoute er en lokal-første AI API-proxy-ruter som fungerer utelukkende på maskinen din. Den ruter forespørsler til flere AI-leverandører med lastbalansering, failover og brukssporing.",
"termsSection2Title": "2. Brukeransvar",
"termsResponsibilityApiKeys": "Du er alene ansvarlig for å administrere dine egne API-nøkler og legitimasjon for tredjeparts AI-leverandører (OpenAI, Anthropic, Google, etc.).",
"termsResponsibilityCompliance": "Du må overholde vilkårene for bruk for hver AI-leverandør hvis API du får tilgang til gjennom OmniRoute.",
"termsResponsibilitySecurity": "Du er ansvarlig for sikkerheten til din lokale OmniRoute-installasjon, inkludert å angi et passord og begrense nettverkstilgang.",
"termsSection3Title": "3. Hvordan det fungerer",
"termsSection3Text": "OmniRoute fungerer som en mellomfullmektig. API-anrop som sendes til OmniRoute, oversettes og videresendes til dine konfigurerte AI-leverandører. OmniRoute endrer ikke innholdet i dine forespørsler eller svar utover den nødvendige protokolloversettelsen.",
"termsSection4Title": "4. Datahåndtering",
"termsDataStoredLocally": "Alle data lagres lokalt på din maskin i en SQLite-database.",
"termsNoTransmission": "OmniRoute overfører ingen data til eksterne servere med mindre du eksplisitt aktiverer skysynkroniseringsfunksjoner.",
"termsDataLocationText": "Brukslogger, API-nøkler og konfigurasjon lagres i",
"termsSection5Title": "5. Ansvarsfraskrivelse",
"termsSection5Text": "OmniRoute leveres \"som den er\" uten garanti av noe slag. Vi er ikke ansvarlige for kostnader som påløper gjennom API-bruk, tjenesteavbrudd eller tap av data. Oppretthold alltid sikkerhetskopier av konfigurasjonen din.",
"termsSection6Title": "6. Åpen kildekode",
"termsSection6Text": "OmniRoute er åpen kildekode-programvare. Du står fritt til å inspisere, modifisere og distribuere den under lisensvilkårene."
}
}