OpenMAIC-React / src /lib /i18n /locales /ru-RU.json
muthuk1's picture
Convert OpenMAIC from Next.js to React (Vite)
f56a29b verified
{
"common": {
"you": "Вы",
"confirm": "Подтвердить",
"cancel": "Отмена",
"loading": "Загрузка..."
},
"home": {
"slogan": "Generative Learning in Multi-Agent Interactive Classroom",
"greetingWithName": "Привет, {{name}}"
},
"toolbar": {
"pdfParser": "Парсер",
"pdfUpload": "Загрузить PDF",
"removePdf": "Удалить файл",
"webSearchOn": "Включено",
"webSearchOff": "Нажмите для включения",
"webSearchDesc": "Поиск актуальной информации в интернете перед генерацией",
"webSearchProvider": "Поисковый движок",
"webSearchNoProvider": "Настройте API-ключ поиска в Настройках",
"selectProvider": "Выбрать провайдера",
"configureProvider": "Настроить модель",
"configureProviderHint": "Настройте хотя бы одного провайдера моделей для генерации курсов",
"enterClassroom": "Войти в класс",
"advancedSettings": "Расширенные настройки",
"thinking": "Рассуждение",
"thinkingBudget": "Бюджет",
"default": "По умолчанию",
"on": "Вкл",
"off": "Выкл",
"auto": "Авто",
"dynamic": "Динамически",
"ttsTitle": "Синтез речи",
"ttsHint": "Выберите голос для AI-учителя",
"ttsPreview": "Прослушать",
"ttsPreviewing": "Воспроизведение...",
"interactiveModeHint": "Включить интерактивный режим для более практического контента",
"interactiveModeLabel": "Интерактивный режим"
},
"export": {
"pptx": "Экспорт PPTX",
"resourcePack": "Экспорт ресурсного пакета",
"resourcePackDesc": "PPTX + интерактивные страницы",
"exporting": "Экспорт...",
"exportSuccess": "Экспорт успешен",
"exportFailed": "Ошибка экспорта",
"classroomZip": "Экспорт ZIP класса",
"classroomZipDesc": "Структура курса + медиафайлы"
},
"import": {
"classroom": "Импорт класса",
"parsing": "Анализ ZIP...",
"validating": "Проверка данных...",
"writingMedia": "Запись медиафайлов...",
"writingCourse": "Запись данных курса...",
"success": "Класс успешно импортирован",
"error": {
"invalidZip": "Недопустимый файл. Выберите корректный файл .maic.zip.",
"invalidManifest": "Недопустимый файл класса: manifest.json отсутствует или повреждён.",
"missingData": "Недопустимый файл класса: отсутствуют необходимые данные курса.",
"storageFull": "Импорт не удался: хранилище браузера заполнено. Удалите старые классы."
}
},
"chat": {
"lecture": "Лекция",
"noConversations": "Нет диалогов",
"startConversation": "Введите сообщение, чтобы начать диалог",
"noMessages": "Пока нет сообщений",
"ended": "завершено",
"unknown": "Неизвестно",
"stopDiscussion": "Завершить обсуждение",
"endQA": "Завершить вопросы и ответы",
"tabs": {
"lecture": "Заметки",
"chat": "Чат"
},
"lectureNotes": {
"empty": "Заметки появятся здесь после воспроизведения лекции",
"emptyHint": "Нажмите воспроизведение для начала лекции",
"pageLabel": "Страница {{n}}",
"currentPage": "Текущая"
},
"badge": {
"qa": "Вопросы",
"discussion": "ДИСКУС",
"lecture": "ЛЕКЦ"
}
},
"actions": {
"names": {
"spotlight": "В центре внимания",
"laser": "Указка",
"wb_open": "Открыть доску",
"wb_draw_text": "Текст на доске",
"wb_draw_shape": "Фигура на доске",
"wb_draw_chart": "График на доске",
"wb_draw_latex": "Формула на доске",
"wb_draw_table": "Таблица на доске",
"wb_draw_line": "Линия на доске",
"wb_clear": "Очистить доску",
"wb_delete": "Удалить элемент",
"wb_close": "Закрыть доску",
"discussion": "Обсуждение"
},
"status": {
"inputStreaming": "Ожидание",
"inputAvailable": "Выполняется",
"outputAvailable": "Завершено",
"outputError": "Ошибка",
"outputDenied": "Отклонено",
"running": "Выполняется",
"result": "Завершено",
"error": "Ошибка"
}
},
"agentBar": {
"readyToLearn": "Готовы учиться вместе?",
"expandedTitle": "Настройка ролей в классе",
"configTooltip": "Нажмите для настройки ролей в классе",
"voiceLabel": "Голос",
"voiceLoading": "Загрузка...",
"voiceAutoAssign": "Голоса будут назначены автоматически",
"searchVoice": "Поиск голосов",
"noMatchingVoices": "Подходящих голосов нет"
},
"proactiveCard": {
"discussion": "Обсуждение",
"join": "Присоединиться",
"skip": "Пропустить",
"pause": "Пауза",
"resume": "Продолжить"
},
"voice": {
"startListening": "Голосовой ввод",
"stopListening": "Остановить запись"
},
"stage": {
"currentScene": "Текущая сцена",
"generating": "Генерация...",
"paused": "Пауза",
"generationFailed": "Ошибка генерации",
"confirmSwitchTitle": "Переключить сцену",
"confirmSwitchMessage": "В данный момент идёт обсуждение. Переключение сцены завершит текущую тему. Продолжить?",
"generatingNextPage": "Сцена генерируется, пожалуйста подождите...",
"courseComplete": "Курс завершён",
"fullscreen": "Полный экран",
"exitFullscreen": "Свернуть"
},
"classroomComplete": {
"title": "Курс завершён",
"trailLabels": {
"slide": "страниц",
"quiz": "тестов",
"interactive": "интерактивов",
"pbl": "проектов"
},
"quizScoreLabel": "Верно {{correct}} из {{total}}",
"encouragement": {
"high": "Отлично — вы справились!",
"mid": "Хорошая работа — продолжайте.",
"low": "Неплохое начало — повторите ещё раз."
}
},
"whiteboard": {
"title": "Интерактивная доска",
"open": "Открыть доску",
"clear": "Очистить доску",
"minimize": "Свернуть доску",
"ready": "Доска готова",
"readyHint": "Элементы появятся здесь, когда AI их добавит",
"clearSuccess": "Доска очищена",
"clearError": "Ошибка очистки доски: ",
"resetView": "Сбросить вид",
"restoreError": "Ошибка восстановления доски: ",
"history": "История",
"restore": "Восстановить",
"noHistory": "Истории пока нет",
"restored": "Доска восстановлена",
"elementCount": "{{count}} элементов"
},
"quiz": {
"title": "Тест",
"subtitle": "Проверьте свои знания",
"questionsCount": "вопросов",
"totalPrefix": "",
"pointsSuffix": "б.",
"startQuiz": "Начать тест",
"multipleChoiceHint": "(Множественный выбор — выберите все правильные ответы)",
"inputPlaceholder": "Введите ваш ответ...",
"charCount": "символов",
"yourAnswer": "Ваш ответ:",
"notAnswered": "Нет ответа",
"aiComment": "Коммент AI",
"singleChoice": "Один ответ",
"multipleChoice": "Несколько",
"shortAnswer": "Развёрнутый ответ",
"analysis": "Анализ: ",
"excellent": "Отлично!",
"keepGoing": "Продолжайте!",
"needsReview": "Требует повторения",
"correct": "верно",
"incorrect": "неверно",
"answering": "В процессе",
"submitAnswers": "Отправить ответы",
"aiGrading": "AI проверяет...",
"aiGradingWait": "Пожалуйста подождите, анализируем ваши ответы",
"quizReport": "Результаты теста",
"retry": "Повторить"
},
"roundtable": {
"teacher": "УЧИТЕЛЬ",
"you": "ВЫ",
"inputPlaceholder": "Введите сообщение...",
"listening": "Слушаю...",
"processing": "Обработка...",
"noSpeechDetected": "Речь не обнаружена, попробуйте ещё раз",
"discussionEnded": "Обсуждение завершено",
"qaEnded": "Вопросы и ответы завершены",
"thinking": "Размышляет",
"yourTurn": "Ваша очередь",
"stopDiscussion": "Завершить обсуждение",
"autoPlay": "Автовоспр.",
"autoPlayOff": "Остановить",
"speed": "Скорость",
"voiceInput": "Голосовой ввод",
"voiceInputDisabled": "Голосовой ввод отключён",
"textInput": "Текстовый ввод",
"stopRecording": "Остановить запись",
"startRecording": "Начать запись"
},
"pbl": {
"legacyFormat": "Эта PBL-сцена использует устаревший формат. Пожалуйста, перегенерируйте курс.",
"emptyProject": "PBL-проект ещё не создан. Создайте его через генерацию курса.",
"roleSelection": {
"title": "Выберите роль",
"description": "Выберите роль для совместной работы над проектом"
},
"workspace": {
"restart": "Перезапуск",
"confirmRestart": "Сбросить весь прогресс?",
"confirm": "Подтвердить",
"cancel": "Отмена"
},
"issueboard": {
"title": "Доска задач",
"noIssues": "Задач пока нет",
"statusDone": "Готово",
"statusActive": "Активна",
"statusPending": "В ожидании"
},
"chat": {
"title": "Обсуждение проекта",
"currentIssue": "Текущая задача",
"mentionHint": "Используйте @question для вопроса, @judge для проверки",
"placeholder": "Введите сообщение...",
"send": "Отправить",
"issueCompleteMessage": "Задача \"{{completed}}\" выполнена! Переход к следующей: \"{{next}}\"",
"allCompleteMessage": "🎉 Все задачи выполнены! Отличная работа над проектом!"
},
"guide": {
"howItWorks": "Как это работает",
"help": "Помощь",
"title": "Помощь",
"step1": {
"title": "Шаг 1: Выберите роль",
"desc": "После генерации проекта выберите роль из списка (не-системные роли отмечены 🟢)"
},
"step2": {
"title": "Шаг 2: Выполняйте задачи",
"desc": "Каждая задача — это учебное задание:",
"s1": {
"title": "Просмотрите задачу",
"desc": "Изучите заголовок, описание и исполнителя задачи"
},
"s2": {
"title": "Получите подсказки",
"example": "@question С чего начать?\n@question Как реализовать эту функцию?",
"desc": "Question Agent даёт наводящие вопросы и подсказки (не прямые ответы)"
},
"s3": {
"title": "Сдайте работу",
"example": "@judge Готово, проверьте мои заметки",
"desc": "Judge Agent оценивает вашу работу и даёт обратную связь:",
"complete": "Автоматический переход к следующей задаче",
"revision": "Доработайте по замечаниям"
}
},
"step3": {
"title": "Шаг 3: Завершите проект",
"desc": "Когда все задачи выполнены, система показывает \"🎉 Проект завершён!\""
}
}
},
"share": {
"notReady": "Доступно после завершения генерации"
},
"classroom": {
"recentClassrooms": "Недавние",
"today": "Сегодня",
"yesterday": "Вчера",
"daysAgo": "дн. назад",
"slides": "слайдов",
"nameCopied": "Название скопировано",
"deleteConfirmTitle": "Удалить",
"delete": "Удалить",
"rename": "Переименовать",
"renamePlaceholder": "Введите название класса",
"renameFailed": "Не удалось переименовать класс",
"searchPlaceholder": "Поиск курсов...",
"searchAriaLabel": "Поиск курсов",
"clearSearch": "Очистить",
"searchEmpty": "Курсы не найдены"
},
"upload": {
"pdfSizeLimit": "Поддержка PDF до 50 МБ",
"generateFailed": "Ошибка генерации, попробуйте снова",
"requirementPlaceholder": "Расскажите, что вы хотите изучить, например:\n\"Научи меня Python с нуля за 30 минут\"\n\"Объясни преобразование Фурье на доске\"\n\"Как играть в настольную игру Авалон\"",
"requirementRequired": "Пожалуйста, укажите требования к курсу",
"fileTooLarge": "Файл слишком большой. Выберите PDF до 50 МБ"
},
"generation": {
"analyzingPdf": "Анализ PDF-документа",
"analyzingPdfDesc": "Извлечение структуры и содержимого документа...",
"pdfLoadFailed": "Не удалось загрузить PDF, попробуйте снова",
"pdfParseFailed": "Ошибка обработки PDF",
"streamNotReadable": "Не удалось прочитать поток генерации",
"generatingOutlines": "Создание структуры курса",
"generatingOutlinesDesc": "Формирование учебной программы...",
"generatingSlideContent": "Генерация содержимого страниц",
"generatingSlideContentDesc": "Создание слайдов, тестов и интерактивного контента...",
"generatingActions": "Генерация учебных действий",
"generatingActionsDesc": "Подготовка нарратива, внимания и взаимодействий...",
"generationComplete": "Генерация завершена!",
"generationFailed": "Ошибка генерации",
"generatingCourse": "Генерация курса",
"openingClassroom": "Открытие класса...",
"outlineReady": "Структура курса сгенерирована",
"generatingFirstPage": "Генерация первой страницы...",
"firstPageReady": "Первая страница готова! Открываю класс...",
"speechFailed": "Ошибка генерации речи",
"retryScene": "Повторить",
"retryingScene": "Перегенерация...",
"backToHome": "На главную",
"sessionNotFound": "Сессия не найдена",
"sessionNotFoundDesc": "Пожалуйста, заполните требования к курсу, чтобы начать генерацию.",
"goBackAndRetry": "Вернуться и повторить",
"classroomReady": "Ваша персонализированная AI-среда обучения успешно создана.",
"aiWorking": "AI-агенты работают...",
"textTruncated": "Текст документа слишком длинный, используются первые {{n}} символов",
"imageTruncated": "Найдено {{total}} изображений, что превышает лимит в {{max}}. Лишние будут описаны текстом",
"agentGeneration": "Генерация ролей в классе",
"agentGenerationDesc": "Создание ролей на основе содержания курса...",
"agentRevealTitle": "Роли в вашем классе",
"viewAgents": "Просмотреть роли",
"continue": "Продолжить",
"outlineRetrying": "Проблема с генерацией структуры, повтор...",
"outlineEmptyResponse": "Модель не вернула валидную структуру. Проверьте настройки модели и попробуйте снова",
"outlineGenerateFailed": "Ошибка генерации структуры, попробуйте позже",
"webSearching": "Поиск в интернете",
"webSearchingDesc": "Поиск актуальной информации в сети",
"webSearchFailed": "Ошибка веб-поиска"
},
"settings": {
"title": "Настройки",
"description": "Настройка параметров приложения",
"language": "Язык",
"languageDesc": "Выберите язык интерфейса",
"theme": "Тема",
"themeDesc": "Выберите тему оформления (Светлая/Тёмная/Системная)",
"themeOptions": {
"light": "Светлая",
"dark": "Тёмная",
"system": "Системная"
},
"apiKey": "API-ключ",
"apiKeyDesc": "Настройте ваш API-ключ",
"apiBaseUrl": "URL API-эндпоинта",
"apiBaseUrlDesc": "Настройте URL API-эндпоинта",
"apiKeyRequired": "API-ключ не может быть пустым",
"model": "Настройка модели",
"modelDesc": "Настройте AI-модели",
"modelPlaceholder": "Введите или выберите название модели",
"ttsModel": "Модель TTS",
"ttsModelDesc": "Настройте модели TTS",
"ttsModelPlaceholder": "Введите или выберите модель TTS",
"ttsModelOptions": {
"openaiTts": "OpenAI TTS",
"azureTts": "Azure TTS"
},
"availableModels": "Доступные модели",
"modelSelectedViaVoice": "Модель определяется выбором голоса",
"testConnection": "Тест подключения",
"testConnectionDesc": "Проверить доступность текущей конфигурации API",
"testing": "Тестирование...",
"agentSettings": "Настройки агентов",
"agentSettingsDesc": "Выберите агентов для участия в беседе. Выберите 1 для режима одного агента, несколько — для совместного режима.",
"agentMode": "Режим агентов",
"agentModePreset": "Предустановка",
"agentModeAuto": "Автогенерация",
"agentModeAutoDesc": "AI автоматически создаст подходящие роли",
"autoAgentCount": "Количество агентов",
"autoAgentCountDesc": "Количество агентов для автогенерации (включая учителя)",
"atLeastOneAgent": "Выберите хотя бы одного агента",
"singleAgentMode": "Один агент",
"directAnswer": "Прямой ответ",
"multiAgentMode": "Мульти-агент",
"agentsCollaborating": "Совместное обсуждение",
"agentsCollaboratingCount": "{{count}} агентов выбрано для совместного обсуждения",
"maxTurns": "Максимум реплик",
"maxTurnsDesc": "Максимальное число реплик обсуждения между агентами (действие и ответ каждого агента считается одной репликой)",
"priority": "Приоритет",
"actions": "Действия",
"actionCount": "{{count}} действий",
"selectedAgent": "Выбранный агент",
"selectedAgents": "Выбранные агенты",
"required": "Обязательно",
"agentNames": {
"default-1": "AI-учитель",
"default-2": "AI-ассистент",
"default-3": "Весельчак",
"default-4": "Почемучка",
"default-5": "Конспектист",
"default-6": "Мыслитель"
},
"agentRoles": {
"teacher": "Учитель",
"assistant": "Ассистент",
"student": "Ученик"
},
"agentDescriptions": {
"default-1": "Ведущий учитель с понятными и структурированными объяснениями",
"default-2": "Помогает в обучении и разъясняет ключевые моменты",
"default-3": "Привносит юмор и энергию в класс",
"default-4": "Всегда любопытный, любит спрашивать почему и как",
"default-5": "Усердно записывает и систематизирует заметки",
"default-6": "Глубоко размышляет и исследует суть тем"
},
"close": "Закрыть",
"save": "Сохранить",
"providers": "LLM",
"addProviderDescription": "Добавьте провайдеров моделей для расширения доступных AI-моделей",
"providerNames": {
"openai": "OpenAI",
"anthropic": "Claude",
"google": "Gemini",
"deepseek": "DeepSeek",
"qwen": "Qwen",
"kimi": "Kimi",
"minimax": "MiniMax",
"glm": "GLM",
"siliconflow": "SiliconFlow",
"doubao": "Doubao",
"openrouter": "OpenRouter",
"grok": "Grok",
"tencent-hunyuan": "Tencent Hunyuan",
"xiaomi": "Xiaomi MiMo",
"ollama": "Ollama (Локальный)"
},
"providerTypes": {
"openai": "Протокол OpenAI",
"anthropic": "Протокол Claude",
"google": "Протокол Gemini"
},
"modelCount": "моделей",
"modelSingular": "модель",
"defaultModel": "Модель по умолчанию",
"webSearch": "Веб-поиск",
"mcp": "MCP",
"knowledgeBase": "База знаний",
"documentParser": "Обработка документов",
"conversationSettings": "Беседа",
"keyboardShortcuts": "Горячие клавиши",
"generalSettings": "Общие",
"systemSettings": "Система",
"addProvider": "Добавить",
"importFromClipboard": "Импорт из буфера",
"apiSecret": "API-ключ",
"apiHost": "Base URL",
"baseUrlRegion": {
"china": "Китай",
"international": "Международный"
},
"requestUrl": "URL запроса",
"models": "Модели",
"addModel": "Добавить",
"reset": "Сброс",
"fetch": "Получить",
"connectionSuccess": "Подключение успешно",
"connectionFailed": "Ошибка подключения",
"capabilities": {
"vision": "Видение",
"tools": "Инструменты",
"streaming": "Стриминг"
},
"contextWindow": "Контекст",
"contextShort": "кнткс",
"outputWindow": "Вывод",
"addProviderButton": "Добавить",
"addProviderDialog": "Добавить провайдера моделей",
"providerName": "Название",
"providerNamePlaceholder": "напр., Мой OpenAI Proxy",
"providerNameRequired": "Введите название провайдера",
"providerApiMode": "Режим API",
"apiModeOpenAI": "Протокол OpenAI",
"apiModeAnthropic": "Протокол Claude",
"apiModeGoogle": "Протокол Gemini",
"defaultBaseUrl": "Base URL по умолчанию",
"providerIcon": "URL иконки провайдера",
"requiresApiKey": "Требуется API-ключ",
"deleteProvider": "Удалить провайдера",
"deleteProviderConfirm": "Вы уверены, что хотите удалить этого провайдера?",
"addCustomTTSProvider": "Добавить TTS-провайдер",
"addCustomASRProvider": "Добавить ASR-провайдер",
"addCustomAudioProviderDescription": "Добавить OpenAI-совместимый аудио-провайдер",
"customVoices": "Голоса",
"voiceIdPlaceholder": "ID голоса (напр. alloy)",
"voiceNamePlaceholder": "Отображаемое имя",
"addVoice": "Добавить",
"modelNamePlaceholder": "Необязательно",
"defaultModelHint": "Имя модели в API-запросах (напр. kokoro, tts-1)",
"noVoicesAdded": "Голоса ещё не добавлены. Добавьте ниже для выбора в агентах.",
"noModelsAdded": "Модели ещё не добавлены. Добавьте ниже для выбора модели.",
"noModelsWarning": "Добавьте хотя бы одну модель ниже перед использованием этого провайдера.",
"asrNoTranscription": "Транскрипция не получена. Попробуйте говорить громче или дольше.",
"cannotDeleteBuiltIn": "Нельзя удалить встроенного провайдера",
"resetToDefault": "Сбросить на стандартные",
"resetToDefaultDescription": "Восстановить список моделей по умолчанию (API-ключ и Base URL будут сохранены)",
"resetConfirmDescription": "Это удалит все пользовательские модели и восстановит встроенный список. API-ключ и Base URL будут сохранены.",
"confirmReset": "Подтвердить сброс",
"resetSuccess": "Настройки по умолчанию восстановлены",
"saveSuccess": "Настройки сохранены",
"saveFailed": "Не удалось сохранить настройки, попробуйте снова",
"cannotDeleteBuiltInModel": "Нельзя удалить встроенную модель",
"cannotEditBuiltInModel": "Нельзя редактировать встроенную модель",
"modelIdRequired": "Введите ID модели",
"noModelsAvailable": "Нет доступных моделей для тестирования",
"providerMetadata": "Метаданные провайдера",
"editModel": "Редактировать модель",
"editModelDescription": "Изменить конфигурацию и возможности модели",
"addNewModel": "Новая модель",
"modelsManagementDescription": "Управляйте моделями и возможностями, доступными для этого провайдера.",
"addNewModelDescription": "Добавить конфигурацию новой модели",
"modelId": "ID модели",
"modelIdPlaceholder": "напр., gpt-4o",
"modelName": "Отображаемое имя",
"modelCapabilities": "Возможности",
"advancedSettings": "Расширенные настройки",
"contextWindowLabel": "Контекстное окно",
"contextWindowPlaceholder": "напр., 128000",
"outputWindowLabel": "Макс. выходных токенов",
"outputWindowPlaceholder": "напр., 4096",
"testModel": "Тест модели",
"deleteModel": "Удалить",
"cancelEdit": "Отмена",
"saveModel": "Сохранить",
"howToUse": "Как использовать",
"step1ConfigureProvider": "Перейдите в «Провайдеры моделей», выберите или добавьте провайдера и настройте подключение (API-ключ, Base URL и т.д.)",
"step2SelectModel": "Выберите нужную модель в разделе «Активная модель» ниже",
"step3StartUsing": "После сохранения система будет использовать выбранную модель",
"activeModel": "Активная модель",
"activeModelDescription": "Выберите модель для AI-диалогов и генерации контента",
"selectModel": "Выбрать модель",
"searchModels": "Поиск моделей",
"noModelsFound": "Подходящих моделей не найдено",
"noConfiguredProviders": "Нет настроенных провайдеров",
"configureProvidersFirst": "Настройте подключение провайдера в разделе «Провайдеры моделей» слева",
"currentlyUsing": "Используется",
"ttsSettings": "Синтез речи",
"asrSettings": "Распознавание речи",
"audioSettings": "Настройки аудио",
"ttsSection": "Синтез речи (TTS)",
"asrSection": "Распознавание речи (ASR)",
"ttsDescription": "TTS (Text-to-Speech) — преобразование текста в речь",
"asrDescription": "ASR (Automatic Speech Recognition) — преобразование речи в текст",
"enableTTS": "Включить синтез речи",
"ttsEnabledDescription": "При включении аудио будет генерироваться во время создания курса",
"ttsVoiceConfigHint": "Голос для каждого агента можно настроить в «Настройке ролей» на главной странице",
"enableASR": "Включить распознавание речи",
"asrEnabledDescription": "При включении ученики смогут использовать микрофон для голосового ввода",
"ttsProvider": "Провайдер TTS",
"ttsLanguageFilter": "Фильтр по языку",
"allLanguages": "Все языки",
"ttsVoice": "Голос",
"ttsSpeed": "Скорость",
"ttsBaseUrl": "Base URL",
"ttsApiKey": "API-ключ",
"doubaoAppId": "App ID",
"doubaoAccessKey": "Access Key",
"asrProvider": "Провайдер ASR",
"asrLanguage": "Язык распознавания",
"asrBaseUrl": "Base URL",
"asrApiKey": "API-ключ",
"enterApiKey": "Введите API-ключ",
"enterCustomBaseUrl": "Введите пользовательский Base URL",
"browserNativeNote": "Встроенный ASR браузера не требует настройки и полностью бесплатен",
"providerOpenAITTS": "OpenAI TTS (gpt-4o-mini-tts)",
"providerAzureTTS": "Azure TTS",
"providerGLMTTS": "GLM TTS",
"providerQwenTTS": "Qwen TTS (Alibaba Cloud Bailian)",
"providerVoxCPMTTS": "VoxCPM2",
"providerDoubaoTTS": "Doubao TTS 2.0 (Volcengine)",
"providerElevenLabsTTS": "ElevenLabs TTS",
"providerMiniMaxTTS": "MiniMax TTS",
"providerBrowserNativeTTS": "Встроенный TTS браузера",
"voxcpmBackend": "Бэкенд",
"voxcpmBaseUrlPending": "Введите Base URL, чтобы сформировать URL запроса",
"voxcpmAutoVoiceNoPreview": "Автоголос формируется из контекста агента, поэтому его нельзя прослушать отдельно",
"voxcpmVoicesTitle": "Голоса VoxCPM",
"voxcpmVoicesDescription": "Сохраняются в этом браузере и добавляются в общий пул голосов Agent Bar.",
"voxcpmAutoVoicePrivacyNote": "Автоголос отправляет persona агента в настроенный бэкенд VoxCPM как голосовую подсказку.",
"voxcpmPromptCount": "Prompt {{count}}",
"voxcpmCloneCount": "Клон {{count}}",
"voxcpmCloneUnsupported": "Текущий бэкенд не поддерживает клонирование",
"voxcpmVoicePool": "Пул голосов",
"voxcpmVoiceCount": "{{count}} голосов",
"voxcpmAutoVoice": "Автоголос",
"voxcpmAutoVoiceDescription": "Использовать persona агента как голосовую подсказку",
"voxcpmUnavailable": "Недоступно",
"voxcpmClone": "Клон",
"voxcpmCloneUnsupportedDetail": "Текущий бэкенд не поддерживает клонирование",
"voxcpmNoCustomVoices": "Пользовательских голосов пока нет",
"voxcpmCloneSaveOnly": "Для этого бэкенда доступно только сохранение",
"voxcpmVoiceNamePlaceholder": "Название голоса",
"voxcpmPromptPlaceholder": "Например: ясный естественный голос учителя со средней скоростью",
"voxcpmAddVoice": "Добавить голос",
"voxcpmCloneVoiceNamePlaceholder": "Название клонированного голоса",
"voxcpmUploadReferenceAudio": "Загрузить референсное аудио",
"voxcpmRecord": "Записать",
"voxcpmReferenceAudioLimitHint": "Референсное аудио должно быть не больше 10 МБ / 60 секунд и перед сохранением конвертируется в WAV.",
"voxcpmReferenceTextPlaceholder": "Текст референсного аудио, необязательно",
"voxcpmVoiceDescriptionPlaceholder": "Описание голоса, необязательно",
"voxcpmAddClone": "Добавить клон",
"voxcpmRecordingUnsupported": "Этот браузер не поддерживает запись",
"voxcpmRecordedVoiceName": "Записанный голос",
"voxcpmRecordingFailed": "Не удалось преобразовать запись",
"voxcpmRecordingStartFailed": "Не удалось начать запись",
"voxcpmBaseUrlRequired": "Сначала введите VoxCPM Base URL",
"voxcpmPreviewFailed": "Не удалось прослушать",
"voxcpmVoiceSaved": "Голос VoxCPM сохранен",
"voxcpmVoiceSaveFailed": "Не удалось сохранить голос",
"voxcpmReferenceAudioInvalid": "Недопустимое референсное аудио",
"voxcpmCloneSaved": "Клонированный голос VoxCPM сохранен",
"voxcpmCloneSaveFailed": "Не удалось сохранить клонированный голос",
"voxcpmStopPreview": "Остановить прослушивание",
"voxcpmPreviewVoice": "Прослушать голос",
"voxcpmDeleteVoice": "Удалить голос",
"providerOpenAIWhisper": "OpenAI ASR (gpt-4o-mini-transcribe)",
"providerBrowserNative": "Встроенный ASR браузера",
"providerQwenASR": "Qwen ASR (Alibaba Cloud Bailian)",
"providerUnpdf": "unpdf (встроенный)",
"providerMinerU": "MinerU",
"providerMinerUCloud": "MinerU (Облако)",
"browserNativeTTSNote": "Встроенный TTS браузера не требует настройки и полностью бесплатен, использует системные голоса",
"testTTS": "Тест TTS",
"testASR": "Тест ASR",
"testSuccess": "Тест пройден",
"testFailed": "Тест не пройден",
"ttsTestText": "Текст для TTS-теста",
"ttsTestSuccess": "TTS-тест пройден, аудио воспроизведено",
"ttsTestFailed": "TTS-тест не пройден",
"asrTestSuccess": "Распознавание речи успешно",
"asrTestFailed": "Распознавание речи не удалось",
"asrProcessing": "Обработка...",
"asrResult": "Результат распознавания",
"asrNotSupported": "Браузер не поддерживает Speech Recognition API",
"browserTTSNotSupported": "Браузер не поддерживает Speech Synthesis API",
"browserTTSNoVoices": "В текущем браузере нет доступных голосов TTS",
"microphoneAccessDenied": "Доступ к микрофону запрещён",
"microphoneAccessFailed": "Не удалось получить доступ к микрофону",
"asrResultPlaceholder": "Результат распознавания появится после записи",
"useThisProvider": "Использовать этого провайдера",
"fetchVoices": "Загрузить список голосов",
"fetchingVoices": "Загрузка...",
"voicesFetched": "Голоса загружены",
"fetchVoicesFailed": "Не удалось загрузить голоса",
"voiceApiKeyRequired": "Требуется API-ключ",
"voiceBaseUrlRequired": "Требуется Base URL",
"ttsTestTextPlaceholder": "Введите текст для озвучивания",
"ttsTestTextDefault": "Привет, это тестовая речь.",
"startRecording": "Начать запись",
"stopRecording": "Остановить запись",
"recording": "Запись...",
"transcribing": "Транскрибирование...",
"transcriptionResult": "Результат транскрибирования",
"noTranscriptionResult": "Нет результата транскрибирования",
"baseUrlOptional": "Base URL (необязательно)",
"defaultValue": "По умолчанию",
"voiceMarin": "Рекомендуется — лучшее качество",
"voiceCedar": "Рекомендуется — лучшее качество",
"voiceAlloy": "Нейтральный, сбалансированный",
"voiceAsh": "Спокойный, профессиональный",
"voiceBallad": "Элегантный, лиричный",
"voiceCoral": "Тёплый, дружелюбный",
"voiceEcho": "Мужской, чёткий",
"voiceFable": "Повествовательный, яркий",
"voiceNova": "Женский, яркий",
"voiceOnyx": "Мужской, глубокий",
"voiceSage": "Мудрый, уравновешенный",
"voiceShimmer": "Женский, мягкий",
"voiceVerse": "Естественный, плавный",
"glmVoiceTongtong": "Голос по умолчанию",
"glmVoiceChuichui": "Голос Chuichui",
"glmVoiceXiaochen": "Голос Xiaochen",
"glmVoiceJam": "Голос Jam",
"glmVoiceKazi": "Голос Kazi",
"glmVoiceDouji": "Голос Douji",
"glmVoiceLuodo": "Голос Luodo",
"qwenVoiceCherry": "Солнечный, тёплый и естественный",
"qwenVoiceSerena": "Нежный и мягкий",
"qwenVoiceEthan": "Энергичный и живой",
"qwenVoiceChelsie": "Аниме-виртуальная подруга",
"qwenVoiceMomo": "Игривый и весёлый",
"qwenVoiceVivian": "Милый и дерзкий",
"qwenVoiceMoon": "Крутой и красивый",
"qwenVoiceMaia": "Интеллектуальный и нежный",
"qwenVoiceKai": "Спа для ваших ушей",
"qwenVoiceNofish": "Дизайнер с особым произношением",
"qwenVoiceBella": "Маленькая лоли",
"qwenVoiceJennifer": "Кинематографический американский женский голос",
"qwenVoiceRyan": "Быстрый, драматичный",
"qwenVoiceKaterina": "Зрелая леди с запоминающимся ритмом",
"qwenVoiceAiden": "Американский парень",
"qwenVoiceEldricSage": "Спокойный и мудрый старейшина",
"qwenVoiceMia": "Нежная как весенняя вода",
"qwenVoiceMochi": "Умный малыш с детской невинностью",
"qwenVoiceBellona": "Громкий голос, чёткое произношение",
"qwenVoiceVincent": "Уникальный хриплый голос",
"qwenVoiceBunny": "Супер-милая лоли",
"qwenVoiceNeil": "Профессиональный диктор",
"qwenVoiceElias": "Профессиональный инструктор",
"qwenVoiceArthur": "Простой голос, пропитанный годами",
"qwenVoiceNini": "Мягкий и липкий голос",
"qwenVoiceEbona": "Её шёпот как ржавый ключ",
"qwenVoiceSeren": "Нежный и успокаивающий голос",
"qwenVoicePip": "Озорной, но полный детской невинности",
"qwenVoiceStella": "Сладкий девичий голос",
"qwenVoiceBodega": "Энтузиастичный испанский дядя",
"qwenVoiceSonrisa": "Энтузиастичная латиноамериканка",
"qwenVoiceAlek": "Холод, но теплота под шерстяным пальто",
"qwenVoiceDolce": "Ленивый итальянский дядя",
"qwenVoiceSohee": "Нежная, весёлая кореянка",
"qwenVoiceOnoAnna": "Шаловливая подруга детства",
"qwenVoiceLenn": "Рациональный немецкий юноша",
"qwenVoiceEmilien": "Романтический французский брат",
"qwenVoiceAndre": "Магнетический, естественный мужской голос",
"qwenVoiceRadioGol": "Футбольный поэт Rádio Gol!",
"qwenVoiceJada": "Живая шанхайская леди",
"qwenVoiceDylan": "Пекинский парень",
"qwenVoiceLi": "Терпеливый инструктор йоги",
"qwenVoiceMarcus": "Твёрдое сердце — вкус старого Шаньси",
"qwenVoiceRoy": "Юморной тайваньский парень",
"qwenVoicePeter": "Тяньцзиньский комик",
"qwenVoiceSunny": "Милая сычуаньская девушка",
"qwenVoiceEric": "Чэндуский джентльмен",
"qwenVoiceRocky": "Юморной гонконгский парень",
"qwenVoiceKiki": "Милая гонконгская девушка",
"lang_auto": "Авто-определение",
"lang_zh": "中文",
"lang_yue": "粤語",
"lang_en": "English",
"lang_ja": "日本語",
"lang_ko": "한국어",
"lang_es": "Español",
"lang_fr": "Français",
"lang_de": "Deutsch",
"lang_ru": "Русский",
"lang_ar": "العربية",
"lang_pt": "Português",
"lang_it": "Italiano",
"lang_af": "Afrikaans",
"lang_hy": "Հայերեն",
"lang_az": "Azərbaycan",
"lang_be": "Беларуская",
"lang_bs": "Bosanski",
"lang_bg": "Български",
"lang_ca": "Català",
"lang_hr": "Hrvatski",
"lang_cs": "Čeština",
"lang_da": "Dansk",
"lang_nl": "Nederlands",
"lang_et": "Eesti",
"lang_fi": "Suomi",
"lang_gl": "Galego",
"lang_el": "Ελληνικά",
"lang_he": "עברית",
"lang_hi": "हिन्दी",
"lang_hu": "Magyar",
"lang_is": "Íslenska",
"lang_id": "Bahasa Indonesia",
"lang_kn": "ಕನ್ನಡ",
"lang_kk": "Қазақша",
"lang_lv": "Latviešu",
"lang_lt": "Lietuvių",
"lang_mk": "Македонски",
"lang_ms": "Bahasa Melayu",
"lang_mr": "मराठी",
"lang_mi": "Te Reo Māori",
"lang_ne": "नेपाली",
"lang_no": "Norsk",
"lang_fa": "فارسی",
"lang_pl": "Polski",
"lang_ro": "Română",
"lang_sr": "Српски",
"lang_sk": "Slovenčina",
"lang_sl": "Slovenščina",
"lang_sw": "Kiswahili",
"lang_sv": "Svenska",
"lang_tl": "Tagalog",
"lang_fil": "Filipino",
"lang_ta": "தமிழ்",
"lang_th": "ไทย",
"lang_tr": "Türkçe",
"lang_uk": "Українська",
"lang_ur": "اردو",
"lang_vi": "Tiếng Việt",
"lang_cy": "Cymraeg",
"lang_zh-CN": "中文(简体,中国)",
"lang_zh-TW": "中文(繁體,台灣)",
"lang_zh-HK": "粵語(香港)",
"lang_yue-Hant-HK": "粵語(繁體)",
"lang_en-US": "English (United States)",
"lang_en-GB": "English (United Kingdom)",
"lang_en-AU": "English (Australia)",
"lang_en-CA": "English (Canada)",
"lang_en-IN": "English (India)",
"lang_en-NZ": "English (New Zealand)",
"lang_en-ZA": "English (South Africa)",
"lang_ja-JP": "日本語(日本)",
"lang_ko-KR": "한국어(대한민국)",
"lang_de-DE": "Deutsch (Deutschland)",
"lang_fr-FR": "Français (France)",
"lang_es-ES": "Español (España)",
"lang_es-MX": "Español (México)",
"lang_es-AR": "Español (Argentina)",
"lang_es-CO": "Español (Colombia)",
"lang_it-IT": "Italiano (Italia)",
"lang_pt-BR": "Português (Brasil)",
"lang_pt-PT": "Português (Portugal)",
"lang_ru-RU": "Русский (Россия)",
"lang_nl-NL": "Nederlands (Nederland)",
"lang_pl-PL": "Polski (Polska)",
"lang_cs-CZ": "Čeština (Česko)",
"lang_da-DK": "Dansk (Danmark)",
"lang_fi-FI": "Suomi (Suomi)",
"lang_sv-SE": "Svenska (Sverige)",
"lang_no-NO": "Norsk (Norge)",
"lang_tr-TR": "Türkçe (Türkiye)",
"lang_el-GR": "Ελληνικά (Ελλάδα)",
"lang_hu-HU": "Magyar (Magyarország)",
"lang_ro-RO": "Română (România)",
"lang_sk-SK": "Slovenčina (Slovensko)",
"lang_bg-BG": "Български (България)",
"lang_hr-HR": "Hrvatski (Hrvatska)",
"lang_ca-ES": "Català (Espanya)",
"lang_ar-SA": "العربية (السعودية)",
"lang_ar-EG": "العربية (مصر)",
"lang_he-IL": "עברית (ישראל)",
"lang_hi-IN": "हिन्दी (भारत)",
"lang_th-TH": "ไทย (ประเทศไทย)",
"lang_vi-VN": "Tiếng Việt (Việt Nam)",
"lang_id-ID": "Bahasa Indonesia (Indonesia)",
"lang_ms-MY": "Bahasa Melayu (Malaysia)",
"lang_fil-PH": "Filipino (Pilipinas)",
"lang_af-ZA": "Afrikaans (Suid-Afrika)",
"lang_uk-UA": "Українська (Україна)",
"pdfSettings": "Обработка PDF",
"pdfParsingSettings": "Настройки обработки PDF",
"pdfDescription": "Выберите движок для обработки PDF с поддержкой извлечения текста, изображений и таблиц",
"pdfProvider": "PDF-парсер",
"pdfFeatures": "Поддерживаемые функции",
"pdfApiKey": "API-ключ",
"pdfBaseUrl": "Base URL",
"mineruDescription": "MinerU — коммерческий сервис обработки PDF с поддержкой извлечения таблиц, распознавания формул и анализа макета.",
"mineruApiKeyRequired": "Перед использованием необходимо получить API-ключ на сайте MinerU.",
"mineruWarning": "Внимание",
"mineruCostWarning": "MinerU — коммерческий сервис, использование может быть платным. Проверьте цены на сайте MinerU.",
"enterMinerUApiKey": "Введите MinerU API-ключ",
"mineruLocalDescription": "MinerU поддерживает локальное развёртывание с расширенной обработкой PDF (таблицы, формулы, анализ макета). Требуется предварительное развёртывание сервиса MinerU.",
"mineruServerAddress": "Адрес локального сервера MinerU (напр., http://localhost:8080)",
"mineruApiKeyOptional": "Требуется только если на сервере включена аутентификация",
"mineruCloudApiKeyPlaceholder": "Введите API ключ MinerU Cloud",
"optionalApiKey": "Необязательный API-ключ",
"featureText": "Извлечение текста",
"featureImages": "Извлечение изображений",
"featureTables": "Извлечение таблиц",
"featureFormulas": "Распознавание формул",
"featureLayoutAnalysis": "Анализ макета",
"featureMetadata": "Метаданные",
"enableImageGeneration": "Включить AI-генерацию изображений",
"imageGenerationDisabledHint": "При включении изображения будут автоматически генерироваться во время создания курса",
"imageSettings": "Генерация изображений",
"imageSection": "Текст в изображение",
"imageProvider": "Провайдер генерации изображений",
"imageModel": "Модель генерации изображений",
"providerSeedream": "Seedream (ByteDance)",
"providerOpenAIImage": "OpenAI Image",
"providerQwenImage": "Qwen Image (Alibaba)",
"providerNanoBanana": "Nano Banana (Gemini)",
"providerMiniMaxImage": "MiniMax Image",
"providerGrokImage": "Grok Image (xAI)",
"testImageGeneration": "Тест генерации изображений",
"testImageConnectivity": "Тест подключения",
"imageConnectivitySuccess": "Подключение к сервису изображений успешно",
"imageConnectivityFailed": "Подключение к сервису изображений не удалось",
"imageTestSuccess": "Тест генерации изображений пройден",
"imageTestFailed": "Тест генерации изображений не пройден",
"imageTestPromptPlaceholder": "Введите описание изображения для теста",
"imageTestPromptDefault": "Милый котёнок сидит на письменном столе",
"imageGenerating": "Генерация изображения...",
"imageGenerationFailed": "Ошибка генерации изображения",
"enableVideoGeneration": "Включить AI-генерацию видео",
"videoGenerationDisabledHint": "При включении видео будут автоматически генерироваться во время создания курса",
"videoSettings": "Генерация видео",
"videoSection": "Текст в видео",
"videoProvider": "Провайдер генерации видео",
"videoModel": "Модель генерации видео",
"providerSeedance": "Seedance (ByteDance)",
"providerKling": "Kling (Kuaishou)",
"providerVeo": "Veo (Google)",
"providerSora": "Sora (OpenAI)",
"providerMiniMaxVideo": "MiniMax Video",
"providerGrokVideo": "Grok Video (xAI)",
"testVideoGeneration": "Тест генерации видео",
"testVideoConnectivity": "Тест подключения",
"videoConnectivitySuccess": "Подключение к видеосервису успешно",
"videoConnectivityFailed": "Подключение к видеосервису не удалось",
"testingConnection": "Тестирование...",
"videoTestSuccess": "Тест генерации видео пройден",
"videoTestFailed": "Тест генерации видео не пройден",
"videoTestPromptDefault": "Милый котёнок гуляет по письменному столу",
"videoGenerating": "Генерация видео (ожид. 1-2 мин.)...",
"videoGenerationWarning": "Генерация видео обычно занимает 1-2 минуты, пожалуйста подождите",
"mediaRetry": "Повторить",
"mediaContentSensitive": "Извините, этот контент не прошёл проверку безопасности.",
"mediaGenerationDisabled": "Генерация отключена в настройках",
"singleAgent": "Один агент",
"multiAgent": "Мульти-агент",
"selectAgents": "Выбрать агентов",
"noVisionWarning": "Текущая модель не поддерживает зрение. Изображения по-прежнему можно размещать на слайдах, но модель не сможет понимать содержимое изображений для оптимизации",
"serverConfigured": "Сервер",
"serverConfiguredNotice": "Администратор настроил API-ключ для этого провайдера на сервере. Можете использовать его напрямую или ввести свой ключ.",
"optionalOverride": "Необязательно — оставьте пустым для серверной конфигурации",
"setupNeeded": "Требуется настройка",
"modelNotConfigured": "Пожалуйста, выберите модель для начала работы",
"dangerZone": "Опасная зона",
"clearCache": "Очистить локальный кэш",
"clearCacheDescription": "Удалить все локально сохранённые данные, включая записи классов, историю чатов, аудиокэш и настройки приложения. Это действие нельзя отменить.",
"clearCacheConfirmTitle": "Вы уверены, что хотите очистить весь кэш?",
"clearCacheConfirmDescription": "Это навсегда удалит все следующие данные без возможности восстановления:",
"clearCacheConfirmItems": "Классы и сцены, История чатов, Аудио- и графический кэш, Настройки и предпочтения",
"clearCacheConfirmInput": "Введите «УДАЛИТЬ» для продолжения",
"clearCacheConfirmPhrase": "УДАЛИТЬ",
"clearCacheButton": "Удалить все данные навсегда",
"clearCacheSuccess": "Кэш очищен, страница скоро обновится",
"clearCacheFailed": "Не удалось очистить кэш, попробуйте снова",
"webSearchSettings": "Веб-поиск",
"webSearchApiKey": "Tavily API-ключ",
"webSearchApiKeyPlaceholder": "Введите ваш Tavily API-ключ",
"webSearchApiKeyPlaceholderServer": "Серверный ключ настроен, можно ввести свой",
"webSearchApiKeyHint": "Получите API-ключ на tavily.com для веб-поиска",
"webSearchBaseUrl": "Base URL",
"webSearchServerConfigured": "Серверный Tavily API-ключ настроен",
"optional": "Необязательно"
},
"profile": {
"title": "Профиль",
"defaultNickname": "Ученик",
"chooseAvatar": "Выбрать аватар",
"uploadAvatar": "Загрузить",
"bioPlaceholder": "Расскажите о себе — AI-учитель адаптирует уроки под ваш уровень...",
"avatarHint": "Ваш аватар будет отображаться в обсуждениях и чатах",
"fileTooLarge": "Изображение слишком большое — выберите файл до 5 МБ",
"invalidFileType": "Пожалуйста, выберите файл изображения",
"editTooltip": "Нажмите для редактирования профиля"
},
"media": {
"imageCapability": "Генерация изображений",
"imageHint": "Генерация изображений в слайдах",
"videoCapability": "Генерация видео",
"videoHint": "Генерация видео в слайдах",
"ttsCapability": "Синтез речи",
"ttsHint": "AI-учитель говорит вслух",
"asrCapability": "Распознавание речи",
"asrHint": "Голосовой ввод для обсуждения",
"provider": "Провайдер",
"model": "Модель",
"voice": "Голос",
"speed": "Скорость",
"language": "Язык"
},
"accessCode": {
"title": "Введите код доступа",
"placeholder": "Код доступа",
"error": "Неверный код доступа. Попробуйте ещё раз."
}
}