Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions web-app/src/containers/LanguageSwitcher.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ const LANGUAGES = [
{ value: 'de-DE', label: 'Deutsch' },
{ value: 'pt-BR', label: 'Português (Brasil)' },
{ value: 'ja', label: '日本語' },
{ value: 'ru', label: 'Русский' },
]

export default function LanguageSwitcher() {
Expand Down
35 changes: 35 additions & 0 deletions web-app/src/locales/assistants.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{
"title": "Ассистенты",
"editAssistant": "Редактировать ассистента",
"deleteAssistant": "Удалить ассистента",
"deleteConfirmation": "Удалить ассистента",
"deleteConfirmationDesc": "Вы уверены, что хотите удалить этого ассистента? Это действие нельзя отменить.",
"cancel": "Отмена",
"delete": "Удалить",
"addAssistant": "Добавить ассистента",
"emoji": "Эмодзи",
"name": "Имя",
"enterName": "Введите имя",
"nameRequired": "Имя обязательно для заполнения",
"description": "Описание (необязательно)",
"enterDescription": "Введите описание",
"instructions": "Инструкции",
"enterInstructions": "Введите инструкции",
"predefinedParameters": "Заданные параметры",
"parameters": "Параметры",
"key": "Ключ",
"value": "Значение",
"stringValue": "Строка",
"numberValue": "Число",
"booleanValue": "Логический",
"jsonValue": "JSON",
"trueValue": "Истина",
"falseValue": "Ложь",
"jsonValuePlaceholder": "JSON значение",
"save": "Сохранить",
"createNew": "Создать нового ассистента",
"personality": "Личность",
"capabilities": "Возможности",
"instructionsDateHint": "Совет: Использовать {{current_date}} для вставки сегодняшней даты.",
"maxToolSteps": "Макс. количество шагов инструмента"
}
12 changes: 12 additions & 0 deletions web-app/src/locales/chat.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"welcome": "Привет, как дела?",
"description": "Как я могу вам сегодня помочь?",
"temporaryChat": "Временный чат",
"temporaryChatDescription": "Начните временный разговор, который не будет сохранён в истории ваших чатов.",
"status": {
"empty": "Чаты не найдены"
},
"sendMessage": "Отправить сообщение",
"newConversation": "Новый разговор",
"clearHistory": "Очистить историю"
}
376 changes: 376 additions & 0 deletions web-app/src/locales/common.json

Large diffs are not rendered by default.

