Files
Cli-Proxy-API-Management-Ce…/src/i18n/locales/ru.json

1128 lines
82 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"common": {
"login": "Войти",
"logout": "Выйти",
"back": "Назад",
"cancel": "Отмена",
"confirm": "Подтвердить",
"save": "Сохранить",
"delete": "Удалить",
"edit": "Редактировать",
"add": "Добавить",
"update": "Обновить",
"refresh": "Обновить",
"close": "Закрыть",
"success": "Успешно",
"error": "Ошибка",
"info": "Информация",
"warning": "Внимание",
"loading": "Загрузка...",
"connecting": "Подключение...",
"connected": "Подключено",
"disconnected": "Отключено",
"connecting_status": "Подключение",
"connected_status": "Подключено",
"disconnected_status": "Отключено",
"yes": "Да",
"no": "Нет",
"not_set": "Не задано",
"optional": "Необязательно",
"required": "Обязательно",
"api_key": "Ключ",
"base_url": "Адрес",
"prefix": "Префикс",
"proxy_url": "Прокси",
"alias": "Псевдоним",
"failure": "Сбой",
"unknown_error": "Неизвестная ошибка",
"quota_update_required": "Пожалуйста, обновите CPA или проверьте наличие обновлений",
"quota_check_credential": "Пожалуйста, проверьте статус учётных данных",
"copy": "Копировать",
"custom_headers_label": "Пользовательские заголовки",
"custom_headers_hint": "Необязательно — HTTP-заголовки для отправки с запросом. Оставьте пустым для удаления.",
"custom_headers_add": "Добавить заголовок",
"custom_headers_key_placeholder": "Имя заголовка, например X-Custom-Header",
"custom_headers_value_placeholder": "Значение заголовка",
"model_name_placeholder": "Имя модели, напр. claude-3-5-sonnet-20241022",
"model_alias_placeholder": "Псевдоним модели (необязательно)"
},
"title": {
"main": "Центр управления CLI Proxy API",
"login": "Центр управления CLI Proxy API",
"abbr": "CPAMC"
},
"auto_login": {
"title": "Автовход...",
"message": "Пытаемся подключиться к серверу, используя сохранённые данные"
},
"login": {
"subtitle": "Введите данные подключения, чтобы получить доступ к панели управления",
"connection_title": "Адрес подключения",
"connection_current": "Текущий URL",
"connection_auto_hint": "Система автоматически использует текущий URL для подключения",
"custom_connection_label": "Пользовательский URL подключения:",
"custom_connection_placeholder": "Напр.: https://example.com:8317",
"custom_connection_hint": "По умолчанию используется текущий URL. При необходимости замените его.",
"use_current_address": "Использовать текущий URL",
"remember_password_label": "Запомнить пароль",
"management_key_label": "Ключ управления:",
"management_key_placeholder": "Введите ключ управления",
"connect_button": "Подключиться",
"submit_button": "Войти",
"submitting": "Подключение...",
"error_title": "Ошибка входа",
"error_required": "Пожалуйста, заполните все данные подключения",
"error_invalid": "Подключение не удалось, проверьте адрес и ключ",
"error_network": "Сетевая ошибка, проверьте подключение или адрес сервера",
"error_timeout": "Время ожидания истекло, сервер не отвечает",
"error_unauthorized": "Аутентификация не удалась, неверный ключ управления",
"error_forbidden": "Доступ запрещён, недостаточно прав",
"error_not_found": "Неверный адрес сервера или интерфейс управления не включён",
"error_server": "Внутренняя ошибка сервера, попробуйте позже",
"error_cors": "Блокировка CORS, проверьте конфигурацию сервера",
"error_ssl": "Ошибка проверки SSL/TLS сертификата"
},
"header": {
"check_connection": "Проверить подключение",
"refresh_all": "Обновить всё",
"logout": "Выйти"
},
"connection": {
"title": "Информация о подключении",
"server_address": "Адрес сервера:",
"management_key": "Ключ управления:",
"status": "Статус подключения:"
},
"nav": {
"dashboard": "Панель",
"basic_settings": "Основные настройки",
"api_keys": "API ключи",
"ai_providers": "Поставщики AI",
"auth_files": "Файлы аутентификации",
"oauth": "OAuth вход",
"quota_management": "Управление квотами",
"usage_stats": "Статистика использования",
"config_management": "Панель конфигурации",
"logs": "Просмотр логов",
"system_info": "Информация системы"
},
"dashboard": {
"title": "Панель управления",
"subtitle": "Добро пожаловать в Центр управления CLI Proxy API",
"openai_providers": "Поставщики OpenAI",
"quick_actions": "Быстрые действия",
"current_config": "Текущая конфигурация",
"management_keys": "Ключи управления",
"provider_keys_detail": "G:{{gemini}} C:{{codex}} Cl:{{claude}} O:{{openai}}",
"oauth_credentials": "Учётные данные OAuth",
"usage_overview": "Обзор использования",
"total_requests": "Всего запросов",
"total_tokens": "Всего токенов",
"rpm_30min": "RPM (30 мин)",
"tpm_30min": "TPM (30 мин)",
"models_used": "Используемые модели",
"no_usage_data": "Данные об использовании отсутствуют",
"view_detailed_usage": "Просмотреть детальную статистику",
"edit_settings": "Изменить настройки",
"available_models": "Доступные модели",
"available_models_desc": "Всего моделей от всех провайдеров"
},
"basic_settings": {
"title": "Основные настройки",
"debug_title": "Режим отладки",
"debug_enable": "Включить режим отладки",
"proxy_title": "Настройки прокси",
"proxy_url_label": "URL прокси:",
"proxy_url_placeholder": "например: socks5://user:pass@127.0.0.1:1080/",
"proxy_update": "Обновить",
"proxy_clear": "Очистить",
"retry_title": "Повтор запросов",
"retry_count_label": "Количество повторов:",
"retry_update": "Обновить",
"quota_title": "Поведение при превышении квоты",
"quota_switch_project": "Автоматически переключать проект",
"quota_switch_preview": "Переключаться на preview-модель",
"usage_statistics_title": "Статистика использования",
"usage_statistics_enable": "Включить статистику использования",
"logging_title": "Журналирование",
"logging_to_file_enable": "Включить журналирование в файл",
"logs_max_total_size_title": "Лимит размера журналов",
"logs_max_total_size_label": "Максимальный общий размер журналов (МБ):",
"logs_max_total_size_hint": "Установите 0, чтобы отключить лимит.",
"logs_max_total_size_update": "Обновить",
"request_log_title": "Журналирование запросов",
"request_log_enable": "Включить журналирование запросов",
"request_log_warning": "Оставьте выключенным, если подробная диагностика не нужна.",
"force_model_prefix_enable": "Включить принудительный префикс модели",
"ws_auth_title": "Аутентификация WebSocket",
"ws_auth_enable": "Требовать аутентификацию для /ws/*",
"routing_title": "Стратегия маршрутизации",
"routing_strategy_label": "Стратегия маршрутизации:",
"routing_strategy_hint": "round-robin циклически перебирает ключи; fill-first отдаёт приоритет первому доступному ключу.",
"routing_strategy_update": "Обновить",
"routing_strategy_round_robin": "round-robin (цикл)",
"routing_strategy_fill_first": "fill-first (приоритет)"
},
"api_keys": {
"title": "Управление API-ключами",
"proxy_auth_title": "Ключи аутентификации прокси-сервиса",
"add_button": "Добавить ключ",
"empty_title": "API-ключи отсутствуют",
"empty_desc": "Нажмите кнопку выше, чтобы добавить первый ключ",
"item_title": "API-ключ",
"add_modal_title": "Добавление API-ключа",
"add_modal_key_label": "API-ключ:",
"add_modal_key_placeholder": "Введите API-ключ",
"edit_modal_title": "Редактирование API-ключа",
"edit_modal_key_label": "API-ключ:",
"delete_confirm": "Удалить этот API-ключ?"
},
"ai_providers": {
"title": "Конфигурация AI-провайдеров",
"gemini_title": "API-ключи Gemini",
"gemini_add_button": "Добавить ключ",
"gemini_empty_title": "Ключи Gemini отсутствуют",
"gemini_empty_desc": "Нажмите кнопку выше, чтобы добавить первый ключ",
"gemini_item_title": "Ключ Gemini",
"gemini_add_modal_title": "Добавление API-ключа Gemini",
"gemini_add_modal_key_label": "API-ключи:",
"gemini_add_modal_key_placeholder": "Введите API-ключ Gemini",
"gemini_add_modal_key_hint": "Добавляйте ключи по одному и при необходимости указывайте базовый URL.",
"gemini_keys_add_btn": "Добавить ключ",
"gemini_base_url_label": "Базовый URL (необязательно):",
"gemini_base_url_placeholder": "например: https://generativelanguage.googleapis.com",
"gemini_edit_modal_title": "Редактирование API-ключа Gemini",
"gemini_edit_modal_key_label": "API-ключ:",
"gemini_delete_confirm": "Удалить этот ключ Gemini?",
"excluded_models_label": "Исключённые модели (необязательно):",
"excluded_models_placeholder": "Через запятую или с новой строки, например gemini-1.5-pro, gemini-1.5-flash",
"excluded_models_hint": "Оставьте пустым, чтобы разрешить все модели; значения автоматически обрезаются и дедуплицируются.",
"excluded_models_count": "Исключено моделей: {{count}}",
"prefix_label": "Префикс (необязательно):",
"prefix_placeholder": "например: team-a",
"prefix_hint": "Если задано, обращайтесь к моделям как prefix/<model>, чтобы выбрать эту запись.",
"config_toggle_label": "Включено",
"config_disabled_badge": "Отключено",
"codex_title": "Конфигурация Codex API",
"codex_add_button": "Добавить конфигурацию",
"codex_empty_title": "Конфигурации Codex отсутствуют",
"codex_empty_desc": "Нажмите кнопку выше, чтобы добавить первую конфигурацию",
"codex_item_title": "Конфигурация Codex",
"codex_add_modal_title": "Добавление конфигурации Codex API",
"codex_add_modal_key_label": "API-ключ:",
"codex_add_modal_key_placeholder": "Введите API-ключ Codex",
"codex_add_modal_url_label": "Базовый URL (обязательно):",
"codex_add_modal_url_placeholder": "например: https://api.example.com",
"codex_add_modal_proxy_label": "URL прокси (необязательно):",
"codex_add_modal_proxy_placeholder": "например: socks5://proxy.example.com:1080",
"codex_edit_modal_title": "Редактирование конфигурации Codex API",
"codex_edit_modal_key_label": "API-ключ:",
"codex_edit_modal_url_label": "Базовый URL (обязательно):",
"codex_edit_modal_proxy_label": "URL прокси (необязательно):",
"codex_delete_confirm": "Удалить эту конфигурацию Codex?",
"claude_title": "Конфигурация Claude API",
"claude_add_button": "Добавить конфигурацию",
"claude_empty_title": "Конфигурации Claude отсутствуют",
"claude_empty_desc": "Нажмите кнопку выше, чтобы добавить первую конфигурацию",
"claude_item_title": "Конфигурация Claude",
"claude_add_modal_title": "Добавление конфигурации Claude API",
"claude_add_modal_key_label": "API-ключ:",
"claude_add_modal_key_placeholder": "Введите API-ключ Claude",
"claude_add_modal_url_label": "Базовый URL (необязательно):",
"claude_add_modal_url_placeholder": "например: https://api.anthropic.com",
"claude_add_modal_proxy_label": "URL прокси (необязательно):",
"claude_add_modal_proxy_placeholder": "например: socks5://proxy.example.com:1080",
"claude_edit_modal_title": "Редактирование конфигурации Claude API",
"claude_edit_modal_key_label": "API-ключ:",
"claude_edit_modal_url_label": "Базовый URL (необязательно):",
"claude_edit_modal_proxy_label": "URL прокси (необязательно):",
"claude_delete_confirm": "Удалить эту конфигурацию Claude?",
"claude_models_label": "Пользовательские модели (необязательно):",
"claude_models_hint": "Оставьте пустым, чтобы разрешить все модели, или добавьте записи name[, alias], чтобы ограничить/переименовать их.",
"claude_models_add_btn": "Добавить модель",
"claude_models_count": "Количество моделей",
"vertex_title": "Конфигурация Vertex API",
"vertex_add_button": "Добавить конфигурацию",
"vertex_empty_title": "Конфигурации Vertex отсутствуют",
"vertex_empty_desc": "Нажмите кнопку выше, чтобы добавить первую конфигурацию",
"vertex_item_title": "Конфигурация Vertex",
"vertex_add_modal_title": "Добавление конфигурации Vertex API",
"vertex_add_modal_key_label": "API-ключ:",
"vertex_add_modal_key_placeholder": "Введите API-ключ Vertex",
"vertex_add_modal_url_label": "Базовый URL (обязательно):",
"vertex_add_modal_url_placeholder": "например: https://example.com/api",
"vertex_add_modal_proxy_label": "URL прокси (необязательно):",
"vertex_add_modal_proxy_placeholder": "например: socks5://proxy.example.com:1080",
"vertex_edit_modal_title": "Редактирование конфигурации Vertex API",
"vertex_edit_modal_key_label": "API-ключ:",
"vertex_edit_modal_url_label": "Базовый URL (обязательно):",
"vertex_edit_modal_proxy_label": "URL прокси (необязательно):",
"vertex_delete_confirm": "Удалить эту конфигурацию Vertex?",
"vertex_models_label": "Псевдонимы моделей (требуется псевдоним):",
"vertex_models_add_btn": "Добавить сопоставление",
"vertex_models_hint": "Каждому псевдониму требуются исходная модель и псевдоним.",
"vertex_models_count": "Количество псевдонимов",
"ampcode_title": "Интеграция Amp CLI (ampcode)",
"ampcode_modal_title": "Настройка Ampcode",
"ampcode_upstream_url_label": "Upstream URL",
"ampcode_upstream_url_placeholder": "например: https://ampcode.com",
"ampcode_upstream_url_hint": "Необязательно. Оставьте пустым, чтобы использовать URL плоскости управления по умолчанию/обнаруженный автоматически.",
"ampcode_upstream_api_key_label": "Upstream API-ключ (официальный Amp)",
"ampcode_upstream_api_key_placeholder": "Введите sk-amp... (оставьте пустым, чтобы сохранить текущий)",
"ampcode_upstream_api_key_hint": "Необязательно. Пустое значение не изменит текущий официальный ключ Amp. Используйте кнопку ниже, чтобы очистить его.",
"ampcode_upstream_api_key_current": "Текущий официальный ключ Amp: {{key}}",
"ampcode_clear_upstream_api_key": "Очистить официальный ключ",
"ampcode_clear_upstream_api_key_confirm": "Очистить upstream API-ключ Ampcode (официальный Amp)?",
"ampcode_force_model_mappings_label": "Принудительно применять сопоставления моделей",
"ampcode_force_model_mappings_hint": "При включении сопоставления переопределяют локальные проверки доступности API-ключей.",
"ampcode_model_mappings_label": "Сопоставления моделей (из → в)",
"ampcode_model_mappings_hint": "Переименовывает модели в запросах Amp. Оставьте пустым, чтобы отключить сопоставления.",
"ampcode_model_mappings_add_btn": "Добавить сопоставление",
"ampcode_model_mappings_from_placeholder": "исходная модель",
"ampcode_model_mappings_to_placeholder": "целевая модель",
"ampcode_model_mappings_count": "Количество сопоставлений",
"ampcode_mappings_overwrite_confirm": "Не удалось загрузить существующие сопоставления. Продолжение может перезаписать или очистить их. Продолжить?",
"openai_title": "Совместимые с OpenAI провайдеры",
"openai_add_button": "Добавить провайдера",
"openai_empty_title": "Провайдеры OpenAI отсутствуют",
"openai_empty_desc": "Нажмите кнопку выше, чтобы добавить первого провайдера",
"openai_add_modal_title": "Добавление совместимого с OpenAI провайдера",
"openai_add_modal_name_label": "Имя провайдера:",
"openai_add_modal_name_placeholder": "например: openrouter",
"openai_add_modal_url_label": "Базовый URL:",
"openai_add_modal_url_placeholder": "например: https://openrouter.ai/api/v1",
"openai_add_modal_keys_label": "API-ключи",
"openai_edit_modal_keys_label": "API-ключи",
"openai_keys_hint": "Добавляйте каждый ключ отдельно с необязательным URL прокси для удобства.",
"openai_keys_add_btn": "Добавить ключ",
"openai_key_placeholder": "ключ вида sk-...",
"openai_proxy_placeholder": "Необязательный URL прокси (например, socks5://...)",
"openai_add_modal_models_label": "Список моделей (name[, alias] по строкам):",
"openai_models_hint": "Пример: gpt-4o-mini или moonshotai/kimi-k2:free, kimi-k2",
"openai_model_name_placeholder": "Имя модели, например moonshotai/kimi-k2:free",
"openai_model_alias_placeholder": "Псевдоним модели (необязательно)",
"openai_models_add_btn": "Добавить модель",
"openai_models_fetch_button": "Получить через /models",
"openai_models_fetch_title": "Выбор моделей из /models",
"openai_models_fetch_hint": "Вызовите эндпоинт /models, используя указанный выше базовый URL, отправив первый API-ключ как Bearer с дополнительными заголовками.",
"openai_models_fetch_url_label": "URL запроса",
"openai_models_fetch_refresh": "Обновить",
"openai_models_fetch_loading": "Получение моделей из /models...",
"openai_models_fetch_empty": "Модели не вернулись. Проверьте эндпоинт или авторизацию.",
"openai_models_fetch_error": "Не удалось получить модели",
"openai_models_fetch_back": "Вернуться к редактированию",
"openai_models_fetch_apply": "Добавить выбранные модели",
"openai_models_search_label": "Поиск моделей",
"openai_models_search_placeholder": "Фильтр по имени, псевдониму или описанию",
"openai_models_search_empty": "Модели по запросу не найдены. Попробуйте другой ключ.",
"openai_models_fetch_invalid_url": "Сначала введите корректный базовый URL",
"openai_models_fetch_added": "Добавлено новых моделей: {{count}}",
"openai_edit_modal_title": "Редактирование совместимого с OpenAI провайдера",
"openai_edit_modal_name_label": "Имя провайдера:",
"openai_edit_modal_url_label": "Базовый URL:",
"openai_edit_modal_models_label": "Список моделей (name[, alias] по строкам):",
"openai_delete_confirm": "Удалить этого провайдера OpenAI?",
"openai_keys_count": "Количество ключей",
"openai_models_count": "Количество моделей",
"openai_test_title": "Тест подключения",
"openai_test_hint": "Отправьте запрос /chat/completions с текущими настройками, чтобы проверить доступность.",
"openai_test_model_placeholder": "Модель для теста",
"openai_test_action": "Запустить тест",
"openai_test_running": "Отправка тестового запроса...",
"openai_test_timeout": "Тестовый запрос превысил тайм-аут {{seconds}} с",
"openai_test_success": "Тест выполнен успешно. Модель ответила.",
"openai_test_failed": "Тест не выполнен",
"openai_test_select_placeholder": "Выберите из текущих моделей",
"openai_test_select_empty": "Модели не настроены. Сначала добавьте модели"
},
"auth_files": {
"title": "Управление файлами авторизации",
"title_section": "Файлы авторизации",
"description": "Управляйте всеми JSON-файлами авторизации CLI Proxy (например, Qwen, Gemini, Vertex). Загрузка учётных данных сразу включает соответствующую интеграцию AI.",
"upload_button": "Загрузить файл",
"delete_all_button": "Удалить всё",
"empty_title": "Файлы авторизации отсутствуют",
"empty_desc": "Нажмите кнопку выше, чтобы загрузить первый файл",
"search_empty_title": "Файлы не найдены",
"search_empty_desc": "Попробуйте изменить фильтры или очистить строку поиска.",
"file_size": "Размер",
"file_modified": "Изменён",
"download_button": "Скачать",
"delete_button": "Удалить",
"delete_confirm": "Удалить файл",
"delete_all_confirm": "Удалить все файлы авторизации? Это действие нельзя отменить!",
"delete_filtered_confirm": "Удалить все файлы авторизации {{type}}? Это действие нельзя отменить!",
"upload_error_json": "Допустимы только файлы JSON",
"upload_error_size": "Размер файла не может превышать {{maxSize}}",
"upload_success": "Файл успешно загружен",
"download_success": "Файл успешно скачан",
"delete_success": "Файл успешно удалён",
"delete_all_success": "Удаление завершено",
"delete_filtered_success": "Удалено файлов {{type}}: {{count}}",
"delete_filtered_partial": "Удаление файлов {{type}} завершено: успешных {{success}}, ошибок {{failed}}",
"delete_filtered_none": "Нет файлов {{type}} для удаления при текущем фильтре",
"files_count": "файлов",
"pagination_prev": "Предыдущая",
"pagination_next": "Следующая",
"pagination_info": "Страница {{current}} / {{total}} · {{count}} файлов",
"search_label": "Поиск конфигов",
"search_placeholder": "Фильтр по имени, типу или провайдеру",
"page_size_label": "На странице",
"page_size_unit": "элементов",
"view_mode_paged": "Постранично",
"view_mode_all": "Показать все",
"too_many_files_warning": "Слишком много учётных данных. Полный список может повлиять на производительность, используйте постраничный режим.",
"filter_all": "Все",
"filter_qwen": "Qwen",
"filter_gemini": "Gemini",
"filter_gemini-cli": "GeminiCLI",
"filter_kimi": "Kimi",
"filter_aistudio": "AIStudio",
"filter_claude": "Claude",
"filter_codex": "Codex",
"filter_antigravity": "Antigravity",
"filter_iflow": "iFlow",
"filter_vertex": "Vertex",
"filter_empty": "Пусто",
"filter_unknown": "Другое",
"type_qwen": "Qwen",
"type_gemini": "Gemini",
"type_gemini-cli": "GeminiCLI",
"type_kimi": "Kimi",
"type_aistudio": "AIStudio",
"type_claude": "Claude",
"type_codex": "Codex",
"type_antigravity": "Antigravity",
"type_iflow": "iFlow",
"type_vertex": "Vertex",
"type_empty": "Пусто",
"type_unknown": "Другое",
"type_virtual": "Виртуальный файл авторизации",
"models_button": "Модели",
"models_title": "Поддерживаемые модели",
"models_loading": "Загрузка списка моделей...",
"models_empty": "Для этих учётных данных нет доступных моделей",
"models_empty_desc": "Возможно, учётные данные ещё не загружены сервером или к ним не привязаны модели.",
"models_unsupported": "Функция не поддерживается в текущей версии",
"models_unsupported_desc": "Обновите CLI Proxy API до последней версии и повторите попытку",
"models_excluded_badge": "Исключена",
"models_excluded_hint": "Эта модель исключена OAuth",
"status_toggle_label": "Включено",
"status_enabled_success": "\"{{name}}\" включён",
"status_disabled_success": "\"{{name}}\" отключён",
"prefix_proxy_button": "Изменить prefix/proxy_url",
"prefix_proxy_loading": "Загрузка учётных данных...",
"prefix_proxy_source_label": "JSON учётных данных",
"prefix_label": "prefix",
"proxy_url_label": "proxy_url",
"prefix_placeholder": "",
"proxy_url_placeholder": "socks5://username:password@proxy_ip:port/",
"prefix_proxy_invalid_json": "Эти учётные данные не являются JSON-объектом и не могут быть изменены.",
"prefix_proxy_saved_success": "\"{{name}}\" успешно обновлён",
"card_tools_title": "Инструменты",
"quota_refresh_single": "Обновить квоту",
"quota_refresh_hint": "Обновить квоту только для этих учётных данных",
"quota_refresh_success": "Квота для \"{{name}}\" обновлена",
"quota_refresh_failed": "Не удалось обновить квоту для \"{{name}}\": {{message}}"
},
"antigravity_quota": {
"title": "Квота Antigravity",
"empty_title": "Файлы авторизации Antigravity отсутствуют",
"empty_desc": "Загрузите учётные данные Antigravity, чтобы увидеть оставшуюся квоту.",
"idle": "Не загружено. Нажмите \"Обновить квоту\".",
"loading": "Загрузка квоты...",
"load_failed": "Не удалось загрузить квоту: {{message}}",
"missing_auth_index": "В файле авторизации отсутствует auth_index",
"empty_models": "Данные по квоте отсутствуют",
"refresh_button": "Обновить квоту",
"fetch_all": "Получить все"
},
"codex_quota": {
"title": "Квота Codex",
"empty_title": "Файлы авторизации Codex отсутствуют",
"empty_desc": "Загрузите учётные данные Codex, чтобы увидеть квоту.",
"idle": "Не загружено. Нажмите \"Обновить квоту\".",
"loading": "Загрузка квоты...",
"load_failed": "Не удалось загрузить квоту: {{message}}",
"missing_auth_index": "В файле авторизации отсутствует auth_index",
"missing_account_id": "В учётных данных Codex отсутствует идентификатор аккаунта ChatGPT",
"empty_windows": "Данные по квоте отсутствуют",
"no_access": "У этих учётных данных нет доступа Codex (план: free).",
"refresh_button": "Обновить квоту",
"fetch_all": "Получить все",
"primary_window": "Лимит на 5 часов",
"secondary_window": "Недельный лимит",
"code_review_primary_window": "Лимит code review на 5 часов",
"code_review_secondary_window": "Недельный лимит code review",
"plan_label": "Тариф",
"plan_plus": "Plus",
"plan_team": "Team",
"plan_free": "Free"
},
"gemini_cli_quota": {
"title": "Квота Gemini CLI",
"empty_title": "Файлы авторизации Gemini CLI отсутствуют",
"empty_desc": "Загрузите учётные данные Gemini CLI, чтобы увидеть оставшуюся квоту.",
"idle": "Не загружено. Нажмите \"Обновить квоту\".",
"loading": "Загрузка квоты...",
"load_failed": "Не удалось загрузить квоту: {{message}}",
"missing_auth_index": "В файле авторизации отсутствует auth_index",
"missing_project_id": "В учётных данных Gemini CLI отсутствует идентификатор проекта",
"empty_buckets": "Данные по квоте отсутствуют",
"refresh_button": "Обновить квоту",
"fetch_all": "Получить все",
"remaining_amount": "Осталось {{count}}"
},
"vertex_import": {
"title": "Вход с Vertex JSON",
"description": "Загрузите JSON ключа сервисного аккаунта Google, чтобы сохранить его как auth-dir/vertex-<project>.json по тем же правилам, что и помощник CLI vertex-import.",
"location_label": "Регион (необязательно)",
"location_placeholder": "us-central1",
"location_hint": "Оставьте пустым, чтобы использовать регион us-central1 по умолчанию.",
"file_label": "JSON ключ сервисного аккаунта",
"file_hint": "Принимаются только JSON-файлы ключей сервисных аккаунтов Google Cloud.",
"file_placeholder": "Файл не выбран",
"choose_file": "Выбрать файл",
"import_button": "Импортировать учётные данные Vertex",
"file_required": "Сначала выберите файл учётных данных .json",
"success": "Учётные данные Vertex успешно импортированы",
"result_title": "Учётные данные сохранены",
"result_project": "ID проекта",
"result_email": "Сервисный аккаунт",
"result_location": "Регион",
"result_file": "Сохранённый файл"
},
"oauth_excluded": {
"title": "Исключённые модели OAuth",
"description": "Исключения по провайдерам отображаются карточками; нажмите \"Изменить\", чтобы настроить. Поддерживаются шаблоны *. Объём зависит от фильтра файлов авторизации.",
"add": "Добавить исключение",
"add_title": "Добавление исключения для провайдера",
"edit_title": "Редактирование исключений для {{provider}}",
"refresh": "Обновить",
"refreshing": "Обновляется...",
"provider_label": "Провайдер",
"provider_auto": "Следовать текущему фильтру",
"provider_placeholder": "например: gemini-cli",
"provider_hint": "По умолчанию используется текущий фильтр; выберите существующего провайдера или введите новое имя.",
"models_label": "Модели для исключения",
"models_loading": "Загрузка моделей...",
"models_unsupported": "Текущая версия CPA не поддерживает загрузку списка моделей.",
"models_loaded": "Загружено моделей: {{count}}. Отметьте те, которые нужно исключить.",
"no_models_available": "Для этого провайдера нет доступных моделей.",
"save": "Сохранить/обновить",
"saving": "Сохранение...",
"save_success": "Исключения обновлены",
"save_failed": "Не удалось обновить исключения",
"delete": "Удалить провайдера",
"delete_confirm": "Удалить список исключений для {{provider}}?",
"delete_success": "Список исключений удалён",
"delete_failed": "Не удалось удалить список исключений",
"deleting": "Удаление...",
"no_models": "Исключённых моделей нет",
"model_count": "Исключено моделей: {{count}}",
"list_empty_all": "Исключений ещё нет — используйте \"Добавить исключение\".",
"list_empty_filtered": "В этом диапазоне исключений нет; нажмите \"Добавить исключение\".",
"disconnected": "Подключитесь к серверу, чтобы просматривать исключения",
"load_failed": "Не удалось загрузить список исключений",
"provider_required": "Сначала укажите провайдера",
"scope_all": "Область: все провайдеры",
"scope_provider": "Область: {{provider}}",
"upgrade_required": "Эта функция требует более новой версии CLI Proxy API (CPA). Обновите систему.",
"upgrade_required_title": "Пожалуйста, обновите CLI Proxy API",
"upgrade_required_desc": "Текущая версия сервера не поддерживает API исключённых моделей OAuth. Обновите CLI Proxy API (CPA) до последней версии."
},
"oauth_model_alias": {
"title": "Псевдонимы моделей OAuth",
"add": "Добавить псевдоним",
"add_title": "Добавление псевдонимов моделей провайдера",
"provider_label": "Провайдер",
"provider_placeholder": "например: gemini-cli / vertex",
"provider_hint": "По умолчанию используется текущий фильтр; выберите существующего провайдера или введите новое имя.",
"model_source_loading": "Загрузка моделей...",
"model_source_unsupported": "Текущая версия CPA не поддерживает загрузку списка моделей (ручной ввод остаётся доступным).",
"model_source_loaded": "Загружено моделей: {{count}}. Используйте выпадающий список \"Исходная модель\" или введите своё значение. Сохранение пустого списка удаляет провайдера. Включите \"Сохранить оригинал\", чтобы оставить исходное имя вместе с псевдонимом.",
"alias_label": "Псевдонимы моделей",
"alias_name_placeholder": "Исходное имя модели",
"alias_placeholder": "Псевдоним (обязательно)",
"alias_fork_label": "Сохранить оригинал",
"add_alias": "Добавить псевдоним",
"save": "Сохранить/обновить",
"save_success": "Псевдонимы моделей обновлены",
"save_failed": "Не удалось обновить псевдонимы моделей",
"delete": "Удалить провайдера",
"delete_confirm": "Удалить псевдонимы моделей для {{provider}}?",
"delete_link_title": "Убрать сопоставление",
"delete_link_confirm": "Удалить сопоставление из <code>{{sourceModel}}</code> ({{provider}}) к псевдониму <code>{{alias}}</code>?",
"delete_alias_title": "Удалить псевдоним",
"delete_alias_confirm": "Удалить псевдоним <code>{{alias}}</code> и все связанные сопоставления?",
"delete_success": "Псевдонимы моделей удалены",
"delete_failed": "Не удалось удалить псевдонимы моделей",
"no_models": "Псевдонимов нет",
"model_count": "Количество псевдонимов: {{count}}",
"list_empty_all": "Псевдонимы ещё не созданы — используйте \"Добавить псевдоним\".",
"chart_title": "Обзор всех сопоставлений",
"diagram_providers": "Провайдеры",
"diagram_source_models": "Исходные модели",
"diagram_aliases": "Псевдонимы",
"diagram_expand": "Развернуть",
"diagram_collapse": "Свернуть",
"diagram_add_alias": "Добавить псевдоним",
"diagram_rename": "Переименовать",
"diagram_rename_alias_title": "Переименование псевдонима",
"diagram_rename_alias_label": "Новое имя псевдонима",
"diagram_rename_placeholder": "Введите имя псевдонима...",
"diagram_delete_link": "Убрать связь {{provider}} / {{name}}",
"diagram_delete_alias": "Удалить псевдоним",
"diagram_please_enter_alias": "Введите имя псевдонима.",
"diagram_alias_exists": "Этот псевдоним уже существует.",
"diagram_add_alias_title": "Добавление псевдонима",
"diagram_add_alias_label": "Имя псевдонима",
"diagram_add_placeholder": "Введите новое имя псевдонима...",
"diagram_rename_btn": "Переименовать",
"diagram_add_btn": "Добавить",
"diagram_settings": "Настройки",
"diagram_settings_title": "Настройки псевдонима — {{alias}}",
"diagram_settings_source_title": "Настройки исходной модели",
"diagram_settings_empty": "Для этого псевдонима ещё нет сопоставлений.",
"diagram_tap_hint": "На сенсорных устройствах: коснитесь исходной модели, затем псевдонима для связывания.",
"view_mode": "Режим просмотра",
"view_mode_diagram": "Диаграмма",
"view_mode_list": "Список",
"provider_required": "Сначала укажите провайдера",
"upgrade_required": "Эта функция требует более новой версии CLI Proxy API (CPA). Обновите систему.",
"upgrade_required_title": "Пожалуйста, обновите CLI Proxy API",
"upgrade_required_desc": "Текущая версия сервера не поддерживает API псевдонимов моделей OAuth. Обновите CLI Proxy API (CPA) до последней версии."
},
"auth_login": {
"codex_oauth_title": "Codex OAuth",
"codex_oauth_button": "Начать вход Codex",
"codex_oauth_hint": "Выполните вход в сервис Codex через OAuth и автоматически получите/сохраните файлы авторизации.",
"codex_oauth_url_label": "URL авторизации:",
"codex_open_link": "Открыть ссылку",
"codex_copy_link": "Скопировать ссылку",
"codex_oauth_status_waiting": "Ожидание аутентификации...",
"codex_oauth_status_success": "Аутентификация успешна!",
"codex_oauth_status_error": "Ошибка аутентификации:",
"codex_oauth_start_error": "Не удалось запустить Codex OAuth:",
"codex_oauth_polling_error": "Не удалось проверить статус аутентификации:",
"anthropic_oauth_title": "Anthropic OAuth",
"anthropic_oauth_button": "Начать вход Anthropic",
"anthropic_oauth_hint": "Выполните вход в сервис Anthropic (Claude) через OAuth и автоматически получите/сохраните файлы авторизации.",
"anthropic_oauth_url_label": "URL авторизации:",
"anthropic_open_link": "Открыть ссылку",
"anthropic_copy_link": "Скопировать ссылку",
"anthropic_oauth_status_waiting": "Ожидание аутентификации...",
"anthropic_oauth_status_success": "Аутентификация успешна!",
"anthropic_oauth_status_error": "Ошибка аутентификации:",
"anthropic_oauth_start_error": "Не удалось запустить Anthropic OAuth:",
"anthropic_oauth_polling_error": "Не удалось проверить статус аутентификации:",
"antigravity_oauth_title": "Antigravity OAuth",
"antigravity_oauth_button": "Начать вход Antigravity",
"antigravity_oauth_hint": "Выполните вход в сервис Antigravity (Google) через OAuth и автоматически получите/сохраните файлы авторизации.",
"antigravity_oauth_url_label": "URL авторизации:",
"antigravity_open_link": "Открыть ссылку",
"antigravity_copy_link": "Скопировать ссылку",
"antigravity_oauth_status_waiting": "Ожидание аутентификации...",
"antigravity_oauth_status_success": "Аутентификация успешна!",
"antigravity_oauth_status_error": "Ошибка аутентификации:",
"antigravity_oauth_start_error": "Не удалось запустить Antigravity OAuth:",
"antigravity_oauth_polling_error": "Не удалось проверить статус аутентификации:",
"gemini_cli_oauth_title": "Gemini CLI OAuth",
"gemini_cli_oauth_button": "Начать вход Gemini CLI",
"gemini_cli_oauth_hint": "Выполните вход в сервис Google Gemini CLI через OAuth и автоматически получите/сохраните файлы авторизации.",
"gemini_cli_project_id_label": "Google Cloud Project ID (необязательно):",
"gemini_cli_project_id_placeholder": "Оставьте пустым, чтобы выбрать первый доступный проект автоматически",
"gemini_cli_project_id_hint": "Необязательно. Если не указано, система автоматически выберет первый доступный проект вашей учётной записи.",
"gemini_cli_project_id_required": "Укажите идентификатор проекта Google Cloud.",
"gemini_cli_oauth_url_label": "URL авторизации:",
"gemini_cli_open_link": "Открыть ссылку",
"gemini_cli_copy_link": "Скопировать ссылку",
"gemini_cli_oauth_status_waiting": "Ожидание аутентификации...",
"gemini_cli_oauth_status_success": "Аутентификация успешна!",
"gemini_cli_oauth_status_error": "Ошибка аутентификации:",
"gemini_cli_oauth_start_error": "Не удалось запустить Gemini CLI OAuth:",
"gemini_cli_oauth_polling_error": "Не удалось проверить статус аутентификации:",
"kimi_oauth_title": "Kimi OAuth",
"kimi_oauth_button": "Начать вход Kimi",
"kimi_oauth_hint": "Выполните вход в сервис Kimi через поток авторизации устройства и автоматически получите/сохраните файлы авторизации.",
"kimi_oauth_url_label": "URL авторизации:",
"kimi_open_link": "Открыть ссылку",
"kimi_copy_link": "Скопировать ссылку",
"kimi_oauth_status_waiting": "Ожидание аутентификации...",
"kimi_oauth_status_success": "Аутентификация успешна!",
"kimi_oauth_status_error": "Ошибка аутентификации:",
"kimi_oauth_start_error": "Не удалось запустить Kimi OAuth:",
"kimi_oauth_polling_error": "Не удалось проверить статус аутентификации:",
"qwen_oauth_title": "Qwen OAuth",
"qwen_oauth_button": "Начать вход Qwen",
"qwen_oauth_hint": "Выполните вход в сервис Qwen через поток авторизации устройства и автоматически получите/сохраните файлы авторизации.",
"qwen_oauth_url_label": "URL авторизации:",
"qwen_open_link": "Открыть ссылку",
"qwen_copy_link": "Скопировать ссылку",
"qwen_oauth_status_waiting": "Ожидание аутентификации...",
"qwen_oauth_status_success": "Аутентификация успешна!",
"qwen_oauth_status_error": "Ошибка аутентификации:",
"qwen_oauth_start_error": "Не удалось запустить Qwen OAuth:",
"qwen_oauth_polling_error": "Не удалось проверить статус аутентификации:",
"oauth_callback_label": "Callback URL",
"oauth_callback_placeholder": "http://localhost:1455/auth/callback?code=...&state=...",
"oauth_callback_hint": "Режим удалённого браузера: после перенаправления провайдера на http://localhost:... скопируйте полный URL и отправьте его здесь.",
"oauth_callback_button": "Отправить Callback URL",
"oauth_callback_required": "Сначала вставьте полный URL перенаправления.",
"oauth_callback_success": "Callback URL отправлен. Продолжайте ожидать аутентификацию.",
"oauth_callback_error": "Не удалось отправить Callback URL:",
"oauth_callback_upgrade_hint": "Обновите CLI Proxy API или проверьте подключение.",
"oauth_callback_status_success": "Callback URL отправлен, ожидаем аутентификацию...",
"oauth_callback_status_error": "Не удалось отправить Callback URL:",
"missing_state": "Не удалось получить параметр состояния аутентификации",
"iflow_oauth_title": "iFlow OAuth",
"iflow_oauth_button": "Начать вход iFlow",
"iflow_oauth_hint": "Выполните вход в сервис iFlow через OAuth и автоматически получите/сохраните файлы авторизации.",
"iflow_oauth_url_label": "URL авторизации:",
"iflow_open_link": "Открыть ссылку",
"iflow_copy_link": "Скопировать ссылку",
"iflow_oauth_status_waiting": "Ожидание аутентификации...",
"iflow_oauth_status_success": "Аутентификация успешна!",
"iflow_oauth_status_error": "Ошибка аутентификации:",
"iflow_oauth_start_error": "Не удалось запустить iFlow OAuth:",
"iflow_oauth_polling_error": "Не удалось проверить статус аутентификации:",
"iflow_cookie_title": "Вход iFlow по cookie",
"iflow_cookie_label": "Значение cookie:",
"iflow_cookie_placeholder": "Введите значение BXAuth, начиная с BXAuth=",
"iflow_cookie_hint": "Отправьте существующий cookie, чтобы завершить вход без открытия ссылки авторизации; файл учётных данных будет сохранён автоматически.",
"iflow_cookie_key_hint": "Примечание: сначала создайте ключ на платформе.",
"iflow_cookie_button": "Отправить вход по cookie",
"iflow_cookie_status_success": "Вход по cookie выполнен, учётные данные сохранены.",
"iflow_cookie_status_error": "Ошибка входа по cookie:",
"iflow_cookie_status_duplicate": "Дублирующая конфигурация:",
"iflow_cookie_start_error": "Не удалось отправить вход по cookie:",
"iflow_cookie_config_duplicate": "Такая конфигурация уже существует. Удалите файл и повторите, если хотите перезаписать.",
"iflow_cookie_required": "Сначала укажите значение cookie.",
"iflow_cookie_result_title": "Результат входа по cookie",
"iflow_cookie_result_email": "Аккаунт",
"iflow_cookie_result_expired": "Истекает",
"iflow_cookie_result_path": "Путь сохранения",
"iflow_cookie_result_type": "Тип",
"remote_access_disabled": "Этот способ входа недоступен при удалённом доступе. Подключитесь с localhost."
},
"usage_stats": {
"title": "Статистика использования",
"total_requests": "Всего запросов",
"success_requests": "Успешные запросы",
"failed_requests": "Неуспешные запросы",
"total_tokens": "Всего токенов",
"cached_tokens": "Кэшированные токены",
"reasoning_tokens": "Токены рассуждений",
"rpm_30m": "RPM",
"tpm_30m": "TPM",
"rate_30m": "Скорость (последние 30 мин)",
"model_name": "Название модели",
"model_price_settings": "Настройки стоимости моделей",
"saved_prices": "Сохранённые цены",
"requests_trend": "Динамика запросов",
"tokens_trend": "Динамика токенов",
"api_details": "Детали API",
"by_hour": "По часам",
"by_day": "По дням",
"refresh": "Обновить",
"export": "Экспорт",
"import": "Импорт",
"export_success": "Экспорт использования скачан",
"import_success": "Импорт завершён: добавлено {{added}}, пропущено {{skipped}}, всего {{total}}, ошибок {{failed}}",
"import_invalid": "Недопустимый файл экспорта использования",
"chart_line_label_1": "Линия 1",
"chart_line_label_2": "Линия 2",
"chart_line_label_3": "Линия 3",
"chart_line_label_4": "Линия 4",
"chart_line_label_5": "Линия 5",
"chart_line_label_6": "Линия 6",
"chart_line_label_7": "Линия 7",
"chart_line_label_8": "Линия 8",
"chart_line_label_9": "Линия 9",
"chart_line_hidden": "Скрыть",
"chart_line_actions_label": "Линии для отображения",
"chart_line_add": "Добавить линию",
"chart_line_all": "Все",
"chart_line_delete": "Удалить линию",
"chart_line_hint": "Отображайте до 9 линий моделей одновременно",
"no_data": "Данные отсутствуют",
"loading_error": "Не удалось загрузить",
"api_endpoint": "API-эндпоинт",
"requests_count": "Количество запросов",
"tokens_count": "Количество токенов",
"models": "Статистика моделей",
"success_rate": "Успешность",
"total_cost": "Общая стоимость",
"total_cost_hint": "Основано на настроенной стоимости моделей",
"model_price_title": "Стоимость моделей",
"model_price_reset": "Сбросить цены",
"model_price_model_label": "Модель",
"model_price_select_placeholder": "Выберите модель",
"model_price_select_hint": "Модели берутся из детальной статистики использования",
"model_price_prompt": "Цена prompt",
"model_price_completion": "Цена completion",
"model_price_cache": "Цена кэша",
"model_price_save": "Сохранить цену",
"model_price_empty": "Цена для моделей не задана",
"model_price_model": "Модель",
"model_price_saved": "Цена модели сохранена",
"model_price_model_required": "Выберите модель для задания цены",
"cost_trend": "Обзор стоимости",
"cost_axis_label": "Стоимость ($)",
"cost_need_price": "Задайте стоимость модели, чтобы увидеть статистику затрат",
"cost_need_usage": "Нет данных использования для расчёта стоимости",
"cost_no_data": "Данных о стоимости ещё нет"
},
"stats": {
"success": "Успех",
"failure": "Сбой"
},
"logs": {
"title": "Просмотр журналов",
"refresh_button": "Обновить журналы",
"clear_button": "Очистить журналы",
"download_button": "Скачать журналы",
"error_log_button": "Выбрать журнал ошибок",
"error_logs_modal_title": "Журналы ошибок запросов",
"error_logs_description": "Выберите файл журнала ошибок запроса для скачивания (создаётся только при отключённом журналировании запросов).",
"error_logs_request_log_enabled": "Журналирование запросов включено, поэтому этот список всегда будет пустым. Отключите журналирование запросов и обновите список, чтобы просмотреть журналы ошибок.",
"error_logs_empty": "Файлы журнала ошибок запросов не найдены",
"error_logs_load_error": "Не удалось загрузить список журналов ошибок",
"error_logs_size": "Размер",
"error_logs_modified": "Изменён",
"error_logs_download": "Скачать",
"error_log_download_success": "Журнал ошибок успешно скачан",
"request_log_download_title": "Скачать журнал запросов",
"request_log_download_confirm": "Скачать журнал запросов с идентификатором {{id}}?",
"request_log_download_success": "Журнал запросов успешно скачан",
"empty_title": "Журналы недоступны",
"empty_desc": "Когда включена опция \"Включить журналирование в файл\", журналы появятся здесь",
"log_content": "Содержимое журнала",
"loading": "Загрузка журналов...",
"load_error": "Не удалось загрузить журналы",
"clear_confirm": "Очистить все журналы? Действие нельзя отменить!",
"clear_success": "Журналы успешно очищены",
"download_success": "Журналы успешно скачаны",
"auto_refresh": "Автообновление",
"auto_refresh_enabled": "Автообновление включено",
"auto_refresh_disabled": "Автообновление выключено",
"load_more_hint": "Прокрутите вверх, чтобы загрузить ещё",
"hidden_lines": "Скрыто: {{count}} строк",
"loaded_lines": "Загружено: {{count}} строк",
"filtered_lines": "Отфильтровано: {{count}} строк",
"hide_management_logs": "Скрыть журналы {{prefix}}",
"show_raw_logs": "Показать исходные журналы",
"show_raw_logs_hint": "Показать текст журнала без обработки для удобного копирования в несколько строк",
"search_placeholder": "Искать по содержимому или ключевым словам",
"search_empty_title": "Подходящих журналов не найдено",
"search_empty_desc": "Попробуйте другой запрос или сбросьте фильтры.",
"double_click_copy_hint": "Дважды нажмите, чтобы скопировать строку журнала",
"copy_success": "Строка журнала скопирована",
"copy_failed": "Не удалось скопировать",
"lines": "строк",
"removed": "Отфильтровано",
"upgrade_required_title": "Обновите CLI Proxy API",
"upgrade_required_desc": "Текущая версия сервера не поддерживает просмотр журналов. Обновите CLI Proxy API до последней версии, чтобы использовать эту функцию."
},
"config_management": {
"title": "Панель конфигурации",
"editor_title": "Файл конфигурации",
"reload": "Перезагрузить",
"save": "Сохранить",
"description": "Редактируйте config.yaml через визуальный редактор или исходный файл",
"status_idle": "Ожидание действия",
"status_loading": "Загрузка конфигурации...",
"status_loaded": "Конфигурация загружена",
"status_dirty": "Есть несохранённые изменения",
"status_disconnected": "Подключитесь к серверу, чтобы загрузить конфигурацию",
"status_load_failed": "Не удалось загрузить",
"status_saving": "Сохранение конфигурации...",
"status_saved": "Конфигурация сохранена",
"status_save_failed": "Не удалось сохранить",
"save_success": "Конфигурация успешно сохранена",
"error_yaml_not_supported": "Сервер не вернул YAML. Убедитесь, что доступна конечная точка /config.yaml.",
"editor_placeholder": "key: value",
"search_placeholder": "Поиск по конфигурации...",
"search_button": "Поиск",
"search_no_results": "Нет результатов",
"search_prev": "Назад",
"search_next": "Вперёд",
"tabs": {
"visual": "Визуальный редактор",
"source": "Редактор файла"
},
"visual": {
"sections": {
"server": {
"title": "Настройки сервера",
"description": "Базовые параметры сервера",
"host": "Адрес хоста",
"port": "Порт"
},
"tls": {
"title": "Настройка TLS/SSL",
"description": "Параметры безопасного HTTPS-соединения",
"enable": "Включить TLS",
"enable_desc": "Включить безопасное HTTPS-соединение",
"cert": "Путь к сертификату",
"key": "Путь к закрытому ключу"
},
"remote": {
"title": "Удалённое управление",
"description": "Настройки удалённого доступа и панели управления",
"allow_remote": "Разрешить удалённый доступ",
"allow_remote_desc": "Разрешить управление с других хостов",
"disable_panel": "Отключить панель",
"disable_panel_desc": "Отключить встроенную веб-панель управления",
"secret_key": "Ключ управления",
"secret_key_placeholder": "Задайте ключ управления",
"panel_repo": "Репозиторий панели"
},
"auth": {
"title": "Настройки аутентификации",
"description": "API-ключи и каталог аутентификации",
"auth_dir": "Каталог auth-dir",
"auth_dir_hint": "Путь к каталогу с файлами аутентификации (поддерживает ~)"
},
"system": {
"title": "Системные настройки",
"description": "Отладка, журналирование, статистика и производительность",
"debug": "Режим отладки",
"debug_desc": "Включить подробные отладочные журналы",
"commercial_mode": "Коммерческий режим",
"commercial_mode_desc": "Отключить тяжёлое промежуточное ПО, чтобы снизить расход памяти при высокой нагрузке",
"logging_to_file": "Журналировать в файл",
"logging_to_file_desc": "Сохранять журналы во вращающиеся файлы",
"usage_statistics": "Статистика использования",
"usage_statistics_desc": "Собирать статистику использования",
"logs_max_size": "Максимальный размер файла журнала (МБ)",
"usage_retention_days": "Хранить статистику (дней)",
"usage_retention_hint": "0 означает без ограничений (без очистки)"
},
"network": {
"title": "Сетевые настройки",
"description": "Параметры прокси, повторов и маршрутизации",
"proxy_url": "URL прокси",
"request_retry": "Количество повторов запросов",
"max_retry_interval": "Максимальный интервал повтора (сек)",
"routing_strategy": "Стратегия маршрутизации",
"routing_strategy_hint": "Выберите стратегию подбора учётных данных",
"strategy_round_robin": "По кругу",
"strategy_fill_first": "Сначала заполнить",
"force_model_prefix": "Принудительный префикс модели",
"force_model_prefix_desc": "Запросы к моделям без префикса используют только учётные данные без префикса",
"ws_auth": "Аутентификация WebSocket",
"ws_auth_desc": "Включить аутентификацию WebSocket (/v1/ws)"
},
"quota": {
"title": "Резерв по квоте",
"description": "Стратегия при превышении квоты",
"switch_project": "Переключить проект",
"switch_project_desc": "Автоматически переходить на другой проект при превышении квоты",
"switch_preview_model": "Переключить на preview-модель",
"switch_preview_model_desc": "Переключаться на preview-версию модели при превышении квоты"
},
"streaming": {
"title": "Настройки стриминга",
"description": "Параметры keepalive и повторов запуска",
"keepalive_seconds": "Период keepalive (сек)",
"keepalive_hint": "Установите 0 или оставьте поле пустым, чтобы отключить keepalive",
"bootstrap_retries": "Повторы запуска",
"bootstrap_hint": "Количество попыток при запуске стрима (до первого байта)",
"nonstream_keepalive": "Интервал keepalive для нестиминговых ответов (сек)",
"nonstream_keepalive_hint": "Отправлять пустые строки каждые N секунд для нестиминговых ответов, чтобы избежать простоя; установите 0 или оставьте пустым для отключения",
"disabled": "Отключено"
},
"payload": {
"title": "Настройки полезной нагрузки",
"description": "Значения по умолчанию, правила переопределения и фильтрации",
"default_rules": "Правила по умолчанию",
"default_rules_desc": "Использовать эти значения, если параметр не указан в запросе",
"override_rules": "Правила переопределения",
"override_rules_desc": "Принудительно задавать значения параметров в запросе",
"filter_rules": "Правила фильтрации",
"filter_rules_desc": "Предварительно фильтровать тело исходящего запроса через JSON Path, автоматически удалять несоответствующие или лишние параметры (санитизация запроса)"
}
},
"api_keys": {
"label": "Список API-ключей (api-keys)",
"add": "Добавить API-ключ",
"empty": "API-ключи отсутствуют",
"hint": "Каждая запись — это API-ключ (в том же стиле, что и на странице управления API-ключами)",
"edit_title": "Редактирование API-ключа",
"add_title": "Добавление API-ключа",
"input_label": "API-ключ",
"input_placeholder": "Вставьте API-ключ",
"input_hint": "Меняет только содержимое локального файла конфигурации, не синхронизируется с интерфейсом управления API-ключами",
"error_empty": "Введите API-ключ",
"error_invalid": "API-ключ содержит недопустимые символы"
},
"payload_rules": {
"rule": "Правило",
"models": "Применимые модели",
"model_name": "Название модели",
"provider_type": "Тип провайдера",
"add_model": "Добавить модель",
"params": "Настройки параметров",
"remove_params": "Удалить параметры",
"json_path": "JSON Path (например, temperature)",
"json_path_filter": "JSON Path (gjson/sjson), например generationConfig.thinkingConfig.thinkingBudget",
"param_type": "Тип параметра",
"add_param": "Добавить параметр",
"no_rules": "Правил нет",
"add_rule": "Добавить правило",
"value_string": "Строковое значение",
"value_number": "Числовое значение (например, 0.7)",
"value_boolean": "true или false",
"value_json": "Значение JSON",
"value_default": "Значение"
},
"common": {
"edit": "Изменить",
"delete": "Удалить",
"cancel": "Отменить",
"update": "Обновить",
"add": "Добавить"
}
}
},
"quota_management": {
"title": "Управление квотами",
"description": "Следите за статусом квот OAuth для учётных данных Antigravity, Codex и Gemini CLI.",
"refresh_files": "Обновить файлы авторизации",
"refresh_files_and_quota": "Обновить файлы и квоты"
},
"system_info": {
"title": "Информация о центре управления",
"connection_status_title": "Статус подключения",
"api_status_label": "Статус API:",
"config_status_label": "Статус конфигурации:",
"last_update_label": "Последнее обновление:",
"cache_data": "Данные из кэша",
"real_time_data": "Данные в реальном времени",
"not_loaded": "Не загружено",
"seconds_ago": "секунд назад",
"models_title": "Доступные модели",
"models_desc": "Показывает ответ /models и автоматически использует сохранённые API-ключи для авторизации.",
"models_loading": "Загрузка доступных моделей...",
"models_empty": "Сервис /models не вернул модели",
"models_error": "Не удалось загрузить список моделей",
"models_count": "Доступно моделей: {{count}}",
"version_check_title": "Проверка обновлений",
"version_check_desc": "Вызовите эндпоинт /latest-version, чтобы сравнить с версией сервера и узнать о доступных обновлениях.",
"version_current_label": "Текущая версия",
"version_latest_label": "Последняя версия",
"version_check_button": "Проверить обновления",
"version_check_idle": "Нажмите, чтобы проверить обновления",
"version_checking": "Поиск последней версии...",
"version_update_available": "Доступно обновление: {{version}}",
"version_is_latest": "Установлена последняя версия",
"version_check_error": "Не удалось проверить обновление",
"version_current_missing": "Версия сервера недоступна; сравнение невозможно",
"version_unknown": "Неизвестно",
"quick_links_title": "Быстрые ссылки",
"quick_links_desc": "Доступ к репозиториям проекта и документации для помощи и обновлений.",
"link_main_repo": "Основной репозиторий",
"link_main_repo_desc": "Исходный код основной программы CLI Proxy API",
"link_webui_repo": "Репозиторий WebUI",
"link_webui_repo_desc": "Исходный код фронтенда центра управления",
"link_docs": "Документация",
"link_docs_desc": "Учебные пособия и руководства по настройке",
"clear_login_title": "Локальные данные входа",
"clear_login_desc": "Очистите локально сохранённые данные входа и выполните выход. Настройки стоимости статистики использования сохранятся.",
"clear_login_button": "Очистить данные входа",
"clear_login_confirm": "Очистить локальные данные входа и выйти?"
},
"notification": {
"debug_updated": "Настройки отладки обновлены",
"proxy_updated": "Настройки прокси обновлены",
"proxy_cleared": "Настройки прокси очищены",
"retry_updated": "Настройки повторов обновлены",
"quota_switch_project_updated": "Настройки переключения проектов обновлены",
"quota_switch_preview_updated": "Настройки переключения на preview-модель обновлены",
"usage_statistics_updated": "Настройки статистики использования обновлены",
"logging_to_file_updated": "Настройки журналирования обновлены",
"logs_max_total_size_updated": "Лимит размера журналов обновлён",
"request_log_updated": "Настройка журналирования запросов обновлена",
"force_model_prefix_updated": "Настройка префикса модели обновлена",
"ws_auth_updated": "Настройка аутентификации WebSocket обновлена",
"routing_strategy_updated": "Стратегия маршрутизации обновлена",
"login_storage_cleared": "Локальные данные входа очищены",
"api_key_added": "API-ключ успешно добавлен",
"api_key_updated": "API-ключ успешно обновлён",
"api_key_deleted": "API-ключ успешно удалён",
"api_key_invalid_chars": "API-ключ может содержать только буквы, цифры и символы",
"gemini_key_added": "Ключ Gemini успешно добавлен",
"gemini_key_updated": "Ключ Gemini успешно обновлён",
"gemini_key_deleted": "Ключ Gemini успешно удалён",
"gemini_multi_input_required": "Введите хотя бы один ключ Gemini",
"gemini_multi_failed": "Пакетное добавление Gemini не удалось",
"gemini_multi_summary": "Пакетное добавление Gemini завершено: добавлено {{success}}, пропущено {{skipped}}, ошибок {{failed}}",
"codex_config_added": "Конфигурация Codex успешно добавлена",
"codex_config_updated": "Конфигурация Codex успешно обновлена",
"codex_config_deleted": "Конфигурация Codex успешно удалена",
"codex_base_url_required": "Введите базовый URL Codex",
"claude_config_added": "Конфигурация Claude успешно добавлена",
"claude_config_updated": "Конфигурация Claude успешно обновлена",
"claude_config_deleted": "Конфигурация Claude успешно удалена",
"vertex_config_added": "Конфигурация Vertex успешно добавлена",
"vertex_config_updated": "Конфигурация Vertex успешно обновлена",
"vertex_config_deleted": "Конфигурация Vertex успешно удалена",
"vertex_base_url_required": "Введите базовый URL Vertex",
"config_enabled": "Конфигурация включена",
"config_disabled": "Конфигурация выключена",
"field_required": "Обязательные поля не могут быть пустыми",
"openai_provider_required": "Заполните имя провайдера и базовый URL",
"openai_provider_added": "Провайдер OpenAI успешно добавлен",
"openai_provider_updated": "Провайдер OpenAI успешно обновлён",
"openai_provider_deleted": "Провайдер OpenAI успешно удалён",
"ampcode_updated": "Настройки Ampcode обновлены",
"ampcode_upstream_api_key_cleared": "Переопределение upstream-ключа Ampcode очищено",
"openai_model_name_required": "Введите имя модели",
"openai_test_url_required": "Укажите корректный базовый URL перед тестированием",
"openai_test_key_required": "Добавьте хотя бы один API-ключ перед тестированием",
"openai_test_model_required": "Выберите модель для теста",
"data_refreshed": "Данные успешно обновлены",
"connection_required": "Сначала установите подключение",
"refresh_failed": "Не удалось обновить",
"update_failed": "Не удалось обновить",
"add_failed": "Не удалось добавить",
"delete_failed": "Не удалось удалить",
"upload_failed": "Не удалось загрузить",
"download_failed": "Не удалось скачать",
"login_failed": "Вход не выполнен",
"please_enter": "Пожалуйста, введите",
"please_fill": "Пожалуйста, заполните",
"provider_name_url": "имя провайдера и базовый URL",
"api_key": "API-ключ",
"gemini_api_key": "API-ключ Gemini",
"codex_api_key": "API-ключ Codex",
"claude_api_key": "API-ключ Claude",
"link_copied": "Ссылка скопирована в буфер обмена"
},
"language": {
"switch": "Язык",
"chinese": "中文",
"english": "English",
"russian": "Русский"
},
"theme": {
"switch": "Тема",
"light": "Светлая",
"dark": "Тёмная",
"switch_to_light": "Переключиться на светлую тему",
"switch_to_dark": "Переключиться на тёмную тему",
"auto": "Следовать системе"
},
"sidebar": {
"toggle_expand": "Развернуть боковую панель",
"toggle_collapse": "Свернуть боковую панель"
},
"footer": {
"api_version": "Версия CLI Proxy API",
"build_date": "Время сборки",
"version": "Версия интерфейса управления",
"author": "Автор"
}
}