mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-08-03 13:52:09 +03:00
2353 lines
124 KiB
JSON
2353 lines
124 KiB
JSON
{
|
||
"common": {
|
||
"save": "Zapisz",
|
||
"cancel": "Anuluj",
|
||
"delete": "Usuń",
|
||
"loading": "Ładowanie...",
|
||
"error": "Wystąpił błąd",
|
||
"success": "Sukces",
|
||
"confirm": "Czy jesteś pewien?",
|
||
"refresh": "Odśwież",
|
||
"close": "Zamknij",
|
||
"add": "Dodaj",
|
||
"edit": "Edytuj",
|
||
"search": "Szukaj",
|
||
"back": "Powrót",
|
||
"next": "Następny",
|
||
"submit": "Prześlij",
|
||
"reset": "Zresetuj",
|
||
"copy": "Kopiuj",
|
||
"copied": "Skopiowano!",
|
||
"enabled": "Włączone",
|
||
"disabled": "Niepełnosprawny",
|
||
"active": "Aktywny",
|
||
"inactive": "Nieaktywny",
|
||
"noData": "Brak dostępnych danych",
|
||
"configure": "Skonfiguruj",
|
||
"manage": "Zarządzaj",
|
||
"name": "Imię",
|
||
"actions": "Działania",
|
||
"status": "Stan",
|
||
"type": "Wpisz",
|
||
"model": "Modelka",
|
||
"models": "modele",
|
||
"provider": "Dostawca",
|
||
"account": "Konto",
|
||
"time": "Czas",
|
||
"details": "Szczegóły",
|
||
"created": "Utworzono",
|
||
"lastUsed": "Ostatnio używany",
|
||
"loadMore": "Załaduj więcej",
|
||
"noResults": "Nie znaleziono żadnych wyników",
|
||
"reloadPage": "Załaduj ponownie stronę",
|
||
"connected": "Połączono",
|
||
"disconnected": "Rozłączony",
|
||
"notConfigured": "Nie skonfigurowano",
|
||
"testConnection": "Połączenie testowe",
|
||
"enable": "Włącz",
|
||
"disable": "Wyłącz",
|
||
"columns": "Kolumny",
|
||
"newest": "Najnowszy",
|
||
"oldest": "Najstarszy",
|
||
"all": "Wszystko",
|
||
"none": "Żadne",
|
||
"yes": "Tak",
|
||
"no": "Nie",
|
||
"warning": "Ostrzeżenie",
|
||
"note": "Uwaga",
|
||
"free": "Bezpłatny",
|
||
"skipToContent": "Przejdź do treści"
|
||
},
|
||
"sidebar": {
|
||
"home": "Dom",
|
||
"dashboard": "Pulpit nawigacyjny",
|
||
"providers": "Dostawcy",
|
||
"combos": "Kombinacje",
|
||
"usage": "Użycie",
|
||
"analytics": "Analityka",
|
||
"costs": "Koszty",
|
||
"health": "Zdrowie",
|
||
"limits": "Limity i kwoty",
|
||
"cliTools": "Narzędzia interfejsu wiersza polecenia",
|
||
"media": "Media",
|
||
"settings": "Ustawienia",
|
||
"translator": "Tłumacz",
|
||
"docs": "Dokumenty",
|
||
"issues": "Problemy",
|
||
"endpoint": "Punkt końcowy",
|
||
"mcp": "MCP",
|
||
"a2a": "A2A",
|
||
"apiManager": "Menedżer API",
|
||
"logs": "Dzienniki",
|
||
"auditLog": "Dziennik audytu",
|
||
"shutdown": "Wyłączenie",
|
||
"restart": "Uruchom ponownie",
|
||
"shutdownConfirm": "Wyłączyć OmniRoute?",
|
||
"restartConfirm": "Zrestartować OmniRoute?",
|
||
"version": "v{version}",
|
||
"debug": "Debuguj",
|
||
"system": "Systemu",
|
||
"help": "Pomoc",
|
||
"serverDisconnected": "Serwer odłączony",
|
||
"serverDisconnectedMsg": "Serwer proxy został zatrzymany lub uruchamia się ponownie.",
|
||
"expandSidebar": "Rozwiń pasek boczny",
|
||
"collapseSidebar": "Zwiń pasek boczny",
|
||
"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": "Wyloguj się",
|
||
"language": "Język",
|
||
"providers": "Dostawcy",
|
||
"providerDescription": "Zarządzaj połączeniami dostawców AI",
|
||
"combos": "Kombinacje",
|
||
"comboDescription": "Kombinacje modeli z rezerwą",
|
||
"usage": "Wykorzystanie i analityka",
|
||
"usageDescription": "Monitoruj wykorzystanie interfejsu API, zużycie tokenów i dzienniki żądań",
|
||
"analytics": "Analityka",
|
||
"analyticsDescription": "Wykresy, trendy i spostrzeżenia dotyczące ocen",
|
||
"cliTools": "Narzędzia interfejsu wiersza polecenia",
|
||
"cliToolsDescription": "Skonfiguruj narzędzia CLI",
|
||
"home": "Dom",
|
||
"homeDescription": "Witamy w OmniRoute",
|
||
"endpoint": "Punkt końcowy",
|
||
"endpointDescription": "Konfiguracja punktu końcowego interfejsu API",
|
||
"mcp": "MCP Management",
|
||
"mcpDescription": "Monitor MCP server process, tools, and operational controls",
|
||
"a2a": "A2A Management",
|
||
"a2aDescription": "Monitor Agent2Agent status, tasks, and streaming activity",
|
||
"settings": "Ustawienia",
|
||
"settingsDescription": "Zarządzaj swoimi preferencjami",
|
||
"openaiCompatible": "Kompatybilny z OpenAI",
|
||
"anthropicCompatible": "Kompatybilny z antropią",
|
||
"media": "Media",
|
||
"mediaDescription": "Generate images, videos, and music",
|
||
"themes": "Themes",
|
||
"themesDescription": "Choose a color theme for the whole dashboard panel"
|
||
},
|
||
"home": {
|
||
"quickStart": "Szybki start",
|
||
"quickStartDesc": "Zacznij działać w 4 krokach. Łącz dostawców, kieruj modele, monitoruj wszystko.",
|
||
"fullDocs": "Pełna dokumentacja",
|
||
"step1Title": "1. Utwórz klucz API",
|
||
"step1Desc": "Przejdź do <endpoint>Endpoint</endpoint> -> Zarejestrowane klucze. Wygeneruj jeden klucz na środowisko.",
|
||
"step2Title": "2. Połącz dostawców",
|
||
"step2Desc": "Dodaj konta w <providers>Providers</providers>. Obsługuje OAuth, klucz API i bezpłatne poziomy.",
|
||
"step3Title": "3. Wskaż swojego klienta",
|
||
"step3Desc": "Ustaw podstawowy adres URL na {url} w swoim kliencie IDE lub API.",
|
||
"step4Title": "4. Monitoruj i optymalizuj",
|
||
"step4Desc": "Śledź tokeny, koszty i błędy w <logs>Dziennikach żądań</logs> i <analytics>Analytics</analytics>.",
|
||
"providersOverview": "Przegląd dostawców",
|
||
"configuredOf": "{configured} skonfigurowany z {total} dostępnych dostawców",
|
||
"noModelsAvailable": "Brak dostępnych modeli tego dostawcy.",
|
||
"configureFirst": "Najpierw skonfiguruj połączenie w {providers}",
|
||
"configureProvider": "Skonfiguruj dostawcę",
|
||
"modelAvailable": "Dostępny model {count}",
|
||
"modelsAvailable": "Dostępne modele {count}",
|
||
"connectionsActive": "{count} połączenie aktywne",
|
||
"connectionsActivePlural": "{count} aktywne połączenia",
|
||
"copyModelName": "Skopiuj nazwę modelu",
|
||
"documentation": "Dokumentacja",
|
||
"healthMonitor": "Monitor zdrowia",
|
||
"reportIssue": "Zgłoś problem",
|
||
"activeError": "{active} aktywny · {errors} błąd",
|
||
"oauthLabel": "OAuth",
|
||
"apiKeyLabel": "Klucz API",
|
||
"requestsShort": "{count} wymagania",
|
||
"providerModelsTitle": "{provider} - Modele",
|
||
"copiedModel": "Skopiowano: {model}",
|
||
"aliasLabel": "pseudonim"
|
||
},
|
||
"analytics": {
|
||
"title": "Analityka",
|
||
"overviewDescription": "Monitoruj wzorce wykorzystania interfejsu API, zużycie tokenów, koszty i trendy aktywności u wszystkich dostawców i modeli.",
|
||
"evalsDescription": "Uruchom pakiety ewaluacyjne, aby przetestować i zweryfikować punkty końcowe LLM. Porównaj jakość modelu, wykryj regresje i porównaj opóźnienia.",
|
||
"overview": "Przegląd",
|
||
"evals": "Ewaluacje"
|
||
},
|
||
"apiManager": {
|
||
"title": "Klucze API",
|
||
"createKey": "Utwórz klucz API",
|
||
"key": "Klucz",
|
||
"revokeKey": "Unieważnij klucz",
|
||
"revokeConfirm": "Czy na pewno chcesz unieważnić ten klucz API?",
|
||
"noKeys": "Nie ma jeszcze kluczy API",
|
||
"noKeysDesc": "Utwórz swój pierwszy klucz API, aby uwierzytelniać żądania kierowane do punktu końcowego",
|
||
"keyLabel": "Etykieta klucza",
|
||
"permissions": "Uprawnienia",
|
||
"expiresAt": "Wygasa",
|
||
"never": "Nigdy",
|
||
"revoke": "Odwołaj",
|
||
"showKey": "Pokaż klucz",
|
||
"hideKey": "Ukryj klucz",
|
||
"copyKey": "Skopiuj klucz API",
|
||
"allModels": "Wszystkie modele",
|
||
"selectedModels": "Wybrane modele",
|
||
"readOnly": "Tylko do odczytu",
|
||
"fullAccess": "Pełny dostęp",
|
||
"keyManagement": "Zarządzanie kluczami API",
|
||
"keyManagementDesc": "Twórz klucze API i zarządzaj nimi w celu uwierzytelniania żądań kierowanych do punktu końcowego",
|
||
"totalKeys": "Razem klucze",
|
||
"restricted": "Ograniczone",
|
||
"totalRequests": "Łączna liczba żądań",
|
||
"modelsAvailable": "Dostępne modele",
|
||
"registeredKeys": "Zarejestrowane klucze",
|
||
"keysRegistered": "Zarejestrowano {count} kluczy",
|
||
"keyRegistered": "Zarejestrowano klucz {count}",
|
||
"keysSecurityNote": "Każdy klucz izoluje śledzenie użycia i może zostać odwołany niezależnie. Klucze są maskowane po utworzeniu ze względów bezpieczeństwa.",
|
||
"createFirstKey": "Utwórz swój pierwszy klucz",
|
||
"name": "Imię",
|
||
"usage": "Użycie",
|
||
"created": "Utworzono",
|
||
"actions": "Działania",
|
||
"reqs": "wymagania",
|
||
"neverUsed": "Nigdy nie używany",
|
||
"deleteConfirm": "Usunąć ten klucz API?",
|
||
"usageTips": "Wskazówki dotyczące użytkowania",
|
||
"tipAuth": "Użyj kluczy API w nagłówku autoryzacji jako Nośnik YOUR_KEY",
|
||
"tipSecure": "Klucze są wyświetlane tylko raz podczas tworzenia — przechowuj je bezpiecznie",
|
||
"tipSeparate": "Utwórz osobne klucze dla różnych klientów lub środowisk",
|
||
"tipRestrict": "Ogranicz klucze do określonych modeli, aby zapewnić większe bezpieczeństwo i kontrolę kosztów",
|
||
"keyName": "Nazwa klucza",
|
||
"keyNamePlaceholder": "np. klucz produkcyjny, klucz rozwojowy",
|
||
"keyNameDesc": "Wybierz opisową nazwę identyfikującą przeznaczenie tego klucza",
|
||
"keyCreated": "Utworzono klucz API",
|
||
"keyCreatedSuccess": "Klucz został utworzony pomyślnie!",
|
||
"keyCreatedNote": "Skopiuj i zapisz ten klucz teraz — nie będzie on więcej wyświetlany.",
|
||
"done": "Gotowe",
|
||
"savePermissions": "Zapisz uprawnienia",
|
||
"allowAll": "Zezwalaj na wszystko",
|
||
"restrict": "Ogranicz",
|
||
"allowAllInfo": "Ten klucz umożliwia dostęp do wszystkich dostępnych modeli.",
|
||
"restrictInfo": "Ten klucz umożliwia dostęp do {selected} z {total} modeli.",
|
||
"selected": "Wybrano {count}",
|
||
"all": "Wszystko",
|
||
"clear": "Jasne",
|
||
"searchModels": "Wyszukaj modele według nazwy lub dostawcy...",
|
||
"noModelsFound": "Nie znaleziono żadnych modeli",
|
||
"keyNameRequired": "Nazwa klucza jest wymagana",
|
||
"keyNameTooLong": "Nazwa klucza musi mieć maksymalnie {max} znaków",
|
||
"keyNameInvalid": "Nazwa klucza może zawierać tylko litery, cyfry, spacje, łączniki i podkreślenia",
|
||
"invalidKeyName": "Nieprawidłowa nazwa klucza",
|
||
"failedCreateKey": "Nie udało się utworzyć klucza",
|
||
"failedCreateKeyRetry": "Nie udało się utworzyć klucza. Spróbuj ponownie.",
|
||
"invalidKeyId": "Nieprawidłowy identyfikator klucza",
|
||
"failedDeleteKey": "Nie udało się usunąć klucza",
|
||
"failedDeleteKeyRetry": "Nie udało się usunąć klucza. Spróbuj ponownie.",
|
||
"invalidModelsSelection": "Nieprawidłowy wybór modeli",
|
||
"cannotSelectMoreThanModels": "Nie można wybrać więcej niż {max} modeli",
|
||
"failedUpdatePermissions": "Nie udało się zaktualizować uprawnień",
|
||
"failedUpdatePermissionsRetry": "Nie udało się zaktualizować uprawnień. Spróbuj ponownie.",
|
||
"unknownProvider": "nieznany",
|
||
"copyMaskedKey": "Skopiuj zamaskowany klucz",
|
||
"modelsCount": "{count, plural, one {# model} other {# models}}",
|
||
"lastUsedOn": "Ostatni: {date}",
|
||
"editPermissions": "Edytuj uprawnienia",
|
||
"deleteKey": "Usuń klucz",
|
||
"model": "Model {count}",
|
||
"models": "{count} modele",
|
||
"permissionsTitle": "Uprawnienia: {name}",
|
||
"allowAllDesc": "Ten klucz umożliwia dostęp do wszystkich dostępnych modeli.",
|
||
"restrictDesc": "Ten klucz umożliwia dostęp do {selectedCount} z {totalModels} modeli.",
|
||
"selectedCount": "Wybrano {count}"
|
||
},
|
||
"auditLog": {
|
||
"title": "Dziennik audytu",
|
||
"searchPlaceholder": "Wyszukaj działania...",
|
||
"action": "Akcja",
|
||
"actor": "Aktor",
|
||
"target": "Cel",
|
||
"ipAddress": "Adres IP",
|
||
"timestamp": "Znacznik czasu",
|
||
"noEntries": "Nie znaleziono wpisów audytu",
|
||
"filterByAction": "Filtruj według działania...",
|
||
"filterByActor": "Filtruj według aktora...",
|
||
"filterEntriesAria": "Filtruj wpisy dziennika audytu",
|
||
"filterByActionTypeAria": "Filtruj według typu akcji",
|
||
"filterByActorAria": "Filtruj według aktora",
|
||
"refreshAuditLogAria": "Odśwież dziennik audytu",
|
||
"tableAria": "Wpisy dziennika audytu",
|
||
"failedFetchAuditLog": "Nie udało się pobrać dziennika kontroli",
|
||
"notAvailable": "—",
|
||
"description": "Działania administracyjne i zdarzenia związane z bezpieczeństwem",
|
||
"showing": "Wyświetlanie wpisów {count} (przesunięcie {offset})",
|
||
"previous": "Poprzedni"
|
||
},
|
||
"media": {
|
||
"title": "Studio multimediów",
|
||
"subtitle": "Generuj obrazy, wideo i muzykę",
|
||
"model": "Model",
|
||
"prompt": "Prompt",
|
||
"generate": "Generuj",
|
||
"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": "Narzędzia interfejsu wiersza polecenia",
|
||
"noActiveProviders": "Brak aktywnych dostawców",
|
||
"noActiveProvidersDesc": "Najpierw dodaj i połącz dostawców, aby skonfigurować narzędzia CLI.",
|
||
"mapModels": "Modele map",
|
||
"testConnection": "Połączenie testowe",
|
||
"connectionStatus": "Stan połączenia",
|
||
"configureEndpoint": "Skonfiguruj punkt końcowy",
|
||
"instructions": "Instrukcje",
|
||
"modelMapping": "Mapowanie modelu",
|
||
"baseUrl": "Bazowy adres URL",
|
||
"apiKey": "Klucz API",
|
||
"configured": "Skonfigurowane",
|
||
"notConfigured": "Nie skonfigurowano",
|
||
"notInstalled": "Nie zainstalowano",
|
||
"custom": "Niestandardowe",
|
||
"unknown": "Nieznany",
|
||
"lastSavedAt": "Ostatnio zapisany: {date}",
|
||
"never": "Nigdy",
|
||
"justNow": "właśnie teraz",
|
||
"minutesAgoShort": "{count}m temu",
|
||
"hoursAgoShort": "{count}h temu",
|
||
"daysAgoShort": "{count}d temu",
|
||
"monthsAgoShort": "{count}miesiące temu",
|
||
"yearsAgoShort": "{count}y temu",
|
||
"runtimeCheckFailed": "Kontrola czasu wykonania nie powiodła się",
|
||
"yourApiKeyPlaceholder": "twój-api-key",
|
||
"modelPlaceholder": "dostawca/identyfikator modelu",
|
||
"configurationSaved": "Konfiguracja została zapisana pomyślnie.",
|
||
"failedToSave": "Nie udało się zapisać konfiguracji.",
|
||
"noApiKeysCreateOne": "Brak kluczy API — utwórz je na stronie Klucze",
|
||
"defaultOmnirouteKey": "sk_omniroute (domyślnie)",
|
||
"selectModel": "Wybierz Model",
|
||
"selectModelForAlias": "Wybierz model dla {alias}",
|
||
"selectModelForTool": "Wybierz model dla {tool}",
|
||
"select": "Wybierz",
|
||
"clear": "Jasne",
|
||
"comingSoon": "Już wkrótce",
|
||
"checkingRuntime": "Sprawdzam stan środowiska wykonawczego...",
|
||
"guideOnlyIntegration": "Integracja wyłącznie w trybie przewodnika (nie jest wymagane lokalne środowisko wykonawcze)",
|
||
"cliRuntimeDetected": "Środowisko wykonawcze CLI zostało wykryte i gotowe",
|
||
"cliFoundNotRunnable": "Znaleziono interfejs CLI, ale nie można go uruchomić{reason}",
|
||
"cliRuntimeNotDetected": "Nie wykryto środowiska wykonawczego CLI",
|
||
"binary": "Binarny",
|
||
"configPath": "Ścieżka konfiguracji",
|
||
"configPathShort": "Konfig",
|
||
"failedCheckRuntimeStatus": "Nie udało się sprawdzić stanu środowiska wykonawczego.",
|
||
"copy": "Kopiuj",
|
||
"copied": "Skopiowano",
|
||
"copyConfig": "Kopiuj konfigurację",
|
||
"saveConfig": "Zapisz konfigurację",
|
||
"selectionSaved": "Wybór został zapisany",
|
||
"guide": "Przewodnik",
|
||
"detected": "Wykryto",
|
||
"notReady": "Nie gotowy",
|
||
"active": "Aktywny",
|
||
"inactive": "Nieaktywny",
|
||
"startMitm": "Uruchom MITM",
|
||
"stopMitm": "Zatrzymaj MITM",
|
||
"mitmStarted": "MITM rozpoczęło się pomyślnie!",
|
||
"mitmStopped": "MITM został zatrzymany pomyślnie!",
|
||
"failedStart": "Nie udało się uruchomić MITM",
|
||
"failedStop": "Nie udało się zatrzymać MITM",
|
||
"saveMappings": "Zapisz mapowania",
|
||
"mappingsSaved": "Mapowania zapisane!",
|
||
"failedSaveMappings": "Nie udało się zapisać mapowań",
|
||
"howItWorks": "Jak to działa:",
|
||
"antigravityHowWorksDesc": "Antygrawitacja wysyła żądania do punktu końcowego Google. MITM przechwytuje i przekierowuje je do OmniRoute.",
|
||
"antigravityStep1": "1. Uruchom MITM, aby kierować żądania przez OmniRoute.",
|
||
"antigravityStep2Prefix": "2. Dodaj",
|
||
"antigravityStep2Suffix": "do pliku hosts jako 127.0.0.1.",
|
||
"antigravityStep3": "3. Otwórz Antygrawitację i żądania zostaną przesłane przez serwer proxy.",
|
||
"sudoPasswordRequiredTitle": "Wymagane hasło Sudo",
|
||
"sudoPasswordHint": "Aby zmodyfikować ustawienia pliku hosts i systemowego serwera proxy, wymagane jest hasło administratora.",
|
||
"enterSudoPassword": "Wprowadź hasło sudo",
|
||
"sudoPasswordRequiredError": "Wymagane jest hasło Sudo.",
|
||
"cancel": "Anuluj",
|
||
"confirm": "Potwierdź",
|
||
"settingsApplied": "Ustawienia zostały zastosowane pomyślnie!",
|
||
"failedApplySettings": "Nie udało się zastosować ustawień",
|
||
"settingsReset": "Ustawienia zostały zresetowane pomyślnie!",
|
||
"failedResetSettings": "Nie udało się zresetować ustawień",
|
||
"backupRestored": "Kopia zapasowa przywrócona!",
|
||
"failedRestore": "Nie udało się przywrócić",
|
||
"checkingCli": "Sprawdzam {tool} CLI...",
|
||
"cliNotRunnable": "{tool} Zainstalowano CLI, ale nie można go uruchomić",
|
||
"cliNotInstalled": "{tool} Interfejs CLI nie jest zainstalowany",
|
||
"cliNotDetected": "{tool} Nie wykryto interfejsu CLI",
|
||
"cliDetectedReady": "{tool} Wykryto interfejs CLI i jest on gotowy",
|
||
"cliFoundFailedHealthcheck": "{tool} Znaleziono interfejs CLI, ale kontrola stanu środowiska wykonawczego nie powiodła się{reason}.",
|
||
"installCliPrompt": "Aby móc korzystać z tej funkcji, zainstaluj {tool} CLI.",
|
||
"installCodexPrompt": "Aby skorzystać z funkcji automatycznego stosowania, zainstaluj Codex CLI.",
|
||
"hide": "Ukryj",
|
||
"howToInstall": "Jak zainstalować",
|
||
"installationGuide": "Przewodnik instalacji",
|
||
"platforms": "macOS/Linux/Windows:",
|
||
"afterInstallationRun": "Po instalacji uruchom",
|
||
"toVerify": "zweryfikować.",
|
||
"current": "Aktualny",
|
||
"baseUrlPlaceholder": "https://.../v1",
|
||
"resetToDefault": "Przywróć ustawienia domyślne",
|
||
"providerModelPlaceholder": "dostawca/identyfikator modelu",
|
||
"apply": "Zastosuj",
|
||
"reset": "Zresetuj",
|
||
"manualConfig": "Konfiguracja ręczna",
|
||
"backups": "Kopie zapasowe",
|
||
"configBackups": "Skonfiguruj kopie zapasowe",
|
||
"noBackupsYet": "Nie ma jeszcze kopii zapasowych. Kopie zapasowe są tworzone automatycznie przed każdym Zastosowaniem lub Resetem.",
|
||
"restore": "Przywróć",
|
||
"backupRestoredReloading": "Kopia zapasowa przywrócona! Stan ponownego ładowania...",
|
||
"failedRestoreBackup": "Nie udało się przywrócić kopii zapasowej",
|
||
"applied": "Zastosowano!",
|
||
"failed": "Nie udało się",
|
||
"resetDone": "Zresetuj!",
|
||
"omnirouteConfiguredOpenAiCompatible": "OmniRoute jest skonfigurowany jako dostawca zgodny z OpenAI",
|
||
"provider": "Dostawca",
|
||
"model": "Modelka",
|
||
"providers": "Dostawcy",
|
||
"auth": "Autoryt",
|
||
"noApiKeysAvailable": "Brak dostępnych kluczy API",
|
||
"usingDefaultOmniroute": "Używam domyślnego: sk_omniroute",
|
||
"updateConfig": "Zaktualizuj konfigurację",
|
||
"applyConfig": "Zastosuj konfigurację",
|
||
"noBackupsAvailable": "Brak dostępnych kopii zapasowych.",
|
||
"profileSaved": "Profil „{name}” został zapisany!",
|
||
"failedSaveProfile": "Nie udało się zapisać profilu",
|
||
"profileActivated": "Profil aktywowany!",
|
||
"failedActivateProfile": "Nie udało się aktywować profilu",
|
||
"profiles": "Profile",
|
||
"savedProfiles": "Zapisane profile",
|
||
"noProfilesYet": "Nie zapisano jeszcze żadnych profili. Zapisz bieżącą konfigurację jako profil poniżej.",
|
||
"activate": "Aktywuj",
|
||
"deleteProfile": "Usuń profil",
|
||
"profileNamePlaceholder": "Nazwa profilu (np. Konto Osobiste)",
|
||
"saveCurrent": "Zapisz bieżący",
|
||
"codexAuthNotePrefix": "Kodeks używa",
|
||
"codexAuthNoteMiddle": "z",
|
||
"codexAuthNoteSuffix": "Kliknij „Zastosuj”, aby przeprowadzić automatyczną konfigurację.",
|
||
"claudeManualConfiguration": "Claude CLI - Konfiguracja ręczna",
|
||
"codexManualConfiguration": "Codex CLI — konfiguracja ręczna",
|
||
"droidManualConfiguration": "Droid fabryczny – konfiguracja ręczna",
|
||
"openClawManualConfiguration": "Otwarty pazur - konfiguracja ręczna",
|
||
"clineManualConfiguration": "Konfiguracja ręczna Cline",
|
||
"kiloManualConfiguration": "Konfiguracja ręczna kodu Kilo",
|
||
"toolDescriptions": {
|
||
"antigravity": "Google Antigravity IDE z MITM",
|
||
"claude": "Antropiczny kod Claude'a CLI",
|
||
"codex": "Interfejs wiersza polecenia OpenAI Codex",
|
||
"droid": "Asystent sztucznej inteligencji droida fabrycznego",
|
||
"openclaw": "Otwórz asystenta AI Claw",
|
||
"cline": "Cline AI Asystent kodowania CLI",
|
||
"kilo": "Kilo Code AI Assistant CLI",
|
||
"cursor": "Edytor kodu AI kursora",
|
||
"continue": "Kontynuuj Asystenta AI"
|
||
},
|
||
"guides": {
|
||
"cursor": {
|
||
"notes": {
|
||
"0": "Aby korzystać z tej funkcji, wymagane jest konto Cursor Pro.",
|
||
"1": "Kursor kieruje żądania przez własny serwer, więc lokalny punkt końcowy nie jest obsługiwany. Włącz punkt końcowy Cloud w Ustawieniach."
|
||
},
|
||
"steps": {
|
||
"1": {
|
||
"title": "Otwórz Ustawienia",
|
||
"desc": "Przejdź do Ustawienia -> Modele"
|
||
},
|
||
"2": {
|
||
"title": "Włącz interfejs API OpenAI",
|
||
"desc": "Włącz opcję „Klucz API OpenAI”."
|
||
},
|
||
"3": {
|
||
"title": "Bazowy adres URL"
|
||
},
|
||
"4": {
|
||
"title": "Klucz API"
|
||
},
|
||
"5": {
|
||
"title": "Dodaj model niestandardowy",
|
||
"desc": "Kliknij „Wyświetl wszystkie modele” -> „Dodaj model niestandardowy”"
|
||
},
|
||
"6": {
|
||
"title": "Wybierz Model"
|
||
}
|
||
}
|
||
},
|
||
"continue": {
|
||
"steps": {
|
||
"1": {
|
||
"title": "Otwórz konfigurację",
|
||
"desc": "Otwórz plik konfiguracyjny Kontynuuj"
|
||
},
|
||
"2": {
|
||
"title": "Klucz API"
|
||
},
|
||
"3": {
|
||
"title": "Wybierz Model"
|
||
},
|
||
"4": {
|
||
"title": "Dodaj konfigurację modelu",
|
||
"desc": "Dodaj następującą konfigurację do tablicy modeli:"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"combos": {
|
||
"title": "Kombinacje",
|
||
"description": "Twórz kombinacje modeli z obsługą routingu ważonego i obsługi rezerwowej",
|
||
"createCombo": "Utwórz kombinację",
|
||
"editCombo": "Edytuj kombinację",
|
||
"deleteCombo": "Usuń kombinację",
|
||
"noModels": "Żadnych modeli",
|
||
"noModelsYet": "Nie dodano jeszcze żadnych modeli",
|
||
"addModel": "Dodaj model",
|
||
"addModelToCombo": "Dodaj model do kombinacji",
|
||
"routingStrategy": "Strategia routingu",
|
||
"maxRetries": "Maksymalna liczba ponownych prób",
|
||
"timeout": "Limit czasu (ms)",
|
||
"healthcheck": "Kontrola stanu",
|
||
"priority": "Priorytet",
|
||
"fallback": "Powrót",
|
||
"roundRobin": "Okrągły Robin",
|
||
"random": "Losowe",
|
||
"leastLatency": "Najmniejsze opóźnienie",
|
||
"comboName": "Nazwa kombinacji",
|
||
"comboNamePlaceholder": "moja kombinacja",
|
||
"deleteConfirm": "Usunąć tę kombinację?",
|
||
"noCombosYet": "Nie ma jeszcze żadnych kombinacji",
|
||
"comboCreated": "Kombinacja utworzona pomyślnie",
|
||
"comboUpdated": "Kombinacja została pomyślnie zaktualizowana",
|
||
"comboDeleted": "Kombinacja usunięta",
|
||
"failedCreate": "Nie udało się utworzyć kombinacji",
|
||
"failedUpdate": "Nie udało się zaktualizować kombinacji",
|
||
"errorCreating": "Błąd podczas tworzenia kombinacji",
|
||
"errorUpdating": "Błąd aktualizacji kombinacji",
|
||
"errorDeleting": "Błąd podczas usuwania kombinacji",
|
||
"testFailed": "Żądanie testowe nie powiodło się",
|
||
"failedToggle": "Nie udało się przełączyć kombinacji",
|
||
"testResults": "Wyniki testu — {name}",
|
||
"resolvedBy": "Rozwiązane przez:",
|
||
"more": "+{count} więcej",
|
||
"reqs": "wymagania",
|
||
"success": "sukces",
|
||
"proxyConfigured": "Serwer proxy skonfigurowany",
|
||
"copyComboName": "Skopiuj nazwę kombinacji",
|
||
"enableCombo": "Włącz kombinację",
|
||
"disableCombo": "Wyłącz kombinację",
|
||
"testCombo": "Kombinacja testowa",
|
||
"duplicate": "Duplikat",
|
||
"proxyConfig": "Konfiguracja proxy",
|
||
"nameRequired": "Imię i nazwisko jest wymagane",
|
||
"nameInvalid": "Tylko litery, cyfry, -, _, / i . dozwolone",
|
||
"nameHint": "Litery, cyfry, -, _, / i . dozwolone",
|
||
"priorityDesc": "Sekwencyjne działanie awaryjne: najpierw wypróbowuje model 1, potem 2 itd.",
|
||
"weightedDesc": "Rozdziela ruch według procentu wagi z rezerwą",
|
||
"roundRobinDesc": "Dystrybucja kołowa: każde żądanie trafia do następnego modelu w rotacji",
|
||
"randomDesc": "Jednolity wybór losowy, a następnie powrót do pozostałych modeli",
|
||
"leastUsedDesc": "Wybiera model z najmniejszą liczbą żądań, równoważąc obciążenie w czasie",
|
||
"costOptimizedDesc": "Najpierw wybiera najtańszy model na podstawie ceny",
|
||
"models": "Modele",
|
||
"autoBalance": "Automatyczne balansowanie",
|
||
"advancedSettings": "Ustawienia zaawansowane",
|
||
"retryDelay": "Opóźnienie ponownej próby (ms)",
|
||
"concurrencyPerModel": "Współbieżność/model",
|
||
"queueTimeout": "Limit czasu kolejki (ms)",
|
||
"advancedHint": "Pozostaw puste, aby użyć globalnych ustawień domyślnych. Zastępują one ustawienia poszczególnych dostawców.",
|
||
"moveUp": "Przesuń się w górę",
|
||
"moveDown": "Przesuń w dół",
|
||
"removeModel": "Usuń",
|
||
"saving": "Zapisywanie...",
|
||
"weighted": "Ważona",
|
||
"leastUsed": "Najrzadziej używany",
|
||
"costOpt": "Opcja kosztowa",
|
||
"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": "Koszty",
|
||
"budget": "Budżet",
|
||
"totalCost": "Całkowity koszt",
|
||
"breakdown": "Podział kosztów",
|
||
"noData": "Brak danych o kosztach",
|
||
"byModel": "Według modelu",
|
||
"byProvider": "Przez Dostawcę"
|
||
},
|
||
"endpoint": {
|
||
"title": "Punkt końcowy interfejsu API",
|
||
"available": "Dostępne punkty końcowe",
|
||
"cloudProxy": "Serwer proxy w chmurze",
|
||
"disableConfirm": "Czy na pewno chcesz wyłączyć serwer proxy w chmurze?",
|
||
"baseUrl": "Bazowy adres URL",
|
||
"apiKeyLabel": "Klucz API",
|
||
"registeredKeys": "Zarejestrowane klucze",
|
||
"chatCompletions": "Zakończenia czatu",
|
||
"responses": "Odpowiedzi",
|
||
"listModels": "Lista modeli",
|
||
"usingCloudProxy": "Korzystanie z serwera proxy w chmurze",
|
||
"usingLocalServer": "Korzystanie z serwera lokalnego",
|
||
"machineId": "Identyfikator maszyny: {id}...",
|
||
"disableCloud": "Wyłącz chmurę",
|
||
"enableCloud": "Włącz chmurę",
|
||
"modelsAcrossEndpoints": "{models} modele w {endpoints} punktach końcowych",
|
||
"chatDesc": "Czat strumieniowy i niestreamingowy ze wszystkimi dostawcami",
|
||
"embeddings": "Osadzenia",
|
||
"embeddingsDesc": "Osadzanie tekstu dla potoków wyszukiwania i RAG",
|
||
"imageGeneration": "Generowanie obrazu",
|
||
"imageDesc": "Generuj obrazy na podstawie podpowiedzi tekstowych",
|
||
"rerank": "Zmień rangę",
|
||
"rerankDesc": "Zmień rangę dokumentów według trafności dla zapytania",
|
||
"audioTranscription": "Transkrypcja dźwięku",
|
||
"audioTranscriptionDesc": "Transkrypcja plików audio na tekst (szeptem)",
|
||
"textToSpeech": "Tekst na mowę",
|
||
"textToSpeechDesc": "Konwertuj tekst na naturalnie brzmiącą mowę",
|
||
"moderations": "Moderacje",
|
||
"moderationsDesc": "Moderowanie treści i klasyfikacja bezpieczeństwa",
|
||
"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": "Główne API",
|
||
"categoryMedia": "Media i Multi-Modal",
|
||
"categoryUtility": "Narzędzia i Zarządzanie",
|
||
"enableCloudTitle": "Włącz serwer proxy w chmurze",
|
||
"whatYouGet": "Co otrzymasz",
|
||
"cloudBenefitAccess": "Uzyskaj dostęp do swojego API z dowolnego miejsca na świecie",
|
||
"cloudBenefitShare": "Z łatwością udostępniaj punkt końcowy swojemu zespołowi",
|
||
"cloudBenefitPorts": "Nie ma potrzeby otwierania portów ani konfigurowania zapory ogniowej",
|
||
"cloudBenefitEdge": "Szybka globalna sieć brzegowa",
|
||
"cloudSessionNote": "Cloud będzie przechowywać Twoją sesję uwierzytelniania przez 1 dzień. Jeśli nie zostanie użyty, zostanie automatycznie usunięty.",
|
||
"cloudUnstableNote": "Chmura jest obecnie niestabilna z Claude Code OAuth w niektórych przypadkach.",
|
||
"cloudConnected": "Serwer proxy chmury podłączony!",
|
||
"connectingToCloud": "Łączę z chmurą...",
|
||
"verifyingConnection": "Weryfikacja połączenia...",
|
||
"connecting": "Łączenie...",
|
||
"verifying": "Weryfikuję...",
|
||
"connected": "Połączono!",
|
||
"disableCloudTitle": "Wyłącz serwer proxy w chmurze",
|
||
"disableWarning": "Wszystkie sesje autoryzacji zostaną usunięte z chmury.",
|
||
"syncingData": "Synchronizowanie najnowszych danych...",
|
||
"disablingCloud": "Wyłączam chmurę...",
|
||
"syncing": "Synchronizowanie...",
|
||
"disabling": "Wyłączam...",
|
||
"cloudConnectedVerified": "Cloud Proxy podłączony i zweryfikowany!",
|
||
"connectedVerificationPending": "Połączono — weryfikacja w toku",
|
||
"connectedVerificationPendingWithError": "Połączono — weryfikacja w toku: {error}",
|
||
"cloudDisabledSuccess": "Chmura została pomyślnie wyłączona",
|
||
"syncedSuccess": "Zsynchronizowano pomyślnie",
|
||
"failedDisable": "Nie udało się wyłączyć chmury",
|
||
"failedEnable": "Nie udało się włączyć chmury",
|
||
"cloudRequestTimeout": "Upłynął limit czasu żądania w chmurze",
|
||
"cloudRequestFailed": "Żądanie w chmurze nie powiodło się",
|
||
"cloudWorkerUnreachable": "Nie udało się połączyć z pracownikiem chmury. Upewnij się, że usługa w chmurze jest uruchomiona (npm run dev w /cloud).",
|
||
"connectionFailed": "Połączenie nie powiodło się",
|
||
"syncFailed": "Nie udało się zsynchronizować danych w chmurze",
|
||
"providerModelsTitle": "{provider} — Modele",
|
||
"noModelsForProvider": "Brak dostępnych modeli tego dostawcy.",
|
||
"chat": "Czat",
|
||
"embedding": "Osadzanie",
|
||
"image": "Obraz",
|
||
"custom": "niestandardowe",
|
||
"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": "Invoke tools such as `omniroute_get_health` and `omniroute_list_combos`.",
|
||
"a2aQuickStartTitle": "A2A Quick Start",
|
||
"a2aQuickStartStep1": "Discover the agent card at `/.well-known/agent.json`.",
|
||
"a2aQuickStartStep2": "Send JSON-RPC requests to `POST /a2a` using `message/send` or `message/stream`.",
|
||
"a2aQuickStartStep3": "Track and control tasks using `tasks/get` and `tasks/cancel`."
|
||
},
|
||
"mcpDashboard": {
|
||
"loading": "Loading MCP dashboard...",
|
||
"activate": "activate",
|
||
"deactivate": "deactivate",
|
||
"confirmSwitchCombo": "Potwierdzić kombinację {action} „{combo}”?",
|
||
"switchComboFailed": "Nie udało się przełączyć stanu kombinacji.",
|
||
"switchComboSuccess": "Kombinacja „{combo}” została zaktualizowana.",
|
||
"confirmApplyProfile": "Zastosować profil odporności „{profile}”?",
|
||
"applyProfileFailed": "Nie udało się zastosować profilu odporności.",
|
||
"applyProfileSuccess": "Zastosowano profil „{profile}”.",
|
||
"confirmResetBreakers": "Zresetować wszystkie wyłączniki automatyczne?",
|
||
"resetBreakersFailed": "Nie udało się zresetować wyłączników automatycznych.",
|
||
"resetBreakersSuccess": "Reset wyłączników automatycznych.",
|
||
"processStatus": "Stan procesu",
|
||
"online": "W Internecie",
|
||
"offline": "Nieaktywny",
|
||
"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": "Stan systemu",
|
||
"description": "Monitorowanie w czasie rzeczywistym Twojej instancji OmniRoute",
|
||
"healthy": "Zdrowy",
|
||
"degraded": "Zdegradowany",
|
||
"down": "W dół",
|
||
"uptime": "Czas pracy",
|
||
"memory": "Pamięć",
|
||
"memoryRss": "Pamięć (RSS)",
|
||
"heap": "Kupa",
|
||
"cpu": "Procesor",
|
||
"database": "Baza danych",
|
||
"version": "Wersja",
|
||
"lastCheck": "Ostatnia kontrola",
|
||
"providerHealth": "Zdrowie dostawcy",
|
||
"systemMetrics": "Metryki systemu",
|
||
"tokenHealth": "Tokenowe zdrowie",
|
||
"refreshAll": "Odśwież wszystko",
|
||
"checkNow": "Sprawdź teraz",
|
||
"loadingHealth": "Ładowanie danych zdrowotnych...",
|
||
"failedToLoad": "Nie udało się załadować danych o stanie zdrowia: {error}",
|
||
"retry": "Spróbuj ponownie",
|
||
"allOperational": "Wszystkie systemy sprawne",
|
||
"issuesDetected": "Wykryto problemy systemowe",
|
||
"updatedAt": "Zaktualizowano {time}",
|
||
"latency": "Opóźnienie",
|
||
"latencyP50": "p50",
|
||
"latencyP95": "s. 95",
|
||
"latencyP99": "str. 99",
|
||
"millisecondsShort": "{value}ms",
|
||
"notAvailable": "—",
|
||
"totalRequests": "Łączna liczba żądań",
|
||
"noDataYet": "Brak danych",
|
||
"promptCache": "Natychmiastowa pamięć podręczna",
|
||
"entries": "Wpisy",
|
||
"hitRate": "Współczynnik trafień",
|
||
"hitsMisses": "Trafienia/chybienia",
|
||
"signatureCache": "Pamięć podręczna podpisów",
|
||
"signatureDefaults": "Domyślne",
|
||
"signatureTool": "Narzędzie",
|
||
"signatureFamily": "Rodzina",
|
||
"signatureSession": "Sesja",
|
||
"recovering": "Odzyskiwanie",
|
||
"noCBData": "Brak dostępnych danych dotyczących wyłącznika automatycznego. Najpierw złóż kilka próśb.",
|
||
"providerHealthStatusAria": "Stan zdrowia dostawcy",
|
||
"issuesLabel": "Wykryto problemy",
|
||
"operational": "Operacyjny",
|
||
"providers": "Dostawcy",
|
||
"healthyCount": "{count} zdrowy",
|
||
"nodeVersion": "Węzeł {version}",
|
||
"failures": "{count} błąd",
|
||
"failuresPlural": "{count} niepowodzenia",
|
||
"lastFailure": "Ostatni",
|
||
"rateLimitStatus": "Stan limitu stawki",
|
||
"activeLimiters": "{count} aktywny ogranicznik",
|
||
"activeLimitersPlural": "{count} aktywne limitery",
|
||
"queued": "W kolejce",
|
||
"queuedCount": "{count} w kolejce",
|
||
"running": "bieganie",
|
||
"runningCount": "{count} działa",
|
||
"ok": "OK",
|
||
"activeLockouts": "Aktywne blokady",
|
||
"resetConfirm": "Zresetować wszystkie wyłączniki automatyczne do stanu prawidłowego? Spowoduje to wyczyszczenie wszystkich liczników błędów i przywrócenie wszystkich dostawców do stanu operacyjnego.",
|
||
"resetAllTitle": "Zresetuj wszystkie wyłączniki automatyczne do stanu prawidłowego",
|
||
"resetting": "Resetuję...",
|
||
"resetAll": "Zresetuj wszystko",
|
||
"until": "Do {time}"
|
||
},
|
||
"limits": {
|
||
"title": "Limity i kwoty",
|
||
"rateLimit": "Limit stawki",
|
||
"remaining": "Pozostało",
|
||
"requestsPerMinute": "Żądania/min",
|
||
"tokensPerMinute": "Tokeny/min",
|
||
"dailyLimit": "Limit dzienny"
|
||
},
|
||
"logs": {
|
||
"title": "Dzienniki",
|
||
"requestLogs": "Poproś o logi",
|
||
"proxyLogs": "Dzienniki proxy",
|
||
"auditLog": "Dziennik audytu",
|
||
"console": "Konsola",
|
||
"auditLogDesc": "Działania administracyjne i zdarzenia związane z bezpieczeństwem",
|
||
"loading": "Ładowanie...",
|
||
"refresh": "Odśwież",
|
||
"filterByAction": "Filtruj według działania...",
|
||
"filterByActor": "Filtruj według aktora...",
|
||
"filterEntriesAria": "Filtruj wpisy dziennika audytu",
|
||
"filterByActionTypeAria": "Filtruj według typu akcji",
|
||
"filterByActorAria": "Filtruj według aktora",
|
||
"refreshAuditLogAria": "Odśwież dziennik audytu",
|
||
"tableAria": "Wpisy dziennika audytu",
|
||
"failedFetchAuditLog": "Nie udało się pobrać dziennika kontroli",
|
||
"showing": "Wyświetlanie wpisów {count} (przesunięcie {offset})",
|
||
"search": "Szukaj",
|
||
"timestamp": "Znacznik czasu",
|
||
"action": "Akcja",
|
||
"actor": "Aktor",
|
||
"target": "Cel",
|
||
"details": "Szczegóły",
|
||
"ipAddress": "Adres IP",
|
||
"notAvailable": "—",
|
||
"noEntries": "Nie znaleziono wpisów w dzienniku kontroli",
|
||
"previous": "Poprzedni",
|
||
"next": "Następny"
|
||
},
|
||
"onboarding": {
|
||
"welcome": "Witamy",
|
||
"security": "Bezpieczeństwo",
|
||
"test": "Testuj",
|
||
"ready": "Gotowy!",
|
||
"setPassword": "Ustaw hasło",
|
||
"addProvider": "Dodaj swojego pierwszego dostawcę",
|
||
"getStarted": "Rozpocznij",
|
||
"skip": "Pomiń",
|
||
"skipWizard": "Całkowicie pomiń kreatora",
|
||
"skipPassword": "Pomiń konfigurację hasła",
|
||
"skipAndContinue": "Pomiń i kontynuuj",
|
||
"passwordLabel": "Hasło",
|
||
"confirmPassword": "Potwierdź hasło",
|
||
"enterPassword": "Wprowadź hasło",
|
||
"confirmPasswordPlaceholder": "Potwierdź hasło",
|
||
"passwordsMismatch": "Hasła nie pasują",
|
||
"setupComplete": "Konfiguracja ukończona!",
|
||
"goToDashboard": "Przejdź do Panelu →",
|
||
"welcomeDesc": "OmniRoute to lokalny serwer proxy API AI. Kieruje żądania do wielu dostawców AI z równoważeniem obciążenia, przełączaniem awaryjnym i śledzeniem użycia.",
|
||
"multiProvider": "Wielu dostawców",
|
||
"usageTracking": "Śledzenie użycia",
|
||
"apiKeyMgmt": "Zarządzanie kluczami API",
|
||
"securityDesc": "Ustaw hasło, aby chronić swój pulpit nawigacyjny, lub na razie pomiń.",
|
||
"providerDesc": "Połącz swojego pierwszego dostawcę AI. Możesz dodać więcej później.",
|
||
"apiKeyRequired": "Klucz API (wymagany)",
|
||
"customUrlOptional": "Niestandardowy adres URL (opcjonalnie)",
|
||
"testDesc": "Sprawdźmy, czy połączenie Twojego dostawcy działa.",
|
||
"runTest": "Uruchom test połączenia",
|
||
"testingConnection": "Testowanie połączenia...",
|
||
"connectionSuccessful": "Połączenie pomyślne! Twój dostawca jest gotowy.",
|
||
"noProviderFound": "Nie znaleziono dostawcy. Możesz dodać je później z poziomu panelu kontrolnego.",
|
||
"testFailed": "Test nie powiódł się, ale możesz to skonfigurować później.",
|
||
"couldNotTest": "Nie można teraz przetestować. Możesz przetestować z poziomu pulpitu nawigacyjnego.",
|
||
"doneDesc": "Wszystko gotowe! Twoja instancja OmniRoute jest skonfigurowana i gotowa do zastępowania żądań AI.",
|
||
"yourEndpoint": "Twój punkt końcowy:",
|
||
"continue": "Kontynuuj",
|
||
"retry": "Spróbuj ponownie",
|
||
"failedSetPassword": "Nie udało się ustawić hasła. Spróbuj ponownie.",
|
||
"failedAddProvider": "Nie udało się dodać dostawcy. Spróbuj ponownie.",
|
||
"connectionError": "Błąd połączenia. Spróbuj ponownie.",
|
||
"provider": "Dostawca"
|
||
},
|
||
"providers": {
|
||
"title": "Dostawcy",
|
||
"addProvider": "Dodaj dostawcę",
|
||
"editProvider": "Edytuj dostawcę",
|
||
"deleteProvider": "Usuń dostawcę",
|
||
"noProviders": "Nie skonfigurowano żadnych dostawców",
|
||
"modelAvailability": "Dostępność modelu",
|
||
"accounts": "Konta",
|
||
"newAccount": "Nowe konto",
|
||
"deleteConfirm": "Czy na pewno chcesz usunąć tego dostawcę?",
|
||
"testing": "Testowanie...",
|
||
"testConnection": "Połączenie testowe",
|
||
"testSuccess": "Połączenie pomyślne",
|
||
"testFailed": "Połączenie nie powiodło się",
|
||
"available": "Dostępne",
|
||
"cooldown": "Czas odnowienia",
|
||
"unavailable": "Niedostępne",
|
||
"unknown": "Nieznany",
|
||
"oauthLabel": "OAuth",
|
||
"compatibleLabel": "Kompatybilny",
|
||
"chat": "Czat",
|
||
"responses": "Odpowiedzi",
|
||
"messages": "Wiadomości",
|
||
"oauthProviders": "Dostawcy protokołu OAuth",
|
||
"freeProviders": "Bezpłatni dostawcy",
|
||
"apiKeyProviders": "Dostawcy kluczy API",
|
||
"compatibleProviders": "Dostawcy obsługujący klucz API",
|
||
"testAll": "Przetestuj wszystko",
|
||
"testAllOAuth": "Przetestuj wszystkie połączenia OAuth",
|
||
"testAllFree": "Przetestuj wszystkie bezpłatne połączenia",
|
||
"testAllApiKey": "Przetestuj wszystkie połączenia klucza API",
|
||
"testAllCompatible": "Przetestuj wszystkie kompatybilne połączenia",
|
||
"connected": "{count} Połączono",
|
||
"errorCount": "{count} Błąd ({code})",
|
||
"errorCountNoCode": "{count} Błąd",
|
||
"noConnections": "Brak połączeń",
|
||
"disabled": "Niepełnosprawny",
|
||
"enableProvider": "Włącz dostawcę",
|
||
"disableProvider": "Wyłącz dostawcę",
|
||
"testResults": "Wyniki testu",
|
||
"noCompatibleYet": "Nie dodano jeszcze żadnych kompatybilnych dostawców",
|
||
"compatibleHint": "Użyj powyższych przycisków, aby dodać punkty końcowe kompatybilne z OpenAI lub Anthropic",
|
||
"addOpenAICompatible": "Dodaj kompatybilność z OpenAI",
|
||
"addAnthropicCompatible": "Dodaj kompatybilność antropiczną",
|
||
"addNewProvider": "Dodaj nowego dostawcę",
|
||
"backToProviders": "Powrót do dostawców",
|
||
"configureNewProvider": "Skonfiguruj nowego dostawcę AI do użycia z aplikacjami.",
|
||
"providerLabel": "Dostawca",
|
||
"selectProvider": "Wybierz dostawcę",
|
||
"selectedProvider": "Wybrany dostawca",
|
||
"authMethod": "Metoda uwierzytelniania",
|
||
"apiKeyLabel": "Klucz API",
|
||
"apiKeyRequired": "Wymagany jest klucz API",
|
||
"selectProviderRequired": "Wybierz dostawcę",
|
||
"enterApiKey": "Wprowadź swój klucz API",
|
||
"apiKeySecure": "Twój klucz API zostanie zaszyfrowany i bezpiecznie przechowywany.",
|
||
"oauth2Connect": "Połącz się z OAuth2",
|
||
"oauth2Label": "OAuth2",
|
||
"oauth2Desc": "Połącz swoje konto za pomocą uwierzytelniania OAuth2.",
|
||
"displayName": "Nazwa wyświetlana",
|
||
"displayNamePlaceholder": "np. produkcyjne API, środowisko deweloperskie",
|
||
"displayNameHint": "Opcjonalne. Przyjazna nazwa identyfikująca tę konfigurację.",
|
||
"active": "Aktywny",
|
||
"activeDescription": "Włącz tego dostawcę do użytku w swoich aplikacjach",
|
||
"cancel": "Anuluj",
|
||
"createProvider": "Utwórz dostawcę",
|
||
"failedCreate": "Nie udało się utworzyć dostawcy",
|
||
"errorOccurred": "Wystąpił błąd. Spróbuj ponownie.",
|
||
"modelStatus": "Stan modelu",
|
||
"allModelsOperational": "Wszystkie modele sprawne",
|
||
"modelsWithIssues": "{count} modele z problemami",
|
||
"allModelsNormal": "Wszystkie modele reagują normalnie.",
|
||
"cooldownCleared": "Czas odnowienia usunięty dla {model}",
|
||
"failedClearCooldown": "Nie udało się wyczyścić czasu odnowienia",
|
||
"loadingAvailability": "Ładowanie dostępności modelu...",
|
||
"clearCooldown": "Jasne",
|
||
"clearing": "Czyszczenie...",
|
||
"until": "Do {time}",
|
||
"providerTestFailed": "Test dostawcy nie powiódł się",
|
||
"modeTest": "{mode} Test",
|
||
"passedCount": "{count} zaliczone",
|
||
"failedCount": "{count} nie powiodło się",
|
||
"testedCount": "{count} przetestowane",
|
||
"millisecondsAbbr": "{value}ms",
|
||
"okShort": "OK",
|
||
"errorShort": "BŁĄD",
|
||
"noActiveConnectionsInGroup": "Nie znaleziono aktywnych połączeń dla tej grupy.",
|
||
"allTestsPassed": "Wszystkie {total} testy zaliczone",
|
||
"testSummary": "{passed}/{total} zaliczone, {failed} nie powiodło się",
|
||
"nameLabel": "Imię",
|
||
"prefixLabel": "Przedrostek",
|
||
"baseUrlLabel": "Bazowy adres URL",
|
||
"apiTypeLabel": "Typ interfejsu API",
|
||
"prefixHint": "Wymagane. Unikalny przedrostek nazw modeli.",
|
||
"nameHint": "Wymagane. Przyjazna etykieta dla tego węzła.",
|
||
"baseUrlHint": "Wymagane. Podstawowy adres URL interfejsu API dostawcy.",
|
||
"anthropicPrefixPlaceholder": "AC-prod",
|
||
"openaiPrefixPlaceholder": "oc-prod",
|
||
"anthropicBaseUrlPlaceholder": "https://api.anthropic.com/v1",
|
||
"openaiBaseUrlPlaceholder": "https://api.openai.com/v1",
|
||
"validateConnection": "Sprawdź połączenie",
|
||
"validating": "Sprawdzanie poprawności...",
|
||
"connectionValid": "Połączenie jest ważne!",
|
||
"connectionFailed": "Połączenie nie powiodło się. Sprawdź adres URL i klucz.",
|
||
"testKeyLabel": "Testuj klucz API",
|
||
"testKeyPlaceholder": "sk-... (tylko do sprawdzenia)",
|
||
"providerNotFound": "Nie znaleziono dostawcy",
|
||
"deleteConnectionConfirm": "Usunąć to połączenie?",
|
||
"failedSetAlias": "Nie udało się ustawić aliasu",
|
||
"failedSaveConnection": "Nie udało się zapisać połączenia",
|
||
"failedSaveConnectionRetry": "Nie udało się zapisać połączenia. Spróbuj ponownie.",
|
||
"failedRetestConnection": "Nie udało się ponownie przetestować połączenia",
|
||
"deleteCompatibleNodeConfirm": "Usunąć ten {type} Zgodny węzeł?",
|
||
"anthropicCompatibleDetails": "Szczegóły zgodności antropicznej",
|
||
"openaiCompatibleDetails": "Szczegóły zgodności z OpenAI",
|
||
"messagesApi": "Interfejs API wiadomości",
|
||
"responsesApi": "API odpowiedzi",
|
||
"chatCompletions": "Zakończenia czatu",
|
||
"importingModels": "Importowanie...",
|
||
"importFromModels": "Importuj z /modele",
|
||
"addConnectionToImport": "Dodaj połączenie, aby umożliwić importowanie.",
|
||
"noModelsConfigured": "Nie skonfigurowano żadnych modeli",
|
||
"connectionCount": "{count} połączenia",
|
||
"fetchingModels": "Pobieram dostępne modele...",
|
||
"failedFetchModels": "Nie udało się pobrać modeli",
|
||
"noModelsFound": "Nie znaleziono żadnych modeli",
|
||
"importFailed": "Import nie powiódł się",
|
||
"noNewModelsAdded": "Nie dodano żadnych nowych modeli.",
|
||
"adding": "Dodawanie...",
|
||
"importingModelsTitle": "Importowanie modeli",
|
||
"copyModel": "Skopiuj model",
|
||
"removeModel": "Usuń model",
|
||
"rateLimitProtected": "Chronione",
|
||
"rateLimitUnprotected": "Niechroniony",
|
||
"enableRateLimitProtection": "Kliknij, aby włączyć ochronę limitu szybkości",
|
||
"disableRateLimitProtection": "Kliknij, aby wyłączyć ochronę limitu szybkości",
|
||
"productionKey": "Klucz produkcyjny",
|
||
"enterNewApiKey": "Wprowadź nowy klucz API",
|
||
"optional": "Opcjonalne",
|
||
"anthropicCompatibleName": "Kompatybilny z antropią",
|
||
"openaiCompatibleName": "Kompatybilny z OpenAI",
|
||
"failedImportModels": "Nie udało się zaimportować modeli",
|
||
"noModelsReturnedFromEndpoint": "Z punktu końcowego /models nie zwrócono żadnych modeli.",
|
||
"importingModelsProgress": "Importowanie {current} z {total} modeli...",
|
||
"foundModelsStartingImport": "Znaleziono {count} modeli. Rozpoczynam importowanie...",
|
||
"importingModelById": "Importowanie {modelId}...",
|
||
"importSuccessCount": "Pomyślnie zaimportowano {count, plural, one {# model} other {# models}}!",
|
||
"noNewModelsAddedExisting": "Nie dodano żadnych nowych modeli (wszystkie już istnieją).",
|
||
"importDoneCount": "✓ Gotowe! {count, plural, one {# model imported.} other {# models imported.}}",
|
||
"unexpectedErrorOccurred": "Wystąpił nieoczekiwany błąd",
|
||
"connectionCountLabel": "{count, plural, one {# connection} other {# connections}}",
|
||
"messagesPath": "wiadomości",
|
||
"responsesPath": "odpowiedzi",
|
||
"chatCompletionsPath": "czat/uzupełnienia",
|
||
"add": "Dodaj",
|
||
"edit": "Edytuj",
|
||
"delete": "Usuń",
|
||
"anthropic": "Antropiczny",
|
||
"openai": "OpenAI",
|
||
"singleConnectionPerCompatible": "Dozwolone jest tylko jedno połączenie na kompatybilny węzeł. Dodaj kolejny węzeł, jeśli potrzebujesz więcej połączeń.",
|
||
"connections": "Połączenia",
|
||
"providerProxyTitleConfigured": "Serwer proxy dostawcy: {host}",
|
||
"configured": "skonfigurowany",
|
||
"providerProxyConfigureHint": "Skonfiguruj serwer proxy dla wszystkich połączeń tego dostawcy",
|
||
"providerProxy": "Pełnomocnik dostawcy",
|
||
"noConnectionsYet": "Nie ma jeszcze żadnych połączeń",
|
||
"addFirstConnectionHint": "Aby rozpocząć, dodaj swoje pierwsze połączenie",
|
||
"addConnection": "Dodaj połączenie",
|
||
"availableModels": "Dostępne modele",
|
||
"pageAutoRefresh": "Strona odświeży się automatycznie...",
|
||
"statusDisabled": "wyłączone",
|
||
"statusConnected": "podłączony",
|
||
"statusRuntimeIssue": "problem z czasem wykonania",
|
||
"statusAuthFailed": "autoryzacja nie powiodła się",
|
||
"statusRateLimited": "stawka ograniczona",
|
||
"statusNetworkIssue": "problem z siecią",
|
||
"statusTestUnsupported": "test nieobsługiwany",
|
||
"statusUnavailable": "niedostępne",
|
||
"statusFailed": "nie powiodło się",
|
||
"statusError": "błąd",
|
||
"oauthAccount": "Konto OAuth",
|
||
"errorTypeRuntime": "Lokalny czas wykonania",
|
||
"errorTypeUpstreamAuth": "Autoryzacja nadrzędna",
|
||
"errorTypeMissingCredential": "Brakujące poświadczenie",
|
||
"errorTypeRefreshFailed": "Odświeżanie nie powiodło się",
|
||
"errorTypeTokenExpired": "Token wygasł",
|
||
"errorTypeRateLimited": "Cena ograniczona",
|
||
"errorTypeUpstreamUnavailable": "Upstream niedostępny",
|
||
"errorTypeNetworkError": "Błąd sieci",
|
||
"errorTypeTestUnsupported": "Test nieobsługiwany",
|
||
"errorTypeUpstreamError": "Błąd w górę",
|
||
"proxySourceGlobal": "Globalny",
|
||
"proxySourceProvider": "Dostawca",
|
||
"proxySourceKey": "Klucz",
|
||
"proxyConfiguredBySource": "Pełnomocnik ({source}): {host}",
|
||
"autoPriority": "Automatycznie: {priority}",
|
||
"proxy": "Pełnomocnik",
|
||
"retestAuthentication": "Przetestuj ponownie uwierzytelnianie",
|
||
"retest": "Przetestuj ponownie",
|
||
"disableConnection": "Wyłącz połączenie",
|
||
"enableConnection": "Włącz połączenie",
|
||
"reauthenticateConnection": "Ponownie uwierzytelnij to połączenie",
|
||
"proxyConfig": "Konfiguracja proxy",
|
||
"aliasExistsAlert": "Alias „{alias}” już istnieje. Użyj innego modelu lub edytuj istniejący alias.",
|
||
"openRouterAnyModelHint": "OpenRouter obsługuje każdy model. Dodawaj modele i twórz aliasy, aby uzyskać szybki dostęp.",
|
||
"modelIdFromOpenRouter": "Identyfikator modelu (z OpenRouter)",
|
||
"openRouterModelPlaceholder": "antropiczny/claude-3-opus",
|
||
"customModels": "Modele niestandardowe",
|
||
"customModelsHint": "Dodaj identyfikatory modeli, których nie ma na liście domyślnej. Będą one dostępne do routingu.",
|
||
"modelId": "Identyfikator modelu",
|
||
"customModelPlaceholder": "np. gpt-4.5-turbo",
|
||
"loading": "Ładowanie...",
|
||
"removeCustomModel": "Usuń model niestandardowy",
|
||
"noCustomModels": "Nie dodano jeszcze żadnych modeli niestandardowych.",
|
||
"allSuggestedAliasesExist": "Wszystkie sugerowane aliasy już istnieją. Wybierz inny model lub usuń sprzeczne aliasy.",
|
||
"failedSaveCustomModel": "Nie udało się zapisać modelu niestandardowego",
|
||
"modelAddedSuccess": "Model {modelId} został pomyślnie dodany",
|
||
"failedAddModelTryAgain": "Nie udało się dodać modelu. Spróbuj ponownie.",
|
||
"failedSaveImportedModel": "Nie udało się zapisać zaimportowanego modelu w niestandardowej bazie danych",
|
||
"failedImportModelsTryAgain": "Nie udało się zaimportować modeli. Spróbuj ponownie.",
|
||
"failedRemoveModelFromDatabase": "Nie udało się usunąć modelu z bazy danych",
|
||
"modelRemovedSuccess": "Model został pomyślnie usunięty",
|
||
"failedDeleteModelTryAgain": "Nie udało się usunąć modelu. Spróbuj ponownie.",
|
||
"compatibleModelsDescription": "Dodaj ręcznie modele kompatybilne z {type} lub zaimportuj je z punktu końcowego /models.",
|
||
"anthropicCompatibleModelPlaceholder": "klauzula-3-opus-20240229",
|
||
"openaiCompatibleModelPlaceholder": "gpt-4o",
|
||
"apiKeyValidationFailed": "Weryfikacja klucza API nie powiodła się. Sprawdź swój klucz i spróbuj ponownie.",
|
||
"addProviderApiKeyTitle": "Dodaj klucz API {provider}",
|
||
"checking": "Sprawdzam...",
|
||
"check": "Sprawdź",
|
||
"valid": "Ważne",
|
||
"invalid": "Nieprawidłowe",
|
||
"creating": "Tworzenie...",
|
||
"validationChecksAnthropicCompatible": "Walidacja sprawdza {provider} poprzez weryfikację klucza API.",
|
||
"validationChecksOpenAiCompatible": "Walidacja sprawdza {provider} poprzez /models na podstawowym adresie URL.",
|
||
"priorityLabel": "Priorytet",
|
||
"saving": "Zapisywanie...",
|
||
"save": "Zapisz",
|
||
"editConnection": "Edytuj połączenie",
|
||
"accountName": "Nazwa konta",
|
||
"email": "E-mail",
|
||
"healthCheckMinutes": "Kontrola stanu (min)",
|
||
"healthCheckHint": "Proaktywny interwał odświeżania tokenu. 0 = wyłączone.",
|
||
"failedTestConnection": "Nie udało się przetestować połączenia",
|
||
"failed": "Nie udało się",
|
||
"leaveBlankKeepCurrentApiKey": "Pozostaw puste, aby zachować bieżący klucz API.",
|
||
"editCompatibleTitle": "Edytuj {type} Kompatybilny",
|
||
"compatibleBaseUrlHint": "Użyj podstawowego adresu URL (kończącego się na /v1) dla interfejsu API zgodnego z {type}.",
|
||
"apiKeyForCheck": "Klucz API (do sprawdzenia)",
|
||
"compatibleProdPlaceholder": "{type} Kompatybilny (Prod)"
|
||
},
|
||
"settings": {
|
||
"title": "Ustawienia",
|
||
"general": "Generał",
|
||
"security": "Bezpieczeństwo",
|
||
"appearance": "Wygląd",
|
||
"routing": "Trasowanie",
|
||
"cache": "Pamięć podręczna",
|
||
"resilience": "Odporność",
|
||
"systemPrompt": "Monit systemowy",
|
||
"thinkingBudget": "Myślący budżet",
|
||
"proxy": "Pełnomocnik",
|
||
"pricing": "Ceny",
|
||
"storage": "Przechowywanie",
|
||
"policies": "Zasady",
|
||
"ipFilter": "Filtr IP",
|
||
"comboDefaults": "Domyślne ustawienia kombinacji",
|
||
"fallbackChains": "Łańcuchy rezerwowe",
|
||
"changePassword": "Zmień hasło",
|
||
"enablePassword": "Włącz hasło",
|
||
"darkMode": "Tryb ciemny",
|
||
"lightMode": "Tryb światła",
|
||
"systemTheme": "Temat systemu",
|
||
"enableCache": "Włącz pamięć podręczną",
|
||
"cacheTTL": "Pamięć podręczna TTL",
|
||
"maxCacheSize": "Maksymalny rozmiar pamięci podręcznej",
|
||
"clearCache": "Wyczyść pamięć podręczną",
|
||
"cacheHits": "Trafienia w pamięci podręcznej",
|
||
"cacheMisses": "Brak pamięci podręcznej",
|
||
"hitRate": "Współczynnik trafień",
|
||
"cacheEntries": "Wpisy w pamięci podręcznej",
|
||
"circuitBreaker": "Wyłącznik automatyczny",
|
||
"retryPolicy": "Zasady ponawiania prób",
|
||
"maxRetries": "Maksymalna liczba ponownych prób",
|
||
"retryDelay": "Opóźnienie ponownej próby",
|
||
"timeoutMs": "Limit czasu (ms)",
|
||
"enableSystemPrompt": "Włącz monit systemowy",
|
||
"systemPromptText": "Tekst monitu systemowego",
|
||
"enableThinking": "Włącz myślenie",
|
||
"maxThinkingTokens": "Żetony Max Thinking",
|
||
"enableProxy": "Włącz serwer proxy",
|
||
"proxyUrl": "Adres URL serwera proxy",
|
||
"pricingRates": "Format stawek cenowych",
|
||
"currentPricing": "Aktualny przegląd cen",
|
||
"loadingPricing": "Ładowanie danych cenowych...",
|
||
"noPricing": "Brak danych o cenach",
|
||
"input": "Wejście",
|
||
"output": "Wyjście",
|
||
"cached": "Buforowane",
|
||
"reasoning": "Rozumowanie",
|
||
"cacheCreation": "Tworzenie pamięci podręcznej",
|
||
"customPricing": "Ceny niestandardowe",
|
||
"databaseSize": "Rozmiar bazy danych",
|
||
"backupDb": "Kopia zapasowa bazy danych",
|
||
"restoreDb": "Przywróć bazę danych",
|
||
"exportData": "Eksportuj dane",
|
||
"importData": "Importuj dane",
|
||
"clearData": "Wyczyść wszystkie dane",
|
||
"clearDataConfirm": "Spowoduje to trwałe usunięcie wszystkich danych. Czy jesteś pewien?",
|
||
"enableRequestLogs": "Włącz dzienniki żądań",
|
||
"logRetention": "Przechowywanie dziennika",
|
||
"ipWhitelist": "Biała lista adresów IP",
|
||
"ipBlacklist": "Czarna lista adresów IP",
|
||
"addIP": "Dodaj adres IP",
|
||
"savedSuccessfully": "Ustawienia zostały zapisane pomyślnie",
|
||
"ai": "sztuczna inteligencja",
|
||
"advanced": "Zaawansowane",
|
||
"localMode": "Tryb lokalny — wszystkie dane przechowywane na Twoim komputerze",
|
||
"settingsSectionsAria": "Sekcje ustawień",
|
||
"switchThemes": "Przełączaj między jasnymi i ciemnymi motywami",
|
||
"themeSelectionAria": "Wybór tematu",
|
||
"themeLight": "Światło",
|
||
"themeDark": "Ciemny",
|
||
"themeSystem": "Systemu",
|
||
"hideHealthLogs": "Ukryj dzienniki kontroli stanu",
|
||
"hideHealthLogsDesc": "Gdy opcja jest włączona, pomiń komunikaty [HealthCheck] w konsoli serwera",
|
||
"themeAccent": "Kolor motywu",
|
||
"themeAccentDesc": "Wybierz gotowy kolor lub utwórz własny motyw z jednego koloru",
|
||
"themeCreate": "Utwórz motyw",
|
||
"themeCustom": "Motyw niestandardowy",
|
||
"themeBlue": "Niebieski",
|
||
"themeRed": "Czerwony",
|
||
"themeGreen": "Zielony",
|
||
"themeViolet": "Fioletowy",
|
||
"themeOrange": "Pomarańczowy",
|
||
"themeCyan": "Cyjan",
|
||
"promptCache": "Natychmiastowa pamięć podręczna",
|
||
"flushCache": "Opróżnij pamięć podręczną",
|
||
"flushing": "Płukanie…",
|
||
"size": "Rozmiar",
|
||
"hits": "Hity",
|
||
"evictions": "Eksmisje",
|
||
"loadingCacheStats": "Ładowanie statystyk pamięci podręcznej…",
|
||
"globalProxy": "Globalny pełnomocnik",
|
||
"globalProxyDesc": "Skonfiguruj globalny wychodzący serwer proxy dla wszystkich wywołań API. Poszczególni dostawcy, kombinacje i klucze mogą to zastąpić.",
|
||
"noGlobalProxy": "Nie skonfigurowano globalnego serwera proxy",
|
||
"globalLabel": "Globalny",
|
||
"configure": "Skonfiguruj",
|
||
"globalSystemPrompt": "Monit systemu globalnego",
|
||
"systemPromptDesc": "Wstrzykiwany do wszystkich żądań na poziomie serwera proxy",
|
||
"saved": "Zapisano",
|
||
"systemPromptPlaceholder": "Wprowadź monit systemowy, aby wprowadzić do wszystkich żądań...",
|
||
"systemPromptHint": "Ten monit jest dołączany do komunikatu systemowego każdego żądania. Używaj w przypadku instrukcji globalnych, wskazówek dotyczących bezpieczeństwa lub reguł formatowania odpowiedzi.",
|
||
"chars": "{count} znaków",
|
||
"thinkingBudgetTitle": "Myślący budżet",
|
||
"thinkingBudgetDesc": "Kontroluj użycie tokenu wnioskowania AI we wszystkich żądaniach",
|
||
"passthrough": "Przejście",
|
||
"passthroughDesc": "Żadnych zmian – klient kontroluje myślenie o budżecie",
|
||
"auto": "Automat",
|
||
"autoDesc": "Pozbądź się całej konfiguracji myślenia — pozwól dostawcy zdecydować",
|
||
"custom": "Niestandardowe",
|
||
"customDesc": "Ustaw stały budżet tokenów dla wszystkich żądań",
|
||
"adaptive": "Adaptacyjny",
|
||
"adaptiveDesc": "Skaluj budżet w oparciu o złożoność żądania",
|
||
"effortNone": "Brak (0 tokenów)",
|
||
"effortLow": "Niski (1 tys. tokenów)",
|
||
"effortMedium": "Średni (10 tys. tokenów)",
|
||
"effortHigh": "Wysoki (128 tys. tokenów)",
|
||
"tokenBudget": "Budżet tokenowy",
|
||
"tokens": "żetony",
|
||
"baseEffortLevel": "Podstawowy poziom wysiłku",
|
||
"adaptiveHint": "Tryb adaptacyjny skaluje się od tego poziomu podstawowego w oparciu o liczbę komunikatów, użycie narzędzia i długość podpowiedzi.",
|
||
"requireLogin": "Wymagaj logowania",
|
||
"requireLoginDesc": "Po włączeniu pulpit nawigacyjny wymaga hasła. Gdy WYŁ., dostęp bez logowania.",
|
||
"currentPassword": "Aktualne hasło",
|
||
"enterCurrentPassword": "Wprowadź aktualne hasło",
|
||
"newPassword": "Nowe hasło",
|
||
"enterNewPassword": "Wprowadź nowe hasło",
|
||
"confirmPassword": "Potwierdź nowe hasło",
|
||
"confirmPasswordPlaceholder": "Potwierdź nowe hasło",
|
||
"passwordsNoMatch": "Hasła nie pasują",
|
||
"passwordUpdated": "Hasło zostało pomyślnie zaktualizowane",
|
||
"failedUpdatePassword": "Nie udało się zaktualizować hasła",
|
||
"errorOccurred": "Wystąpił błąd",
|
||
"updatePassword": "Zaktualizuj hasło",
|
||
"setPassword": "Ustaw hasło",
|
||
"apiEndpointProtection": "Ochrona punktów końcowych API",
|
||
"requireAuthModels": "Wymagaj klucza API dla /models",
|
||
"requireAuthModelsDesc": "Po włączeniu punkt końcowy /v1/models zwraca 404 dla nieuwierzytelnionych żądań. Zapobiega odkrywaniu modelu przez nieautoryzowanych użytkowników.",
|
||
"blockedProviders": "Zablokowani dostawcy",
|
||
"blockedProvidersDesc": "Ukryj określonych dostawców w odpowiedzi /v1/models. Zablokowani dostawcy nie będą wyświetlani na listach modeli.",
|
||
"providersBlocked": "{count} dostawcy zablokowani w /models",
|
||
"blockProviderTitle": "Zablokuj {provider}",
|
||
"unblockProviderTitle": "Odblokuj {provider}",
|
||
"routingStrategy": "Strategia routingu",
|
||
"fillFirst": "Najpierw wypełnij",
|
||
"fillFirstDesc": "Korzystaj z kont w kolejności priorytetów",
|
||
"roundRobin": "Okrągły Robin",
|
||
"roundRobinDesc": "Przeglądaj wszystkie konta",
|
||
"p2c": "P2C",
|
||
"p2cDesc": "Wybierz 2 losowo i użyj zdrowszego",
|
||
"random": "Losowe",
|
||
"randomDesc": "Losowe konto na każde żądanie",
|
||
"leastUsed": "Najrzadziej używany",
|
||
"leastUsedDesc": "Wybierz ostatnio używane konto",
|
||
"costOpt": "Opcja kosztowa",
|
||
"costOptDesc": "Preferuj najtańsze dostępne konto",
|
||
"stickyLimit": "Lepki limit",
|
||
"stickyLimitDesc": "Połączenia na konto przed zmianą",
|
||
"modelAliases": "Aliasy modeli",
|
||
"modelAliasesTitle": "Aliasy modeli",
|
||
"modelAliasesDesc": "Wzorce wieloznaczne do zmiany nazw modeli • Użyj * i ?",
|
||
"addCustomAlias": "Dodaj niestandardowy alias",
|
||
"deprecatedModelId": "Przestarzały ID modelu",
|
||
"newModelId": "Nowy ID modelu",
|
||
"customAliases": "Niestandardowe aliasy",
|
||
"builtInAliases": "Wbudowane aliasy",
|
||
"backgroundDegradationTitle": "Degradacja zadań w tle",
|
||
"backgroundDegradationDesc": "Automatycznie wykrywa zadania w tle (tytuły, streszczenia) i kieruje do tańszych modeli",
|
||
"enableDegradation": "Włącz degradację zadań w tle",
|
||
"enableDegradationHint": "Gdy włączone, zadania w tle, takie jak generowanie tytułów i podsumowań, są automatycznie kierowane do tańszych modeli",
|
||
"tasksDetected": "Wykryte zadania",
|
||
"degradationMap": "Mapa degradacji modeli",
|
||
"premiumModel": "Model premium",
|
||
"cheapModel": "Tani model",
|
||
"detectionPatterns": "Wzorce wykrywania",
|
||
"newPattern": "np. \"wygeneruj tytuł\"",
|
||
"aliasPatternPlaceholder": "claude-sonnet-*",
|
||
"aliasTargetPlaceholder": "claude-sonnet-4-20250514",
|
||
"pattern": "Wzór",
|
||
"targetModel": "Model docelowy",
|
||
"add": "+ Dodaj",
|
||
"session": "Sesja",
|
||
"sessionDetailsAria": "Szczegóły sesji",
|
||
"status": "Stan",
|
||
"authenticated": "Uwierzytelnione",
|
||
"guest": "Gość",
|
||
"loginTime": "Czas logowania",
|
||
"sessionAge": "Wiek sesji",
|
||
"browser": "Przeglądarka",
|
||
"clearLocalData": "Wyczyść dane lokalne",
|
||
"logout": "Wyloguj się",
|
||
"clearLocalDataConfirm": "Wyczyścić wszystkie dane lokalne? Spowoduje to zresetowanie Twoich preferencji.",
|
||
"unknown": "Nieznany",
|
||
"systemActor": "systemu",
|
||
"ipAccessControl": "Kontrola dostępu IP",
|
||
"ipAccessControlDesc": "Blokuj lub zezwalaj na określone adresy IP",
|
||
"ipModeDisabled": "Niepełnosprawny",
|
||
"ipModeBlacklist": "Czarna lista",
|
||
"ipModeWhitelist": "Biała lista",
|
||
"ipModeWhitelistPriority": "Priorytet WL",
|
||
"addIpAddress": "Dodaj adres IP",
|
||
"ipAddressPlaceholder": "192.168.1.0/24 lub 10.0.*.*",
|
||
"block": "+ Blok",
|
||
"allow": "+ Zezwól",
|
||
"blocked": "Zablokowano ({count})",
|
||
"allowed": "Dozwolone ({count})",
|
||
"temporaryBans": "Tymczasowe bany ({count})",
|
||
"minLeft": "Pozostało {min}m",
|
||
"auditLog": "Dziennik audytu",
|
||
"searchAuditLogs": "Przeszukaj dzienniki kontrolne...",
|
||
"failedLoadAuditLog": "Nie udało się załadować dziennika kontroli",
|
||
"noAuditEvents": "Nie znaleziono żadnych zdarzeń kontrolnych",
|
||
"action": "Akcja",
|
||
"actor": "Aktor",
|
||
"details": "Szczegóły",
|
||
"time": "Czas",
|
||
"fallbackChainsTitle": "Łańcuchy rezerwowe",
|
||
"fallbackChainsDesc": "Zdefiniuj kolejność zastępczą dostawcy dla każdego modelu",
|
||
"addChain": "+ Dodaj łańcuch",
|
||
"modelName": "Nazwa modelu",
|
||
"modelNamePlaceholder": "claude-sonnet-4-20250514",
|
||
"providersCommaSeparated": "Dostawcy (oddzieleni przecinkami, w kolejności priorytetów)",
|
||
"providersCommaSeparatedPlaceholder": "antropiczny, openai, bliźnięta",
|
||
"createChain": "Utwórz łańcuch",
|
||
"noFallbackChains": "Żadnych łańcuchów awaryjnych",
|
||
"noFallbackChainsDesc": "Utwórz łańcuch, aby zdefiniować kolejność zastępczą dostawcy dla modelu.",
|
||
"loadingFallbackChains": "Ładuję łańcuchy zastępcze...",
|
||
"deleteChainConfirm": "Usunąć łańcuch zastępczy dla „{model}”?",
|
||
"chainCreated": "Łańcuch stworzony dla {model}",
|
||
"chainDeleted": "Łańcuch usunięty dla {model}",
|
||
"failedCreateChain": "Nie udało się utworzyć łańcucha",
|
||
"failedDeleteChain": "Nie udało się usunąć łańcucha",
|
||
"deleteChain": "Usuń łańcuch",
|
||
"fillModelAndProviders": "Podaj nazwę modelu i dostawców",
|
||
"addAtLeastOneProvider": "Dodaj co najmniej jednego dostawcę",
|
||
"comboDefaultsTitle": "Domyślne ustawienia kombinacji",
|
||
"globalComboConfig": "Globalna konfiguracja combo",
|
||
"defaultStrategy": "Domyślna strategia",
|
||
"defaultStrategyDesc": "Stosowane do nowych kombinacji bez wyraźnej strategii",
|
||
"comboStrategyAria": "Strategia kombinacji",
|
||
"priority": "Priorytet",
|
||
"weighted": "Ważona",
|
||
"maxRetriesLabel": "Maksymalna liczba ponownych prób",
|
||
"retryDelayLabel": "Opóźnienie ponownej próby (ms)",
|
||
"timeoutLabel": "Limit czasu (ms)",
|
||
"healthCheck": "Kontrola stanu zdrowia",
|
||
"healthCheckDesc": "Wstępnie sprawdź dostępność dostawcy",
|
||
"trackMetrics": "Śledź metryki",
|
||
"trackMetricsDesc": "Rejestruj metryki żądań kombinacji",
|
||
"providerOverrides": "Zastąpienia dostawcy",
|
||
"providerOverridesDesc": "Zastąp limit czasu i liczbę ponownych prób na dostawcę. Ustawienia dostawcy zastępują globalne ustawienia domyślne.",
|
||
"providerMaxRetriesAria": "{provider} maksymalna liczba ponownych prób",
|
||
"providerTimeoutAria": "{provider} przekroczenie limitu czasu ms",
|
||
"removeProviderOverrideAria": "Usuń zastąpienie {provider}",
|
||
"newProviderNamePlaceholder": "np. google, otwórz...",
|
||
"newProviderNameAria": "Nowa nazwa dostawcy",
|
||
"retries": "ponawia próby",
|
||
"ms": "pani",
|
||
"saveComboDefaults": "Zapisz domyślne ustawienia kombinacji",
|
||
"maxNestingDepth": "Maksymalna głębokość zagnieżdżenia",
|
||
"concurrencyPerModel": "Współbieżność/model",
|
||
"queueTimeout": "Limit czasu kolejki (ms)",
|
||
"providerProfiles": "Profile dostawców",
|
||
"providerProfilesDesc": "Oddzielne ustawienia odporności dla dostawców OAuth (opartych na sesji) i kluczy API (mierzonych). Dostawcy protokołu OAuth mają bardziej rygorystyczne progi ze względu na niższe limity stawek.",
|
||
"oauthProviders": "Dostawcy protokołu OAuth",
|
||
"apiKeyProviders": "Dostawcy kluczy API",
|
||
"transientCooldown": "Przejściowe odnowienie",
|
||
"rateLimitCooldown": "Czas odnowienia limitu szybkości",
|
||
"maxBackoffLevel": "Maksymalny poziom wycofania",
|
||
"cbThreshold": "Próg CB",
|
||
"cbResetTime": "Czas resetowania CB",
|
||
"rateLimiting": "Ograniczanie szybkości",
|
||
"rateLimitingDesc": "Dostawcy kluczy API mają automatycznie ograniczone stawki z bezpiecznymi ustawieniami domyślnymi. Limity są pobierane z nagłówków odpowiedzi i dostosowują się z czasem.",
|
||
"defaultSafetyNet": "Domyślna siatka bezpieczeństwa",
|
||
"rpm": "obr./min",
|
||
"minGap": "Minimalna przerwa",
|
||
"maxConcurrent": "Maksymalna liczba współbieżnych",
|
||
"activeLimiters": "Aktywne ograniczniki",
|
||
"noActiveLimiters": "Nie ma jeszcze aktywnych ograniczników szybkości.",
|
||
"reservoir": "Zbiornik",
|
||
"running": "Bieganie",
|
||
"queued": "W kolejce",
|
||
"circuitBreakers": "Wyłączniki automatyczne",
|
||
"breakerStateClosed": "Zamknięte",
|
||
"breakerStateOpen": "Otwórz",
|
||
"breakerStateHalfOpen": "Półotwarte",
|
||
"tripped": "{count} potknął się",
|
||
"healthy": "{count} zdrowy",
|
||
"resetAll": "Zresetuj wszystko",
|
||
"noCircuitBreakers": "Żadne wyłączniki automatyczne nie są jeszcze aktywne. Są tworzone automatycznie, gdy żądania przepływają przez potok kombi.",
|
||
"failures": "{count} awarie",
|
||
"policiesLocked": "Zasady i zablokowane identyfikatory",
|
||
"allOperational": "Wszystkie systemy działają — brak blokad i zadziałań wyłączników",
|
||
"loadingPolicies": "Ładowanie zasad...",
|
||
"lockedIdentifiers": "Zablokowane identyfikatory",
|
||
"unlockedIdentifier": "Odblokowano: {identifier}",
|
||
"sinceDate": "od {date}",
|
||
"forceUnlock": "Wymuś odblokowanie",
|
||
"unlocking": "Odblokowywanie...",
|
||
"failedUnlock": "Nie udało się odblokować",
|
||
"failedLoadWithStatus": "Nie udało się załadować: {status}",
|
||
"failedLoadResilience": "Nie udało się wczytać stanu odporności",
|
||
"saveFailed": "Zapisywanie nie powiodło się",
|
||
"resetFailed": "Resetowanie nie powiodło się",
|
||
"loadingResilience": "Ładowanie stanu odporności...",
|
||
"retry": "Spróbuj ponownie",
|
||
"systemStorage": "System i pamięć masowa",
|
||
"allDataLocal": "Wszystkie dane przechowywane lokalnie na Twoim komputerze",
|
||
"databasePath": "Ścieżka bazy danych",
|
||
"exportDatabase": "Eksportuj bazę danych",
|
||
"exportAll": "Eksportuj wszystko (.tar.gz)",
|
||
"importDatabase": "Importuj bazę danych",
|
||
"confirmDbImport": "Potwierdź import bazy danych",
|
||
"confirmDbImportDesc": "Spowoduje to zastąpienie wszystkich bieżących danych treścią z {file}. Kopia zapasowa zostanie utworzona automatycznie przed importem.",
|
||
"yesImport": "Tak, importuj",
|
||
"lastBackup": "Ostatnia kopia zapasowa",
|
||
"noBackupYet": "Nie ma jeszcze kopii zapasowej",
|
||
"backupNow": "Utwórz kopię zapasową teraz",
|
||
"backupRestore": "Kopia zapasowa i przywracanie",
|
||
"viewBackups": "Zobacz kopie zapasowe",
|
||
"hide": "Ukryj",
|
||
"backupRetentionDesc": "Migawki bazy danych są tworzone automatycznie przed przywróceniem i co 15 minut w przypadku zmiany danych. Przechowywanie: 24 godziny na dobę + 30 codziennych kopii zapasowych z inteligentną rotacją.",
|
||
"loadingBackups": "Ładowanie kopii zapasowych...",
|
||
"noBackupsYet": "Nie są jeszcze dostępne żadne kopie zapasowe. Kopie zapasowe zostaną utworzone automatycznie w przypadku zmiany danych.",
|
||
"backupsAvailable": "Dostępne są {count} kopie zapasowe",
|
||
"refresh": "Odśwież",
|
||
"confirm": "Potwierdzić?",
|
||
"yes": "Tak",
|
||
"no": "Nie",
|
||
"restore": "Przywróć",
|
||
"invalidFileType": "Nieprawidłowy typ pliku. Akceptowane są tylko pliki .sqlite.",
|
||
"exportFailed": "Eksport nie powiódł się",
|
||
"exportFailedWithError": "Eksport nie powiódł się: {error}",
|
||
"fullExportFailedWithError": "Pełny eksport nie powiódł się: {error}",
|
||
"backupCreated": "Utworzono kopię zapasową: {file}",
|
||
"restoreSuccess": "Przywrócony! {connections} połączenia, {nodes} węzły, {combos} kombinacje, {apiKeys} klucze API.",
|
||
"importSuccess": "Baza danych zaimportowana! {connections} połączenia, {nodes} węzły, {combos} kombinacje, {apiKeys} klucze API.",
|
||
"justNow": "właśnie teraz",
|
||
"minutesAgo": "{count}m temu",
|
||
"hoursAgo": "{count}h temu",
|
||
"daysAgo": "{count}d temu",
|
||
"backupReasonManual": "instrukcja",
|
||
"backupReasonPreRestore": "wstępne przywrócenie",
|
||
"connectionsCount": "{count, plural, one {# connection} other {# connections}}",
|
||
"noChangesSinceBackup": "Żadnych zmian od ostatniej kopii zapasowej",
|
||
"backupFailed": "Tworzenie kopii zapasowej nie powiodło się",
|
||
"restoreFailed": "Przywracanie nie powiodło się",
|
||
"importFailed": "Import nie powiódł się",
|
||
"errorDuringRestore": "Podczas przywracania wystąpił błąd",
|
||
"errorDuringImport": "Wystąpił błąd podczas importu",
|
||
"modelPricing": "Ceny modeli",
|
||
"modelPricingDesc": "Konfiguruj stawki kosztów dla każdego modelu • Wszystkie stawki w tokenach $/1M",
|
||
"providers": "Dostawcy",
|
||
"registry": "Rejestr",
|
||
"priced": "Wyceniony",
|
||
"searchProvidersModels": "Wyszukaj dostawców lub modele...",
|
||
"showAll": "Pokaż wszystko",
|
||
"noProvidersMatch": "Żaden dostawca nie pasuje do Twojego wyszukiwania.",
|
||
"howPricingWorks": "Jak działa cena",
|
||
"cacheWrite": "Zapis w pamięci podręcznej",
|
||
"unsaved": "niezapisany",
|
||
"resetDefaults": "Zresetuj ustawienia domyślne",
|
||
"saveProvider": "Zapisz dostawcę",
|
||
"saving": "Zapisywanie...",
|
||
"model": "Modelka",
|
||
"models": "modele",
|
||
"moreProviders": "{count} więcej dostawców",
|
||
"withPricing": "ze skonfigurowaną ceną",
|
||
"policiesCircuitBreakers": "Zasady i wyłączniki automatyczne",
|
||
"activeIssuesDetected": "Wykryto aktywne problemy",
|
||
"off": "Wyłączone",
|
||
"resetPricingConfirm": "Zresetować wszystkie ceny {provider} do wartości domyślnych?",
|
||
"pricingDescInput": "Wejście: tokeny wysłane do modelu",
|
||
"pricingDescOutput": "Dane wyjściowe: wygenerowano tokeny",
|
||
"pricingDescCached": "Buforowane: ponownie wykorzystane dane wejściowe (~50% szybkości wprowadzania)",
|
||
"pricingDescReasoning": "Rozumowanie: żetony myślenia (wraca do Wyjścia)",
|
||
"pricingDescCacheWrite": "Zapis w pamięci podręcznej: tworzenie wpisów w pamięci podręcznej (powraca do opcji Wejście)",
|
||
"pricingDescFormula": "Koszt = (wejście × współczynnik_wejściowy) + (wyjście × współczynnik_wyjściowy) + (pamięć podręczna × szybkość_pamięci) na milion tokenów.",
|
||
"pricingSettingsTitle": "Ustawienia cenowe",
|
||
"totalModels": "Wszystkie modele",
|
||
"active": "Aktywny",
|
||
"costCalculation": "Kalkulacja kosztów",
|
||
"costCalculationDesc": "Koszty są obliczane na podstawie użycia tokena i stawek cenowych skonfigurowanych dla każdego modelu.",
|
||
"pricingFormat": "Formularz cenowy",
|
||
"pricingFormatDesc": "Wszystkie stawki podane są w tokenach $/1 milion (dolary na milion tokenów).",
|
||
"tokenTypes": "Typy tokenów",
|
||
"inputTokenDesc": "Standardowe tokeny zachęty",
|
||
"outputTokenDesc": "Żetony ukończenia/odpowiedzi",
|
||
"cachedTokenDesc": "Tokeny wejściowe w pamięci podręcznej (zwykle 50% szybkości wprowadzania)",
|
||
"reasoningTokenDesc": "Specjalne żetony rozumowania/myślenia (awaryjne tempo produkcji)",
|
||
"cacheCreationTokenDesc": "Tokeny używane do tworzenia wpisów w pamięci podręcznej (powrót do szybkości wprowadzania)",
|
||
"customPricingNote": "Możesz zastąpić domyślne ceny dla określonych modeli. Zastąpienia niestandardowe mają pierwszeństwo przed automatycznie wykrytymi cenami.",
|
||
"editPricing": "Edytuj ceny",
|
||
"viewFullDetails": "Zobacz pełne szczegóły"
|
||
},
|
||
"translator": {
|
||
"title": "Tłumacz",
|
||
"metaTitle": "Plac zabaw dla tłumaczy | OmniRoute",
|
||
"metaDescription": "Debuguj, testuj i wizualizuj tłumaczenia formatów API między dostawcami",
|
||
"playgroundTitle": "Plac zabaw dla tłumaczy",
|
||
"playground": "Plac zabaw",
|
||
"realtime": "Działalność tłumaczeniowa w czasie rzeczywistym",
|
||
"chatTester": "Tester czatu",
|
||
"testBench": "Stanowisko testowe",
|
||
"liveMonitor": "Monitor na żywo",
|
||
"modeDescriptionPlayground": "Wklej treść żądania API i zobacz, jak OmniRoute tłumaczy ją pomiędzy formatami dostawców (OpenAI ↔ Claude ↔ Gemini ↔ Responses API)",
|
||
"modeDescriptionChatTester": "Wysyłaj prawdziwe prośby o czat za pośrednictwem OmniRoute i sprawdzaj cały proces w obie strony: dane wejściowe, przetłumaczone żądanie, odpowiedź dostawcy i przetłumaczone dane wyjściowe.",
|
||
"modeDescriptionTestBench": "Uruchamiaj predefiniowane scenariusze i porównuj kompatybilność między dostawcami i modelami.",
|
||
"modeDescriptionLiveMonitor": "Oglądaj wydarzenia związane z tłumaczeniami w czasie rzeczywistym, gdy żądania przepływają przez OmniRoute.",
|
||
"modeDescriptionFallback": "Debuguj, testuj i wizualizuj, jak OmniRoute tłumaczy żądania API między dostawcami.",
|
||
"recentTranslations": "Najnowsze tłumaczenia",
|
||
"noTranslations": "Nie ma jeszcze żadnych tłumaczeń",
|
||
"source": "Źródło",
|
||
"target": "Cel",
|
||
"time": "Czas",
|
||
"model": "Modelka",
|
||
"status": "Stan",
|
||
"latency": "Opóźnienie",
|
||
"totalTranslations": "Całkowita liczba tłumaczeń",
|
||
"successful": "Pomyślne",
|
||
"errors": "Błędy",
|
||
"avgLatency": "Średnie opóźnienie",
|
||
"millisecondsShort": "{value}ms",
|
||
"notAvailableSymbol": "—",
|
||
"liveAutoRefreshing": "Na żywo — automatyczne odświeżanie",
|
||
"paused": "Wstrzymano",
|
||
"eventsAppearHint": "Zdarzenia związane z tłumaczeniem pojawiają się tutaj, gdy żądania przepływają przez OmniRoute. Aby wygenerować zdarzenia, użyj dowolnej z poniższych metod:",
|
||
"chatTesterTab": "Zakładka Tester czatu",
|
||
"testBenchTab": "Zakładka Stanowisko testowe",
|
||
"externalApiCalls": "Zewnętrzne wywołania API",
|
||
"ideCliIntegrations": "Integracje IDE/CLI",
|
||
"inMemoryNote": "Uwaga: Zdarzenia są przechowywane w pamięci i resetowane po ponownym uruchomieniu serwera.",
|
||
"ok": "OK",
|
||
"errorShort": "BŁĄD",
|
||
"formatConverter": "Konwerter formatów",
|
||
"formatConverterDescription": "Wklej lub wpisz treść żądania JSON. Tłumacz automatycznie wykryje format źródłowy i przekonwertuje go na format docelowy. Użyj tego, aby debugować sposób, w jaki OmniRoute tłumaczy żądania między formatami (OpenAI ↔ Claude ↔ Gemini ↔ Responses API).",
|
||
"input": "Wejście",
|
||
"output": "Wyjście",
|
||
"auto": "Automat",
|
||
"swapFormats": "Zamień formaty",
|
||
"translateAction": "Przetłumacz",
|
||
"clear": "Jasne",
|
||
"inputPlaceholder": "Wklej tutaj treść żądania lub wybierz szablon poniżej...",
|
||
"exampleTemplates": "Przykładowe szablony",
|
||
"exampleTemplatesHint": "— Kliknij, aby załadować",
|
||
"templateLoadHint": "Szablon ładuje żądanie w formacie {format}. Zmień format źródłowy, aby załadować w innym formacie.",
|
||
"compatibilityTester": "Tester kompatybilności",
|
||
"compatibilityReport": "Raport zgodności",
|
||
"testBenchDescription": "Uruchamiaj predefiniowane scenariusze (prosty czat, wywoływanie narzędzi itp.), aby zweryfikować tłumaczenie i zgodność dostawcy. Wybierz format źródłowy i dostawcę docelowego, a następnie uruchom wszystkie testy, aby sprawdzić procent zgodności. Użyj tego, aby dowiedzieć się, które funkcje działają u różnych dostawców.",
|
||
"targetProvider": "Dostawca docelowy",
|
||
"runAllTests": "Uruchom wszystkie testy",
|
||
"runTest": "Uruchom test",
|
||
"reRun": "Uruchom ponownie",
|
||
"running": "Bieganie...",
|
||
"passed": "minęło",
|
||
"failed": "nie powiodło się",
|
||
"passedIconLabel": "✅ Zdane",
|
||
"chunks": "kawałki",
|
||
"scenarioSimpleChat": "Prosty czat",
|
||
"scenarioToolCalling": "Wywołanie narzędzia",
|
||
"scenarioMultiTurn": "Wieloobrotowy",
|
||
"scenarioThinking": "Myślenie",
|
||
"scenarioSystemPrompt": "Monit systemowy",
|
||
"scenarioStreaming": "Transmisja strumieniowa",
|
||
"templateNames": {
|
||
"simple-chat": "Prosty czat",
|
||
"tool-calling": "Wywołanie narzędzia",
|
||
"multi-turn": "Wieloobrotowy",
|
||
"thinking": "Myślenie",
|
||
"system-prompt": "Monit systemowy",
|
||
"streaming": "Transmisja strumieniowa"
|
||
},
|
||
"templateDescriptions": {
|
||
"simple-chat": "Podstawowy SMS",
|
||
"tool-calling": "Wywołanie funkcji/narzędzia",
|
||
"multi-turn": "Rozmowa z historią",
|
||
"thinking": "Rozszerzone myślenie/rozumowanie",
|
||
"system-prompt": "Złożone instrukcje systemowe",
|
||
"streaming": "Żądanie przesyłania strumieniowego SSE"
|
||
},
|
||
"templatePayloads": {
|
||
"simpleChat": {
|
||
"system": "Jesteś pomocnym asystentem.",
|
||
"userGreeting": "Witam! Jak się dzisiaj masz?"
|
||
},
|
||
"toolCalling": {
|
||
"userWeather": "Jaka jest pogoda w São Paulo?",
|
||
"toolDescription": "Uzyskaj aktualną pogodę dla danej lokalizacji",
|
||
"cityNameDescription": "Nazwa miasta"
|
||
},
|
||
"multiTurn": {
|
||
"system": "Jesteś asystentem kodowania.",
|
||
"userInitial": "Napisz funkcję sortującą tablicę w Pythonie.",
|
||
"assistantExample": "Oto prosta funkcja sortowania:\n\n```pyton\ndef sort_array(arr):\n zwróć posortowane (arr)\n```",
|
||
"userFollowUp": "Teraz posortuj w kolejności malejącej."
|
||
},
|
||
"thinking": {
|
||
"question": "Jaka jest suma pierwszych 100 liczb pierwszych?"
|
||
},
|
||
"systemPrompt": {
|
||
"systemInstruction": "Jesteś starszym inżynierem oprogramowania specjalizującym się w systemach rozproszonych. Odpowiadaj na pytania zwięźle, korzystając z najlepszych praktyk branżowych. W stosownych przypadkach zawsze podawaj przykłady kodu. Sformatuj swoje odpowiedzi, korzystając z przecen.",
|
||
"question": "Jak zaimplementować wzór wyłącznika?"
|
||
},
|
||
"streaming": {
|
||
"prompt": "Opowiedz mi krótką historię o robocie uczącym się malować."
|
||
}
|
||
},
|
||
"openaiCompatibleLabel": "Kompatybilny z OpenAI",
|
||
"anthropicCompatibleLabel": "Kompatybilny z antropią",
|
||
"noTemplateForFormat": "Brak szablonu dla tego formatu",
|
||
"translationFailed": "Tłumaczenie nie powiodło się: {error}",
|
||
"pipelineDebugger": "Debuger potoku",
|
||
"translationPipeline": "Potok tłumaczeń",
|
||
"pipelineVisualization": "Wizualizacja rurociągu",
|
||
"pipelineVisualizationHint": "Wyślij wiadomość, aby zobaczyć, jak Twoje żądanie przechodzi przez wykrywanie → tłumaczenie → połączenie z dostawcą.",
|
||
"chatTesterDescription": "Wysyłaj wiadomości w określonym formacie klienta i sprawdzaj każdy etap procesu tłumaczenia.",
|
||
"chatTesterFlow": "Żądanie klienta → Wykrywanie formatu → Średniozaawansowany OpenAI → Format dostawcy → Odpowiedź",
|
||
"clickStepToInspect": "Kliknij dowolny krok, aby sprawdzić dane na tym etapie.",
|
||
"clientFormat": "Format klienta",
|
||
"provider": "Dostawca",
|
||
"modelPlaceholder": "Wybierz lub wpisz nazwę modelu...",
|
||
"sendMessageToSeePipeline": "Wyślij wiadomość, aby zobaczyć proces tłumaczenia",
|
||
"chatMessageHintPrefix": "Twoja wiadomość zostanie sformatowana jako",
|
||
"chatMessageHintSuffix": "żądanie, przetłumaczone w potoku i wysłane do wybranego dostawcy.",
|
||
"youWithFormat": "Ty ({format})",
|
||
"assistant": "Asystent",
|
||
"typeMessage": "Wpisz wiadomość...",
|
||
"send": "Wyślij",
|
||
"clientRequest": "Żądanie klienta",
|
||
"clientRequestDescription": "Treść żądania, jaką wysłałby Twój klient",
|
||
"formatDetected": "Wykryto format",
|
||
"formatDetectedDescription": "OmniRoute automatycznie wykrywa format API na podstawie struktury żądania",
|
||
"openaiIntermediate": "Średniozaawansowany OpenAI",
|
||
"openaiIntermediateDescription": "Wszystkie formaty są najpierw normalizowane do formatu OpenAI (uniwersalny most)",
|
||
"providerFormat": "Format dostawcy",
|
||
"providerFormatDescription": "Format OpenAI jest tłumaczony na natywny format dostawcy",
|
||
"providerResponse": "Odpowiedź dostawcy",
|
||
"providerResponseRawDescription": "Surowa odpowiedź z interfejsu API dostawcy",
|
||
"providerResponseSseDescription": "Surowy strumień SSE z interfejsu API dostawcy",
|
||
"unexpectedError": "Wystąpił nieoczekiwany błąd",
|
||
"error": "Błąd",
|
||
"errorMessage": "Błąd: {message}",
|
||
"requestFailed": "Żądanie nie powiodło się",
|
||
"noTextExtracted": "(Nie wyodrębniono tekstu)",
|
||
"liveMonitorDescriptionPrefix": "Pokazuje zdarzenia związane z tłumaczeniem podczas przepływu wywołań API przez OmniRoute. Zdarzenia pochodzą z bufora w pamięci (resetują się przy ponownym uruchomieniu). Użyj",
|
||
"liveMonitorDescriptionSuffix": "lub zewnętrzne wywołania API w celu wygenerowania zdarzeń."
|
||
},
|
||
"usage": {
|
||
"title": "Użycie",
|
||
"loggerTab": "Rejestrator",
|
||
"proxyTab": "Pełnomocnik",
|
||
"budgetManagement": "Zarządzanie budżetem",
|
||
"budgetSaved": "Limity budżetu zostały zapisane",
|
||
"budgetSaveFailed": "Nie udało się zapisać budżetu",
|
||
"loadingBudgetData": "Ładowanie danych budżetu...",
|
||
"noApiKeysTitle": "Brak kluczy API",
|
||
"noApiKeysDescription": "Najpierw dodaj klucze API, aby skonfigurować limity budżetu.",
|
||
"apiKey": "Klucz API",
|
||
"todaysSpend": "Dzisiejsze wydatki",
|
||
"thisMonth": "W tym miesiącu",
|
||
"setLimits": "Ustaw limity",
|
||
"dailyLimitUsd": "Limit dzienny (USD)",
|
||
"monthlyLimitUsd": "Limit miesięczny (USD)",
|
||
"warningThresholdPercent": "Próg ostrzegawczy (%)",
|
||
"dailyLimitPlaceholder": "np. 5.00",
|
||
"monthlyLimitPlaceholder": "np. 50,00",
|
||
"warningThresholdPlaceholder": "80",
|
||
"saveLimits": "Zapisz limity",
|
||
"budgetOk": "Budżet OK — pozostało {remaining}",
|
||
"budgetExceeded": "Przekroczono budżet — żądania mogą zostać zablokowane",
|
||
"totalRequests": "Łączna liczba żądań",
|
||
"noDataYet": "Brak danych",
|
||
"latency": "Opóźnienie",
|
||
"latencyP50": "p50",
|
||
"latencyP95": "s. 95",
|
||
"latencyP99": "str. 99",
|
||
"promptCache": "Natychmiastowa pamięć podręczna",
|
||
"systemHealth": "Stan systemu",
|
||
"entries": "Wpisy",
|
||
"activeCount": "{count} aktywny",
|
||
"openCircuitBreakersDetected": "Wykryto otwarte wyłączniki automatyczne",
|
||
"hitRate": "Współczynnik trafień",
|
||
"hitsMisses": "Trafienia/chybienia",
|
||
"circuitBreakers": "Wyłączniki automatyczne",
|
||
"lockedIPs": "Zablokowane adresy IP",
|
||
"lockoutsAutoRefreshHint": "Blokady limitów prędkości dla poszczególnych modeli • Automatyczne odświeżanie 10 s",
|
||
"lockedCount": "{count, plural, one {# locked} other {# locked}}",
|
||
"timeLeft": "Pozostało {time}",
|
||
"howItWorks": "Jak to działa",
|
||
"howItWorksSubtitle": "Dowiedz się, jak oceny weryfikują Twoje odpowiedzi LLM",
|
||
"define": "Zdefiniuj",
|
||
"defineStepDescription": "Twórz przypadki testowe z podpowiedziami wejściowymi i oczekiwanymi kryteriami wyjściowymi, korzystając ze strategii takich jak zawiera, wyrażenie regularne lub dopasowanie dokładne.",
|
||
"run": "Biegnij",
|
||
"runStepDescription": "Wykonuj przypadki testowe na punktach końcowych LLM za pośrednictwem OmniRoute. Każdy przypadek wysyłany jest jako prawdziwe żądanie API.",
|
||
"evaluate": "Oceń",
|
||
"evaluateStepDescription": "Odpowiedzi porównuje się z oczekiwanymi kryteriami. Zobacz wynik pozytywny/nieudany dla każdego przypadku ze wskaźnikami opóźnień i szczegółowymi informacjami zwrotnymi.",
|
||
"evalSuites": "Zestawy ewaluacyjne",
|
||
"evalSuitesHint": "Kliknij zestaw, aby wyświetlić przypadki testowe, a następnie uruchom, aby ocenić punkty końcowe LLM",
|
||
"evalsLoading": "Ładowanie pakietów eval...",
|
||
"noEvalSuitesFound": "Nie znaleziono apartamentów Eval",
|
||
"noEvalSuitesDescription": "Zestawy Eval można definiować za pomocą interfejsu API lub w kodzie. Testują wyniki modelu pod kątem oczekiwanych wyników, korzystając ze strategii takich jak zawiera, wyrażenie regularne, dopasowanie dokładne i funkcje niestandardowe.",
|
||
"columnCase": "Sprawa",
|
||
"columnStatus": "Stan",
|
||
"columnLatency": "Opóźnienie",
|
||
"columnDetails": "Szczegóły",
|
||
"columnModel": "Modelka",
|
||
"columnStrategy": "Strategia",
|
||
"columnExpected": "Oczekiwane",
|
||
"statsSuites": "Apartamenty",
|
||
"statsTestCases": "Przypadki testowe",
|
||
"statsModels": "Modele",
|
||
"statsCoverage": "Zasięg",
|
||
"statsStrategiesCount": "{count} strategie",
|
||
"evaluationStrategies": "Strategie ewaluacji",
|
||
"modelsUnderTest": "Modele w fazie testów",
|
||
"searchSuitesPlaceholder": "Wyszukaj apartamenty...",
|
||
"passSuffix": "przejść",
|
||
"casesCount": "{count, plural, one {# case} other {# cases}}",
|
||
"runEval": "Uruchom Eval",
|
||
"runningProgress": "Uruchamiam {current}/{total}...",
|
||
"passRate": "wskaźnik zdawalności",
|
||
"summaryBreakdown": "{passed} zaliczony · {failed} nieudany · {total} łącznie",
|
||
"passedIconLabel": "✅ Zdane",
|
||
"failedIconLabel": "❌ Nie udało się",
|
||
"detailsContains": "Zawiera: „{term}”",
|
||
"detailsRegex": "Wyrażenie regularne: {pattern}",
|
||
"detailsExpected": "Oczekiwano: „{expected}”",
|
||
"noResultsYet": "Jeszcze żadnych wyników",
|
||
"testCasesCount": "Przypadki testowe ({count})",
|
||
"noTestCasesDefined": "Nie zdefiniowano przypadków testowych",
|
||
"runEvalHint": "Kliknij „Uruchom ocenę”, aby wykonać wszystkie przypadki w punkcie końcowym LLM. Każdy test wysyła prawdziwe żądanie poprzez OmniRoute.",
|
||
"notifyNoTestCases": "Dla tego pakietu nie zdefiniowano żadnych przypadków testowych",
|
||
"notifyAllCasesPassed": "Wszystkie {total} sprawy zaliczone ✅",
|
||
"notifySomeCasesFailed": "{passed}/{total} zaliczone, {failed} nie powiodło się",
|
||
"notifyEvalRunFailed": "Próba ewaluacyjna nie powiodła się",
|
||
"notifyEvalTitle": "Wartość: {name}",
|
||
"modelEvals": "Oceny modeli",
|
||
"evalsHeroDescription": "Przetestuj i zweryfikuj punkty końcowe LLM, uruchamiając predefiniowane zestawy ewaluacyjne. Każdy pakiet zawiera przypadki testowe, które wysyłają rzeczywiste podpowiedzi za pośrednictwem OmniRoute i porównują odpowiedzi z oczekiwanymi kryteriami — pomagając wykrywać regresje, porównywać modele i zapewniać jakość odpowiedzi u różnych dostawców.",
|
||
"qualityValidation": "Walidacja jakości",
|
||
"modelComparison": "Porównanie modeli",
|
||
"regressionDetection": "Wykrywanie regresji",
|
||
"latencyBenchmarks": "Testy porównawcze opóźnień",
|
||
"modelLockouts": "Blokady modeli",
|
||
"noLockouts": "Żaden model nie jest obecnie zablokowany",
|
||
"activeSessions": "Aktywne sesje",
|
||
"noSessions": "Brak aktywnych sesji",
|
||
"sessionsHint": "Sesje pojawiają się, gdy żądania przepływają przez serwer proxy",
|
||
"sessionsTrackedHint": "Śledzone poprzez odcisk palca na żądanie • Automatyczne odświeżanie 5 s",
|
||
"session": "Sesja",
|
||
"age": "Wiek",
|
||
"requests": "Żądania",
|
||
"connection": "Połączenie",
|
||
"durationMillisecondsShort": "{value}ms",
|
||
"durationSecondsShort": "{value}s",
|
||
"durationMinutesShort": "{value}m",
|
||
"durationHoursShort": "{value}h",
|
||
"reasonSeparator": " - ",
|
||
"notAvailableSymbol": "-",
|
||
"providerLimits": "Limity dostawcy",
|
||
"noProviders": "Brak podłączonych dostawców",
|
||
"connectProvidersForQuota": "Połącz się z dostawcami za pomocą protokołu OAuth, aby śledzić limity przydziału interfejsu API i wykorzystanie.",
|
||
"accountsCount": "{count, plural, one {# account} other {# accounts}}",
|
||
"filteredFromCount": "(odfiltrowano z {count})",
|
||
"autoRefresh": "Automatyczne odświeżanie",
|
||
"refreshAll": "Odśwież wszystko",
|
||
"loadingQuotas": "Ładowanie...",
|
||
"account": "Konto",
|
||
"modelQuotas": "Kwoty modelowe",
|
||
"lastUsed": "Ostatnio używany",
|
||
"actions": "Działania",
|
||
"refreshQuota": "Odśwież limit",
|
||
"today": "Dzisiaj",
|
||
"tomorrow": "Jutro",
|
||
"dayTimeFormat": "{day}, {time}",
|
||
"inDuration": "w {duration}",
|
||
"notApplicable": "Nie dotyczy",
|
||
"rawPlanWithValue": "Surowy plan: {plan}",
|
||
"noPlanFromProvider": "Brak planu od dostawcy",
|
||
"noQuotaData": "Brak danych dotyczących kwot",
|
||
"noQuotaDataAvailable": "Brak dostępnych danych dotyczących kwot",
|
||
"noAccountsForTierFilter": "Nie znaleziono kont dla filtra poziomów",
|
||
"tierAll": "Wszystko",
|
||
"tierEnterprise": "Przedsiębiorstwo",
|
||
"tierTeam": "Zespół",
|
||
"tierBusiness": "Biznes",
|
||
"tierUltra": "Ultra",
|
||
"tierPro": "Zawodowiec",
|
||
"tierPlus": "Dodatkowo",
|
||
"tierFree": "Bezpłatny",
|
||
"tierUnknown": "Nieznany"
|
||
},
|
||
"modals": {
|
||
"waitingAuth": "Oczekiwanie na autoryzację",
|
||
"verificationUrl": "Adres URL weryfikacji",
|
||
"yourCode": "Twój kod",
|
||
"remoteAccess": "Zdalny dostęp:",
|
||
"connectedSuccess": "Połączono pomyślnie!",
|
||
"connectionFailed": "Połączenie nie powiodło się",
|
||
"chooseAuthMethod": "Wybierz metodę uwierzytelniania:",
|
||
"awsBuilderId": "Identyfikator konstruktora AWS",
|
||
"awsIamIdentity": "Centrum tożsamości AWS IAM",
|
||
"googleAccount": "Konto Google",
|
||
"githubAccount": "Konto GitHuba",
|
||
"importToken": "Importuj token",
|
||
"pasteToken": "Wklej token odświeżania z Kiro IDE.",
|
||
"awsRegion": "Regionu AWS",
|
||
"autoDetecting": "Automatyczne wykrywanie tokenów...",
|
||
"readingFromCache": "Odczyt z pamięci podręcznej AWS SSO",
|
||
"readingFromCursor": "Odczyt z bazy danych Cursor IDE",
|
||
"initializing": "Inicjowanie...",
|
||
"pricingConfig": "Konfiguracja cen",
|
||
"loadingPricing": "Ładowanie danych cenowych...",
|
||
"pricingRatesFormat": "Format stawek cenowych",
|
||
"noPricingData": "Brak danych o cenach",
|
||
"noModelsFound": "Nie znaleziono żadnych modeli"
|
||
},
|
||
"loggers": {
|
||
"allProviders": "Wszyscy dostawcy",
|
||
"allModels": "Wszystkie modele",
|
||
"allAccounts": "Wszystkie konta",
|
||
"allApiKeys": "Wszystkie klucze API",
|
||
"allTypes": "Wszystkie typy",
|
||
"allLevels": "Wszystkie poziomy",
|
||
"modelAZ": "Model A-Z",
|
||
"modelZA": "Model Z-A",
|
||
"loadingLogs": "Ładowanie dzienników...",
|
||
"loadingProxyLogs": "Ładowanie dzienników proxy...",
|
||
"noLogEntries": "Nie znaleziono wpisów w dzienniku",
|
||
"noPayloadData": "Brak danych ładunku dla tego wpisu dziennika.",
|
||
"proxyEvent": "Wydarzenie proxy",
|
||
"proxy": "Pełnomocnik",
|
||
"level": "Poziom",
|
||
"directNative": "Bezpośrednie (natywne)",
|
||
"combo": "Kombinacja",
|
||
"inputTokens": "ja:",
|
||
"outputTokens": "O:"
|
||
},
|
||
"stats": {
|
||
"usageOverview": "Przegląd użycia",
|
||
"outputTokens": "Tokeny wyjściowe",
|
||
"totalCost": "Całkowity koszt",
|
||
"usageByModel": "Użycie według modelu",
|
||
"usageByAccount": "Użycie według konta",
|
||
"failedToLoad": "Nie udało się załadować statystyk użytkowania.",
|
||
"tokenHealth": "Tokenowe zdrowie",
|
||
"totalOAuth": "Całkowite uwierzytelnienie OAuth",
|
||
"healthy": "Zdrowy",
|
||
"warning": "Ostrzeżenie",
|
||
"errored": "Błąd",
|
||
"lastCheck": "Ostatnia kontrola",
|
||
"noData": "Brak danych",
|
||
"share": "Udostępnij",
|
||
"unableToLoad": "Nie można załadować wskaźników systemowych",
|
||
"product": "Produkt",
|
||
"resources": "Zasoby",
|
||
"company": "Firma"
|
||
},
|
||
"auth": {
|
||
"welcome": "Witamy",
|
||
"signIn": "Zaloguj się",
|
||
"enterPassword": "Wprowadź hasło, aby kontynuować",
|
||
"password": "Hasło",
|
||
"unifiedProxy": "Ujednolicony serwer proxy API AI",
|
||
"unifiedAiApiProxy": "Ujednolicony serwer proxy API AI",
|
||
"unifiedAiApiProxyDesc": "Kieruj żądania do wielu dostawców AI za pośrednictwem jednego punktu końcowego. Wbudowane równoważenie obciążenia, przełączanie awaryjne i śledzenie użycia.",
|
||
"passwordNotEnabled": "Ochrona hasłem nie jest włączona",
|
||
"loading": "Ładowanie...",
|
||
"invalidPassword": "Nieprawidłowe hasło",
|
||
"errorOccurredRetry": "Wystąpił błąd. Spróbuj ponownie.",
|
||
"configureInstance": "Skonfigurujmy Twoją instancję OmniRoute",
|
||
"runOnboardingWizard": "Uruchom kreatora wdrażania, aby ustawić hasło i połączyć się z pierwszym dostawcą AI.",
|
||
"startOnboarding": "Rozpocznij wdrażanie",
|
||
"secureYourInstance": "Zabezpiecz swoją instancję",
|
||
"setPasswordDescription": "Ustaw hasło, aby chronić swój pulpit nawigacyjny i zabezpieczyć punkty końcowe API przed nieautoryzowanym dostępem.",
|
||
"configurePassword": "Skonfiguruj hasło",
|
||
"continue": "Kontynuuj",
|
||
"windowWillClose": "To okno zamknie się automatycznie...",
|
||
"closeTabNow": "Możesz już zamknąć tę zakładkę.",
|
||
"copyUrlManual": "Skopiuj adres URL z paska adresu i wklej go w aplikacji.",
|
||
"accessDeniedDescription": "Nie masz uprawnień dostępu do tego zasobu. Sprawdź swój klucz API lub skontaktuj się z administratorem.",
|
||
"goToDashboard": "Przejdź do Panelu",
|
||
"featureMultiProviderTitle": "Wielu dostawców",
|
||
"featureMultiProviderDesc": "OpenAI, Anthropic, Google i nie tylko",
|
||
"featureLoadBalancingTitle": "Równoważenie obciążenia",
|
||
"featureLoadBalancingDesc": "Rozpowszechniaj żądania inteligentnie",
|
||
"featureUsageTrackingTitle": "Śledzenie użycia",
|
||
"featureUsageTrackingDesc": "Monitoruj koszty i tokeny",
|
||
"resetPassword": "Zresetuj hasło",
|
||
"resetDescription": "Wybierz metodę odzyskania dostępu do pulpitu nawigacyjnego",
|
||
"stopServer": "Zatrzymaj serwer OmniRoute",
|
||
"processing": "Przetwarzanie...",
|
||
"pleaseWait": "Poczekaj, aż zakończymy autoryzację.",
|
||
"authSuccess": "Autoryzacja pomyślna!",
|
||
"copyUrl": "Skopiuj ten adres URL",
|
||
"accessDenied": "Odmowa dostępu",
|
||
"methodCliTitle": "Metoda 1: Reset CLI",
|
||
"methodCliDescription": "Uruchom następującą komendę na serwerze, na którym działa OmniRoute:",
|
||
"methodCliHint": "Spowoduje to wyświetlenie monitu o ustawienie nowego hasła. Najpierw należy zatrzymać serwer.",
|
||
"methodManualTitle": "Metoda 2: Reset ręczny",
|
||
"methodManualDescription": "Usuń hasło z bazy danych i przy uruchomieniu ustaw nowe:",
|
||
"setPasswordInYour": "Ustaw nowe hasło w swoim",
|
||
"fileLabelSuffix": "plik:",
|
||
"newPasswordPlaceholder": "twoje_nowe_hasło",
|
||
"deleteSettingsFile": "Usuń",
|
||
"orRemovePasswordHashField": "lub usuń pole hasłoHash",
|
||
"restartServerWithNewPassword": "Zrestartuj serwer - będzie używał nowego hasła",
|
||
"backToLogin": "Powrót do logowania",
|
||
"forgotPassword": "Zapomniałeś hasła?"
|
||
},
|
||
"landing": {
|
||
"brandName": "OmniRoute",
|
||
"navigateHome": "Przejdź do domu",
|
||
"toggleMenu": "Przełącz menu",
|
||
"featuresLink": "Funkcje",
|
||
"docsLink": "Dokumenty",
|
||
"github": "GitHub",
|
||
"versionLive": "wersja 1.0 jest już dostępna",
|
||
"oneEndpoint": "Jeden punkt końcowy dla",
|
||
"allProviders": "Wszyscy dostawcy sztucznej inteligencji",
|
||
"heroDescription": "Serwer proxy punktu końcowego AI z panelem WWW — port JavaScript CLIProxyAPI. Bezproblemowo współpracuje z Claude Code, OpenAI Codex, Cline, RooCode i innymi narzędziami CLI.",
|
||
"getStarted": "Rozpocznij",
|
||
"viewOnGithub": "Zobacz na GitHubie",
|
||
"powerfulFeatures": "Potężne funkcje",
|
||
"featuresSubtitle": "Wszystko, czego potrzebujesz do zarządzania infrastrukturą AI w jednym miejscu, stworzonym z myślą o skali.",
|
||
"featureUnifiedEndpointTitle": "Ujednolicony punkt końcowy",
|
||
"featureUnifiedEndpointDesc": "Uzyskaj dostęp do wszystkich dostawców za pośrednictwem jednego standardowego adresu URL interfejsu API.",
|
||
"featureEasySetupTitle": "Łatwa konfiguracja",
|
||
"featureEasySetupDesc": "Rozpocznij pracę w ciągu kilku minut za pomocą polecenia npx.",
|
||
"featureModelFallbackTitle": "Model zastępczy",
|
||
"featureModelFallbackDesc": "Automatycznie przełączaj dostawców w przypadku awarii lub dużych opóźnień.",
|
||
"featureUsageTrackingTitle": "Śledzenie użycia",
|
||
"featureUsageTrackingDesc": "Szczegółowa analiza i monitorowanie kosztów we wszystkich modelach.",
|
||
"featureOAuthApiKeysTitle": "Klucze OAuth i API",
|
||
"featureOAuthApiKeysDesc": "Bezpiecznie zarządzaj danymi uwierzytelniającymi w jednym skarbcu.",
|
||
"featureCloudSyncTitle": "Synchronizacja w chmurze",
|
||
"featureCloudSyncDesc": "Błyskawicznie synchronizuj konfiguracje na różnych urządzeniach.",
|
||
"featureCliSupportTitle": "Wsparcie CLI",
|
||
"featureCliSupportDesc": "Współpracuje z Claude Code, Codex, Cline, Cursor i nie tylko.",
|
||
"featureDashboardTitle": "Pulpit nawigacyjny",
|
||
"featureDashboardDesc": "Wizualny pulpit nawigacyjny do analizy ruchu w czasie rzeczywistym.",
|
||
"howItWorks": "Jak działa OmniRoute",
|
||
"howItWorksDescription": "Dane płynnie przepływają z Twojej aplikacji przez naszą inteligentną warstwę routingu do najlepszego dostawcy dla danego zadania.",
|
||
"howItWorksStep1Title": "1. CLI i SDK",
|
||
"howItWorksStep1Description": "Twoje żądania zaczynają się od ulubionych narzędzi lub naszego ujednoliconego pakietu SDK. Po prostu zmień podstawowy adres URL.",
|
||
"howItWorksStep2Title": "2. Koncentrator OmniRoute",
|
||
"howItWorksStep2Description": "Nasz silnik analizuje monity, sprawdza stan dostawcy i trasy pod kątem najniższych opóźnień lub kosztów.",
|
||
"howItWorksStep3Title": "3. Dostawcy sztucznej inteligencji",
|
||
"howItWorksStep3Description": "Żądanie jest natychmiast spełniane przez OpenAI, Anthropic, Gemini lub inne.",
|
||
"getStartedIn30Seconds": "Rozpocznij w 30 sekund",
|
||
"getStartedDescription": "Zainstaluj OmniRoute, skonfiguruj dostawców za pomocą panelu internetowego i rozpocznij przekierowywanie żądań AI.",
|
||
"installOmniRoute": "Zainstaluj OmniRoute",
|
||
"installStepDescription": "Uruchom polecenie npx, aby natychmiast uruchomić serwer",
|
||
"openDashboard": "Otwórz Panel",
|
||
"openDashboardStepDescription": "Skonfiguruj dostawców i klucze API za pośrednictwem interfejsu internetowego",
|
||
"routeRequests": "Żądania dotyczące trasy",
|
||
"routeRequestsStepDescription": "Skieruj swoje narzędzia CLI na {endpoint}",
|
||
"terminal": "terminala",
|
||
"copy": "Kopiuj",
|
||
"copied": "✓ Skopiowano",
|
||
"startingOmniRoute": "Uruchamiam OmniRoute...",
|
||
"serverRunningOnLabel": "Serwer działa",
|
||
"dashboardLabel": "Pulpit nawigacyjny",
|
||
"readyToRoute": "Gotowy do trasy! ✓",
|
||
"configureProvidersNote": "📝 Skonfiguruj dostawców w panelu kontrolnym lub użyj zmiennych środowiskowych",
|
||
"dataLocation": "Lokalizacja danych:",
|
||
"dataLocationMacLinux": " macOS/Linux:",
|
||
"dataLocationWindows": " Okna:",
|
||
"product": "Produkt",
|
||
"dashboardLink": "Pulpit nawigacyjny",
|
||
"changelog": "Dziennik zmian",
|
||
"resources": "Zasoby",
|
||
"documentation": "Dokumentacja",
|
||
"npm": "NPM",
|
||
"legal": "Legalne",
|
||
"mitLicense": "Licencja MIT",
|
||
"footerTagline": "Ujednolicony punkt końcowy do generowania sztucznej inteligencji. Z łatwością łącz się, kieruj i zarządzaj dostawcami sztucznej inteligencji.",
|
||
"copyright": "© {year} OmniRoute. Wszelkie prawa zastrzeżone.",
|
||
"flowToolClaudeCode": "Claude'a Koda",
|
||
"flowToolOpenAICodex": "Kodeks OpenAI",
|
||
"flowToolCline": "Cline",
|
||
"flowToolCursor": "Kursor",
|
||
"flowProviderOpenAI": "OpenAI",
|
||
"flowProviderAnthropic": "Antropiczny",
|
||
"flowProviderGemini": "Bliźnięta",
|
||
"flowProviderGithubCopilot": "Drugi pilot GitHuba",
|
||
"interactiveDiagram": "Interaktywny diagram widoczny na pulpicie",
|
||
"ctaTitle": "Chcesz uprościć swoją infrastrukturę AI?",
|
||
"ctaDescription": "Dołącz do programistów, którzy usprawniają integrację sztucznej inteligencji za pomocą OmniRoute. Oprogramowanie typu open source i na początek bezpłatne.",
|
||
"startFree": "Zacznij za darmo",
|
||
"readDocumentation": "Przeczytaj dokumentację"
|
||
},
|
||
"docs": {
|
||
"title": "Dokumentacja",
|
||
"quickStart": "Szybki start",
|
||
"features": "Funkcje",
|
||
"supportedProviders": "Obsługiwani dostawcy",
|
||
"supportedProvidersToc": "Dostawcy",
|
||
"commonUseCases": "Typowe przypadki użycia",
|
||
"clientCompatibility": "Zgodność klienta",
|
||
"protocolsToc": "Protocols",
|
||
"apiReference": "Dokumentacja API",
|
||
"method": "Metoda",
|
||
"path": "Ścieżka",
|
||
"notes": "Notatki",
|
||
"modelPrefixes": "Przedrostki modeli",
|
||
"prefix": "Przedrostek",
|
||
"troubleshooting": "Rozwiązywanie problemów",
|
||
"supportsChat": "Obsługuje punkty końcowe czatu i odpowiedzi.",
|
||
"oauthAutoRefresh": "Połączenie OAuth z automatycznym odświeżaniem tokena.",
|
||
"fullStreaming": "Pełna obsługa transmisji strumieniowej dla wszystkich modeli.",
|
||
"docsLabel": "Dokumenty",
|
||
"docsHeroDescription": "Brama AI dla LLM wielu dostawców. Jeden punkt końcowy dla OpenAI, Anthropic, Gemini, GitHub Copilot, Claude Code, Cursor i ponad 20 innych dostawców.",
|
||
"openDashboard": "Otwórz Panel",
|
||
"endpointPage": "Strona punktu końcowego",
|
||
"github": "GitHub",
|
||
"reportIssue": "Zgłoś problem",
|
||
"onThisPage": "Na tej stronie",
|
||
"documentationVersion": "Dokumentacja - v{version}",
|
||
"quickStartStep1Title": "1. Zainstaluj i uruchom",
|
||
"quickStartStep1Prefix": "Biegnij",
|
||
"quickStartStep1Middle": "lub sklonuj z GitHub i uruchom",
|
||
"quickStartStep2Title": "2. Utwórz klucz API",
|
||
"quickStartStep2Text": "Przejdź do Punkt końcowy -> Zarejestrowane klucze. Wygeneruj jeden klucz na środowisko.",
|
||
"quickStartStep3Title": "3. Połącz dostawców",
|
||
"quickStartStep3Text": "Dodaj konta dostawców za pomocą loginu OAuth, klucza API lub automatycznego łączenia w warstwie bezpłatnej.",
|
||
"quickStartStep4Title": "4. Ustaw podstawowy adres URL klienta",
|
||
"quickStartStep4Prefix": "Wskaż klienta IDE lub API",
|
||
"quickStartStep4Suffix": "Użyj na przykład prefiksu dostawcy",
|
||
"featureRoutingTitle": "Routing wielu dostawców",
|
||
"featureRoutingText": "Kieruj żądania do ponad 30 dostawców AI za pośrednictwem jednego punktu końcowego kompatybilnego z OpenAI. Obsługuje interfejsy API czatu, odpowiedzi, dźwięku i obrazu.",
|
||
"featureCombosTitle": "Kombinacje i balansowanie",
|
||
"featureCombosText": "Twórz kombinacje modeli z łańcuchami awaryjnymi i strategiami równoważenia: okrężne, priorytetowe, losowe, najrzadziej używane i zoptymalizowane pod względem kosztów.",
|
||
"featureUsageTitle": "Śledzenie wykorzystania i kosztów",
|
||
"featureUsageText": "Liczenie tokenów w czasie rzeczywistym, kalkulacja kosztów dla każdego dostawcy/modelu oraz szczegółowy podział wykorzystania według klucza API i konta.",
|
||
"featureAnalyticsTitle": "Panel analityczny",
|
||
"featureAnalyticsText": "Analityka wizualna z wykresami żądań, tokenów, błędów, opóźnień, kosztów i popularności modelu w czasie.",
|
||
"featureHealthTitle": "Monitorowanie zdrowia",
|
||
"featureHealthText": "Kontrole stanu na żywo, status dostawcy, stany wyłączników i automatyczne wykrywanie limitów szybkości z wykładniczym wycofywaniem.",
|
||
"featureCliTitle": "Narzędzia interfejsu wiersza polecenia",
|
||
"featureCliText": "Zarządzaj konfiguracjami IDE, eksportuj/importuj kopie zapasowe, odkrywaj profile Codexu i konfiguruj ustawienia z poziomu pulpitu nawigacyjnego.",
|
||
"featureSecurityTitle": "Bezpieczeństwo i zasady",
|
||
"featureSecurityText": "Uwierzytelnianie kluczem API, filtrowanie IP, ochrona przed wtryskiem, zasady domeny, zarządzanie sesjami i rejestrowanie audytu.",
|
||
"featureCloudSyncTitle": "Synchronizacja w chmurze",
|
||
"featureCloudSyncText": "Zsynchronizuj swoją konfigurację z Cloudflare Workers, aby uzyskać zdalny dostęp za pomocą szyfrowanych poświadczeń i automatycznego przełączania awaryjnego.",
|
||
"providersAcrossConnectionTypes": "{count} dostawców dla trzech typów połączeń.",
|
||
"manageProviders": "Zarządzaj dostawcami",
|
||
"providersCount": "{count} dostawców",
|
||
"providerTypeFree": "Poziom bezpłatny",
|
||
"providerTypeOAuth": "OAuth",
|
||
"providerTypeApiKey": "Klucz API",
|
||
"useCaseSingleEndpointTitle": "Jeden punkt końcowy dla wielu dostawców",
|
||
"useCaseSingleEndpointText": "Wskaż klientom jeden podstawowy adres URL i trasę według prefiksu modelu (na przykład: gh/, cc/, kr/, openai/).",
|
||
"useCaseFallbackTitle": "Przełączanie awaryjne i modelowe za pomocą kombinacji",
|
||
"useCaseFallbackText": "Twórz modele łączone w panelu kontrolnym i utrzymuj stabilną konfigurację klienta, podczas gdy dostawcy zmieniają się wewnętrznie.",
|
||
"useCaseUsageVisibilityTitle": "Widoczność użycia, kosztów i debugowania",
|
||
"useCaseUsageVisibilityText": "Śledź tokeny i koszty według dostawcy, konta i klucza API na kartach Użycie i Analityka.",
|
||
"clientCherryStudioTitle": "Wiśniowe Studio",
|
||
"baseUrlLabel": "Bazowy adres URL",
|
||
"chatEndpointLabel": "Punkt końcowy czatu",
|
||
"modelRecommendationLabel": "Rekomendacja modelu: wyraźny przedrostek",
|
||
"clientCodexTitle": "Modele drugiego pilota w Kodeksie/GitHub",
|
||
"clientCodexBullet1": "Użyj identyfikatorów modeli z",
|
||
"clientCodexBullet2": "Modele z rodziny Codex automatycznie kierują się do",
|
||
"clientCodexBullet3": "Modele inne niż Kodeks są kontynuowane",
|
||
"clientCursorTitle": "Kursor IDE",
|
||
"clientCursorBullet1": "Użyj",
|
||
"clientCursorBullet1Suffix": "przedrostek dla modeli kursora.",
|
||
"clientCursorBullet2": "Połączenie OAuth - zaloguj się ze strony Dostawcy.",
|
||
"clientClaudeTitle": "Kod Claude'a / Antygrawitacja",
|
||
"clientClaudeBullet1Prefix": "Użyj",
|
||
"clientClaudeBullet1Middle": "(Claude) lub",
|
||
"clientClaudeBullet1Suffix": "Przedrostek (Antygrawitacja).",
|
||
"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": "Punkt końcowy czatu zgodny z OpenAI (domyślnie).",
|
||
"endpointResponsesNote": "Punkt końcowy interfejsu API odpowiedzi (Kodeks, seria o).",
|
||
"endpointModelsNote": "Katalog modeli dla wszystkich podłączonych dostawców.",
|
||
"endpointAudioNote": "Transkrypcja audio (Deepgram, AssemblyAI).",
|
||
"endpointImagesNote": "Generowanie obrazu (NanoBanana).",
|
||
"endpointRewriteChatNote": "Przepisz pomocnika dla klientów bez /v1.",
|
||
"endpointRewriteResponsesNote": "Przepisz pomocnika dla odpowiedzi bez /v1.",
|
||
"endpointRewriteModelsNote": "Przepisz pomocnika do wykrywania modelu bez /v1.",
|
||
"modelPrefixesDescriptionStart": "Użyj prefiksu dostawcy przed nazwą modelu, aby przekierować do określonego dostawcy. Przykład:",
|
||
"modelPrefixesDescriptionEnd": "trasy do GitHub Copilot.",
|
||
"provider": "Dostawca",
|
||
"type": "Wpisz",
|
||
"troubleshootingModelRouting": "Jeśli klientowi nie powiedzie się routing modelu, użyj jawnego dostawcy/modelu (na przykład: gh/gpt-5.1-codex).",
|
||
"troubleshootingAmbiguousModels": "Jeśli otrzymujesz niejednoznaczne błędy modelu, wybierz prefiks dostawcy zamiast samego identyfikatora modelu.",
|
||
"troubleshootingCodexFamily": "W przypadku modeli z rodziny GitHub Codex zachowaj model jako gh/codex-model; router wybiera opcję /odpowiada automatycznie.",
|
||
"troubleshootingTestConnection": "Użyj Panelu sterowania > Dostawcy > Testuj połączenie przed testowaniem z IDE lub klientów zewnętrznych.",
|
||
"troubleshootingCircuitBreaker": "Jeśli dostawca pokazuje, że wyłącznik jest otwarty, poczekaj na ochłodzenie lub sprawdź stronę Zdrowie, aby uzyskać szczegółowe informacje.",
|
||
"troubleshootingOAuth": "W przypadku dostawców OAuth należy ponownie uwierzytelnić, jeśli tokeny wygasną. Sprawdź wskaźnik stanu karty dostawcy."
|
||
},
|
||
"legal": {
|
||
"privacyPolicy": "Polityka prywatności",
|
||
"termsOfService": "Warunki świadczenia usług",
|
||
"providerConfigurations": "Konfiguracje dostawców",
|
||
"apiKeys": "Klucze API",
|
||
"usageLogs": "Dzienniki użytkowania",
|
||
"applicationSettings": "Ustawienia aplikacji",
|
||
"viewExportAnalytics": "Przeglądaj i eksportuj analizy użytkowania",
|
||
"clearHistory": "Wyczyść historię użytkowania w dowolnym momencie",
|
||
"configureRetention": "Skonfiguruj zasady przechowywania dzienników",
|
||
"backupRestore": "Utwórz kopię zapasową i przywróć bazę danych",
|
||
"privacyMetadataTitle": "Polityka prywatności | OmniRoute",
|
||
"privacyMetadataDescription": "Polityka prywatności routera proxy OmniRoute AI API.",
|
||
"termsMetadataTitle": "Warunki świadczenia usług | OmniRoute",
|
||
"termsMetadataDescription": "Warunki korzystania z routera proxy OmniRoute AI API.",
|
||
"backToHome": "Powrót do domu",
|
||
"lastUpdated": "Ostatnia aktualizacja: {date}",
|
||
"policyLastUpdatedDate": "13 lutego 2026 r",
|
||
"listSeparator": "-",
|
||
"questionsVisit": "Pytania? Odwiedź nasze",
|
||
"githubRepository": "Repozytorium GitHuba",
|
||
"privacySection1Title": "1. Architektura lokalna",
|
||
"privacySection1Text": "OmniRoute zaprojektowano jako aplikację działającą lokalnie. Całe przetwarzanie i przechowywanie danych odbywa się wyłącznie na Twoim komputerze. Nie ma scentralizowanego serwera gromadzącego Twoje dane.",
|
||
"privacySection2Title": "2. Dane, które przechowujemy",
|
||
"privacyDataStoredIn": "Następujące dane są przechowywane lokalnie w",
|
||
"privacyDataProviderConfigurationsDesc": "adresy URL połączeń, typy dostawców i ustawienia priorytetów",
|
||
"privacyDataApiKeysDesc": "szyfrowane i przechowywane lokalnie w celu uwierzytelniania u dostawców sztucznej inteligencji",
|
||
"privacyDataUsageLogsDesc": "liczba żądań, użycie tokena, nazwy modeli, znaczniki czasu i czasy odpowiedzi",
|
||
"privacyDataApplicationSettingsDesc": "preferencje tematyczne, strategia routingu i konfiguracje kombinacji",
|
||
"privacySection3Title": "3. Brak telemetrii",
|
||
"privacySection3Text": "OmniRoute nie zbiera danych telemetrycznych, analiz ani raportów o awariach. Żadne dane nie są przesyłane do nas ani do osób trzecich. Twoje wzorce użytkowania, wywołania API i konfiguracje pozostają całkowicie prywatne.",
|
||
"privacySection4Title": "4. Zewnętrzni dostawcy AI",
|
||
"privacySection4Text": "Gdy wykonujesz wywołania API za pośrednictwem OmniRoute, Twoje żądania są przekazywane do skonfigurowanych dostawców AI (na przykład: OpenAI, Anthropic, Google). Dostawcy ci mają własne zasady ochrony prywatności, które regulują sposób postępowania z Twoimi danymi. Proszę przejrzeć:",
|
||
"privacyOpenAiPolicy": "Polityka prywatności OpenAI",
|
||
"privacyAnthropicPolicy": "Antropiczna polityka prywatności",
|
||
"privacyGooglePolicy": "Polityka prywatności Google",
|
||
"privacySection5Title": "5. Synchronizacja z chmurą (opcjonalnie)",
|
||
"privacySection5Text": "Jeśli włączysz opcjonalną funkcję synchronizacji z chmurą, konfiguracje dostawców i klucze API mogą zostać przesłane do skonfigurowanego punktu końcowego chmury. Ta funkcja jest domyślnie wyłączona i wymaga wyraźnej zgody.",
|
||
"privacySection6Title": "6. Rejestrowanie",
|
||
"privacyLoggingIntro": "Dzienniki żądań można skonfigurować w ustawieniach panelu kontrolnego. Możesz:",
|
||
"privacySection7Title": "7. Twoje prawa",
|
||
"privacySection7TextStart": "Ponieważ wszystkie dane są przechowywane lokalnie, masz pełną kontrolę. W każdej chwili możesz usunąć swoje dane usuwając plik",
|
||
"privacySection7TextEnd": "katalogu lub korzystając z funkcji tworzenia kopii zapasowych i przywracania bazy danych na pulpicie nawigacyjnym.",
|
||
"termsSection1Title": "1. Przegląd",
|
||
"termsSection1Text": "OmniRoute to lokalny router proxy AI API, który działa całkowicie na Twoim komputerze. Kieruje żądania do wielu dostawców AI z równoważeniem obciążenia, przełączaniem awaryjnym i śledzeniem użycia.",
|
||
"termsSection2Title": "2. Obowiązki użytkownika",
|
||
"termsResponsibilityApiKeys": "Ponosisz wyłączną odpowiedzialność za zarządzanie własnymi kluczami API i danymi uwierzytelniającymi dla zewnętrznych dostawców sztucznej inteligencji (OpenAI, Anthropic, Google itp.).",
|
||
"termsResponsibilityCompliance": "Musisz przestrzegać warunków świadczenia usług każdego dostawcy AI, do którego API uzyskujesz dostęp za pośrednictwem OmniRoute.",
|
||
"termsResponsibilitySecurity": "Jesteś odpowiedzialny za bezpieczeństwo swojej lokalnej instalacji OmniRoute, w tym za ustawienie hasła i ograniczenie dostępu do sieci.",
|
||
"termsSection3Title": "3. Jak to działa",
|
||
"termsSection3Text": "OmniRoute działa jako pośrednik proxy. Wywołania API wysyłane do OmniRoute są tłumaczone i przekazywane do skonfigurowanych dostawców AI. OmniRoute nie modyfikuje treści Twoich żądań ani odpowiedzi poza niezbędnym tłumaczeniem protokołu.",
|
||
"termsSection4Title": "4. Przetwarzanie danych",
|
||
"termsDataStoredLocally": "Wszystkie dane są przechowywane lokalnie na Twoim komputerze w bazie danych SQLite.",
|
||
"termsNoTransmission": "OmniRoute nie przesyła żadnych danych do serwerów zewnętrznych, chyba że wyraźnie włączysz funkcje synchronizacji w chmurze.",
|
||
"termsDataLocationText": "Dzienniki użytkowania, klucze API i konfiguracja są przechowywane w",
|
||
"termsSection5Title": "5. Zastrzeżenie",
|
||
"termsSection5Text": "Usługa OmniRoute jest dostarczana w stanie takim, w jakim jest, bez jakiejkolwiek gwarancji. Nie ponosimy odpowiedzialności za jakiekolwiek koszty powstałe w wyniku korzystania z API, zakłóceń w świadczeniu usług lub utraty danych. Zawsze twórz kopie zapasowe swojej konfiguracji.",
|
||
"termsSection6Title": "6. Otwarte źródło",
|
||
"termsSection6Text": "OmniRoute jest oprogramowaniem typu open source. Możesz go przeglądać, modyfikować i rozpowszechniać zgodnie z warunkami licencji."
|
||
}
|
||
}
|