31 changes: 31 additions & 0 deletions web-app/src/locales/hub.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
{
"sortNewest": "Новейший",
"sortMostDownloaded": "Наиболее загружаемые",
"use": "Использовать",
"download": "Загрузить",
"downloaded": "Загружаемый",
"loadingModels": "Загрузка моделей…",
"noModels": "Модели не найдены",
"by": "От",
"downloads": "Загрузки",
"variants": "Варианты",
"showVariants": "Показать варианты",
"useModel": "Использовать эту модель",
"downloadModel": "Загрузить модель",
"tools": "Инструменты",
"searchPlaceholder": "Поиск моделей на Hugging Face…",
"joyride": {
"recommendedModelTitle": "Рекомендуемая модель",
"recommendedModelContent": "Просматривайте и загружайте мощные модели искусственного интеллекта от различных поставщиков в одном месте. Мы предлагаем начать с Jan-Nano — модели, оптимизированной для вызова функций, интеграции инструментов и исследовательских возможностей. Идеально подходит для создания интерактивных ИИ-агентов.",
"downloadInProgressTitle": "Процесс загрузки",
"downloadInProgressContent": "Ваша модель загружается. Отслеживайте здесь ход выполнения — по завершении оно будет готово к использованию.",
"downloadModelTitle": "Загрузить модель",
"downloadModelContent": "Нажмите кнопку Загрузить, чтобы начать загрузку модели.",
"back": "Назад",
"close": "Закрыть",
"lastWithDownload": "Загрузить",
"last": "Готово",
"next": "Далее",
"skip": "Пропустить"
}
}
3 changes: 3 additions & 0 deletions web-app/src/locales/logs.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"noLogs": "Доступные журналы отсутствуют"
}
47 changes: 47 additions & 0 deletions web-app/src/locales/mcp-servers.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
{
"editServer": "Редактировать сервер MCP",
"addServer": "Добавить сервер MCP",
"serverName": "Имя сервера",
"enterServerName": "Введите имя сервера",
"command": "Команда",
"enterCommand": "Введите команду (uvx или npx)",
"arguments": "Аргументы",
"argument": "Аргумент {{index}}",
"envVars": "Переменные окружения",
"key": "Ключ",
"value": "Значение",
"save": "Сохранить",
"status": "Статус",
"connected": "Подключено",
"disconnected": "Отключено",
"deleteServer": {
"title": "Удалить MCP Server",
"description": "Вы уверены, что хотите удалить сервер MCP {{serverName}}? Это действие нельзя отменить.",
"delete": "Удалить",
"success": "Сервер MCP {{serverName}} успешно удалён"
},
"editJson": {
"title": "Редактировать JSON для сервера MCP: {{serverName}}",
"titleAll": "Редактировать все серверы MCP в формате JSON",
"placeholder": "Введите конфигурацию JSON",
"errorParse": "Не удалось обработать начальные данные",
"errorPaste": "Неверный формат JSON в переданном содержимом",
"errorFormat": "Неверный формат JSON",
"errorServerName": "Имя обязательно для заполнения и не может быть пустым",
"errorMissingServerNameKey": "JSON должен быть структурирован как {\"serverName\": {config}} – отсутствует ключ имени сервера",
"errorInvalidType": "Неверный тип '{{type}}' для сервера '{{serverName}}'. Тип должен быть 'stdio', 'http', или 'sse'",
"save": "Сохранить"
},
"checkParams": "Пожалуйста, проверьте параметры согласно руководству.",
"title": "Серверы MCP",
"experimental": "Экспериментальный",
"editAllJson": "Редактировать все серверы в формате JSON",
"findMore": "Найти больше серверов MCP",
"allowPermissions": "Разрешить все разрешения инструмента MCP",
"allowPermissionsDesc": "При включении все вызовы инструментов MCP будут автоматически одобряться без отображения диалогов запроса разрешения. Эта настройка действует глобально для всех разговоров, включая новые чаты.",
"noServers": "Не найдено серверов MCP",
"args": "Аргументы",
"env": "Окружение",
"serverStatusActive": "Сервер {{serverKey}} успешно активирован",
"serverStatusInactive": "Сервер {{serverKey}} успешно деактивирован"
}
7 changes: 7 additions & 0 deletions web-app/src/locales/model-errors.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"title": "Ошибка вне контекста",
"description": "Этот чат приближается к ограничению памяти ИИ, как доска для записей, которая заполняется. Мы можем расширить окно памяти (называемое размером контекста), чтобы оно запоминало больше, но это может использовать больше памяти вашего компьютера. Мы также можем сократить ввод, что означает, что часть истории чата будет удалена для освобождения места для новых сообщений.",
"increaseContextSizeDescription": "Вы хотите увеличить размер контекста?",
"truncateInput": "Сократить ввод",
"increaseContextSize": "Увеличить размер контекста"
}
5 changes: 5 additions & 0 deletions web-app/src/locales/provider.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"addProvider": "Добавить поставщика",
"addOpenAIProvider": "Добавить поставщика OpenAI",
"enterNameForProvider": "Введите имя поставщика"
}
75 changes: 75 additions & 0 deletions web-app/src/locales/providers.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
{
"joyride": {
"chooseProviderTitle": "Выберите поставщика",
"chooseProviderContent": "Выберите поставщика, которого хотите использовать, убедитесь, что у вас есть доступ к ключу API для него.",
"getApiKeyTitle": "Получить ключ API\n",
"getApiKeyContent": "Войдите на панель управления поставщика, чтобы найти или сгенерировать свой ключ API.",
"insertApiKeyTitle": "Вставить ваш ключ API",
"insertApiKeyContent": "Вставьте сюда свой API-ключ, чтобы подключиться и активировать провайдера.",
"back": "Назад",
"close": "Закрыть",
"last": "Готово",
"next": "Далее",
"skip": "Пропустить"
},
"refreshModelsError": "Для получения моделей необходимо настроить базовый URL и ключ API поставщика.",
"refreshModelsSuccess": "Добавлено {{count}} новых моделей от {{provider}}.",
"noNewModels": "Новых моделей не найдено. Все доступные модели уже добавлены.",
"refreshModelsFailed": "Не удалось получить модели от {{provider}}. Пожалуйста, проверьте ваш ключ API и базовый URL.",
"models": "Модели",
"refreshing": "Обновление…",
"refresh": "Обновить",
"import": "Импортировать\n",
"importModelSuccess": "Модель {{provider}} успешно импортирована.",
"importModelError": "Не удалось импортировать модель:",
"stop": "Остановить",
"start": "Начать",
"noModelFound": "Не найдена модель",
"noModelFoundDesc": "Здесь будет отображен список доступных моделей. Если у вас еще нет моделей, посетите Хаб для загрузки.",
"configuration": "Конфигурация",
"apiEndpoint": "Конечная точка API",
"testConnection": "Проверить подключение",
"addModel": {
"title": "Добавить новую модель",
"description": "Добавить новую модель для поставщика {{provider}}.\n",
"modelId": "ID модели",
"enterModelId": "Введите ID модели",
"exploreModels": "Список моделей от {{provider}}",
"addModel": "Добавить модель",
"modelExists": "Модель уже существует",
"modelExistsDesc": "Пожалуйста, выберите другой ID модели."
},
"deleteModel": {
"title": "Удалить модель: {{modelId}}",
"description": "Вы уверены, что хотите удалить эту модель? Это действие нельзя отменить.",
"success": "Модель {{modelId}} была удалена безвозвратно.",
"cancel": "Отмена",
"delete": "Удалить"
},
"deleteProvider": {
"title": "Удалить поставщика",
"description": "Удалить этого поставщика и все его модели. Это действие нельзя отменить.",
"success": "Поставщик {{provider}} был удалён безвозвратно.",
"confirmTitle": "Удалить поставщика: {{provider}}",
"confirmDescription": "Вы уверены, что хотите удалить этого поставщика? Это действие нельзя отменить.",
"cancel": "Отмена",
"delete": "Удалить"
},
"editModel": {
"title": "Редактировать модель: {{modelId}}",
"description": "Настройте возможности модели, переключив нужные параметры ниже.",
"capabilities": "Возможности",
"tools": "Инструменты",
"vision": "Зрение",
"proactive": "Проактивность (Экспериментальный)",
"embeddings": "Вложения",
"notAvailable": "Еще недоступно",
"warning": {
"title": "Продолжить с осторожностью",
"description": "Модификация возможностей модели может повлиять на производительность и функциональность. Неправильные настройки могут вызвать неожиданное поведение или ошибки."
}
},
"addProvider": "Добавить поставщика",
"addOpenAIProvider": "Добавить поставщика OpenAI",
"enterNameForProvider": "Введите имя поставщика"
}
Loading