{
  "common": {
    "save": "зберегти",
    "cancel": "Скасувати",
    "delete": "Видалити",
    "loading": "Завантаження...",
    "error": "Сталася помилка",
    "success": "Успіх",
    "confirm": "Ви впевнені?",
    "refresh": "Оновити",
    "close": "Закрити",
    "add": "додати",
    "edit": "Редагувати",
    "search": "Пошук",
    "back": "Назад",
    "next": "Далі",
    "submit": "Надіслати",
    "reset": "Скинути",
    "copy": "Копія",
    "copied": "Скопійовано!",
    "enabled": "Увімкнено",
    "disabled": "Вимкнено",
    "active": "Активний",
    "inactive": "Неактивний",
    "noData": "Немає даних",
    "configure": "Налаштувати",
    "manage": "Керувати",
    "name": "Ім'я",
    "actions": "Дії",
    "status": "Статус",
    "type": "Тип",
    "model": "Модель",
    "models": "моделі",
    "provider": "Провайдер",
    "account": "Обліковий запис",
    "time": "час",
    "details": "Подробиці",
    "created": "Створено",
    "lastUsed": "Останнє використання",
    "loadMore": "Завантажити більше",
    "noResults": "Результатів не знайдено",
    "reloadPage": "Перезавантажити сторінку",
    "connected": "Підключено",
    "disconnected": "Відключено",
    "notConfigured": "Не налаштовано",
    "testConnection": "Тестове підключення",
    "enable": "Увімкнути",
    "disable": "Вимкнути",
    "columns": "Стовпці",
    "newest": "Найновіший",
    "oldest": "Найстаріший",
    "all": "всі",
    "none": "Жодного",
    "yes": "так",
    "no": "немає",
    "warning": "Попередження",
    "note": "Примітка",
    "free": "безкоштовно",
    "skipToContent": "Перейти до вмісту"
  },
  "sidebar": {
    "home": "додому",
    "dashboard": "Приладова панель",
    "providers": "Провайдери",
    "combos": "Комбо",
    "usage": "Використання",
    "analytics": "Аналітика",
    "costs": "Витрати",
    "health": "Здоров'я",
    "limits": "Ліміти та квоти",
    "cliTools": "Інструменти CLI",
    "settings": "Налаштування",
    "translator": "Перекладач",
    "docs": "документи",
    "issues": "Питання",
    "endpoint": "Кінцева точка",
    "apiManager": "Менеджер API",
    "logs": "Журнали",
    "auditLog": "Журнал аудиту",
    "shutdown": "Вимкнення",
    "restart": "Перезапустіть",
    "shutdownConfirm": "Вимкнути OmniRoute?",
    "restartConfirm": "Перезапустити OmniRoute?",
    "version": "v{version}",
    "debug": "Налагодження",
    "system": "система",
    "help": "Довідка",
    "serverDisconnected": "Сервер відключено",
    "serverDisconnectedMsg": "Проксі-сервер зупинено або перезавантажується.",
    "expandSidebar": "Розгорнути бічну панель",
    "collapseSidebar": "Згорнути бічну панель"
  },
  "header": {
    "logout": "Вийти",
    "language": "Мова",
    "providers": "Провайдери",
    "providerDescription": "Керуйте з’єднаннями постачальників AI",
    "combos": "Комбо",
    "comboDescription": "Комбіновані моделі з резервним варіантом",
    "usage": "Використання та аналітика",
    "usageDescription": "Відстежуйте використання API, використання маркерів і журнали запитів",
    "analytics": "Аналітика",
    "analyticsDescription": "Діаграми, тенденції та аналізи",
    "cliTools": "Інструменти CLI",
    "cliToolsDescription": "Налаштувати інструменти CLI",
    "home": "додому",
    "homeDescription": "Ласкаво просимо до OmniRoute",
    "endpoint": "Кінцева точка",
    "endpointDescription": "Конфігурація кінцевої точки API",
    "settings": "Налаштування",
    "settingsDescription": "Керуйте своїми вподобаннями",
    "openaiCompatible": "Сумісність з OpenAI",
    "anthropicCompatible": "Антропна сумісність"
  },
  "home": {
    "quickStart": "Швидкий старт",
    "quickStartDesc": "Встаньте та побігайте за 4 кроки. Підключити провайдерів, моделі маршрутів, контролювати все.",
    "fullDocs": "Повні документи",
    "step1Title": "1. Створіть ключ API",
    "step1Desc": "Перейдіть до <endpoint>Endpoint</endpoint> -> Зареєстровані ключі. Згенеруйте один ключ для кожного середовища.",
    "step2Title": "2. Підключити провайдерів",
    "step2Desc": "Додайте облікові записи в <providers>Providers</providers>. Підтримує OAuth, ключ API та безкоштовні рівні.",
    "step3Title": "3. Вкажіть свого клієнта",
    "step3Desc": "Установіть базову URL-адресу на {url} у своєму клієнті IDE або API.",
    "step4Title": "4. Моніторинг і оптимізація",
    "step4Desc": "Відстежуйте токени, вартість і помилки в <logs>Request Logs</logs> та <analytics>Analytics</analytics>.",
    "providersOverview": "Огляд постачальників",
    "configuredOf": "{configured} налаштовано з {total} доступних постачальників",
    "noModelsAvailable": "Для цього постачальника немає доступних моделей.",
    "configureFirst": "Спочатку налаштуйте підключення в {providers}",
    "configureProvider": "Налаштувати постачальника",
    "modelAvailable": "Доступна модель {count}",
    "modelsAvailable": "Доступні моделі {count}",
    "connectionsActive": "{count} підключення активне",
    "connectionsActivePlural": "{count} активних підключень",
    "copyModelName": "Скопіюйте назву моделі",
    "documentation": "Документація",
    "healthMonitor": "Монітор здоров'я",
    "reportIssue": "Повідомити про проблему",
    "activeError": "{active} активний · {errors} помилка",
    "oauthLabel": "OAuth",
    "apiKeyLabel": "Ключ API",
    "requestsShort": "{count} вимагається",
    "providerModelsTitle": "{provider} - Моделі",
    "copiedModel": "Скопійовано: {model}",
    "aliasLabel": "псевдонім"
  },
  "analytics": {
    "title": "Аналітика",
    "overviewDescription": "Відстежуйте шаблони використання API, споживання маркерів, витрати та тенденції активності в усіх постачальників і моделей.",
    "evalsDescription": "Запустіть пакети оцінювання, щоб протестувати та перевірити кінцеві точки LLM. Порівняйте якість моделі, виявіть регресії та порівняйте затримку.",
    "overview": "Огляд",
    "evals": "Оцінки"
  },
  "apiManager": {
    "title": "Ключі API",
    "createKey": "Створити ключ API",
    "key": "ключ",
    "revokeKey": "Відкликати ключ",
    "revokeConfirm": "Ви впевнені, що бажаєте відкликати цей ключ API?",
    "noKeys": "Ключів API ще немає",
    "noKeysDesc": "Створіть свій перший ключ API для автентифікації запитів до кінцевої точки",
    "keyLabel": "Мітка ключа",
    "permissions": "Дозволи",
    "expiresAt": "Термін дії закінчується",
    "never": "Ніколи",
    "revoke": "Відкликати",
    "showKey": "Показати ключ",
    "hideKey": "Приховати ключ",
    "copyKey": "Копіювати ключ API",
    "allModels": "Всі моделі",
    "selectedModels": "Вибрані моделі",
    "readOnly": "Тільки для читання",
    "fullAccess": "Повний доступ",
    "keyManagement": "Керування ключами API",
    "keyManagementDesc": "Створюйте та керуйте ключами API для автентифікації запитів до кінцевої точки",
    "totalKeys": "Всього ключів",
    "restricted": "Обмежений",
    "totalRequests": "Загальна кількість запитів",
    "modelsAvailable": "Доступні моделі",
    "registeredKeys": "Зареєстровані ключі",
    "keysRegistered": "Зареєстровано {count} ключів",
    "keyRegistered": "Ключ {count} зареєстровано",
    "keysSecurityNote": "Кожен ключ ізолює відстеження використання та може бути відкликаний незалежно. Ключі маскуються після створення для безпеки.",
    "createFirstKey": "Створіть свій перший ключ",
    "name": "Ім'я",
    "usage": "Використання",
    "created": "Створено",
    "actions": "Дії",
    "reqs": "вимоги",
    "neverUsed": "Ніколи не використовувався",
    "deleteConfirm": "Видалити цей ключ API?",
    "usageTips": "Поради щодо використання",
    "tipAuth": "Використовуйте ключі API у заголовку авторизації як носій YOUR_KEY",
    "tipSecure": "Ключі показуються лише один раз під час створення — зберігайте їх надійно",
    "tipSeparate": "Створіть окремі ключі для різних клієнтів або середовищ",
    "tipRestrict": "Обмежте ключі певними моделями для кращої безпеки та контролю витрат",
    "keyName": "Назва ключа",
    "keyNamePlaceholder": "наприклад, ключ виробництва, ключ розробки",
    "keyNameDesc": "Виберіть описову назву, щоб визначити призначення цього ключа",
    "keyCreated": "Ключ API створено",
    "keyCreatedSuccess": "Ключ успішно створено!",
    "keyCreatedNote": "Скопіюйте та збережіть цей ключ зараз — він більше не відображатиметься.",
    "done": "Готово",
    "savePermissions": "Зберегти дозволи",
    "allowAll": "Дозволити всім",
    "restrict": "Обмежити",
    "allowAllInfo": "Цей ключ може отримати доступ до всіх доступних моделей.",
    "restrictInfo": "Цей ключ має доступ до {selected} з {total} моделей.",
    "selected": "Вибрано {count}",
    "all": "всі",
    "clear": "ясно",
    "searchModels": "Пошук моделей за назвою або постачальником...",
    "noModelsFound": "Моделі не знайдено",
    "keyNameRequired": "Потрібно вказати назву ключа",
    "keyNameTooLong": "Назва ключа має містити не більше {max} символів",
    "keyNameInvalid": "Назва ключа може містити лише літери, цифри, пробіли, дефіси та підкреслення",
    "invalidKeyName": "Недійсна назва ключа",
    "failedCreateKey": "Не вдалося створити ключ",
    "failedCreateKeyRetry": "Не вдалося створити ключ. Спробуйте ще раз.",
    "invalidKeyId": "Недійсний ідентифікатор ключа",
    "failedDeleteKey": "Не вдалося видалити ключ",
    "failedDeleteKeyRetry": "Не вдалося видалити ключ. Спробуйте ще раз.",
    "invalidModelsSelection": "Недійсний вибір моделей",
    "cannotSelectMoreThanModels": "Не можна вибрати більше ніж {max} моделей",
    "failedUpdatePermissions": "Не вдалося оновити дозволи",
    "failedUpdatePermissionsRetry": "Не вдалося оновити дозволи. Спробуйте ще раз.",
    "unknownProvider": "невідомий",
    "copyMaskedKey": "Копіювати замаскований ключ",
    "modelsCount": "{count, plural, one {# model} other {# models}}",
    "lastUsedOn": "Останній: {date}",
    "editPermissions": "Права на редагування",
    "deleteKey": "Видалити ключ",
    "model": "Модель {count}",
    "models": "{count} моделей",
    "permissionsTitle": "Дозволи: {name}",
    "allowAllDesc": "Цей ключ може отримати доступ до всіх доступних моделей.",
    "restrictDesc": "Цей ключ має доступ до {selectedCount} з {totalModels} моделей.",
    "selectedCount": "Вибрано {count}"
  },
  "auditLog": {
    "title": "Журнал аудиту",
    "searchPlaceholder": "Пошукові дії...",
    "action": "Дія",
    "actor": "Актор",
    "target": "Цільова",
    "ipAddress": "IP-адреса",
    "timestamp": "Мітка часу",
    "noEntries": "Записів аудиту не знайдено",
    "filterByAction": "Фільтрувати за дією...",
    "filterByActor": "Фільтрувати за актором...",
    "filterEntriesAria": "Фільтрувати записи журналу аудиту",
    "filterByActionTypeAria": "Фільтрувати за типом дії",
    "filterByActorAria": "Фільтрувати за актором",
    "refreshAuditLogAria": "Оновити журнал аудиту",
    "tableAria": "Записи журналу аудиту",
    "failedFetchAuditLog": "Не вдалося отримати журнал аудиту",
    "notAvailable": "—",
    "description": "Адміністративні дії та заходи безпеки",
    "showing": "Показано {count} записів (зміщення {offset})",
    "previous": "Попередній"
  },
  "cliTools": {
    "title": "Інструменти CLI",
    "noActiveProviders": "Немає активних провайдерів",
    "noActiveProvidersDesc": "Спочатку додайте та підключіть постачальників, щоб налаштувати інструменти CLI.",
    "mapModels": "Моделі карт",
    "testConnection": "Тестове підключення",
    "connectionStatus": "Статус підключення",
    "configureEndpoint": "Налаштувати кінцеву точку",
    "instructions": "Інструкції",
    "modelMapping": "Відображення моделі",
    "baseUrl": "Базовий URL",
    "apiKey": "Ключ API",
    "configured": "Налаштовано",
    "notConfigured": "Не налаштовано",
    "notInstalled": "Не встановлено",
    "custom": "Custom",
    "unknown": "Невідомий",
    "lastSavedAt": "Востаннє збережено: {date}",
    "never": "Ніколи",
    "justNow": "тільки зараз",
    "minutesAgoShort": "{count}хв тому",
    "hoursAgoShort": "{count} год тому",
    "daysAgoShort": "{count} дн. тому",
    "monthsAgoShort": "{count}міс. тому",
    "yearsAgoShort": "{count}р тому",
    "runtimeCheckFailed": "Помилка перевірки виконання",
    "yourApiKeyPlaceholder": "ваш API-ключ",
    "modelPlaceholder": "постачальник/ідентифікатор моделі",
    "configurationSaved": "Конфігурацію успішно збережено.",
    "failedToSave": "Не вдалося зберегти конфігурацію.",
    "noApiKeysCreateOne": "Немає ключів API – створіть один на сторінці «Ключі».",
    "defaultOmnirouteKey": "sk_omniroute (за замовчуванням)",
    "selectModel": "Виберіть Модель",
    "selectModelForAlias": "Виберіть модель для {alias}",
    "selectModelForTool": "Виберіть модель для {tool}",
    "select": "Виберіть",
    "clear": "ясно",
    "comingSoon": "Скоро буде",
    "checkingRuntime": "Перевірка стану виконання...",
    "guideOnlyIntegration": "Інтеграція лише з довідниками (не потрібно локальне середовище виконання)",
    "cliRuntimeDetected": "Середовище виконання CLI виявлено та готове",
    "cliFoundNotRunnable": "CLI знайдено, але не можна запустити{reason}",
    "cliRuntimeNotDetected": "Середовище виконання CLI не виявлено",
    "binary": "Двійковий",
    "configPath": "Шлях конфігурації",
    "configPathShort": "Конфігурація",
    "failedCheckRuntimeStatus": "Не вдалося перевірити стан виконання.",
    "copy": "Копія",
    "copied": "Скопійовано",
    "copyConfig": "Копіювати конфіг",
    "saveConfig": "Зберегти конфігурацію",
    "selectionSaved": "Вибір збережено",
    "guide": "Гід",
    "detected": "Виявлено",
    "notReady": "Не готовий",
    "active": "Активний",
    "inactive": "Неактивний",
    "startMitm": "Запустіть MITM",
    "stopMitm": "Зупинити MITM",
    "mitmStarted": "MITM успішно стартував!",
    "mitmStopped": "MITM успішно зупинено!",
    "failedStart": "Не вдалося запустити MITM",
    "failedStop": "Не вдалося зупинити MITM",
    "saveMappings": "Зберегти відображення",
    "mappingsSaved": "Карти збережено!",
    "failedSaveMappings": "Не вдалося зберегти зіставлення",
    "howItWorks": "Як це працює:",
    "antigravityHowWorksDesc": "Антигравітація надсилає запити до кінцевої точки Google. MITM перехоплює та перенаправляє їх на OmniRoute.",
    "antigravityStep1": "1. Запустіть MITM для маршрутизації запитів через OmniRoute.",
    "antigravityStep2Prefix": "2. Додайте",
    "antigravityStep2Suffix": "у ваш файл hosts як 127.0.0.1.",
    "antigravityStep3": "3. Відкрийте Антигравітацію, і запити будуть надсилатися через проксі.",
    "sudoPasswordRequiredTitle": "Потрібен пароль Sudo",
    "sudoPasswordHint": "Пароль адміністратора потрібен для зміни параметрів файлу хостів і проксі-сервера системи.",
    "enterSudoPassword": "Введіть пароль sudo",
    "sudoPasswordRequiredError": "Потрібен пароль Sudo.",
    "cancel": "Скасувати",
    "confirm": "Підтвердити",
    "settingsApplied": "Налаштування успішно застосовано!",
    "failedApplySettings": "Не вдалося застосувати налаштування",
    "settingsReset": "Налаштування успішно скинуто!",
    "failedResetSettings": "Не вдалося скинути налаштування",
    "backupRestored": "Резервну копію відновлено!",
    "failedRestore": "Не вдалося відновити",
    "checkingCli": "Перевірка {tool} CLI...",
    "cliNotRunnable": "{tool} CLI встановлено, але не працює",
    "cliNotInstalled": "{tool} CLI не встановлено",
    "cliNotDetected": "{tool} CLI не виявлено",
    "cliDetectedReady": "{tool} CLI виявлено та готово",
    "cliFoundFailedHealthcheck": "Знайдено {tool} CLI, але не вдалося перевірити працездатність під час виконання{reason}.",
    "installCliPrompt": "Щоб використовувати цю функцію, установіть {tool} CLI.",
    "installCodexPrompt": "Будь ласка, встановіть Codex CLI, щоб використовувати функцію автоматичного застосування.",
    "hide": "Сховати",
    "howToInstall": "Як встановити",
    "installationGuide": "Керівництво по установці",
    "platforms": "macOS / Linux / Windows:",
    "afterInstallationRun": "Після установки запустіть",
    "toVerify": "для перевірки.",
    "current": "поточний",
    "baseUrlPlaceholder": "https://.../v1",
    "resetToDefault": "Скинути до замовчування",
    "providerModelPlaceholder": "постачальник/ідентифікатор моделі",
    "apply": "Застосувати",
    "reset": "Скинути",
    "manualConfig": "Конфігурація вручну",
    "backups": "Резервні копії",
    "configBackups": "Резервне копіювання конфігурації",
    "noBackupsYet": "Резервних копій ще немає. Резервні копії створюються автоматично перед кожним застосуванням або скиданням.",
    "restore": "Відновити",
    "backupRestoredReloading": "Резервну копію відновлено! Статус перезавантаження...",
    "failedRestoreBackup": "Не вдалося відновити резервну копію",
    "applied": "Застосовується!",
    "failed": "Не вдалося",
    "resetDone": "Скинути!",
    "omnirouteConfiguredOpenAiCompatible": "OmniRoute налаштовано як постачальник, сумісний з OpenAI",
    "provider": "Провайдер",
    "model": "Модель",
    "providers": "Провайдери",
    "auth": "Авт",
    "noApiKeysAvailable": "Немає доступних ключів API",
    "usingDefaultOmniroute": "За замовчуванням: sk_omniroute",
    "updateConfig": "Оновити конфігурацію",
    "applyConfig": "Застосувати конфігурацію",
    "noBackupsAvailable": "Немає резервних копій.",
    "profileSaved": "Профіль \"{name}\" збережено!",
    "failedSaveProfile": "Не вдалося зберегти профіль",
    "profileActivated": "Профіль активований!",
    "failedActivateProfile": "Не вдалося активувати профіль",
    "profiles": "Профілі",
    "savedProfiles": "Збережені профілі",
    "noProfilesYet": "Ще немає збережених профілів. Збережіть поточну конфігурацію як профіль нижче.",
    "activate": "активувати",
    "deleteProfile": "Видалити профіль",
    "profileNamePlaceholder": "Назва профілю (наприклад, особистий обліковий запис)",
    "saveCurrent": "Зберегти поточне",
    "codexAuthNotePrefix": "Codex використовує",
    "codexAuthNoteMiddle": "з",
    "codexAuthNoteSuffix": "Натисніть «Застосувати», щоб виконати автоматичне налаштування.",
    "claudeManualConfiguration": "Claude CLI - Налаштування вручну",
    "codexManualConfiguration": "Codex CLI - Ручна конфігурація",
    "droidManualConfiguration": "Заводський дроїд - налаштування вручну",
    "openClawManualConfiguration": "Open Claw - налаштування вручну",
    "clineManualConfiguration": "Ручне налаштування Cline",
    "kiloManualConfiguration": "Налаштування коду кіло вручну",
    "toolDescriptions": {
      "antigravity": "Google Antigravity IDE з MITM",
      "claude": "Антропний код Клода CLI",
      "codex": "OpenAI Codex CLI",
      "droid": "Factory Droid AI Assistant",
      "openclaw": "Open Claw AI Assistant",
      "cline": "Cline AI Coding Assistant CLI",
      "kilo": "Кіло Код AI Assistant CLI",
      "cursor": "Редактор коду Cursor AI",
      "continue": "Продовжити AI Assistant"
    },
    "guides": {
      "cursor": {
        "notes": {
          "0": "Для використання цієї функції потрібен обліковий запис Cursor Pro.",
          "1": "Курсор направляє запити через власний сервер, тому локальна кінцева точка не підтримується. Увімкніть Cloud Endpoint у налаштуваннях."
        },
        "steps": {
          "1": {
            "title": "Відкрийте налаштування",
            "desc": "Перейдіть до Налаштування -> Моделі"
          },
          "2": {
            "title": "Увімкнути OpenAI API",
            "desc": "Увімкніть параметр «Ключ API OpenAI»."
          },
          "3": {
            "title": "Базовий URL"
          },
          "4": {
            "title": "Ключ API"
          },
          "5": {
            "title": "Додати спеціальну модель",
            "desc": "Натисніть «Переглянути всю модель» -> «Додати спеціальну модель»"
          },
          "6": {
            "title": "Виберіть Модель"
          }
        }
      },
      "continue": {
        "steps": {
          "1": {
            "title": "Відкрийте Config",
            "desc": "Відкрийте файл конфігурації Продовжити"
          },
          "2": {
            "title": "Ключ API"
          },
          "3": {
            "title": "Виберіть Модель"
          },
          "4": {
            "title": "Додати конфігурацію моделі",
            "desc": "Додайте таку конфігурацію до свого масиву моделей:"
          }
        }
      }
    }
  },
  "combos": {
    "title": "Комбо",
    "description": "Створюйте комбінації моделей із зваженою маршрутизацією та підтримкою резервного варіанту",
    "createCombo": "Створити комбо",
    "editCombo": "Редагувати комбінацію",
    "deleteCombo": "Видалити комбо",
    "noModels": "Немає моделей",
    "noModelsYet": "Моделі ще не додано",
    "addModel": "Додати модель",
    "addModelToCombo": "Додати модель до комбо",
    "routingStrategy": "Стратегія маршрутизації",
    "maxRetries": "Макс. повторних спроб",
    "timeout": "Час очікування (мс)",
    "healthcheck": "Healthcheck",
    "priority": "Пріоритет",
    "fallback": "Запасний варіант",
    "roundRobin": "Кругова система",
    "random": "Випадковий",
    "leastLatency": "Найменша затримка",
    "comboName": "Комбінована назва",
    "comboNamePlaceholder": "моє комбо",
    "deleteConfirm": "Видалити цю комбінацію?",
    "noCombosYet": "Комбо ще немає",
    "comboCreated": "Комбінацію створено успішно",
    "comboUpdated": "Комбо успішно оновлено",
    "comboDeleted": "Комбо видалено",
    "failedCreate": "Не вдалося створити комбо",
    "failedUpdate": "Не вдалося оновити комбінацію",
    "errorCreating": "Помилка створення комбо",
    "errorUpdating": "Помилка оновлення комбо",
    "errorDeleting": "Помилка видалення комбо",
    "testFailed": "Помилка тестового запиту",
    "failedToggle": "Не вдалося перемкнути комбінацію",
    "testResults": "Результати тесту — {name}",
    "resolvedBy": "Вирішено:",
    "more": "+ ще {count}",
    "reqs": "вимоги",
    "success": "успіх",
    "proxyConfigured": "Проксі налаштовано",
    "copyComboName": "Копіювати ім'я комбо",
    "enableCombo": "Увімкнути комбо",
    "disableCombo": "Вимкнути комбо",
    "testCombo": "Тестовий комбо",
    "duplicate": "дублікат",
    "proxyConfig": "Конфігурація проксі",
    "nameRequired": "Необхідно вказати ім'я",
    "nameInvalid": "Тільки літери, цифри, -, _, / і . дозволено",
    "nameHint": "Букви, цифри, -, _, / і . дозволено",
    "priorityDesc": "Послідовний резерв: спочатку пробує модель 1, потім 2 тощо.",
    "weightedDesc": "Розподіляє трафік за ваговим відсотком із резервним варіантом",
    "roundRobinDesc": "Циркулярний розподіл: кожен запит переходить до наступної моделі по черзі",
    "randomDesc": "Рівномірний випадковий вибір, а потім повернення до інших моделей",
    "leastUsedDesc": "Вибирає модель із найменшою кількістю запитів, балансуючи навантаження за часом",
    "costOptimizedDesc": "Маршрути до найдешевшої моделі на основі ціни",
    "models": "Моделі",
    "autoBalance": "Автобаланс",
    "advancedSettings": "Розширені налаштування",
    "retryDelay": "Затримка повтору (мс)",
    "concurrencyPerModel": "Одночасність / Модель",
    "queueTimeout": "Час очікування черги (мс)",
    "advancedHint": "Залиште пустим, щоб використовувати глобальні параметри за умовчанням. Вони замінюють налаштування кожного постачальника.",
    "moveUp": "Рухатися вгору",
    "moveDown": "Рухатися вниз",
    "removeModel": "видалити",
    "saving": "Збереження...",
    "weighted": "Зважений",
    "leastUsed": "Найменш використовуваний",
    "costOpt": "Cost-Opt"
  },
  "costs": {
    "title": "Витрати",
    "budget": "Бюджет",
    "totalCost": "Загальна вартість",
    "breakdown": "Розподіл витрат",
    "noData": "Немає даних про вартість",
    "byModel": "За моделлю",
    "byProvider": "Від постачальника"
  },
  "endpoint": {
    "title": "Кінцева точка API",
    "available": "Доступні кінцеві точки",
    "cloudProxy": "Хмарний проксі",
    "disableConfirm": "Ви впевнені, що бажаєте вимкнути хмарний проксі?",
    "baseUrl": "Базовий URL",
    "apiKeyLabel": "Ключ API",
    "registeredKeys": "Зареєстровані ключі",
    "chatCompletions": "Завершення чату",
    "responses": "Відповіді",
    "listModels": "Список моделей",
    "usingCloudProxy": "Використання Cloud Proxy",
    "usingLocalServer": "Використання локального сервера",
    "machineId": "Ідентифікатор машини: {id}...",
    "disableCloud": "Вимкнути хмару",
    "enableCloud": "Увімкнути хмару",
    "modelsAcrossEndpoints": "{models} моделей через {endpoints} кінцевих точок",
    "chatDesc": "Потоковий і непотоковий чат з усіма провайдерами",
    "embeddings": "Вбудовування",
    "embeddingsDesc": "Вбудовування тексту для конвеєрів пошуку та RAG",
    "imageGeneration": "Генерація зображень",
    "imageDesc": "Створення зображень із текстових підказок",
    "rerank": "Змінити ранг",
    "rerankDesc": "Реранжувати документи за відповідністю запиту",
    "audioTranscription": "Транскрипція аудіо",
    "audioTranscriptionDesc": "Транскрибувати аудіофайли в текст (Whisper)",
    "textToSpeech": "Перетворення тексту в мовлення",
    "textToSpeechDesc": "Перетворення тексту на природне мовлення",
    "moderations": "Модерації",
    "moderationsDesc": "Модерація контенту та класифікація безпеки",
    "enableCloudTitle": "Увімкнути Cloud Proxy",
    "whatYouGet": "Що ви отримаєте",
    "cloudBenefitAccess": "Отримайте доступ до свого API з будь-якої точки світу",
    "cloudBenefitShare": "Легко діліться кінцевою точкою зі своєю командою",
    "cloudBenefitPorts": "Не потрібно відкривати порти чи налаштовувати брандмауер",
    "cloudBenefitEdge": "Швидка глобальна крайова мережа",
    "cloudSessionNote": "Хмара зберігатиме ваш сеанс авторизації протягом 1 дня. Якщо не використовувати, воно буде автоматично видалено.",
    "cloudUnstableNote": "Хмара зараз нестабільна з Claude Code OAuth у деяких випадках.",
    "cloudConnected": "Cloud Proxy підключено!",
    "connectingToCloud": "Підключення до хмари...",
    "verifyingConnection": "Перевірка підключення...",
    "connecting": "Підключення...",
    "verifying": "Перевірка...",
    "connected": "Підключено!",
    "disableCloudTitle": "Вимкнути хмарний проксі",
    "disableWarning": "Усі сеанси авторизації буде видалено з хмари.",
    "syncingData": "Синхронізація останніх даних...",
    "disablingCloud": "Вимкнення хмари...",
    "syncing": "Синхронізація...",
    "disabling": "Вимкнення...",
    "cloudConnectedVerified": "Cloud Proxy підключено та перевірено!",
    "connectedVerificationPending": "Підключено — очікується перевірка",
    "connectedVerificationPendingWithError": "Підключено — очікується підтвердження: {error}",
    "cloudDisabledSuccess": "Хмару успішно вимкнено",
    "syncedSuccess": "Успішно синхронізовано",
    "failedDisable": "Не вдалося вимкнути хмару",
    "failedEnable": "Не вдалося ввімкнути хмару",
    "cloudRequestTimeout": "Час очікування хмарного запиту",
    "cloudRequestFailed": "Помилка запиту на хмару",
    "cloudWorkerUnreachable": "Не вдалося підключитися до хмарного працівника. Переконайтеся, що хмарна служба запущена (npm run dev в /cloud).",
    "connectionFailed": "Помилка підключення",
    "syncFailed": "Не вдалося синхронізувати хмарні дані",
    "providerModelsTitle": "{provider} — Моделі",
    "noModelsForProvider": "Для цього постачальника немає доступних моделей.",
    "chat": "Чат",
    "embedding": "Вбудовування",
    "image": "Зображення",
    "custom": "звичай",
    "modelsCount": "{count, plural, one {# model} other {# models}}"
  },
  "health": {
    "title": "Здоров'я системи",
    "description": "Моніторинг вашого екземпляра OmniRoute у реальному часі",
    "healthy": "Здоровий",
    "degraded": "Деградували",
    "down": "вниз",
    "uptime": "Час роботи",
    "memory": "Пам'ять",
    "memoryRss": "Пам'ять (RSS)",
    "heap": "Купа",
    "cpu": "ЦП",
    "database": "База даних",
    "version": "Версія",
    "lastCheck": "Остання перевірка",
    "providerHealth": "Здоров'я постачальника",
    "systemMetrics": "Системні показники",
    "tokenHealth": "Токен здоров'я",
    "refreshAll": "Оновити все",
    "checkNow": "Перевір зараз",
    "loadingHealth": "Завантаження даних про стан здоров'я...",
    "failedToLoad": "Не вдалося завантажити дані про здоров’я: {error}",
    "retry": "Повторіть спробу",
    "allOperational": "Всі системи в робочому стані",
    "issuesDetected": "Виявлено системні проблеми",
    "updatedAt": "Оновлено {time}",
    "latency": "Затримка",
    "latencyP50": "стор.50",
    "latencyP95": "стор.95",
    "latencyP99": "стор.99",
    "millisecondsShort": "{value}мс",
    "notAvailable": "—",
    "totalRequests": "Всього запитів",
    "noDataYet": "Даних ще немає",
    "promptCache": "Кеш підказок",
    "entries": "Записи",
    "hitRate": "Рейтинг попадань",
    "hitsMisses": "Попадання / промахи",
    "signatureCache": "Кеш підписів",
    "signatureDefaults": "За замовчуванням",
    "signatureTool": "Інструмент",
    "signatureFamily": "Сім'я",
    "signatureSession": "Сесія",
    "recovering": "Відновлюється",
    "noCBData": "Немає даних про автоматичний вимикач. Спочатку зробіть кілька запитів.",
    "providerHealthStatusAria": "Стан здоров'я постачальника",
    "issuesLabel": "Виявлені проблеми",
    "operational": "Оперативний",
    "providers": "Провайдери",
    "healthyCount": "{count} здоровий",
    "nodeVersion": "Вузол {version}",
    "failures": "Помилка {count}",
    "failuresPlural": "{count} помилки",
    "lastFailure": "Останній",
    "rateLimitStatus": "Статус обмеження швидкості",
    "activeLimiters": "{count} активний обмежувач",
    "activeLimitersPlural": "{count} активні обмежувачі",
    "queued": "У черзі",
    "queuedCount": "{count} у черзі",
    "running": "біг",
    "runningCount": "{count} працює",
    "ok": "добре",
    "activeLockouts": "Активні блокування",
    "resetConfirm": "Перевести всі автоматичні вимикачі в справний стан? Це очистить усі підрахунки помилок і відновить усі постачальники до робочого стану.",
    "resetAllTitle": "Скиньте всі автоматичні вимикачі в справний стан",
    "resetting": "Скидання...",
    "resetAll": "Скинути все",
    "until": "До {time}"
  },
  "limits": {
    "title": "Ліміти та квоти",
    "rateLimit": "Обмеження швидкості",
    "remaining": "Залишилося",
    "requestsPerMinute": "Запитів/хв",
    "tokensPerMinute": "Токенів/хв",
    "dailyLimit": "Денний ліміт"
  },
  "logs": {
    "title": "Журнали",
    "requestLogs": "Журнали запитів",
    "proxyLogs": "Журнали проксі",
    "auditLog": "Журнал аудиту",
    "console": "Консоль",
    "auditLogDesc": "Адміністративні дії та заходи безпеки",
    "loading": "Завантаження...",
    "refresh": "Оновити",
    "filterByAction": "Фільтрувати за дією...",
    "filterByActor": "Фільтрувати за актором...",
    "filterEntriesAria": "Фільтрувати записи журналу аудиту",
    "filterByActionTypeAria": "Фільтрувати за типом дії",
    "filterByActorAria": "Фільтрувати за актором",
    "refreshAuditLogAria": "Оновити журнал аудиту",
    "tableAria": "Записи журналу аудиту",
    "failedFetchAuditLog": "Не вдалося отримати журнал аудиту",
    "showing": "Показано {count} записів (зміщення {offset})",
    "search": "Пошук",
    "timestamp": "Мітка часу",
    "action": "Дія",
    "actor": "Актор",
    "target": "Цільова",
    "details": "Подробиці",
    "ipAddress": "IP-адреса",
    "notAvailable": "—",
    "noEntries": "Записів журналу аудиту не знайдено",
    "previous": "Попередній",
    "next": "Далі"
  },
  "onboarding": {
    "welcome": "Ласкаво просимо",
    "security": "Безпека",
    "test": "Тест",
    "ready": "Готовий!",
    "setPassword": "Встановити пароль",
    "addProvider": "Додайте свого першого постачальника",
    "getStarted": "Почніть роботу",
    "skip": "Пропустити",
    "skipWizard": "Повністю пропустити майстер",
    "skipPassword": "Пропустити встановлення пароля",
    "skipAndContinue": "Пропустити та продовжити",
    "passwordLabel": "Пароль",
    "confirmPassword": "Підтвердьте пароль",
    "enterPassword": "Введіть пароль",
    "confirmPasswordPlaceholder": "Підтвердьте пароль",
    "passwordsMismatch": "Паролі не збігаються",
    "setupComplete": "Налаштування завершено!",
    "goToDashboard": "Перейдіть на інформаційну панель →",
    "welcomeDesc": "OmniRoute — це ваш локальний проксі-сервер AI API. Він направляє запити до кількох постачальників штучного інтелекту за допомогою балансування навантаження, відновлення після відмови та відстеження використання.",
    "multiProvider": "Багатопровайдер",
    "usageTracking": "Відстеження використання",
    "apiKeyMgmt": "API Key Mgmt",
    "securityDesc": "Встановіть пароль, щоб захистити свою інформаційну панель, або пропустіть наразі.",
    "providerDesc": "Підключіть свого першого постачальника AI. Ви можете додати більше пізніше.",
    "apiKeyRequired": "Ключ API (обов'язково)",
    "customUrlOptional": "Спеціальна URL-адреса (необов'язково)",
    "testDesc": "Давайте перевіримо, чи працює підключення до вашого провайдера.",
    "runTest": "Запустіть перевірку підключення",
    "testingConnection": "Перевірка підключення...",
    "connectionSuccessful": "Підключення успішне! Ваш провайдер готовий.",
    "noProviderFound": "Постачальника не знайдено. Ви можете додати його з інформаційної панелі пізніше.",
    "testFailed": "Тестування не вдалося, але ви можете налаштувати це пізніше.",
    "couldNotTest": "Зараз не вдалося перевірити. Тестувати можна з інформаційної панелі.",
    "doneDesc": "Усе готово! Ваш екземпляр OmniRoute налаштований і готовий проксі-сервер запитів ШІ.",
    "yourEndpoint": "Ваша кінцева точка:",
    "continue": "Продовжити",
    "retry": "Повторіть спробу",
    "failedSetPassword": "Не вдалося встановити пароль. Спробуйте знову.",
    "failedAddProvider": "Не вдалося додати постачальника. Спробуйте знову.",
    "connectionError": "Помилка підключення. Спробуйте ще раз.",
    "provider": "Провайдер"
  },
  "providers": {
    "title": "Провайдери",
    "addProvider": "Додати постачальника",
    "editProvider": "Редагувати постачальника",
    "deleteProvider": "Видалити постачальника",
    "noProviders": "Постачальники не налаштовані",
    "modelAvailability": "Наявність моделі",
    "accounts": "Облікові записи",
    "newAccount": "Новий акаунт",
    "deleteConfirm": "Ви впевнені, що хочете видалити цього постачальника?",
    "testing": "Тестування...",
    "testConnection": "Тестове підключення",
    "testSuccess": "Підключення успішне",
    "testFailed": "Помилка підключення",
    "available": "в наявності",
    "cooldown": "Кулдаун",
    "unavailable": "Недоступний",
    "unknown": "Невідомий",
    "oauthLabel": "OAuth",
    "compatibleLabel": "сумісний",
    "chat": "Чат",
    "responses": "Відповіді",
    "messages": "Повідомлення",
    "oauthProviders": "Постачальники OAuth",
    "freeProviders": "Безкоштовні постачальники",
    "apiKeyProviders": "Постачальники ключів API",
    "compatibleProviders": "Сумісні постачальники ключів API",
    "testAll": "Перевірити все",
    "testAllOAuth": "Перевірте всі підключення OAuth",
    "testAllFree": "Перевірте всі безкоштовні підключення",
    "testAllApiKey": "Перевірте всі підключення ключів API",
    "testAllCompatible": "Перевірте всі сумісні підключення",
    "connected": "{count} Підключено",
    "errorCount": "Помилка {count} ({code})",
    "errorCountNoCode": "{count} Помилка",
    "noConnections": "Жодних зв'язків",
    "disabled": "Вимкнено",
    "enableProvider": "Увімкнути провайдера",
    "disableProvider": "Вимкнути провайдера",
    "testResults": "Результати тестування",
    "noCompatibleYet": "Сумісних провайдерів ще не додано",
    "compatibleHint": "Використовуйте кнопки вище, щоб додати кінцеві точки, сумісні з OpenAI або Anthropic",
    "addOpenAICompatible": "Додайте OpenAI Compatible",
    "addAnthropicCompatible": "Додати Anthropic Compatible",
    "addNewProvider": "Додати нового постачальника",
    "backToProviders": "Назад до постачальників",
    "configureNewProvider": "Налаштуйте нового постачальника AI для використання з вашими програмами.",
    "providerLabel": "Провайдер",
    "selectProvider": "Виберіть провайдера",
    "selectedProvider": "Вибраний провайдер",
    "authMethod": "Метод автентифікації",
    "apiKeyLabel": "Ключ API",
    "apiKeyRequired": "Потрібен ключ API",
    "selectProviderRequired": "Будь ласка, виберіть постачальника",
    "enterApiKey": "Введіть свій ключ API",
    "apiKeySecure": "Ваш ключ API буде зашифровано та безпечно зберігатиметься.",
    "oauth2Connect": "Підключіться за допомогою OAuth2",
    "oauth2Label": "OAuth2",
    "oauth2Desc": "Підключіть свій обліковий запис за допомогою автентифікації OAuth2.",
    "displayName": "Відображуване ім'я",
    "displayNamePlaceholder": "наприклад, Production API, Dev Environment",
    "displayNameHint": "Додатково. Зрозуміле ім’я для ідентифікації цієї конфігурації.",
    "active": "Активний",
    "activeDescription": "Увімкніть цей провайдер для використання у ваших програмах",
    "cancel": "Скасувати",
    "createProvider": "Створити постачальника",
    "failedCreate": "Не вдалося створити постачальника",
    "errorOccurred": "Сталася помилка. Спробуйте ще раз.",
    "modelStatus": "Статус моделі",
    "allModelsOperational": "Всі моделі робочі",
    "modelsWithIssues": "{count} моделі з проблемами",
    "allModelsNormal": "Усі моделі реагують нормально.",
    "cooldownCleared": "Зарядку для {model} очищено",
    "failedClearCooldown": "Не вдалося очистити час відновлення",
    "loadingAvailability": "Завантаження доступності моделі...",
    "clearCooldown": "ясно",
    "clearing": "Очищення...",
    "until": "До {time}",
    "providerTestFailed": "Тест постачальника не вдався",
    "modeTest": "Тест {mode}",
    "passedCount": "{count} пройдено",
    "failedCount": "{count} не вдалося",
    "testedCount": "{count} перевірено",
    "millisecondsAbbr": "{value}мс",
    "okShort": "добре",
    "errorShort": "ПОМИЛКА",
    "noActiveConnectionsInGroup": "Для цієї групи не знайдено активних з’єднань.",
    "allTestsPassed": "Усі тести {total} пройдено",
    "testSummary": "{passed}/{total} пройдено, {failed} не виконано",
    "nameLabel": "Ім'я",
    "prefixLabel": "Префікс",
    "baseUrlLabel": "Базовий URL",
    "apiTypeLabel": "Тип API",
    "prefixHint": "Обов'язковий. Унікальний префікс для назв моделей.",
    "nameHint": "Обов'язковий. Зручна мітка для цього вузла.",
    "baseUrlHint": "Обов'язковий.  Основна URL-адреса API постачальника.",
    "anthropicPrefixPlaceholder": "ac-prod",
    "openaiPrefixPlaceholder": "oc-prod",
    "anthropicBaseUrlPlaceholder": "https://api.anthropic.com/v1",
    "openaiBaseUrlPlaceholder": "https://api.openai.com/v1",
    "validateConnection": "Перевірте підключення",
    "validating": "Перевірка...",
    "connectionValid": "Підключення дійсне!",
    "connectionFailed": "Помилка підключення. Перевірте URL-адресу та ключ.",
    "testKeyLabel": "Тестовий ключ API",
    "testKeyPlaceholder": "sk-... (лише для перевірки)",
    "providerNotFound": "Постачальник не знайдено",
    "deleteConnectionConfirm": "Видалити це підключення?",
    "failedSetAlias": "Не вдалося встановити псевдонім",
    "failedSaveConnection": "Не вдалося зберегти з’єднання",
    "failedSaveConnectionRetry": "Не вдалося зберегти з’єднання. Спробуйте ще раз.",
    "failedRetestConnection": "Не вдалося повторно перевірити з’єднання",
    "deleteCompatibleNodeConfirm": "Видалити цей {type} сумісний вузол?",
    "anthropicCompatibleDetails": "Antropic Compatible Деталі",
    "openaiCompatibleDetails": "Відомості про сумісність з OpenAI",
    "messagesApi": "API повідомлень",
    "responsesApi": "API відповідей",
    "chatCompletions": "Завершення чату",
    "importingModels": "Імпорт...",
    "importFromModels": "Імпортувати з /models",
    "addConnectionToImport": "Додайте підключення, щоб увімкнути імпорт.",
    "noModelsConfigured": "Немає налаштованих моделей",
    "connectionCount": "{count} підключення(-я)",
    "fetchingModels": "Отримання доступних моделей...",
    "failedFetchModels": "Не вдалося отримати моделі",
    "noModelsFound": "Моделі не знайдено",
    "importFailed": "Помилка імпорту",
    "noNewModelsAdded": "Нові моделі не додано.",
    "adding": "Додавання...",
    "importingModelsTitle": "Імпорт моделей",
    "copyModel": "Копія моделі",
    "removeModel": "Зняти модель",
    "rateLimitProtected": "Захищений",
    "rateLimitUnprotected": "Незахищений",
    "enableRateLimitProtection": "Натисніть, щоб увімкнути захист обмеження швидкості",
    "disableRateLimitProtection": "Натисніть, щоб вимкнути захист обмеження швидкості",
    "productionKey": "Ключ виробництва",
    "enterNewApiKey": "Введіть новий ключ API",
    "optional": "Додатково",
    "anthropicCompatibleName": "Антропна сумісність",
    "openaiCompatibleName": "Сумісність з OpenAI",
    "failedImportModels": "Не вдалося імпортувати моделі",
    "noModelsReturnedFromEndpoint": "З кінцевої точки /models не повернуто моделей.",
    "importingModelsProgress": "Імпорт {current} з {total} моделей...",
    "foundModelsStartingImport": "Знайдено {count} моделей. Початок імпорту...",
    "importingModelById": "Імпорт {modelId}...",
    "importSuccessCount": "Успішно імпортовано {count, plural, one {# model} other {# models}}!",
    "noNewModelsAddedExisting": "Нові моделі не додано (усі вже є).",
    "importDoneCount": "✓ Готово! {count, plural, one {# model imported.} other {# models imported.}}",
    "unexpectedErrorOccurred": "Сталася неочікувана помилка",
    "connectionCountLabel": "{count, plural, one {# connection} other {# connections}}",
    "messagesPath": "повідомлення",
    "responsesPath": "відповіді",
    "chatCompletionsPath": "чат/завершення",
    "add": "додати",
    "edit": "Редагувати",
    "delete": "Видалити",
    "anthropic": "Антропний",
    "openai": "OpenAI",
    "singleConnectionPerCompatible": "Дозволяється лише одне з’єднання для сумісного вузла. Додайте інший вузол, якщо вам потрібно більше з’єднань.",
    "connections": "Зв'язки",
    "providerProxyTitleConfigured": "Проксі-сервер постачальника: {host}",
    "configured": "налаштовано",
    "providerProxyConfigureHint": "Налаштувати проксі для всіх підключень цього провайдера",
    "providerProxy": "Проксі-сервер постачальника",
    "noConnectionsYet": "Підключень ще немає",
    "addFirstConnectionHint": "Щоб почати, додайте своє перше підключення",
    "addConnection": "Додати підключення",
    "availableModels": "Доступні моделі",
    "pageAutoRefresh": "Сторінка оновиться автоматично...",
    "statusDisabled": "вимкнено",
    "statusConnected": "підключений",
    "statusRuntimeIssue": "проблема виконання",
    "statusAuthFailed": "авторизація не вдалася",
    "statusRateLimited": "швидкість обмежена",
    "statusNetworkIssue": "проблема мережі",
    "statusTestUnsupported": "тест не підтримується",
    "statusUnavailable": "недоступний",
    "statusFailed": "не вдалося",
    "statusError": "помилка",
    "oauthAccount": "Обліковий запис OAuth",
    "errorTypeRuntime": "Локальний час виконання",
    "errorTypeUpstreamAuth": "Вихідна авторизація",
    "errorTypeMissingCredential": "Відсутні облікові дані",
    "errorTypeRefreshFailed": "Не вдалося оновити",
    "errorTypeTokenExpired": "Термін дії маркера минув",
    "errorTypeRateLimited": "Тариф обмежений",
    "errorTypeUpstreamUnavailable": "Вгору недоступний",
    "errorTypeNetworkError": "Помилка мережі",
    "errorTypeTestUnsupported": "Тест не підтримується",
    "errorTypeUpstreamError": "Вихідна помилка",
    "proxySourceGlobal": "Глобальний",
    "proxySourceProvider": "Провайдер",
    "proxySourceKey": "ключ",
    "proxyConfiguredBySource": "Проксі ({source}): {host}",
    "autoPriority": "Автоматично: {priority}",
    "proxy": "Проксі",
    "retestAuthentication": "Перевірити автентифікацію",
    "retest": "Перетестувати",
    "disableConnection": "Відключити підключення",
    "enableConnection": "Увімкнути підключення",
    "reauthenticateConnection": "Повторно автентифікуйте це підключення",
    "proxyConfig": "Конфігурація проксі",
    "aliasExistsAlert": "Псевдонім \"{alias}\" вже існує. Використовуйте іншу модель або відредагуйте існуючий псевдонім.",
    "openRouterAnyModelHint": "OpenRouter підтримує будь-яку модель. Додайте моделі та створіть псевдоніми для швидкого доступу.",
    "modelIdFromOpenRouter": "ID моделі (з OpenRouter)",
    "openRouterModelPlaceholder": "антропний/claude-3-opus",
    "customModels": "Спеціальні моделі",
    "customModelsHint": "Додайте ідентифікатори моделей, яких немає в списку за замовчуванням. Вони будуть доступні для маршрутизації.",
    "modelId": "ID моделі",
    "customModelPlaceholder": "напр. gpt-4.5-турбо",
    "loading": "Завантаження...",
    "removeCustomModel": "Видалити спеціальну модель",
    "noCustomModels": "Спеціальні моделі ще не додано.",
    "allSuggestedAliasesExist": "Усі запропоновані псевдоніми вже існують. Виберіть іншу модель або видаліть конфліктні псевдоніми.",
    "failedSaveCustomModel": "Не вдалося зберегти спеціальну модель",
    "modelAddedSuccess": "Модель {modelId} успішно додано",
    "failedAddModelTryAgain": "Не вдалося додати модель. Спробуйте ще раз.",
    "failedSaveImportedModel": "Не вдалося зберегти імпортовану модель до спеціальної бази даних",
    "failedImportModelsTryAgain": "Не вдалося імпортувати моделі. Спробуйте ще раз.",
    "failedRemoveModelFromDatabase": "Не вдалося видалити модель із бази даних",
    "modelRemovedSuccess": "Модель успішно видалено",
    "failedDeleteModelTryAgain": "Не вдалося видалити модель. Спробуйте ще раз.",
    "compatibleModelsDescription": "Додайте {type}-сумісні моделі вручну або імпортуйте їх із кінцевої точки /models.",
    "anthropicCompatibleModelPlaceholder": "claude-3-opus-20240229",
    "openaiCompatibleModelPlaceholder": "gpt-4o",
    "apiKeyValidationFailed": "Помилка перевірки ключа API. Перевірте свій ключ і повторіть спробу.",
    "addProviderApiKeyTitle": "Додайте ключ API {provider}",
    "checking": "Перевірка...",
    "check": "Перевірте",
    "valid": "Дійсний",
    "invalid": "Недійсний",
    "creating": "Створення...",
    "validationChecksAnthropicCompatible": "Перевірка перевіряє {provider} шляхом підтвердження ключа API.",
    "validationChecksOpenAiCompatible": "Перевірка перевірки {provider} через /models на вашій базовій URL-адресі.",
    "priorityLabel": "Пріоритет",
    "saving": "Збереження...",
    "save": "зберегти",
    "editConnection": "Редагувати підключення",
    "accountName": "Ім'я облікового запису",
    "email": "Електронна пошта",
    "healthCheckMinutes": "Перевірка стану (хв.)",
    "healthCheckHint": "Проактивний інтервал оновлення маркера. 0 = вимкнено.",
    "failedTestConnection": "Не вдалося перевірити з’єднання",
    "failed": "Не вдалося",
    "leaveBlankKeepCurrentApiKey": "Залиште поле порожнім, щоб зберегти поточний ключ API.",
    "editCompatibleTitle": "Редагувати {type} Сумісний",
    "compatibleBaseUrlHint": "Використовуйте базову URL-адресу (закінчується на /v1) для свого {type}-сумісного API.",
    "apiKeyForCheck": "Ключ API (для перевірки)",
    "compatibleProdPlaceholder": "{type} Сумісність (Prod)"
  },
  "settings": {
    "title": "Налаштування",
    "general": "Загальний",
    "security": "Безпека",
    "appearance": "Зовнішній вигляд",
    "routing": "Маршрутизація",
    "cache": "Кеш",
    "resilience": "Стійкість",
    "systemPrompt": "Системна підказка",
    "thinkingBudget": "Мислення про бюджет",
    "proxy": "Проксі",
    "pricing": "Ціноутворення",
    "storage": "Зберігання",
    "policies": "політики",
    "ipFilter": "IP-фільтр",
    "comboDefaults": "Комбіновані параметри за замовчуванням",
    "fallbackChains": "Резервні ланцюги",
    "changePassword": "Змінити пароль",
    "enablePassword": "Увімкнути пароль",
    "darkMode": "Темний режим",
    "lightMode": "Світловий режим",
    "systemTheme": "Тема системи",
    "enableCache": "Увімкнути кеш",
    "cacheTTL": "Кеш TTL",
    "maxCacheSize": "Максимальний розмір кешу",
    "clearCache": "Очистити кеш",
    "cacheHits": "Звернення до кешу",
    "cacheMisses": "Промахи кешу",
    "hitRate": "Рейтинг попадань",
    "cacheEntries": "Записи кешу",
    "circuitBreaker": "Автоматичний вимикач",
    "retryPolicy": "Політика повторних спроб",
    "maxRetries": "Макс. повторних спроб",
    "retryDelay": "Затримка повтору",
    "timeoutMs": "Час очікування (мс)",
    "enableSystemPrompt": "Увімкнути системну підказку",
    "systemPromptText": "Текст системної підказки",
    "enableThinking": "Увімкнути мислення",
    "maxThinkingTokens": "Макс жетонів мислення",
    "enableProxy": "Увімкнути проксі",
    "proxyUrl": "URL проксі",
    "pricingRates": "Формат ціноутворення",
    "currentPricing": "Огляд поточних цін",
    "loadingPricing": "Завантаження даних про ціни...",
    "noPricing": "Немає даних про ціни",
    "input": "Введення",
    "output": "Вихід",
    "cached": "Кешовано",
    "reasoning": "Міркування",
    "cacheCreation": "Створення кешу",
    "customPricing": "Спеціальне ціноутворення",
    "databaseSize": "Розмір бази даних",
    "backupDb": "Резервне копіювання бази даних",
    "restoreDb": "Відновити базу даних",
    "exportData": "Експорт даних",
    "importData": "Імпорт даних",
    "clearData": "Очистити всі дані",
    "clearDataConfirm": "Це призведе до остаточного видалення всіх даних. Ви впевнені?",
    "enableRequestLogs": "Увімкнути журнали запитів",
    "logRetention": "Зберігання журналу",
    "ipWhitelist": "Білий список IP-адрес",
    "ipBlacklist": "Чорний список IP",
    "addIP": "Додайте IP",
    "savedSuccessfully": "Налаштування успішно збережено",
    "ai": "ШІ",
    "advanced": "Просунутий",
    "localMode": "Локальний режим — усі дані, що зберігаються на вашій машині",
    "settingsSectionsAria": "Розділи налаштувань",
    "switchThemes": "Перемикання між світлою та темною темами",
    "themeSelectionAria": "Вибір теми",
    "themeLight": "світло",
    "themeDark": "Темний",
    "themeSystem": "система",
    "hideHealthLogs": "Приховати журнали перевірки справності",
    "hideHealthLogsDesc": "Коли ввімкнено, блокувати повідомлення [HealthCheck] на консолі сервера",
    "promptCache": "Кеш підказок",
    "flushCache": "Очистити кеш",
    "flushing": "Промивання…",
    "size": "Розмір",
    "hits": "Хіти",
    "evictions": "Виселення",
    "loadingCacheStats": "Завантаження статистики кешу…",
    "globalProxy": "Глобальний проксі",
    "globalProxyDesc": "Налаштуйте глобальний вихідний проксі для всіх викликів API. Окремі постачальники, комбінації та ключі можуть замінити це.",
    "noGlobalProxy": "Глобальний проксі не налаштовано",
    "globalLabel": "Глобальний",
    "configure": "Налаштувати",
    "globalSystemPrompt": "Глобальна системна підказка",
    "systemPromptDesc": "Впроваджується в усі запити на рівні проксі",
    "saved": "Збережено",
    "systemPromptPlaceholder": "Введіть системний запит, щоб додати в усі запити...",
    "systemPromptHint": "Ця підказка додається до системного повідомлення кожного запиту. Використовуйте для загальних інструкцій, інструкцій з безпеки або правил форматування відповідей.",
    "chars": "{count} символів",
    "thinkingBudgetTitle": "Мислення про бюджет",
    "thinkingBudgetDesc": "Контролюйте використання маркера міркування AI для всіх запитів",
    "passthrough": "Прохідний",
    "passthroughDesc": "Без змін — клієнт контролює бюджет мислення",
    "auto": "Авто",
    "autoDesc": "Видаліть усі конфігурації мислення — дозвольте постачальнику вирішувати",
    "custom": "Custom",
    "customDesc": "Встановіть фіксований бюджет токенів для всіх запитів",
    "adaptive": "Адаптивний",
    "adaptiveDesc": "Масштабуйте бюджет на основі складності запиту",
    "effortNone": "Жодного (0 токенів)",
    "effortLow": "Низький (1 тис. жетонів)",
    "effortMedium": "Середній (10 тисяч токенів)",
    "effortHigh": "Високий (128 тис. токенів)",
    "tokenBudget": "Токен Бюджет",
    "tokens": "жетони",
    "baseEffortLevel": "Базовий рівень зусиль",
    "adaptiveHint": "Адаптивний режим масштабується від цього базового рівня на основі кількості повідомлень, використання інструментів і тривалості запиту.",
    "requireLogin": "Вимагати авторизації",
    "requireLoginDesc": "Коли УВІМКНЕНО, інформаційна панель вимагає пароля. Коли ВИМКНЕНО, доступ без входу.",
    "currentPassword": "Поточний пароль",
    "enterCurrentPassword": "Введіть поточний пароль",
    "newPassword": "Новий пароль",
    "enterNewPassword": "Введіть новий пароль",
    "confirmPassword": "Підтвердьте новий пароль",
    "confirmPasswordPlaceholder": "Підтвердьте новий пароль",
    "passwordsNoMatch": "Паролі не збігаються",
    "passwordUpdated": "Пароль успішно оновлено",
    "failedUpdatePassword": "Не вдалося оновити пароль",
    "errorOccurred": "Сталася помилка",
    "updatePassword": "Оновити пароль",
    "setPassword": "Встановити пароль",
    "apiEndpointProtection": "API Endpoint Protection",
    "requireAuthModels": "Вимагати ключ API для /models",
    "requireAuthModelsDesc": "Якщо ON, кінцева точка /v1/models повертає 404 для неавтентифікованих запитів. Запобігає виявленню моделі неавторизованими користувачами.",
    "blockedProviders": "Заблоковані постачальники",
    "blockedProvidersDesc": "Приховати певних постачальників у відповіді /v1/models. Заблоковані постачальники не відображатимуться в списках моделей.",
    "providersBlocked": "{count} постачальник(ів) заблоковано для /models",
    "blockProviderTitle": "Заблокувати {provider}",
    "unblockProviderTitle": "Розблокувати {provider}",
    "routingStrategy": "Стратегія маршрутизації",
    "fillFirst": "Заповніть спочатку",
    "fillFirstDesc": "Використовуйте облікові записи в пріоритетному порядку",
    "roundRobin": "Кругова система",
    "roundRobinDesc": "Перегляньте всі облікові записи",
    "p2c": "P2C",
    "p2cDesc": "Виберіть 2 навмання, використовуйте здоровіший",
    "random": "Випадковий",
    "randomDesc": "Випадковий рахунок для кожного запиту",
    "leastUsed": "Найменш використовуваний",
    "leastUsedDesc": "Виберіть нещодавно використовуваний обліковий запис",
    "costOpt": "Вартість Opt",
    "costOptDesc": "Віддайте перевагу найдешевшому доступному обліковому запису",
    "stickyLimit": "Sticky Limit",
    "stickyLimitDesc": "Дзвінки на обліковий запис перед переходом",
    "modelAliases": "Псевдоніми моделі",
    "modelAliasesDesc": "Шаблони шаблонів узагальнення для зміни назв моделей • Використовуйте * та ?",
    "aliasPatternPlaceholder": "клод-сонет-*",
    "aliasTargetPlaceholder": "claude-sonnet-4-20250514",
    "pattern": "Візерунок",
    "targetModel": "Цільова модель",
    "add": "+ Додати",
    "session": "Сесія",
    "sessionDetailsAria": "Деталі сеансу",
    "status": "Статус",
    "authenticated": "Автентифіковано",
    "guest": "Гість",
    "loginTime": "Час входу",
    "sessionAge": "Вік сесії",
    "browser": "Браузер",
    "clearLocalData": "Очистити локальні дані",
    "logout": "Вийти",
    "clearLocalDataConfirm": "Очистити всі локальні дані? Це скине ваші налаштування.",
    "unknown": "Невідомий",
    "systemActor": "система",
    "ipAccessControl": "Контроль IP доступу",
    "ipAccessControlDesc": "Блокувати або дозволяти певні IP-адреси",
    "ipModeDisabled": "Вимкнено",
    "ipModeBlacklist": "Чорний список",
    "ipModeWhitelist": "Білий список",
    "ipModeWhitelistPriority": "Пріоритет WL",
    "addIpAddress": "Додайте IP-адресу",
    "ipAddressPlaceholder": "192.168.1.0/24 або 10.0.*.*",
    "block": "+ Блокувати",
    "allow": "+ Дозволити",
    "blocked": "Заблоковано ({count})",
    "allowed": "Дозволено ({count})",
    "temporaryBans": "Тимчасові заборони ({count})",
    "minLeft": "Залишилося {min}хв",
    "auditLog": "Журнал аудиту",
    "searchAuditLogs": "Шукати журнали аудиту...",
    "failedLoadAuditLog": "Не вдалося завантажити журнал аудиту",
    "noAuditEvents": "Подій аудиту не знайдено",
    "action": "Дія",
    "actor": "Актор",
    "details": "Подробиці",
    "time": "час",
    "fallbackChainsTitle": "Резервні ланцюги",
    "fallbackChainsDesc": "Визначте запасний порядок постачальника для кожної моделі",
    "addChain": "+ Додати ланцюг",
    "modelName": "Назва моделі",
    "modelNamePlaceholder": "claude-sonnet-4-20250514",
    "providersCommaSeparated": "Постачальники (через кому, у порядку пріоритету)",
    "providersCommaSeparatedPlaceholder": "антропний, опенай, геміні",
    "createChain": "Створити ланцюжок",
    "noFallbackChains": "Без запасних ланцюгів",
    "noFallbackChainsDesc": "Створіть ланцюжок, щоб визначити запасний порядок постачальника для моделі.",
    "loadingFallbackChains": "Завантаження резервних ланцюжків...",
    "deleteChainConfirm": "Видалити резервний ланцюжок для \"{model}\"?",
    "chainCreated": "Створено ланцюжок для {model}",
    "chainDeleted": "Ланцюжок видалено для {model}",
    "failedCreateChain": "Не вдалося створити ланцюжок",
    "failedDeleteChain": "Не вдалося видалити ланцюжок",
    "deleteChain": "Видалити ланцюжок",
    "fillModelAndProviders": "Введіть назву моделі та постачальників",
    "addAtLeastOneProvider": "Додайте хоча б одного постачальника",
    "comboDefaultsTitle": "Комбіновані параметри за замовчуванням",
    "globalComboConfig": "Конфігурація глобального комбо",
    "defaultStrategy": "Стратегія за замовчуванням",
    "defaultStrategyDesc": "Застосовується до нових комбо без явної стратегії",
    "comboStrategyAria": "Комбінована стратегія",
    "priority": "Пріоритет",
    "weighted": "Зважений",
    "maxRetriesLabel": "Макс. повторних спроб",
    "retryDelayLabel": "Затримка повтору (мс)",
    "timeoutLabel": "Час очікування (мс)",
    "healthCheck": "Перевірка стану здоров'я",
    "healthCheckDesc": "Попередньо уточнюйте наявність у провайдера",
    "trackMetrics": "Відстежувати показники",
    "trackMetricsDesc": "Записуйте показники комбінованих запитів",
    "providerOverrides": "Перевизначення постачальника",
    "providerOverridesDesc": "Перевизначити час очікування та повторити спроби для кожного постачальника. Налаштування постачальника замінюють глобальні налаштування за умовчанням.",
    "providerMaxRetriesAria": "Максимальна кількість повторних спроб: {provider}",
    "providerTimeoutAria": "{provider} тайм-аут мс",
    "removeProviderOverrideAria": "Видалити перевизначення {provider}",
    "newProviderNamePlaceholder": "напр. гугли, відкривай...",
    "newProviderNameAria": "Нова назва провайдера",
    "retries": "повтори",
    "ms": "мс",
    "saveComboDefaults": "Зберегти комбіновані параметри за замовчуванням",
    "maxNestingDepth": "Максимальна глибина вкладення",
    "concurrencyPerModel": "Одночасність / Модель",
    "queueTimeout": "Час очікування черги (мс)",
    "providerProfiles": "Профілі постачальників",
    "providerProfilesDesc": "Окремі параметри стійкості для постачальників OAuth (на основі сеансу) і ключа API (з вимірюванням). Постачальники OAuth мають суворіші порогові значення через нижчі обмеження швидкості.",
    "oauthProviders": "Постачальники OAuth",
    "apiKeyProviders": "Постачальники ключів API",
    "transientCooldown": "Перехідний час відновлення",
    "rateLimitCooldown": "Обмеження швидкості відновлення",
    "maxBackoffLevel": "Максимальний рівень резервування",
    "cbThreshold": "Поріг CB",
    "cbResetTime": "Час скидання CB",
    "rateLimiting": "Обмеження швидкості",
    "rateLimitingDesc": "Постачальники ключів API автоматично обмежуються швидкістю з безпечними параметрами за замовчуванням. Обмеження вивчаються із заголовків відповідей і адаптуються з часом.",
    "defaultSafetyNet": "Стандартна мережа безпеки",
    "rpm": "RPM",
    "minGap": "Мінімальний розрив",
    "maxConcurrent": "Максимальна одночасність",
    "activeLimiters": "Активні обмежувачі",
    "noActiveLimiters": "Активних обмежувачів швидкості ще немає.",
    "reservoir": "Водосховище",
    "running": "Біг",
    "queued": "У черзі",
    "circuitBreakers": "Автоматичні вимикачі",
    "breakerStateClosed": "Закрито",
    "breakerStateOpen": "відкритий",
    "breakerStateHalfOpen": "Напіввідкритий",
    "tripped": "{count} спрацював",
    "healthy": "{count} здоровий",
    "resetAll": "Скинути все",
    "noCircuitBreakers": "Ще немає активних автоматичних вимикачів. Вони створюються автоматично, коли запити проходять через комбінований конвеєр.",
    "failures": "{count} помилка(и)",
    "policiesLocked": "Політики та заблоковані ідентифікатори",
    "allOperational": "Усі системи в робочому стані — жодних блокувань чи спрацьованих вимикачів",
    "loadingPolicies": "Завантаження правил...",
    "lockedIdentifiers": "Заблоковані ідентифікатори",
    "unlockedIdentifier": "Розблоковано: {identifier}",
    "sinceDate": "з {date}",
    "forceUnlock": "Примусове розблокування",
    "unlocking": "Розблокування...",
    "failedUnlock": "Не вдалося розблокувати",
    "failedLoadWithStatus": "Не вдалося завантажити: {status}",
    "failedLoadResilience": "Не вдалося завантажити статус стійкості",
    "saveFailed": "Не вдалося зберегти",
    "resetFailed": "Помилка скидання",
    "loadingResilience": "Завантаження стану стійкості...",
    "retry": "Повторіть спробу",
    "systemStorage": "Система та зберігання",
    "allDataLocal": "Усі дані зберігаються локально на вашій машині",
    "databasePath": "Шлях до бази даних",
    "exportDatabase": "Експорт бази даних",
    "exportAll": "Експортувати все (.tar.gz)",
    "importDatabase": "Імпорт бази даних",
    "confirmDbImport": "Підтвердьте імпорт бази даних",
    "confirmDbImportDesc": "Усі поточні дані буде замінено вмістом із {file}. Резервна копія буде створена автоматично перед імпортом.",
    "yesImport": "Так, імпорт",
    "lastBackup": "Остання резервна копія",
    "noBackupYet": "Резервної копії ще немає",
    "backupNow": "Резервне копіювання зараз",
    "backupRestore": "Резервне копіювання та відновлення",
    "viewBackups": "Переглянути резервні копії",
    "hide": "Сховати",
    "backupRetentionDesc": "Знімки бази даних створюються автоматично перед відновленням і кожні 15 хвилин, коли дані змінюються. Зберігання: 24 години на годину + 30 щоденних резервних копій із розумною ротацією.",
    "loadingBackups": "Завантаження резервних копій...",
    "noBackupsYet": "Резервних копій ще немає. Резервні копії створюватимуться автоматично при зміні даних.",
    "backupsAvailable": "Доступні резервні копії {count}",
    "refresh": "Оновити",
    "confirm": "Підтвердити?",
    "yes": "так",
    "no": "немає",
    "restore": "Відновити",
    "invalidFileType": "Недійсний тип файлу. Приймаються лише файли .sqlite.",
    "exportFailed": "Помилка експорту",
    "exportFailedWithError": "Помилка експорту: {error}",
    "fullExportFailedWithError": "Помилка повного експорту: {error}",
    "backupCreated": "Створено резервну копію: {file}",
    "restoreSuccess": "Відновлено! {connections} підключень, {nodes} вузлів, {combos} комбо, {apiKeys} ключів API.",
    "importSuccess": "Базу даних імпортовано! {connections} підключень, {nodes} вузлів, {combos} комбо, {apiKeys} ключів API.",
    "justNow": "тільки зараз",
    "minutesAgo": "{count}хв тому",
    "hoursAgo": "{count} год тому",
    "daysAgo": "{count} дн. тому",
    "backupReasonManual": "посібник",
    "backupReasonPreRestore": "попереднє відновлення",
    "connectionsCount": "{count, plural, one {# connection} other {# connections}}",
    "noChangesSinceBackup": "Жодних змін з часу останнього резервного копіювання",
    "backupFailed": "Помилка резервного копіювання",
    "restoreFailed": "Не вдалося відновити",
    "importFailed": "Помилка імпорту",
    "errorDuringRestore": "Під час відновлення сталася помилка",
    "errorDuringImport": "Під час імпорту сталася помилка",
    "modelPricing": "Модель ціноутворення",
    "modelPricingDesc": "Налаштуйте ставки витрат для моделі • Усі ставки в токенах $/1 млн",
    "providers": "Провайдери",
    "registry": "Реєстр",
    "priced": "Ціна",
    "searchProvidersModels": "Пошук постачальників або моделей...",
    "showAll": "Показати все",
    "noProvidersMatch": "Жоден провайдер не відповідає вашому запиту.",
    "howPricingWorks": "Як працює ціноутворення",
    "cacheWrite": "Запис кешу",
    "unsaved": "незбережено",
    "resetDefaults": "Скинути значення за замовчуванням",
    "saveProvider": "Зберегти постачальника",
    "saving": "Збереження...",
    "model": "Модель",
    "models": "моделі",
    "moreProviders": "{count} більше постачальників",
    "withPricing": "із налаштованим ціноутворенням",
    "policiesCircuitBreakers": "Правила та автоматичні вимикачі",
    "activeIssuesDetected": "Виявлено активні проблеми",
    "off": "Вимкнено",
    "resetPricingConfirm": "Відновити всі ціни для {provider} до стандартних?",
    "pricingDescInput": "Вхід: токени, надіслані моделі",
    "pricingDescOutput": "Результат: згенеровано токени",
    "pricingDescCached": "Кешовано: повторно використаний вхід (~50% швидкості введення)",
    "pricingDescReasoning": "Міркування: маркери мислення (повертається до результату)",
    "pricingDescCacheWrite": "Cache Write: створення записів кешу (повертається до Input)",
    "pricingDescFormula": "Вартість = (input × input_rate) + (output × output_rate) + (cached × cached_rate) на мільйон токенів.",
    "pricingSettingsTitle": "Налаштування ціни",
    "totalModels": "Всього моделей",
    "active": "Активний",
    "costCalculation": "Розрахунок вартості",
    "costCalculationDesc": "Витрати розраховуються на основі використання токенів і ставок ціноутворення, налаштованих для кожної моделі.",
    "pricingFormat": "Формат ціноутворення",
    "pricingFormatDesc": "Усі ставки вказані в $/1 млн токенів (доларів за мільйон токенів).",
    "tokenTypes": "Типи токенів",
    "inputTokenDesc": "Стандартні маркери підказок",
    "outputTokenDesc": "Жетони завершення/відповіді",
    "cachedTokenDesc": "Кешовані маркери введення (зазвичай 50% швидкості введення)",
    "reasoningTokenDesc": "Спеціальні маркери міркування/мислення (відкат до швидкості виведення)",
    "cacheCreationTokenDesc": "Токени, що використовуються для створення записів кешу (резервний вихід до швидкості введення)",
    "customPricingNote": "Ви можете змінити ціни за умовчанням для певних моделей. Спеціальні зміни мають пріоритет над автоматично визначеними цінами.",
    "editPricing": "Редагувати ціни",
    "viewFullDetails": "Переглянути повну інформацію"
  },
  "translator": {
    "title": "Перекладач",
    "metaTitle": "Ігровий майданчик для перекладачів | OmniRoute",
    "metaDescription": "Налагодження, тестування та візуалізація перекладів форматів API між постачальниками",
    "playgroundTitle": "Майданчик для перекладачів",
    "playground": "Дитячий майданчик",
    "realtime": "Переклад в реальному часі",
    "chatTester": "Тестер чату",
    "testBench": "Випробувальний стенд",
    "liveMonitor": "Живий монітор",
    "modeDescriptionPlayground": "Вставте будь-яке тіло запиту API та подивіться, як OmniRoute перекладає його між форматами постачальників (OpenAI ↔ Claude ↔ Gemini ↔ Responses API)",
    "modeDescriptionChatTester": "Надсилайте реальні запити чату через OmniRoute та перевіряйте повний цикл: введення, перекладений запит, відповідь постачальника та перекладений вихід.",
    "modeDescriptionTestBench": "Виконуйте попередньо визначені сценарії та порівнюйте сумісність між постачальниками та моделями.",
    "modeDescriptionLiveMonitor": "Переглядайте події перекладу в режимі реального часу, коли запити надходять через OmniRoute.",
    "modeDescriptionFallback": "Налагоджуйте, тестуйте та візуалізуйте, як OmniRoute перекладає запити API між постачальниками.",
    "recentTranslations": "Останні переклади",
    "noTranslations": "Перекладів ще немає",
    "source": "Джерело",
    "target": "Цільова",
    "time": "час",
    "model": "Модель",
    "status": "Статус",
    "latency": "Затримка",
    "totalTranslations": "Загальні переклади",
    "successful": "Успішний",
    "errors": "Помилки",
    "avgLatency": "Середня затримка",
    "millisecondsShort": "{value}мс",
    "notAvailableSymbol": "—",
    "liveAutoRefreshing": "Live — Автоматичне оновлення",
    "paused": "Призупинено",
    "eventsAppearHint": "Події перекладу з’являються тут, коли запити проходять через OmniRoute. Використовуйте будь-який із цих методів для створення подій:",
    "chatTesterTab": "Вкладка Тестер чату",
    "testBenchTab": "Вкладка «Випробувальний стенд».",
    "externalApiCalls": "Зовнішні виклики API",
    "ideCliIntegrations": "Інтеграції IDE/CLI",
    "inMemoryNote": "Примітка. Події зберігаються в пам’яті та скидаються під час перезапуску сервера.",
    "ok": "добре",
    "errorShort": "ERR",
    "formatConverter": "Конвертер форматів",
    "formatConverterDescription": "Вставте або введіть тіло запиту JSON. Перекладач автоматично визначить вихідний формат і перетворить його на цільовий формат. Використовуйте це, щоб налагодити, як OmniRoute перекладає запити між форматами (OpenAI ↔ Claude ↔ Gemini ↔ Responses API).",
    "input": "Введення",
    "output": "Вихід",
    "auto": "Авто",
    "swapFormats": "Поміняти місцями формати",
    "translateAction": "Перекласти",
    "clear": "ясно",
    "inputPlaceholder": "Вставте сюди текст запиту або виберіть шаблон нижче...",
    "exampleTemplates": "Приклади шаблонів",
    "exampleTemplatesHint": "— Натисніть, щоб завантажити",
    "templateLoadHint": "Шаблон завантажує запит у форматі {format}. Змініть вихідний формат для завантаження в іншому форматі.",
    "compatibilityTester": "Тестер сумісності",
    "compatibilityReport": "Звіт про сумісність",
    "testBenchDescription": "Запустіть попередньо визначені сценарії (простий чат, виклик інструментів тощо), щоб перевірити переклад і сумісність постачальника. Виберіть вихідний формат і цільового постачальника, а потім запустіть усі тести, щоб побачити відсоток сумісності. Використовуйте це, щоб дізнатися, які функції працюють у різних постачальників.",
    "targetProvider": "Цільовий постачальник",
    "runAllTests": "Виконайте всі тести",
    "runTest": "Запустити тест",
    "reRun": "Повторний запуск",
    "running": "Біг...",
    "passed": "пройшли",
    "failed": "не вдалося",
    "passedIconLabel": "✅ Пройшли",
    "chunks": "шматки",
    "scenarioSimpleChat": "Простий чат",
    "scenarioToolCalling": "Виклик інструменту",
    "scenarioMultiTurn": "Багатооборотний",
    "scenarioThinking": "Мислення",
    "scenarioSystemPrompt": "Системна підказка",
    "scenarioStreaming": "Потокове передавання",
    "templateNames": {
      "simple-chat": "Простий чат",
      "tool-calling": "Виклик інструменту",
      "multi-turn": "Багатооборотний",
      "thinking": "Мислення",
      "system-prompt": "Системна підказка",
      "streaming": "Потокове передавання"
    },
    "templateDescriptions": {
      "simple-chat": "Основне текстове повідомлення",
      "tool-calling": "Виклик функції/інструменту",
      "multi-turn": "Розмова з історією",
      "thinking": "Розширене мислення / міркування",
      "system-prompt": "Комплексна системна інструкція",
      "streaming": "Запит потокового передавання SSE"
    },
    "templatePayloads": {
      "simpleChat": {
        "system": "Ви корисний помічник.",
        "userGreeting": "Привіт! Як справи сьогодні?"
      },
      "toolCalling": {
        "userWeather": "Яка погода в Сан-Паулу?",
        "toolDescription": "Отримайте поточну погоду для певного місця",
        "cityNameDescription": "Назва міста"
      },
      "multiTurn": {
        "system": "Ви помічник кодування.",
        "userInitial": "Напишіть функцію для сортування масиву в Python.",
        "assistantExample": "Ось проста функція сортування:\n\n```пітон\ndef sort_array(arr):\n    повернути sorted(arr)\n```",
        "userFollowUp": "Тепер відсортуйте його в порядку спадання."
      },
      "thinking": {
        "question": "Чому дорівнює сума перших 100 простих чисел?"
      },
      "systemPrompt": {
        "systemInstruction": "Ви старший інженер програмного забезпечення, який спеціалізується на розподілених системах. Дайте короткі відповіді на запитання, використовуючи передовий досвід галузі. Завжди надавайте приклади коду, коли це необхідно. Форматуйте свої відповіді за допомогою розмітки.",
        "question": "Як реалізувати шаблон автоматичного вимикача?"
      },
      "streaming": {
        "prompt": "Розкажіть мені коротку історію про робота, який вчиться малювати."
      }
    },
    "openaiCompatibleLabel": "Сумісність з OpenAI",
    "anthropicCompatibleLabel": "Антропна сумісність",
    "noTemplateForFormat": "Немає шаблону для цього формату",
    "translationFailed": "Помилка перекладу: {error}",
    "pipelineDebugger": "Відладчик конвеєра",
    "translationPipeline": "Конвеєр перекладу",
    "pipelineVisualization": "Візуалізація трубопроводу",
    "pipelineVisualizationHint": "Надішліть повідомлення, щоб побачити, як ваш запит проходить через виявлення → переклад → виклик постачальника.",
    "chatTesterDescription": "Надсилайте повідомлення як певний клієнтський формат і перевіряйте кожен крок конвеєра перекладу.",
    "chatTesterFlow": "Запит клієнта → Виявлення формату → OpenAI Intermediate → Формат постачальника → Відповідь",
    "clickStepToInspect": "Натисніть будь-який крок, щоб перевірити дані на цьому етапі.",
    "clientFormat": "Формат клієнта",
    "provider": "Провайдер",
    "modelPlaceholder": "Виберіть або введіть назву моделі...",
    "sendMessageToSeePipeline": "Надішліть повідомлення, щоб побачити конвеєр перекладу",
    "chatMessageHintPrefix": "Ваше повідомлення буде відформатовано як a",
    "chatMessageHintSuffix": "запит, перекладений через конвеєр і надісланий вибраному постачальнику.",
    "youWithFormat": "Ви ({format})",
    "assistant": "помічник",
    "typeMessage": "Введіть повідомлення...",
    "send": "Надіслати",
    "clientRequest": "Запит клієнта",
    "clientRequestDescription": "Тіло запиту, як його надіслав би ваш клієнт",
    "formatDetected": "Виявлено формат",
    "formatDetectedDescription": "OmniRoute автоматично визначає формат API зі структури запиту",
    "openaiIntermediate": "OpenAI Intermediate",
    "openaiIntermediateDescription": "Усі формати спочатку нормалізуються до формату OpenAI (універсальний міст)",
    "providerFormat": "Формат постачальника",
    "providerFormatDescription": "Формат OpenAI перекладається на рідний формат постачальника",
    "providerResponse": "Відповідь постачальника",
    "providerResponseRawDescription": "Необроблена відповідь від API постачальника",
    "providerResponseSseDescription": "Необроблений потік SSE від API постачальника",
    "unexpectedError": "Сталася неочікувана помилка",
    "error": "Помилка",
    "errorMessage": "Помилка: {message}",
    "requestFailed": "Запит не виконано",
    "noTextExtracted": "(Текст не витягнуто)",
    "liveMonitorDescriptionPrefix": "Показує події перекладу, коли виклики API проходять через OmniRoute. Події надходять із буфера в пам'яті (скидається під час перезавантаження). використання",
    "liveMonitorDescriptionSuffix": "або виклики зовнішнього API для створення подій."
  },
  "usage": {
    "title": "Використання",
    "loggerTab": "Лісоруб",
    "proxyTab": "Проксі",
    "budgetManagement": "Управління бюджетом",
    "budgetSaved": "Обмеження бюджету збережено",
    "budgetSaveFailed": "Не вдалося зберегти бюджет",
    "loadingBudgetData": "Завантаження даних бюджету...",
    "noApiKeysTitle": "Немає ключів API",
    "noApiKeysDescription": "Спочатку додайте ключі API, щоб установити обмеження бюджету.",
    "apiKey": "Ключ API",
    "todaysSpend": "Сьогоднішні витрати",
    "thisMonth": "Цей місяць",
    "setLimits": "Встановити обмеження",
    "dailyLimitUsd": "Денний ліміт (USD)",
    "monthlyLimitUsd": "Місячний ліміт (USD)",
    "warningThresholdPercent": "Порогове значення попередження (%)",
    "dailyLimitPlaceholder": "напр. 5.00",
    "monthlyLimitPlaceholder": "напр. 50,00",
    "warningThresholdPlaceholder": "80",
    "saveLimits": "Зберегти обмеження",
    "budgetOk": "Бюджет нормальний — залишилося {remaining}",
    "budgetExceeded": "Бюджет перевищено — запити можуть бути заблоковані",
    "totalRequests": "Всього запитів",
    "noDataYet": "Даних ще немає",
    "latency": "Затримка",
    "latencyP50": "стор.50",
    "latencyP95": "стор.95",
    "latencyP99": "стор.99",
    "promptCache": "Кеш підказок",
    "systemHealth": "Здоров'я системи",
    "entries": "Записи",
    "activeCount": "{count} активний",
    "openCircuitBreakersDetected": "Виявлено відкриті вимикачі",
    "hitRate": "Рейтинг попадань",
    "hitsMisses": "Попадання / промахи",
    "circuitBreakers": "Автоматичні вимикачі",
    "lockedIPs": "Заблоковані IP-адреси",
    "lockoutsAutoRefreshHint": "Блокування обмеження швидкості для кожної моделі • Автоматичне оновлення 10 с",
    "lockedCount": "{count, plural, one {# locked} other {# locked}}",
    "timeLeft": "Залишилося {time}",
    "howItWorks": "Як це працює",
    "howItWorksSubtitle": "Дізнайтеся, як оцінки підтверджують ваші відповіді LLM",
    "define": "Визначити",
    "defineStepDescription": "Створюйте тестові випадки з підказками введення та очікуваними критеріями виводу, використовуючи такі стратегії, як містить, регулярний вираз або точна відповідність.",
    "run": "бігти",
    "runStepDescription": "Виконуйте тестові випадки на кінцевих точках LLM через OmniRoute. Кожен випадок надсилається як справжній запит API.",
    "evaluate": "Оцініть",
    "evaluateStepDescription": "Відповіді порівнюються з очікуваними критеріями. Перегляньте відповідність/незадоволення для кожного випадку з показниками затримки та детальним відгуком.",
    "evalSuites": "Комплекти оцінювання",
    "evalSuitesHint": "Натисніть набір, щоб переглянути тестові випадки, а потім запустіть, щоб оцінити свої кінцеві точки LLM",
    "evalsLoading": "Завантаження eval suites...",
    "noEvalSuitesFound": "Eval Suites не знайдено",
    "noEvalSuitesDescription": "Комплекти Eval можна визначити через API або в коді. Вони перевіряють вихідні дані моделі на очікувані результати, використовуючи такі стратегії, як містять, регулярні вирази, точна відповідність і спеціальні функції.",
    "columnCase": "Справа",
    "columnStatus": "Статус",
    "columnLatency": "Затримка",
    "columnDetails": "Подробиці",
    "columnModel": "Модель",
    "columnStrategy": "Стратегія",
    "columnExpected": "Очікуваний",
    "statsSuites": "Люкс",
    "statsTestCases": "Тестові випадки",
    "statsModels": "Моделі",
    "statsCoverage": "Покриття",
    "statsStrategiesCount": "{count} стратегії",
    "evaluationStrategies": "Стратегії оцінювання",
    "modelsUnderTest": "Тестуються моделі",
    "searchSuitesPlaceholder": "Пошук комплектів...",
    "passSuffix": "пропуск",
    "casesCount": "{count, plural, one {# case} other {# cases}}",
    "runEval": "Запустіть Eval",
    "runningProgress": "Виконується {current}/{total}...",
    "passRate": "прохідний бал",
    "summaryBreakdown": "{passed} пройдено · {failed} не виконано · {total} всього",
    "passedIconLabel": "✅ Пройшли",
    "failedIconLabel": "❌ Не вдалося",
    "detailsContains": "Містить: \"{term}\"",
    "detailsRegex": "Регулярний вираз: {pattern}",
    "detailsExpected": "Очікується: \"{expected}\"",
    "noResultsYet": "Результатів ще немає",
    "testCasesCount": "Тестові випадки ({count})",
    "noTestCasesDefined": "Тестових випадків не визначено",
    "runEvalHint": "Натисніть «Run Eval», щоб виконати всі кейси щодо вашої кінцевої точки LLM. Кожен тест надсилає реальний запит через OmniRoute.",
    "notifyNoTestCases": "Для цього набору тестів не визначено",
    "notifyAllCasesPassed": "Усі випадки {total} пройдено ✅",
    "notifySomeCasesFailed": "{passed}/{total} пройдено, {failed} не виконано",
    "notifyEvalRunFailed": "Помилка виконання Eval",
    "notifyEvalTitle": "Оцінка: {name}",
    "modelEvals": "Модельні оцінки",
    "evalsHeroDescription": "Протестуйте та перевірте свої кінцеві точки LLM, запустивши попередньо визначені пакети оцінок. Кожен набір містить тестові випадки, які надсилають реальні підказки через OmniRoute та порівнюють відповіді з очікуваними критеріями, допомагаючи вам виявити регресії, порівняти моделі та забезпечити якість відповіді між провайдерами.",
    "qualityValidation": "Перевірка якості",
    "modelComparison": "Порівняння моделей",
    "regressionDetection": "Виявлення регресії",
    "latencyBenchmarks": "Контрольні показники затримки",
    "modelLockouts": "Блокування моделі",
    "noLockouts": "Наразі немає заблокованих моделей",
    "activeSessions": "Активні сесії",
    "noSessions": "Немає активних сеансів",
    "sessionsHint": "Сеанси з’являються, коли запити надходять через проксі-сервер",
    "sessionsTrackedHint": "Відстежується через запит відбитків пальців • Автоматичне оновлення 5 с",
    "session": "Сесія",
    "age": "Вік",
    "requests": "Запити",
    "connection": "Підключення",
    "durationMillisecondsShort": "{value}мс",
    "durationSecondsShort": "{value}s",
    "durationMinutesShort": "{value}м",
    "durationHoursShort": "{value}h",
    "reasonSeparator": " - ",
    "notAvailableSymbol": "-",
    "providerLimits": "Обмеження постачальника",
    "noProviders": "Немає підключених постачальників",
    "connectProvidersForQuota": "Підключайтеся до постачальників за допомогою OAuth, щоб відстежувати обмеження квоти та використання API.",
    "accountsCount": "{count, plural, one {# account} other {# accounts}}",
    "filteredFromCount": "(відфільтровано з {count})",
    "autoRefresh": "Автооновлення",
    "refreshAll": "Оновити все",
    "loadingQuotas": "Завантаження...",
    "account": "Обліковий запис",
    "modelQuotas": "Модельні квоти",
    "lastUsed": "Останнє використання",
    "actions": "Дії",
    "refreshQuota": "Оновити квоту",
    "today": "Сьогодні",
    "tomorrow": "завтра",
    "dayTimeFormat": "{day}, {time}",
    "inDuration": "в {duration}",
    "notApplicable": "N/A",
    "rawPlanWithValue": "Необроблений план: {plan}",
    "noPlanFromProvider": "Без плану від провайдера",
    "noQuotaData": "Немає даних про квоти",
    "noQuotaDataAvailable": "Немає даних про квоти",
    "noAccountsForTierFilter": "Не знайдено облікових записів для фільтра рівня",
    "tierAll": "всі",
    "tierEnterprise": "підприємство",
    "tierTeam": "команда",
    "tierBusiness": "Бізнес",
    "tierUltra": "Ультра",
    "tierPro": "Pro",
    "tierPlus": "Плюс",
    "tierFree": "безкоштовно",
    "tierUnknown": "Невідомий"
  },
  "modals": {
    "waitingAuth": "Очікування авторизації",
    "verificationUrl": "URL перевірки",
    "yourCode": "Ваш код",
    "remoteAccess": "Віддалений доступ:",
    "connectedSuccess": "Підключено успішно!",
    "connectionFailed": "Збій підключення",
    "chooseAuthMethod": "Виберіть метод автентифікації:",
    "awsBuilderId": "Ідентифікатор AWS Builder",
    "awsIamIdentity": "Центр ідентифікації AWS IAM",
    "googleAccount": "Обліковий запис Google",
    "githubAccount": "Обліковий запис GitHub",
    "importToken": "Імпорт маркера",
    "pasteToken": "Вставте маркер оновлення з Kiro IDE.",
    "awsRegion": "Регіон AWS",
    "autoDetecting": "Автоматичне визначення токенів...",
    "readingFromCache": "Читання з кешу AWS SSO",
    "readingFromCursor": "Читання з бази даних Cursor IDE",
    "initializing": "Ініціалізація...",
    "pricingConfig": "Конфігурація ціни",
    "loadingPricing": "Завантаження даних про ціни...",
    "pricingRatesFormat": "Формат ціноутворення",
    "noPricingData": "Немає даних про ціни",
    "noModelsFound": "Моделі не знайдено"
  },
  "loggers": {
    "allProviders": "Усі постачальники",
    "allModels": "Всі моделі",
    "allAccounts": "Усі облікові записи",
    "allApiKeys": "Усі ключі API",
    "allTypes": "Всі типи",
    "allLevels": "Всі рівні",
    "modelAZ": "Модель A-Z",
    "modelZA": "Модель Z-A",
    "loadingLogs": "Завантаження журналів...",
    "loadingProxyLogs": "Завантаження журналів проксі...",
    "noLogEntries": "Записів у журналі не знайдено",
    "noPayloadData": "Для цього запису журналу немає даних про корисне навантаження.",
    "proxyEvent": "Проксі-подія",
    "proxy": "Проксі",
    "level": "Рівень",
    "directNative": "Прямий (рідний)",
    "combo": "комбо",
    "inputTokens": "Я:",
    "outputTokens": "О:"
  },
  "stats": {
    "usageOverview": "Огляд використання",
    "outputTokens": "Вихідні жетони",
    "totalCost": "Загальна вартість",
    "usageByModel": "Використання за моделлю",
    "usageByAccount": "Використання обліковим записом",
    "failedToLoad": "Не вдалося завантажити статистику використання.",
    "tokenHealth": "Токен здоров'я",
    "totalOAuth": "Загальний OAuth",
    "healthy": "Здоровий",
    "warning": "Попередження",
    "errored": "Помилка",
    "lastCheck": "Остання перевірка",
    "noData": "Немає даних",
    "share": "Поділіться",
    "unableToLoad": "Не вдалося завантажити системні показники",
    "product": "Продукт",
    "resources": "Ресурси",
    "company": "Компанія"
  },
  "auth": {
    "welcome": "Ласкаво просимо",
    "signIn": "Увійдіть",
    "enterPassword": "Введіть свій пароль, щоб продовжити",
    "password": "Пароль",
    "unifiedProxy": "Unified AI API Proxy",
    "unifiedAiApiProxy": "Unified AI API Proxy",
    "unifiedAiApiProxyDesc": "Направляйте запити до кількох постачальників штучного інтелекту через одну кінцеву точку. Вбудоване балансування навантаження, відновлення після відмови та відстеження використання.",
    "passwordNotEnabled": "Захист паролем не ввімкнено",
    "loading": "Завантаження...",
    "invalidPassword": "Недійсний пароль",
    "errorOccurredRetry": "Сталася помилка. Спробуйте ще раз.",
    "configureInstance": "Давайте налаштуємо ваш екземпляр OmniRoute",
    "runOnboardingWizard": "Запустіть майстер адаптації, щоб налаштувати пароль і підключити свого першого постачальника AI.",
    "startOnboarding": "Почніть адаптацію",
    "secureYourInstance": "Захистіть свій екземпляр",
    "setPasswordDescription": "Встановіть пароль, щоб захистити свою інформаційну панель і кінцеві точки API від несанкціонованого доступу.",
    "configurePassword": "Налаштувати пароль",
    "continue": "Продовжити",
    "windowWillClose": "Це вікно закриється автоматично...",
    "closeTabNow": "Ви можете закрити цю вкладку зараз.",
    "copyUrlManual": "Скопіюйте URL-адресу з адресного рядка та вставте її в додаток.",
    "accessDeniedDescription": "Ви не маєте дозволу на доступ до цього ресурсу. Перевірте свій ключ API або зверніться до адміністратора.",
    "goToDashboard": "Перейдіть на інформаційну панель",
    "featureMultiProviderTitle": "Багатопровайдер",
    "featureMultiProviderDesc": "OpenAI, Anthropic, Google тощо",
    "featureLoadBalancingTitle": "Балансування навантаження",
    "featureLoadBalancingDesc": "Розповсюджуйте запити розумно",
    "featureUsageTrackingTitle": "Відстеження використання",
    "featureUsageTrackingDesc": "Відстежуйте витрати та токени",
    "resetPassword": "Скинути пароль",
    "resetDescription": "Виберіть спосіб відновлення доступу до інформаційної панелі",
    "stopServer": "Зупиніть роботу сервера OmniRoute",
    "processing": "Обробка...",
    "pleaseWait": "Зачекайте, поки ми завершимо авторизацію.",
    "authSuccess": "Авторизація успішна!",
    "copyUrl": "Скопіюйте цей URL",
    "accessDenied": "Доступ заборонено",
    "methodCliTitle": "Спосіб 1: Скидання CLI",
    "methodCliDescription": "Виконайте таку команду на сервері, де запущено OmniRoute:",
    "methodCliHint": "Вам буде запропоновано встановити новий пароль. Спочатку потрібно зупинити сервер.",
    "methodManualTitle": "Спосіб 2: Ручне скидання",
    "methodManualDescription": "Видаліть пароль з бази даних і встановіть новий під час запуску:",
    "setPasswordInYour": "Встановіть новий пароль у своєму",
    "fileLabelSuffix": "файл:",
    "newPasswordPlaceholder": "ваш_новий_пароль",
    "deleteSettingsFile": "Видалити",
    "orRemovePasswordHashField": "або видаліть поле passwordHash",
    "restartServerWithNewPassword": "Перезапустіть сервер - він використовуватиме новий пароль",
    "backToLogin": "Назад до входу",
    "forgotPassword": "Забули пароль?"
  },
  "landing": {
    "brandName": "OmniRoute",
    "navigateHome": "Перейти до дому",
    "toggleMenu": "Переключити меню",
    "featuresLink": "особливості",
    "docsLink": "документи",
    "github": "GitHub",
    "versionLive": "версія 1.0 вже доступна",
    "oneEndpoint": "Одна кінцева точка для",
    "allProviders": "Усі постачальники AI",
    "heroDescription": "Проксі-сервер кінцевої точки штучного інтелекту з веб-панеллю – порт JavaScript для CLIProxyAPI. Бездоганно працює з Claude Code, OpenAI Codex, Cline, RooCode та іншими інструментами CLI.",
    "getStarted": "Почніть роботу",
    "viewOnGithub": "Переглянути на GitHub",
    "powerfulFeatures": "Потужні функції",
    "featuresSubtitle": "Все, що вам потрібно для керування інфраструктурою штучного інтелекту в одному місці, створеному для масштабування.",
    "featureUnifiedEndpointTitle": "Уніфікована кінцева точка",
    "featureUnifiedEndpointDesc": "Доступ до всіх постачальників через єдину стандартну URL-адресу API.",
    "featureEasySetupTitle": "Легке налаштування",
    "featureEasySetupDesc": "Почніть працювати за лічені хвилини за допомогою команди npx.",
    "featureModelFallbackTitle": "Запасна модель",
    "featureModelFallbackDesc": "Автоматично перемикайте постачальників у разі збою або великої затримки.",
    "featureUsageTrackingTitle": "Відстеження використання",
    "featureUsageTrackingDesc": "Детальна аналітика та моніторинг витрат для всіх моделей.",
    "featureOAuthApiKeysTitle": "Ключі OAuth і API",
    "featureOAuthApiKeysDesc": "Безпечно керуйте обліковими даними в одному сховищі.",
    "featureCloudSyncTitle": "Хмарна синхронізація",
    "featureCloudSyncDesc": "Миттєво синхронізуйте конфігурації на всіх пристроях.",
    "featureCliSupportTitle": "Підтримка CLI",
    "featureCliSupportDesc": "Працює з Claude Code, Codex, Cline, Cursor тощо.",
    "featureDashboardTitle": "Приладова панель",
    "featureDashboardDesc": "Візуальна інформаційна панель для аналізу трафіку в реальному часі.",
    "howItWorks": "Як працює OmniRoute",
    "howItWorksDescription": "Дані безперешкодно передаються від вашої програми через наш інтелектуальний рівень маршрутизації до найкращого постачальника для роботи.",
    "howItWorksStep1Title": "1. CLI & SDK",
    "howItWorksStep1Description": "Ваші запити починаються з ваших улюблених інструментів або нашого єдиного SDK. Просто змініть базову URL-адресу.",
    "howItWorksStep2Title": "2. OmniRoute Hub",
    "howItWorksStep2Description": "Наш механізм аналізує запит, перевіряє працездатність постачальника та маршрути для найменшої затримки або вартості.",
    "howItWorksStep3Title": "3. Постачальники AI",
    "howItWorksStep3Description": "Запит виконується OpenAI, Anthropic, Gemini або іншими миттєво.",
    "getStartedIn30Seconds": "Почніть роботу за 30 секунд",
    "getStartedDescription": "Встановіть OmniRoute, налаштуйте своїх провайдерів за допомогою веб-панелі та почніть маршрутизувати запити ШІ.",
    "installOmniRoute": "Встановіть OmniRoute",
    "installStepDescription": "Виконайте команду npx, щоб миттєво запустити сервер",
    "openDashboard": "Відкрийте інформаційну панель",
    "openDashboardStepDescription": "Налаштуйте провайдерів і ключі API через веб-інтерфейс",
    "routeRequests": "Запити на маршрут",
    "routeRequestsStepDescription": "Спрямуйте свої інструменти CLI на {endpoint}",
    "terminal": "термінал",
    "copy": "Копія",
    "copied": "✓ Скопійовано",
    "startingOmniRoute": "Запуск OmniRoute...",
    "serverRunningOnLabel": "Сервер працює",
    "dashboardLabel": "Приладова панель",
    "readyToRoute": "Готовий до маршруту! ✓",
    "configureProvidersNote": "📝 Налаштуйте постачальників на інформаційній панелі або використовуйте змінні середовища",
    "dataLocation": "Розташування даних:",
    "dataLocationMacLinux": " macOS/Linux:",
    "dataLocationWindows": " Windows:",
    "product": "Продукт",
    "dashboardLink": "Приладова панель",
    "changelog": "Журнал змін",
    "resources": "Ресурси",
    "documentation": "Документація",
    "npm": "НПМ",
    "legal": "юридичний",
    "mitLicense": "Ліцензія MIT",
    "footerTagline": "Уніфікована кінцева точка для створення ШІ. З легкістю підключайтеся, маршрутизуйте та керуйте своїми постачальниками AI.",
    "copyright": "© {year} OmniRoute. Всі права захищені.",
    "flowToolClaudeCode": "Клод Код",
    "flowToolOpenAICodex": "Кодекс OpenAI",
    "flowToolCline": "Клайн",
    "flowToolCursor": "Курсор",
    "flowProviderOpenAI": "OpenAI",
    "flowProviderAnthropic": "Антропний",
    "flowProviderGemini": "Близнюки",
    "flowProviderGithubCopilot": "Копілот GitHub",
    "interactiveDiagram": "Інтерактивна діаграма, видима на робочому столі",
    "ctaTitle": "Готові спростити інфраструктуру ШІ?",
    "ctaDescription": "Приєднуйтесь до розробників, які оптимізують свою інтеграцію ШІ за допомогою OmniRoute. З відкритим вихідним кодом і безкоштовно.",
    "startFree": "Почніть безкоштовно",
    "readDocumentation": "Прочитайте документацію"
  },
  "docs": {
    "title": "Документація",
    "quickStart": "Швидкий старт",
    "features": "особливості",
    "supportedProviders": "Підтримувані постачальники",
    "supportedProvidersToc": "Провайдери",
    "commonUseCases": "Загальні випадки використання",
    "clientCompatibility": "Сумісність клієнта",
    "apiReference": "Довідник API",
    "method": "метод",
    "path": "шлях",
    "notes": "Примітки",
    "modelPrefixes": "Префікси моделей",
    "prefix": "Префікс",
    "troubleshooting": "Усунення несправностей",
    "supportsChat": "Підтримує кінцеві точки чату та відповідей.",
    "oauthAutoRefresh": "З’єднання OAuth із автоматичним оновленням маркера.",
    "fullStreaming": "Повна підтримка потокового передавання для всіх моделей.",
    "docsLabel": "документи",
    "docsHeroDescription": "Штучний шлюз для LLM із кількома постачальниками. Одна кінцева точка для OpenAI, Anthropic, Gemini, GitHub Copilot, Claude Code, Cursor та ще понад 20 постачальників.",
    "openDashboard": "Відкрийте інформаційну панель",
    "endpointPage": "Сторінка кінцевої точки",
    "github": "GitHub",
    "reportIssue": "Повідомити про проблему",
    "onThisPage": "На цій сторінці",
    "documentationVersion": "Документація - v{version}",
    "quickStartStep1Title": "1. Встановіть і запустіть",
    "quickStartStep1Prefix": "бігти",
    "quickStartStep1Middle": "або клонуйте з GitHub і запустіть",
    "quickStartStep2Title": "2. Створіть ключ API",
    "quickStartStep2Text": "Перейдіть до Кінцева точка -> Зареєстровані ключі. Згенеруйте один ключ для кожного середовища.",
    "quickStartStep3Title": "3. Підключити провайдерів",
    "quickStartStep3Text": "Додайте облікові записи постачальників за допомогою входу OAuth, ключа API або безкоштовного автоматичного підключення.",
    "quickStartStep4Title": "4. Встановіть базову URL-адресу клієнта",
    "quickStartStep4Prefix": "Наведіть свій клієнт IDE або API на",
    "quickStartStep4Suffix": "Використовуйте, наприклад, префікс провайдера",
    "featureRoutingTitle": "Маршрутизація з кількома провайдерами",
    "featureRoutingText": "Направляйте запити до 30+ постачальників штучного інтелекту через єдину кінцеву точку, сумісну з OpenAI. Підтримує чат, відповіді, аудіо та API зображень.",
    "featureCombosTitle": "Комбо і балансування",
    "featureCombosText": "Створюйте комбіновані моделі з резервними ланцюжками та стратегіями балансування: циклічні, пріоритетні, випадкові, найменш використовувані та оптимізовані за витратами.",
    "featureUsageTitle": "Відстеження використання та витрат",
    "featureUsageText": "Підрахунок токенів у реальному часі, розрахунок вартості для кожного постачальника/моделі та детальна розбивка використання за ключем API та обліковим записом.",
    "featureAnalyticsTitle": "Інформаційна панель Analytics",
    "featureAnalyticsText": "Візуальна аналітика з діаграмами для запитів, токенів, помилок, затримок, витрат і популярності моделі з часом.",
    "featureHealthTitle": "Моніторинг здоров'я",
    "featureHealthText": "Перевірки працездатності в реальному часі, статус постачальника, стани автоматичного вимикача та автоматичне виявлення обмеження швидкості з експоненціальним відстрочкою.",
    "featureCliTitle": "Інструменти CLI",
    "featureCliText": "Керуйте конфігураціями IDE, експортуйте/імпортуйте резервні копії, виявляйте профілі Codex і налаштовуйте параметри з інформаційної панелі.",
    "featureSecurityTitle": "Безпека та політика",
    "featureSecurityText": "Автентифікація ключа API, IP-фільтрація, захист від оперативного ін’єкції, політики домену, керування сеансами та журнал аудиту.",
    "featureCloudSyncTitle": "Хмарна синхронізація",
    "featureCloudSyncText": "Синхронізуйте свою конфігурацію з Cloudflare Workers для віддаленого доступу із зашифрованими обліковими даними та автоматичним відновленням після відмови.",
    "providersAcrossConnectionTypes": "{count} постачальників у трьох типах підключення.",
    "manageProviders": "Керувати постачальниками",
    "providersCount": "{count} постачальників",
    "providerTypeFree": "Вільний рівень",
    "providerTypeOAuth": "OAuth",
    "providerTypeApiKey": "Ключ API",
    "useCaseSingleEndpointTitle": "Єдина кінцева точка для багатьох постачальників",
    "useCaseSingleEndpointText": "Направляйте клієнтам одну базову URL-адресу та маршрут за префіксом моделі (наприклад: gh/, cc/, kr/, openai/).",
    "useCaseFallbackTitle": "Відкат і перемикання моделей за допомогою комбо",
    "useCaseFallbackText": "Створюйте комбіновані моделі на інформаційній панелі та зберігайте конфігурацію клієнта стабільною, поки постачальники змінюють внутрішню ротацію.",
    "useCaseUsageVisibilityTitle": "Використання, вартість і видимість налагодження",
    "useCaseUsageVisibilityText": "Відстежуйте токени та вартість за постачальником, обліковим записом і ключем API на вкладках «Використання» та «Аналітика».",
    "clientCherryStudioTitle": "Вишнева студія",
    "baseUrlLabel": "Базовий URL",
    "chatEndpointLabel": "Кінцева точка чату",
    "modelRecommendationLabel": "Рекомендована модель: явний префікс",
    "clientCodexTitle": "Моделі Codex / GitHub Copilot",
    "clientCodexBullet1": "Використовуйте ідентифікатори моделі з",
    "clientCodexBullet2": "Моделі сімейства Codex авто-маршрут до",
    "clientCodexBullet3": "Моделі, що не належать до Codex, продовжуються",
    "clientCursorTitle": "Курсор IDE",
    "clientCursorBullet1": "використання",
    "clientCursorBullet1Suffix": "префікс для моделей Cursor.",
    "clientCursorBullet2": "Підключення OAuth - вхід зі сторінки постачальників.",
    "clientClaudeTitle": "Клод Код / Антигравітація",
    "clientClaudeBullet1Prefix": "використання",
    "clientClaudeBullet1Middle": "(Клод) або",
    "clientClaudeBullet1Suffix": "(Антигравітація) префікс.",
    "endpointChatNote": "Кінцева точка чату, сумісна з OpenAI (за замовчуванням).",
    "endpointResponsesNote": "Кінцева точка API відповідей (Codex, o-series).",
    "endpointModelsNote": "Каталог моделей для всіх підключених провайдерів.",
    "endpointAudioNote": "Транскрипція аудіо (Deepgram, AssemblyAI).",
    "endpointImagesNote": "Генерація зображення (NanoBanana).",
    "endpointRewriteChatNote": "Помічник перезапису для клієнтів без /v1.",
    "endpointRewriteResponsesNote": "Переписати помічник для відповідей без /v1.",
    "endpointRewriteModelsNote": "Переписати помічник для виявлення моделі без /v1.",
    "modelPrefixesDescriptionStart": "Використовуйте префікс постачальника перед назвою моделі, щоб маршрутизувати до певного постачальника. приклад:",
    "modelPrefixesDescriptionEnd": "маршрути до GitHub Copilot.",
    "provider": "Провайдер",
    "type": "Тип",
    "troubleshootingModelRouting": "Якщо клієнту не вдається виконати модель маршрутизації, використовуйте явний постачальник/модель (наприклад: gh/gpt-5.1-codex).",
    "troubleshootingAmbiguousModels": "Якщо ви отримуєте неоднозначні помилки моделі, виберіть префікс постачальника замість простого ідентифікатора моделі.",
    "troubleshootingCodexFamily": "Для моделей сімейства GitHub Codex збережіть модель як gh/<codex-model>; маршрутизатор вибирає /відповідає автоматично.",
    "troubleshootingTestConnection": "Перед тестуванням із IDE або зовнішніх клієнтів скористайтеся інструментальною панеллю > Постачальники > Перевірити з’єднання.",
    "troubleshootingCircuitBreaker": "Якщо постачальник показує, що автоматичний вимикач розімкнуто, дочекайтеся охолодження або подробиці перевірте на сторінці «Стан».",
    "troubleshootingOAuth": "Для постачальників OAuth повторна автентифікація, якщо термін дії маркерів закінчився. Перевірте індикатор стану картки провайдера."
  },
  "legal": {
    "privacyPolicy": "Політика конфіденційності",
    "termsOfService": "Умови обслуговування",
    "providerConfigurations": "Конфігурації провайдера",
    "apiKeys": "Ключі API",
    "usageLogs": "Журнали використання",
    "applicationSettings": "Налаштування програми",
    "viewExportAnalytics": "Перегляд і експорт аналітики використання",
    "clearHistory": "Очистити історію використання в будь-який час",
    "configureRetention": "Налаштувати політики збереження журналів",
    "backupRestore": "Резервне копіювання та відновлення бази даних",
    "privacyMetadataTitle": "Політика конфіденційності | OmniRoute",
    "privacyMetadataDescription": "Політика конфіденційності для проксі-маршрутизатора OmniRoute AI API.",
    "termsMetadataTitle": "Умови надання послуг | OmniRoute",
    "termsMetadataDescription": "Умови використання проксі-маршрутизатора OmniRoute AI API.",
    "backToHome": "Назад додому",
    "lastUpdated": "Останнє оновлення: {date}",
    "policyLastUpdatedDate": "13 лютого 2026 р",
    "listSeparator": "-",
    "questionsVisit": "Запитання? Відвідайте наш",
    "githubRepository": "Репозиторій GitHub",
    "privacySection1Title": "1. Місцева архітектура",
    "privacySection1Text": "OmniRoute створено як локальну програму. Уся обробка та зберігання даних відбувається повністю на вашій машині. Немає централізованого сервера, який би збирав вашу інформацію.",
    "privacySection2Title": "2. Дані, які ми зберігаємо",
    "privacyDataStoredIn": "Наступні дані зберігаються локально в",
    "privacyDataProviderConfigurationsDesc": "URL-адреси підключення, типи провайдерів і налаштування пріоритету",
    "privacyDataApiKeysDesc": "зашифровані та зберігаються локально для автентифікації в постачальників AI",
    "privacyDataUsageLogsDesc": "кількість запитів, використання маркерів, назви моделей, мітки часу та час відповіді",
    "privacyDataApplicationSettingsDesc": "параметри теми, стратегію маршрутизації та комбіновані конфігурації",
    "privacySection3Title": "3. Відсутність телеметрії",
    "privacySection3Text": "OmniRoute не збирає дані телеметрії, аналітику чи звіти про збої. Жодні дані не надсилаються ні нам, ні будь-якій третій стороні. Ваші моделі використання, виклики API та конфігурації залишаються повністю приватними.",
    "privacySection4Title": "4. Сторонні постачальники штучного інтелекту",
    "privacySection4Text": "Коли ви здійснюєте виклики API через OmniRoute, ваші запити пересилаються до налаштованих вами постачальників штучного інтелекту (наприклад: OpenAI, Anthropic, Google). Ці постачальники мають власні політики конфіденційності, які визначають, як вони обробляють ваші дані. Будь ласка, перегляньте:",
    "privacyOpenAiPolicy": "Політика конфіденційності OpenAI",
    "privacyAnthropicPolicy": "Політика конфіденційності Anthropic",
    "privacyGooglePolicy": "Політика конфіденційності Google",
    "privacySection5Title": "5. Хмарна синхронізація (необов’язково)",
    "privacySection5Text": "Якщо ви ввімкнете додаткову функцію хмарної синхронізації, конфігурації постачальника та ключі API можуть передаватися на налаштовану кінцеву точку хмари. Ця функція вимкнена за замовчуванням і вимагає явної згоди.",
    "privacySection6Title": "6. Заготівля лісу",
    "privacyLoggingIntro": "Журнали запитів можна налаштувати в налаштуваннях інформаційної панелі. Ви можете:",
    "privacySection7Title": "7. Ваші права",
    "privacySection7TextStart": "Оскільки всі дані зберігаються локально, ви маєте повний контроль. Ви можете будь-коли видалити свої дані, видаливши",
    "privacySection7TextEnd": "каталогу або за допомогою функцій резервного копіювання та відновлення бази даних на інформаційній панелі.",
    "termsSection1Title": "1. Огляд",
    "termsSection1Text": "OmniRoute — це локальний проксі-маршрутизатор API API, який повністю працює на вашому комп’ютері. Він направляє запити до кількох постачальників штучного інтелекту за допомогою балансування навантаження, відновлення після відмови та відстеження використання.",
    "termsSection2Title": "2. Обов'язки користувача",
    "termsResponsibilityApiKeys": "Ви несете повну відповідальність за керування власними ключами API та обліковими даними для сторонніх постачальників штучного інтелекту (OpenAI, Anthropic, Google тощо).",
    "termsResponsibilityCompliance": "Ви повинні дотримуватися умов обслуговування кожного постачальника штучного інтелекту, до API якого ви отримуєте доступ через OmniRoute.",
    "termsResponsibilitySecurity": "Ви несете відповідальність за безпеку локальної інсталяції OmniRoute, включаючи встановлення пароля та обмеження доступу до мережі.",
    "termsSection3Title": "3. Як це працює",
    "termsSection3Text": "OmniRoute діє як проксі-сервер-посередник. Виклики API, надіслані до OmniRoute, перекладаються та пересилаються вашим налаштованим постачальникам AI. OmniRoute не змінює вміст ваших запитів або відповідей крім необхідного перекладу протоколу.",
    "termsSection4Title": "4. Обробка даних",
    "termsDataStoredLocally": "Усі дані зберігаються локально на вашій машині в базі даних SQLite.",
    "termsNoTransmission": "OmniRoute не передає жодних даних на зовнішні сервери, якщо ви явно не активуєте функції хмарної синхронізації.",
    "termsDataLocationText": "Журнали використання, ключі API та конфігурація зберігаються в",
    "termsSection5Title": "5. Відмова від відповідальності",
    "termsSection5Text": "OmniRoute надається «як є» без будь-яких гарантій. Ми не несемо відповідальності за будь-які витрати, пов’язані з використанням API, перебоями в роботі служби або втратою даних. Завжди створюйте резервні копії вашої конфігурації.",
    "termsSection6Title": "6. Відкритий код",
    "termsSection6Text": "OmniRoute — це програмне забезпечення з відкритим кодом. Ви можете вільно перевіряти, змінювати та поширювати його відповідно до умов його ліцензії."
  }
}
