| { |
| "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": "Неверный код доступа. Попробуйте ещё раз." |
| } |
| } |
|
|