From 51caf2a969e34fc24fd5b6baf9f25b604281ebf6 Mon Sep 17 00:00:00 2001 From: Ioan Date: Fri, 13 Mar 2026 08:52:55 +0700 Subject: [PATCH] Complete translation --- ru/chat.json | 67 ++++++++--- ru/config.json | 185 +++++++++++++++++++++++++------ ru/developer.json | 76 +++++++++---- ru/discover.json | 9 +- ru/download.json | 22 +++- ru/models.json | 75 ++++++++++--- ru/settings.json | 41 ++++++- ru/shared.json | 275 +++++++++++++++++++++++++++++++++++++++++++++- ru/sidebar.json | 2 +- 9 files changed, 649 insertions(+), 103 deletions(-) diff --git a/ru/chat.json b/ru/chat.json index 0f865bb7..252ee503 100644 --- a/ru/chat.json +++ b/ru/chat.json @@ -23,10 +23,12 @@ "noChatSelectedPlaceholder": "Выберите чат", "unnamedChat": "Безымянный чат", "emptyFolder": "Папка пуста", + "tokenCount": "Счётчик токенов", "messageTokenCount": "Токены во входящем сообщении", "tokenCount/hint": "Количество токенов в сообщении, рассчитанное токенизатором текущей модели.\n\nТребует загруженной модели.", "messageTokenCount/hint": "Количество токенов во входящем сообщении, рассчитанное токенизатором текущей модели.\n\n**Не включает** токены вложений.", + "notes": "Заметки к беседе", "notes/add/first": "Добавить заметку", "notes/add/another": "Добавить еще одну заметку", @@ -35,9 +37,11 @@ "notes/delete": "Удалить заметку", "notes/noteLabel": "Заметка", "notes/copyContent": "Копировать содержание заметки", + "actions/sendMessage/error": "Не удалось отправить сообщение", "actions/loadModel/error": "🥲 Не удалось загрузить модель", "actions/addFile": "[Экспериментально] Прикрепить файл к этому сообщению\n(.pdf, текст или .docx)", + "actions/addFile/label": "Прикрепить файл", "actions/changeRole": "Переключиться между ролями Пользователя и Ассистента.\n\nЭто полезно для направления диалога в определенное русло.\n\nМожно использовать для моделирования сценариев 'обучения на нескольких примерах' или 'обучения в контексте'.", "actions/addImage": "Добавить изображение", "actions/deleteMessage": "Удалить сообщение", @@ -56,6 +60,8 @@ "actions/loadLastModel": "Перезагрузить последнюю использованную модель", "actions/loadLastModel/tooltip": "Нажмите, чтобы загрузить модель, которую вы последний раз использовали с этим чатом:\n\n{{lastModel}}", "actions/loadLastModel/error": "Ошибка при загрузке последней использованной модели.", + "actions/clearLastUsedModel": "Очистить последнюю использованную модель", + "actions/clearLastUsedModel/error": "Не удалось очистить последнюю использованную модель.", "actions/continueCurrentModel": "Использовать текущую модель", "actions/continueCurrentModel/tooltip": "Текущая модель: {{currentModel}}", "actions/changeToLastUsedModel": "Загрузить {{lastModel}}", @@ -81,51 +87,66 @@ "modelLoader/manualLoadParams/hint/after": ")", "actions/move/error": "Ошибка перемещения", "actions/rename/error": "Ошибка переименования", - "actions/createChatAtRoot": "Создать новый чат", + "actions/createChatAtRoot": "Создать новый чат...", "actions/createChatAtRoot/error": "Не удалось создать чат на корневом уровне", - "actions/createFolderAtRoot": "Создать новую папку", + "actions/createFolderAtRoot": "Создать новую папку...", "actions/createFolderAtRoot/error": "Не удалось создать папку на корневом уровне", + "actions/openInFolder/mac": "Показать в Finder", + "actions/openInFolder/pc": "Показать в проводнике", + "actions/createChat/error": "Не удалось создать чат", "actions/deleteChat/errorTitle": "Не удалось удалить чат", + "userFile/fileSizeLimit": "Ограничение размера файла: ", "userFile/noImageSupport": "Модель не поддерживает ввод изображений", "userFile/errorPrefix": "Ошибка - ", "userFile/supportedImagePrefix": "Неподдерживаемый тип изображения - поддерживаются только ", "userFile/supportedImageSuffix": " поддерживается", "userFile/unsupportedFileType": "Неподдерживаемый тип файла - поддерживаются только изображения, PDF и текстовые файлы.", - "userFile/maxFilesPerMessage": "Достигнуто максимальное количество файлов на одно сообщение. Нельзя добавить больше чем {{files}} файлов.", - "userFile/maxFileSizePerMessage": "Превышен максимальный размер файла на одно сообщение. Нельзя добавить файлы размером больше {{size}}.", - "userFile/maxFileSizePerConversation": "Превышен общий лимит размера файлов (макс. {{size}})", + "userFile/maxFilesPerMessage": "Достигнуто максимальное количество файлов на одно сообщение. Нельзя добавить больше чем {{files}} файлов. ", + "userFile/maxFileSizePerMessage": "Превышен максимальный размер файла на одно сообщение. Нельзя добавить файлы размером больше {{size}}. ", + "userFile/maxFileSizePerConversation": "Превышен общий лимит размера файлов (макс. {{size}}). ", "userFile/failedToUploadError/title": "Не удалось загрузить файл", "userFile/failedToAddFile/title": "Не удалось прикрепить файл к сообщению", "errorTitle": "Ошибка", "userFile/chatTerminalDocumentsCount_one": "{{count}} документ в чате", "userFile/chatTerminalDocumentsCount_other": "{{count}} документов в чате", + "prediction/busyModel/title": "Модель занята", "prediction/busyModel/message": "Пожалуйста, дождитесь завершения работы модели и попробуйте снова", "prediction/noModel/title": "Модель не выбрана", "prediction/modelLoading": "Сообщение в очереди — отправится после загрузки модели", "prediction/noModel/message": "Выберите модель для отправки сообщения", "prediction/unloadModel/error": "Не удалось выгрузить модель", + "retrieval/user/processingLabel": "ИИ обрабатывает запрос...", "retrieval/powerUser/intermediateStepsHidden": "Скрытые промежуточные шаги. Нажмите, чтобы развернуть.", "retrieval/actions/clickToExpand": "Нажмите, чтобы развернуть промежуточные шаги", "retrieval/actions/clickToCollapse": "Нажмите, чтобы свернуть промежуточные шаги", - "style": "Внешний вид чата", + + "style": "Внешний вид", + "style/viewMode/markdown": "Markdown", "style/viewMode/plaintext": "Текст", "style/viewMode/monospace": "Моноширинный", - "speculativeDecodingVisualization/toggle": "визуализировать принятые черновиковые токены", + + "speculativeDecodingVisualization/toggle": "Визуализировать принятые черновиковые токены", "speculativeDecodingVisualization/fromDraftModel_one": "Принятые черновиковые токены", "speculativeDecodingVisualization/fromDraftModel_other": "Принятые черновиковые токены", "speculativeDecodingVisualization/cannotChangeViewMode": "Выбор режима просмотра отключен при визуализации черновиковых токенов.", + "style/fontSize/label": "Размер шрифта", "style/fontSize/medium": "По умолчанию", "style/fontSize/large": "Большой", "style/fontSize/small": "Маленький", + "style/debugBlocks/label": "Показывать блоки отладки", + "style/thinkingUI/label": "Разворачивать блоки рассуждений по умолчанию", - "style/chatFullWidth/label": "Растягивать чат на всю ширину", + "style/chatFullWidth/label": "Растягивать чат на всю ширину окна", + + "style/chatUtilityMenusShowLabel/label": "Показывать метки меню утилит чата", + "messageBlocks": { "expandBlockTooltip": "Развернуть содержимое", "collapseBlockTooltip": "Свернуть содержимое", @@ -135,14 +156,20 @@ "expandTooltip": "Развернуть блок информации отладки" } }, + + "chatTabOptions/clearAllMessages": "Очистить все сообщения...", + "chatTabOptions/duplicateChat": "Дублировать чат", + "topBarActions/duplicateChat": "Дублировать", - "topBarActions/clearChat": "Очистить чат", + "topBarActions/clearChat": "Очистить все", "topBarActions/clearChatConfirmation": "Вы уверены, что хотите удалить все сообщения из этого чата?", "topBarActions/clearChatCancel": "Отмена", - "topBarActions/clearChatDelete": "Очистить чат", + "topBarActions/clearChatDelete": "Очистить все", + "noModels.indexing": "Индексация файлов модели... (это может занять некоторое время)", "noModels.downloading": "Скачивается ваша первая LLM...", "noModels": "Пока нет LLM — загрузите модель, чтобы начать!", + "plugins": { "pluginTrigger": { "noPlugins": "Плагин", @@ -157,7 +184,7 @@ "uninstall": "Удалить" }, "actionButtons": { - "create": "+ Создать", + "create": "Создать", "import": "Импортировать", "discover": "Найти" }, @@ -166,7 +193,8 @@ "placeholder": "Созданные вами плагины будут отображаться здесь" }, "startRunningDevelopmentPlugin/error": "Не удалось запустить плагин в режиме разработки", - "stopRunningDevelopmentPlugin/error": "Не удалось остановить плагин в режиме разработки" + "stopRunningDevelopmentPlugin/error": "Не удалось остановить плагин в режиме разработки", + "forceReInitPlugin/error": "Не удалось перезапустить плагин" }, "pluginConfiguration": { "title": "Настройка плагина", @@ -190,8 +218,13 @@ "revealInFinder": "Показать в Finder", "openInFileExplorer": "Открыть в проводнике" } - } + }, + "localFork": { + "error": "Не удалось создать локальную копию плагина для разработки." + }, + "restartErrorPlugin/error": "Не удалось перезапустить плагин" }, + "genInfo": { "tokensPerSecond": "{{tokensPerSecond}} токенов/сек", "predictedTokensCount": "{{predictedTokensCount}} токенов", @@ -206,6 +239,12 @@ "stopReason.maxPredictedTokensReached": "Достигнут максимальный лимит предсказанных токенов", "stopReason.contextLengthReached": "Достигнут лимит длины контекста", "speculativeDecodedBy": "Черновая модель: {{decodedBy}}", - "speculativeDecodingStats": "Принято {{accepted}}/{{total}} черновых токенов ({{percentage}}%)" + "speculativeDecodingStats": "Принято {{accepted}}/{{total}} черновых токенов ({{percentage}}%)", + "speculativeDecodingAcceptedPercentage": "{{percentage}}% черновых токенов принято", + "speculativeDecodingTooltip": "Принято {{accepted}}/{{total}} черновых токенов" + }, + + "tabs": { + "systemPromptEditorTab.headerLabel": "Редактирование системного промпта" } } diff --git a/ru/config.json b/ru/config.json index b357ce7a..8dc3f213 100644 --- a/ru/config.json +++ b/ru/config.json @@ -31,11 +31,19 @@ "sampling/title": "Выборка", "settings/title": "Настройки", "toolUse/title": "Использование инструментов", - "promptTemplate/title": "Шаблон запроса" + "promptTemplate/title": "Шаблон запроса", + "customFields/title": "Пользовательские поля" }, + "llm.prediction.systemPrompt/title": "Системный промпт", "llm.prediction.systemPrompt/description": "Используйте это поле для предоставления фона модели, такого как набор правил, ограничений или общих требований. Это поле также часто называется \"системной подсказкой\".", "llm.prediction.systemPrompt/subTitle": "Руководство для ИИ", + "llm.prediction.systemPrompt/openEditor": "Редактор", + "llm.prediction.systemPrompt/closeEditor": "Закрыть редактор", + "llm.prediction.systemPrompt/openedEditor": "Открыто в редакторе...", + "llm.prediction.systemPrompt/edit": "Редактировать системный промпт...", + "llm.prediction.systemPrompt/addInstructionsWithMore": "Добавить инструкции...", + "llm.prediction.systemPrompt/addInstructions": "Добавить инструкции", "llm.prediction.temperature/title": "Температура", "llm.prediction.temperature/subTitle": "Уровень случайности. 0 даёт одинаковый результат, более высокие значения повышают креативность и разнообразие", "llm.prediction.temperature/info": "Из документации llama.cpp: \"Значение по умолчанию <{{dynamicValue}}> обеспечивает баланс между случайностью и детерминизмом. В крайнем случае, температура 0 всегда будет выбирать наиболее вероятный следующий токен, приводя к идентичным результатам при каждом запуске\"", @@ -109,6 +117,25 @@ "llm.prediction.speculativeDecoding.draftModel/title": "Модель черновика", "llm.prediction.reasoning.parsing/title": "Парсинг секций рассуждений", "llm.prediction.reasoning.parsing/subTitle": "Как обрабатывать разделы рассуждений в выводе модели", + + "llm.load.mainGpu/title": "Основной GPU", + "llm.load.mainGpu/subTitle": "GPU, который будет приоритетным для вычислений модели", + "llm.load.mainGpu/placeholder": "Выберите основной GPU...", + "llm.load.splitStrategy/title": "Стратегия разделения", + "llm.load.splitStrategy/subTitle": "Как распределить вычисления модели между GPU", + "llm.load.splitStrategy/placeholder": "Выберите стратегию разделения...", + "llm.load.offloadKVCacheToGpu/title": "Выгрузить KV-кэш в память GPU", + "llm.load.offloadKVCacheToGpu/subTitle": "Выгрузить KV-кэш в память GPU. Улучшает производительность, но требует больше памяти GPU", + "llm.load.numParallelSessions/title": "Максимум одновременных предсказаний", + "llm.load.numParallelSessions/subTitle": "Максимальное количество предсказаний, которые модель может выполнять одновременно. Скорость каждого отдельного предсказания может снизиться при параллелизме, но каждое предсказание начнётся быстрее, и общая пропускная способность будет выше", + "llm.load.useUnifiedKvCache/title": "Унифицированный KV-кэш", + "llm.load.useUnifiedKvCache/subTitle": "Управляет тем, используют ли одновременные предсказания общий KV-кэш, экономя память. Отключение этого гарантирует, что каждое предсказание сможет использовать полный размер контекста, но за счёт использования большего объёма памяти", + "load.gpuStrictVramCap/title": "Ограничить выгрузку модели на Dedicated GPU Memory", + "load.gpuStrictVramCap/customSubTitleOff": "ВЫКЛ: Разрешить выгрузку весов модели в Shared memory, если Dedicated GPU memory заполнена", + "load.gpuStrictVramCap/customSubTitleOn": "ВКЛ: Система ограничит выгрузку весов модели на Dedicated GPU memory и RAM. Контекст всё ещё может использовать Shared memory", + "load.gpuStrictVramCap/customGpuOffloadWarning": "Выгрузка модели ограничена Dedicated GPU memory. Фактическое количество выгруженных слоёв может отличаться", + "load.allGpusDisabledWarning": "Все GPU в настоящее время отключены. Включите хотя бы один для выгрузки", + "llm.load.contextLength/title": "Длина контекста", "llm.load.contextLength/subTitle": "Максимальное число токенов в одном запросе. Смотрите опции управления переполнением под «Параметры вывода» для других способов", "llm.load.contextLength/info": "Определяет максимальное количество токенов, которое модель может рассматривать одновременно, влияя на то, сколько контекста она сохраняет во время обработки", @@ -116,6 +143,10 @@ "llm.load.seed/title": "Сид", "llm.load.seed/subTitle": "Начальное значение генератора случайных чисел. -1 — случайное", "llm.load.seed/info": "Случайный сид: Устанавливает сид для генерации случайных чисел, чтобы обеспечить воспроизводимые результаты", + "llm.load.numCpuExpertLayersRatio/title": "Число слоёв для принудительной выгрузки весов MoE на CPU", + "llm.load.numCpuExpertLayersRatio/subTitle": "Число слоёв для выгрузки экспертов на CPU. Экономит VRAM и может быть быстрее частичной выгрузки на GPU. Не рекомендуется, если модель полностью помещается в VRAM.", + "llm.load.numCpuExpertLayersRatio/info": "Определяет число слоёв для выгрузки экспертов на CPU. Оставляет слои внимания на GPU, экономя VRAM и сохраняя высокую скорость вывода.", + "llm.load.llama.evalBatchSize/title": "Размер пакета оценки", "llm.load.llama.evalBatchSize/subTitle": "Число входных токенов в одном пакете. Больше — быстрее, но выше нагрузка на память", "llm.load.llama.evalBatchSize/info": "Устанавливает количество примеров, обрабатываемых вместе в одном пакете во время оценки, что влияет на скорость и использование памяти.", @@ -174,6 +205,7 @@ "llm.load.mlx.kvCacheQuantization/groupSize/tooltip": "[Дополнительно] Параметр «размер группы» при квантизации\n\n• Точность = 32\n• Сбалансировано = 64\n• Быстро = 128", "llm.load.mlx.kvCacheQuantization/quantizedStart/title": "Начало квантизации по длине контекста", "llm.load.mlx.kvCacheQuantization/quantizedStart/tooltip": "При достижении этого количества токенов начнётся квантизация KV-кэша", + "embedding.load.contextLength/title": "Длина контекста", "embedding.load.contextLength/subTitle": "Максимальное число токенов, обрабатываемых за один запрос. Смотрите опции переполнения в «Параметрах вывода»", "embedding.load.contextLength/info": "Задаёт максимально учитываемое число токенов за один раз, влияя на объём сохраняемого контекста", @@ -197,7 +229,9 @@ "embedding.load.llama.tryMmap/info": "Загружает файлы модели напрямую в память", "embedding.load.seed/title": "Сид", "embedding.load.seed/subTitle": "Начальное значение генератора случайных чисел. -1 — случайное", + "embedding.load.seed/info": "Случайный сид: задаёт сид для воспроизводимости результатов", + "presetTooltip": { "included/title": "Значения Предустановки", "included/description": "Следующие поля будут применены", @@ -213,8 +247,12 @@ "legacy/description": "Эта предустановка является устаревшей. Она включает в себя следующие поля, которые теперь автоматически обрабатываются или больше не актуальны.", "button/publish": "Опубликовать на Хабе", "button/pushUpdate": "Отправить изменения на Хаб", - "button/export": "Экспорт" + "button/noChangesToPush": "Нет изменений для отправки", + "button/export": "Экспорт", + "hubLabel": "Предустановка из Хаба от {{user}}", + "ownHubLabel": "Ваша предустановка из Хаба" }, + "customInputs": { "string": { "emptyParagraph": "<Пусто>" @@ -274,7 +312,7 @@ "max": "МАКС", "off": "ВЫКЛ" }, - "llamaAccelerationSplitStrategy": { + "gpuSplitStrategy": { "evenly": "Равномерно", "favorMainGpu": "Предпочитать основной GPU" }, @@ -338,23 +376,24 @@ "idleTTL.label": "Автоматическая разгрузка при простоях (TTL)", "idleTTL.hint": "Если установлено значение, модель будет автоматически разгружена после периода бездействия, указанного в течение определённого времени.", "idleTTL.mins": "мин.", + "presets": { "title": "Предустановка", - "commitChanges": "Зафиксировать изменения", - "commitChanges/description": "Зафиксируйте ваши изменения в предустановке.", - "commitChanges.manual": "Обнаружены новые поля. Вы сможете выбрать, какие изменения включить в предустановку.", - "commitChanges.manual.hold.0": "Приостановить", - "commitChanges.manual.hold.1": "чтобы выбрать, какие изменения зафиксировать в предустановке.", - "commitChanges.saveAll.hold.0": "Приостановить", - "commitChanges.saveAll.hold.1": "чтобы сохранить все изменения.", - "commitChanges.saveInPreset.hold.0": "Приостановить", - "commitChanges.saveInPreset.hold.1": "только чтобы сохранить изменения в поля, которые уже включены в предустановку.", - "commitChanges/error": "Не удалось зафиксировать изменения в предустановке.", - "commitChanges.manual/description": "Выберите, какие изменения включить в предустановку.", + "saveChanges": "Сохранить", + "saveChanges/description": "Сохранить изменения в предустановке.", + "saveChanges/manual": "Обнаружены новые поля. Вы сможете выбрать, какие изменения включить в предустановку.", + "saveChanges/manual.hold.0": "Приостановить", + "saveChanges/manual.hold.1": "чтобы выбрать, какие изменения сохранить в предустановке.", + "saveChanges/saveAll.hold.0": "Приостановить", + "saveChanges/saveAll.hold.1": "чтобы сохранить все изменения.", + "saveChanges/saveInPreset.hold.0": "Приостановить", + "saveChanges/saveInPreset.hold.1": "только чтобы сохранить изменения в поля, которые уже включены в предустановку.", + "saveChanges/error": "Не удалось сохранить изменения в предустановку.", + "saveChanges/manual/description": "Выберите, какие изменения включить в предустановку.", "saveAs": "Сохранить как...", "presetNamePlaceholder": "Введите имя для предустановки...", "cannotCommitChangesLegacy": "Это устаревшая предустановка и ее нельзя изменять. Вы можете скопировать ее, используя «Сохранить как...».", - "cannotCommitChangesNoChanges": "Нет изменений для фиксации.", + "cannotSaveChangesNoChanges": "Нет изменений для сохранения.", "emptyNoUnsaved": "Выберите предустановку...", "emptyWithUnsaved": "Несохраненная предустановка", "saveEmptyWithUnsaved": "Сохранить предустановку как...", @@ -370,6 +409,7 @@ "discardChanges/info": "Отменить все незафиксированные изменения и восстановить предустановку в ее исходное состояние", "newEmptyPreset": "+ Новая предустановка", "importPreset": "Импорт", + "contextMenuCopyIdentifier": "Копировать идентификатор предустановки", "contextMenuSelect": "Применить предустановку", "contextMenuDelete": "Удалить...", "contextMenuShare": "Опубликовать...", @@ -377,6 +417,7 @@ "contextMenuPushChanges": "Отправить изменения в Хаб", "contextMenuPushingChanges": "Отправка изменений...", "contextMenuPushedChanges": "Изменения отправлены", + "contextMenuPullFromHub": "Получить последние", "contextMenuExport": "Экспорт файла", "contextMenuRevealInExplorer": "Показать в Проводнике", "contextMenuRevealInFinder": "Показать в Finder", @@ -396,8 +437,12 @@ "confirmCopied": "Скопировано!", "pushedToHub": "Ваша предустановка была опубликована на Хабе", "descriptionPlaceholder": "Введите описание...", - "willBePublic": "Публикация вашей предустановки сделает ее общедоступной", + "willBePublic": "Эта предустановка будет общедоступной. Любой пользователь в интернете сможет её увидеть.", + "willBePrivate": "Только вы сможете видеть эту предустановку", + "willBeOrgVisible": "Эта предустановка будет видна всем в организации.", "publicSubtitle": "Ваша предустановка общедоступна. Другие могут скачивать и создавать ее копию на lmstudio.ai", + "privateUsageReached": "Достигнут лимит количества приватных предустановок.", + "continueInBrowser": "Продолжить в браузере", "confirmShareButton": "Опубликовать", "error": "Не удалось опубликовать предустановку", "createFreeAccount": "Создайте бесплатную учетную запись в Хабе, чтобы публиковать предустановки" @@ -414,6 +459,44 @@ "error": "Не удалось отправить обновление", "confirmUpdateButton": "Отправить" }, + "resolve": { + "title": "Разрешить конфликты...", + "tooltip": "Открыть окно для разрешения различий с версией на Хабе" + }, + "loginToManage": { + "title": "Войти для управления..." + }, + "downloadFromHub": { + "title": "Скачать", + "downloading": "Скачивание...", + "success": "Скачано!", + "error": "Не удалось скачать" + }, + "push": { + "title": "Отправить изменения", + "pushing": "Отправка...", + "success": "Отправлено", + "tooltip": "Отправить ваши локальные изменения в удалённую версию на Хабе", + "error": "Не удалось отправить" + }, + "saveAsNewModal": { + "title": "Ой! Не удалось найти предустановку на Хабе", + "confirmSaveAsNewDescription": "Хотите опубликовать эту предустановку как новую?", + "confirmButton": "Опубликовать как новую" + }, + "pull": { + "title": "Получить последние", + "error": "Не удалось получить", + "contextMenuErrorMessage": "Не удалось получить", + "success": "Получено", + "pulling": "Получение...", + "upToDate": "Актуально!", + "unsavedChangesModal": { + "title": "У вас есть несохранённые изменения.", + "bodyContent": "Получение из удалённого источника перезапишет ваши несохранённые изменения. Продолжить?", + "confirmButton": "Перезаписать несохранённые изменения" + } + }, "import": { "title": "Импортировать предустановку из файла", "dragPrompt": "Перетащите файлы JSON предустановок или выберите со своего компьютера", @@ -471,30 +554,68 @@ "speculativeDecoding": "Включить в предустановку" } }, + "flashAttentionWarning": "Flash Attention — экспериментальная функция, может вызывать проблемы в некоторых моделях. При неполадках попробуйте отключить её.", "llamaKvCacheQuantizationWarning": "Квантизация KV-кэша — экспериментальная функция, может вызывать проблемы. Для V-кэша Flash Attention должен быть включён. При неполадках сбросьте значение на «F16».", + "seedUncheckedHint": "Случайный сид", "ropeFrequencyBaseUncheckedHint": "Авто", "ropeFrequencyScaleUncheckedHint": "Авто", + "hardware": { - "advancedGpuSettings": "Дополнительные настройки GPU", - "advancedGpuSettings.info": "Если вы не уверены что это, оставьте эти параметры со значениями по умолчанию", - "advancedGpuSettings.reset": "Сбросить до значений по умолчанию", - "environmentVariables": { - "title": "Переменные окружения", - "description": "Активные переменные окружения во время работы модели.", - "key.placeholder": "Выбрать переменную...", - "value.placeholder": "Значение" + "environmentVariables": "Переменные окружения", + "environmentVariables.info": "Если не уверены, оставьте значения по умолчанию", + "environmentVariables.reset": "Сбросить к значениям по умолчанию", + + "gpus.information": "Настройте графические процессоры (GPU), обнаруженные на вашем устройстве", + "gpuSettings": { + "editMaxCapacity": "Изменить макс. ёмкость", + "hideEditMaxCapacity": "Скрыть редактирование макс. ёмкости", + "allOffWarning": "Все GPU отключены или выключены. Убедитесь, что есть хотя бы один активный GPU для загрузки моделей", + "split": { + "title": "Стратегия", + "placeholder": "Выберите распределение памяти GPU", + "options": { + "generalDescription": "Настройте способ загрузки моделей на ваши GPU", + "evenly": { + "title": "Равномерно", + "description": "Распределить память равномерно между GPU" + }, + "priorityOrder": { + "title": "По приоритету", + "description": "Перетащите для изменения приоритета. Система будет пытаться распределить больше на GPU, указанные первыми" + }, + "custom": { + "title": "Пользовательское", + "description": "Распределить память", + "maxAllocation": "Максимальное распределение" + } + } + }, + "deviceId.info": "Уникальный идентификатор этого устройства", + "changesOnlyAffectNewlyLoadedModels": "Изменения затронут только вновь загруженные модели", + "toggleGpu": "Включить/Отключить GPU" + } + }, + + "load.gpuSplitConfig/title": "Конфигурация разделения GPU", + "envVars/title": "Установить переменную окружения", + "envVars": { + "select": { + "placeholder": "Выберите переменную окружения...", + "noOptions": "Больше нет доступных", + "filter": { + "placeholder": "Фильтровать результаты", + "resultsFound_zero": "Результатов не найдено", + "resultsFound_one": "Найден 1 результат", + "resultsFound_other": "Найдено результатов: {{count}}" + } }, - "mainGpu": { - "title": "Основной GPU", - "description": "GPU, который следует отдавать приоритету для вычислений модели.", - "placeholder": "Выбрать основной GPU..." + "inputValue": { + "placeholder": "Введите значение" }, - "splitStrategy": { - "title": "Стратегия разделения", - "description": "Как распределить вычисления модели между GPU.", - "placeholder": "Выбрать стратегию разделения..." + "values": { + "title": "Текущие значения" } } } diff --git a/ru/developer.json b/ru/developer.json index d2b79d00..1bab50d9 100644 --- a/ru/developer.json +++ b/ru/developer.json @@ -1,6 +1,6 @@ { "tabs/server": "Локальный сервер", - "tabs/extensions": "LM Runtimes", + "tabs/extensions": "Среды выполнения LM", "loadSettings/title": "Загрузить настройки", "modelSettings/placeholder": "Выбрать модель для настройки", @@ -27,6 +27,10 @@ "serverOptions/contentLogging/title": "Логировать запросы и ответы", "serverOptions/contentLogging/subtitle": "Настройки ведения журнала запросов / ответов локального сервера", "serverOptions/contentLogging/hint": "Включить или нет логирование запросов и/или ответов в журнале логов локального сервера.", + "serverOptions/redactContent/title": "Скрывать контент", + "serverOptions/redactContent/hint": "При включении предотвращает логирование конфиденциальных данных, таких как содержание запросов и ответов.", + "serverOptions/logIncomingTokens/title": "Логировать входящие токены", + "serverOptions/logIncomingTokens/hint": "Логировать каждый токен по мере его генерации.", "serverOptions/fileLoggingMode/title": "Режим ведения логирования файлов", "serverOptions/fileLoggingMode/off/title": "ОТКЛЮЧЕНО", "serverOptions/fileLoggingMode/off/hint": "Не создавать файлы логов", @@ -43,43 +47,58 @@ "serverOptions/jitModelLoadingTTL/ttl/unit": "минуты", "serverOptions/unloadPreviousJITModelOnLoad/title": "Сохранять только последнюю загруженную модель JIT", "serverOptions/unloadPreviousJITModelOnLoad/hint": "Убедитесь, что одновременно загружена не более одной модели через JIT (разгружается предыдущая модель)", + "serverOptions/allowMcp/title": "Разрешить удалённый MCP", + "serverOptions/allowMcp/hint": "Разрешить использование MCP, которых нет в вашем mcp.json. Эти MCP-подключения временны и существуют только во время запроса. На данный момент поддерживаются только удалённые MCP.", + "serverOptions/allowMcp/mode/off": "Откл", + "serverOptions/allowMcp/mode/off/hint": "Не разрешать запросы к серверу через MCP", + "serverOptions/allowMcp/mode/remote": "Удалённый", + "serverOptions/allowMcp/mode/remote/hint": "Разрешить подключение к удалённым MCP-серверам", + + "serverOptions/start/error": "Не удалось запустить сервер", + "serverOptions/stop/error": "Не удалось остановить сервер", "serverLogs/scrollToBottom": "Перейти в конец", "serverLogs/clearLogs": "Очистить логи ({{shortcut}})", "serverLogs/openLogsFolder": "Открыть папку с логами сервера", - "runtimeSettings/title": "Настройки Runtime", + "runtimeSettings/title": "Настройки среды выполнения", "runtimeSettings/chooseRuntime/title": "По умолчанию", - "runtimeSettings/chooseRuntime/description": "Выберите предустановленный runtime для каждого формата модели", - "runtimeSettings/chooseRuntime/showAllVersions/label": "Показать все runtimes", - "runtimeSettings/chooseRuntime/showAllVersions/hint": "По умолчанию LM Studio показывает только последнюю версию каждого совместимого runtime. Включите этоот параметр, чтобы увидеть все доступные runtimes.", - "runtimeSettings/chooseRuntime/select/placeholder": "Выбрать Runtime", + "runtimeSettings/chooseRuntime/description": "Выберите предустановленную среду выполнения для каждого формата модели", + "runtimeSettings/chooseRuntime/showAllVersions/label": "Показать все среды выполнения", + "runtimeSettings/chooseRuntime/showAllVersions/hint": "По умолчанию LM Studio показывает только последнюю версию каждого пакета расширений. Включите этот параметр, чтобы увидеть все доступные пакеты расширений.", + "runtimeSettings/chooseRuntime/select/placeholder": "Выбрать среду выполнения", + + "runtimeSettings/chooseFrameworks/title": "Фреймворки", + "runtimeSettings/chooseFrameworks/description": "Выберите фреймворк для каждой функции", + "runtimeSettings/chooseFramework/documentParser/builtIn/label": "Встроенный парсер", + "runtimeSettings/chooseFramework/documentParser/select/label": "Парсер документов", + "runtimeSettings/chooseFramework/documentParser/select/placeholder": "Выбрать парсер документов", "runtimeOptions/uninstall": "Удалить", "runtimeOptions/uninstallDialog/title": "Удалить {{runtimeName}}?", - "runtimeOptions/uninstallDialog/body": "Удаление этого runtime удалит его из системы. Это действие необратимо.", + "runtimeOptions/uninstallDialog/body": "Удаление этой среды выполнения удалит её из системы. Это действие необратимо.", "runtimeOptions/uninstallDialog/body/caveats": "Некоторые файлы могут быть удалены только после перезапуска LM Studio.", - "runtimeOptions/uninstallDialog/error": "Не удалось удалить runtime", + "runtimeOptions/uninstallDialog/error": "Не удалось удалить среду выполнения", "runtimeOptions/uninstallDialog/confirm": "Продолжить и удалить", "runtimeOptions/uninstallDialog/cancel": "Отмена", - "runtimeOptions/noCompatibleRuntimes": "Не найдено совместимых runtimes", - "runtimeOptions/downloadIncompatibleRuntime": "Этот runtime был определён как несовместимый с вашим устройством. Скорее всего, он не будет работать.", - "runtimeOptions/noRuntimes": "Нет runtimes", + "runtimeOptions/noCompatibleRuntimes": "Не найдено совместимых сред выполнения", + "runtimeOptions/downloadIncompatibleRuntime": "Эта среда выполнения была определена как несовместимая с вашим устройством. Скорее всего, она не будет работать.", + "runtimeOptions/noRuntimes": "Нет сред выполнения", "runtimes": { - "manageLMRuntimes": "Управление LM Runtimes", - "includeOlderRuntimeVersions": "Включить старые версии runtime", + "manageLMRuntimes": "Управление средами выполнения LM", + "includeOlderRuntimeVersions": "Включить старые версии сред выполнения", "dismiss": "Отмена", "updateAvailableToast": { - "title": "Доступно обновление LM Runtime!" + "title": "Доступно обновление среды выполнения LM!" }, "updatedToast": { - "title": " ✅ LM Runtime обновлен: {{runtime}} → v{{version}}", - "preferencesUpdated": "Новые загруженные модели с {{compatibilityTypes}} будут использовать обновленный runtime." + "title": " ✅ Среда выполнения LM обновлена: {{runtime}} → v{{version}}", + "preferencesUpdated": "Новые загруженные модели с {{compatibilityTypes}} будут использовать обновленную среду выполнения." }, - "noAvx2ErrorMessage": "Все LM Runtimes требуют процессора с AVX2", + "noAvx2ErrorMessage": "Все среды выполнения LM требуют процессора с AVX2", "downloadableRuntimes": { - "runtimeExtensionPacks": "Пакеты расширений runtime", + "runtimeExtensionPacks": "Пакеты расширений среды выполнения", "refresh": "Обновить", "refreshing": "Загрузка...", "filterSegment": { @@ -94,7 +113,7 @@ }, "installedRuntimes": { "manage": { - "title": "Управление активными runtime" + "title": "Управление активными средами выполнения" }, "dropdownOptions": { "installedVersions": "Управление версиями", @@ -121,9 +140,9 @@ "inferenceParams/noParams": "Параметры инференса не доступны для данного типа модели", "quickDocs": { - "tabChipTitle": "Быстрые справки", - "newToolUsePopover": "Кодовые фрагменты теперь доступны здесь в \"Быстрых справках\". Нажмите здесь, чтобы начать использовать инструменты!", - "newToolUsePopoverTitle": "📚 Быстрые справки", + "tabChipTitle": "Документация разработчика", + "newToolUsePopover": "Кодовые фрагменты теперь доступны здесь в \"Документации разработчика\". Нажмите здесь, чтобы начать использовать инструменты!", + "newToolUsePopoverTitle": "📚 Документация разработчика", "learnMore": "ℹ️ 👾 Чтобы узнать больше о конечных точках локального сервера LM Studio, посетите [документацию](https://lmstudio.ai/docs).", "helloWorld": { "title": "Привет, Мир!" @@ -151,18 +170,27 @@ "newBadge": "Новый" }, - "endpoints/openaiCompatRest/title": "Поддерживаемые конечные точки (подобные OpenAI)", + "endpoints/openaiCompatRest/title": "Поддерживаемые конечные точки{{extra}}", + "endpoints/openaiCompatRest/segmentedLabel": "Как в OpenAI", "endpoints/openaiCompatRest/getModels": "Список загруженных моделей", "endpoints/openaiCompatRest/postCompletions": "Режим завершения текста. Предсказание следующего токена(ов) на основе запроса. Обратите внимание: OpenAI считает этот конечный пункт 'устаревшим'.", "endpoints/openaiCompatRest/postChatCompletions": "Завершения чата. Отправка истории чата модели для предсказания следующего ответа ассистента", "endpoints/openaiCompatRest/postEmbeddings": "Векторное представление текста. Генерация векторных представлений текста на основе заданного текстового ввода. Принимает строку или массив строк.", + "endpoints/openaiCompatRest/postResponses": "Расширенный интерфейс для генерации ответов модели. Создание интерактивных взаимодействий путём передачи id предыдущих ответов в качестве входных данных для следующего.", + "endpoints/lmStudioRest/segmentedLabel": "LM Studio", + "endpoints/lmStudioRestV1/getModels": "Список доступных моделей", + "endpoints/lmStudioRestV1/postModelsLoad": "Загрузить модель с опциями", + "endpoints/lmStudioRestV1/postModelsDownload": "Скачать модель", + "endpoints/lmStudioRestV1/postChat": "Чат с моделью. Поддерживает многоходовые разговоры с сохранением состояния и MCP", + "endpoints/lmStudioRestV1/getModelsDownloadStatus": "Получить статус загрузки модели", + "endpoints/anthropicCompatRest/segmentedLabel": "Совместимый с Anthropic", "model.createVirtualModelFromInstance": "Сохранить настройки как новую виртуальную модель", "model.createVirtualModelFromInstance/error": "Не удалось сохранить настройки в качестве новой виртуальной модели", "model": { "toolUseSectionTitle": "Использование инструментов", - "toolUseDescription": "Обнаружено, что эта модель обучена для использования инструментов\n\nОткройте quick docs для получения дополнительной информации" + "toolUseDescription": "Обнаружено, что эта модель обучена для использования инструментов\n\nОткройте developer docs для получения дополнительной информации" }, "apiConfigOptions/title": "Настройки API" diff --git a/ru/discover.json b/ru/discover.json index 97ce0e1d..63d768b8 100644 --- a/ru/discover.json +++ b/ru/discover.json @@ -2,12 +2,12 @@ "collectionsColumn": "Коллекции", "collectionsColumn/collectionError": "Ошибка при загрузке деталей коллекции, попробуйте обновить страницу выше", "bookmarksColumn": "Закладки", - "searchBar/placeholder": "Искать модели на Hugging Face...", + "searchBar/placeholder": "Поиск локальных моделей по имени или автору...", "searchBar/huggingFaceError": "Произошла ошибка при получении результатов с Hugging Face, попробуйте снова через некоторое время", "sortBy": "Сортировать по", "searchSortKey.default/title": "Лучшее совпадение", "searchSortKey.likes/title": "С наибольшим количеством лайков", - "searchSortKey.downloads/title": "С наибольшим количеством загрузок", + "searchSortKey.downloads/title": "С наибольшим количеством скачиваний", "searchSortKey.lastModified/title": "Недавно обновлено", "searchSortKey.createdAt/title": "Недавно создано", "download.option.willFitEstimation.caveat": "Могут быть и другие факторы, которые могут помешать загрузке, такие как архитектура модели, целостность файла модели или объем доступной оперативной памяти на вашем компьютере.", @@ -21,8 +21,9 @@ "download.option.willFitEstimation.willNotFit/description": "Требования к памяти для успешного использования этого файла модели могут превышать доступные ресурсы на вашей машине. Загрузка этого файла НЕ рекомендуется.", "download.option.recommended/title": "Рекомендуется", "download.option.recommended/description": "Исходя из вашего оборудования, этот вариант рекомендуется.", - "download.option.downloaded/title": "Загружено", - "download.option.downloading/title": "Загрузка ({{progressPercentile}}%)", + "download.option.downloaded/title": "Скачано", + "download.option.downloading/title": "Скачивание ({{progressPercentile}}%)", + "failedToStartDownload": "Не удалось начать скачивание", "feed.action.refresh": "Обновить ленту" } diff --git a/ru/download.json b/ru/download.json index aaf80d68..dee1368f 100644 --- a/ru/download.json +++ b/ru/download.json @@ -1,5 +1,15 @@ { "postDownloadActionExecutor.zipExtraction/status": "Извлечение...", + "postDownloadActionExecutor.tarGzExtraction/status": "Извлечение файлов...", + "postDownloadActionExecutor.runtimeIndexerTarGzExtraction/status": "Извлечение файлов...", + "postDownloadActionExecutor.modifyModelData/status": "Обновление данных модели...", + "postDownloadActionExecutor.notification/status": "Уведомление пользователя...", + "postDownloadActionExecutor.writeString/status": "Запись метаданных...", + "postDownloadActionExecutor.updateSelectedBackendVersions/status": "Обновление выбранной версии...", + "postDownloadActionExecutor.extensionPackAutoDeletion/status": "Удаление неиспользуемых расширений...", + "postDownloadActionExecutor.pluginInstall/status": "Установка плагина...", + "postDownloadActionExecutor.pluginUninstall/status": "Удаление плагина...", + "finalizing": "Завершение скачивания... (это может занять некоторое время)", "noOptions": "Нет совместимых вариантов для скачивания", @@ -19,5 +29,15 @@ "downloadsPanel/title": "Загрузки", "downloadsPanel/sectionTitle/ongoing": "В процессе", - "downloadsPanel/sectionTitle/completed": "Завершённые" + "downloadsPanel/sectionTitle/completed": "Завершённые", + "downloadsPanel": { + "reveal": { + "mac": "Показать в Finder", + "mac/error": "Не удалось показать в Finder", + "nonMac": "Показать в проводнике", + "nonMac/error": "Не удалось показать в проводнике" + }, + "completed": "Скачивание завершено", + "loadModel": "Загрузить модель" + } } diff --git a/ru/models.json b/ru/models.json index 080fcc1d..1564e230 100644 --- a/ru/models.json +++ b/ru/models.json @@ -7,7 +7,7 @@ "noModels.title": "Ваши локальные LLM будут отображаться здесь.", "noModels.discoverButtonText.prefix": "Нажмите на", "noModels.discoverButtonText.suffix": "кнопку на левой боковой панели, чтобы найти интересные LLM для загрузки.", - "noModels.discoverModelsPrompt": "Идите и исследуйте некоторые локальные LLM!", + "noModels.discoverModelsPrompt": "Перейдите и выберите локальные LLM для загрузки!", "modelsTable.arch/label": "Архитектура", "modelsTable.params/label": "Параметры", @@ -27,22 +27,12 @@ "action.model.delete.confirmation/title": "Удалить {{name}}", "action.model.delete.confirmation/description": "Вы уверены? Это действие навсегда удалит все файлы, связанные с этой моделью, с вашего компьютера. Это действие необратимо.", "action.model.delete.confirmation/confirm": "Удалить", - - "action.createVirtual": "Создать пресет", - "action.createVirtual.details/title": "Создать пресет", - "action.createVirtual.details/create": "Создать", - "action.createVirtual.details/cancel": "Отмена", - "action.createVirtual.details.base/label": "Базовая модель", - "action.createVirtual.details.name/label": "Имя", - "action.createVirtual.details.includeMachineDependent/label": "Включить машинозависимые конфигурации", - "action.createVirtual.details.includeMachineDependent/hint": "Включить ли машинозависимые конфигурации (например, настройки GPU) в предустановку. Не рекомендуется для обмена.", - "action.createVirtual.details.config/label": "Переопределения конфигурации", - "action.createVirtual.details.config.empty": "Нет переопределений конфигурации", - "action.createVirtual.details/error": "Не удалось создать виртуальную модель.", + "action.model.delete/error": "Не удалось удалить модель", "loader.model.bundled": "В комплекте", "action.cancel": "Отмена", "indexingOngoing": "Индексирование моделей... Это может занять несколько секунд", + "indexingPageLoaderText": "Индексирование моделей...", "index/error_one": "Не удалось индексировать следующую папку:", "index/error_other": "Не удалось индексировать следующие папки:", "badModels/title_one": "Не удалось индексировать следующую модель:", @@ -53,13 +43,20 @@ "unresolvedVirtualModels/title_other": "Не удалось разрешить следующие виртуальные модели:", "unresolvedVirtualModels.missingModel": "Отсутствует зависимая модель: {{missing}}. Путь зависимости:\n{{chain}}", "unresolvedVirtualModels.circular": "Обнаружена круговая зависимость.", + "unresolvedVirtualModels.fix": "Исправить", + "unresolvedVirtualModels.revealInExplorer": "Показать в проводнике", + "unresolvedVirtualModels.revealInFinder": "Показать в Finder", + "unresolvedVirtualModels.reveal/error": "Не удалось показать", "modelsDirectory": "Каталог моделей", "modelsDirectory.change": "Изменить...", - "modelsDirectory.reset": "Сбросить к умолчанию", + "modelsDirectory.change/error": "Не удалось изменить каталог моделей", + "modelsDirectory.reset": "Восстановить путь по умолчанию", "modelsDirectory.reveal.mac": "Показать в Finder", - "modelsDirectory.reveal.nonMac": "Открыть в Проводнике", - "modelsDirectory.forceReindex": "Обновить", + "modelsDirectory.reveal.nonMac": "Открыть в проводнике", + "modelsDirectory.reveal.mac/error": "Не удалось открыть в Finder", + "modelsDirectory.reveal.nonMac/error": "Не удалось открыть в проводнике", + "modelsDirectory.forceReindex": "Обновить список моделей", "loadState/loaded": "Загружено", "loadState/loading": "Загрузка", "loadState/unloaded": "Не загружено", @@ -74,10 +71,19 @@ "contextMenu/copyModelDefaultIdentifier": "Копировать идентификатор по умолчанию", "contextMenu/showRawMetadata": "Показать необработанные метаданные", "contextMenu/openOnHuggingFace": "Открыть на Hugging Face", + "contextMenu": { + "showOnWeb": "Показать в интернете", + "pullLatest": { + "label": "Получить последнюю версию", + "checking": "Проверка обновлений...", + "upToDate": "Актуальная версия", + "error": "Не удалось проверить обновления" + } + }, "tooltip/moreActions": "Другие действия", "tooltip/getInfo": "Получить информацию", "tooltip/editModelDefaultConfig": "Редактировать конфигурацию модели по умолчанию", - "tooltip/editModelDefaultConfig/override": "Редактировать конфигурацию модели по умолчанию (* в настоящее время есть переопределения", + "tooltip/editModelDefaultConfig/override": "Редактировать конфигурацию модели по умолчанию (* есть переопределения)", "tooltip/visionBadge": "Эта модель может обрабатывать изображения", "tooltip/toolUseBadge": "Эта модель обучена для использования инструментов", @@ -89,5 +95,38 @@ "loader.action.cancel": "Отмена", "loader.info.clickOnModelToLoad": "Щелкните на модель, чтобы загрузить ее", "loader.info.configureLoadParameters": "Настройте параметры загрузки модели", - "loader.info.activeGeneratorWarning": "Вы используете плагин с пользовательским генератором. Ваша текущая загруженная модель может быть применена или нет, в зависимости от реализации генератора" + "loader.info.activeGeneratorWarning": "Вы используете плагин с пользовательским генератором. Ваша текущая загруженная модель может быть применена или нет, в зависимости от реализации генератора", + "loader.guardrails.estimatedMemoryUsage": "Расчётное использование памяти", + "loader.guardrails.total": "Всего", + "loader.guardrails.gpu": "GPU", + "loader.guardrails.unavailable": "Оценка памяти недоступна для этой модели", + "loader.guardrails.notEnoughResources": "Недостаточно ресурсов для загрузки модели с текущими настройками", + "loader.guardrails.notEnoughResources/options": "Опции", + "loader.guardrails.notEnoughResources.moreInfoSection.appearsNotEnoughMemory": "Похоже, в вашей системе недостаточно памяти для загрузки этой модели.", + "loader.guardrails.notEnoughResources.moreInfoSection.ifYouBelieveThisIsIncorrect": "Вы можете настроить ограничители загрузки модели в настройках или удерживать для загрузки в любом случае.", + "loader.guardrails.notEnoughResources.moreInfoSection.warning": "Загрузка слишком большой модели может перегрузить вашу систему и вызвать её зависание.", + "loader.guardrails.notEnoughResources.alwaysAllowLoadAnyway": "(Не рекомендуется) Всегда разрешать «Загрузить в любом случае» без удержания Alt/Option", + + "virtual": { + "local": { + "create": "Создать виртуальную модель", + "title": "Создать локальную виртуальную модель", + "description": "Создайте виртуальную модель, объединив модель с набором конфигураций. Основные веса не будут дублироваться.", + "modelKey.label": "Ключ модели", + "modelKey.placeholder": "Введите уникальный ключ модели", + "modelKey.normalized": "Ваш ключ модели будет нормализован до: {{normalized}}", + "baseModel.label": "Базовая модель", + "baseModel.placeholder": "Выберите базовую модель", + "baseModel.empty": "Загрузите модель для использования в качестве базовой", + "next": "Далее", + "confirm": "Создать", + "error": "Не удалось создать виртуальную модель" + }, + "altsSelect": { + "title": "Переключить источник модели", + "resetButton": "Сбросить к значению по умолчанию", + "description": "Для этой модели доступно несколько исходных файлов.", + "trigger": "Варианты" + } + } } diff --git a/ru/settings.json b/ru/settings.json index ccbefd99..839ba5ce 100644 --- a/ru/settings.json +++ b/ru/settings.json @@ -1,6 +1,7 @@ { "settingsDialogTitle": "Настройки приложения", "settingsDialogButtonTooltip": "Настройки приложения", + "accountDialogButtonTooltip": "Учётная запись", "settingsNewButtonPopover": { "primary": "Настройки приложения теперь находятся в правом нижнем углу", @@ -48,6 +49,9 @@ "sideButtonLabels": "Показывать текст боковых кнопок", "showModelFileNames": "Мои модели: всегда показывать полное название файла модели", "colorThemeLabel": "Цветовая тема", + "appNavigationBarPositionLabel": "Положение панели навигации", + "appNavigationBarPositionTop": "Сверху", + "appNavigationBarPositionLeft": "Слева", "complexityLevelLabel": "Уровень сложности пользовательского интерфейса", "selectComplexityLevelPlaceholder": "Выберите уровень сложности пользовательского интерфейса по умолчанию", "userComplexityLevelLabel": "Пользователь", @@ -90,6 +94,7 @@ "languageLabel": "Язык", "changeLanguageLabel": "Выберите язык приложения (в разработке)", "developerLabel": "Разработчик", + "modelDefaultsLabel": "Настройки модели по умолчанию", "localServiceLabel": "Локальная служба LLM (без головного модуля)", "showExperimentalFeaturesLabel": "Показывать экспериментальные функции", "appFirstLoadLabel": "Опыт первого запуска приложения", @@ -106,7 +111,7 @@ "backendDownloadChannel.value.beta": "Бета", "backendDownloadChannel.value.latest": "Dev", "backendDownloadChannel.shortLabel": "Канал скачивания времени выполнения", - "backendDownloadChannel.hint": "Выберите канал, с которого нужно сачивать пакеты расширений LM Studio. \"{{stableName}}\" - рекомендуемый канал для большинства пользователей.", + "backendDownloadChannel.hint": "Выберите канал, с которого нужно скачивать пакеты расширений LM Studio. \"{{stableName}}\" — рекомендуемый канал для большинства пользователей.", "appUpdateChannel.label": "Канал обновлений", "appUpdateChannel.value.stable": "Стабильный", @@ -135,12 +140,14 @@ "modelLoadingGuardrails.custom.label": "Лимит памяти: ", "modelLoadingGuardrails.custom.unitGB": "ГБ", "modelLoadingGuardrails.custom.description": "Установите пользовательский лимит памяти для загрузки модели. Модели не будут загружаться, если их загрузка превысит этот лимит.", + "modelLoadingGuardrails.alwaysAllowLoadAnyway": "(Не рекомендуется) Всегда разрешать «Загрузить в любом случае» без удержания Alt/Option", "experimentalLoadPresets": "Включить поддержку конфигурации загрузки моделей в предустановках", "experimentalLoadPresets.description": "Разрешить ли предустановкам включать конфигурации загрузки моделей. Эта функция экспериментальная, и мы приветствуем отзывы.", "unloadPreviousJITModelOnLoad": "Автоматическая выгрузка JIT-моделей: гарантировать, что одновременно загружено не более 1 модели через JIT (выгружается предыдущая модель)", - "autoUpdateExtensionPacks": "Автоматическое обновление выбранных пакетов Runtime Extension Packs", + "autoDeleteExtensionPacks": "Автоматическое удаление наименее недавно использованных пакетов расширений среды выполнения", + "autoUpdateExtensionPacks": "Автоматическое обновление выбранных пакетов расширений среды выполнения", "useHFProxy.label": "Использовать прокси Hugging Face от LM Studio", "useHFProxy.hint": "Используйте прокси Hugging Face от LM Studio для поиска и загрузки моделей. Это может помочь пользователям, которым трудно получать доступ к Hugging Face напрямую.", "separateReasoningContentInResponses": "При необходимости разделять `reasoning_content` и `content` в API-ответах", @@ -151,13 +158,13 @@ "enableLocalService": "Включить службу LLM от LM Studio", "enableLocalService.subtitle": "Использовать сервер LLM от LM Studio без необходимости держать приложение LM Studio открытым", - "enableLocalService.description": "При включении службы, LLM от LM Studio будет запущен при старте. Закрытие LM Studio также оставит службу LLM запущенной в системной панели задач.", + "enableLocalService.description": "При включении служба LM Studio Local LLM будет запускаться при старте. Закрытие LM Studio также оставит службу LLM запущенной в системном трее.", "expandConfigsOnClick": "Разворачивать конфигурации по клику вместо наведения курсора", "migrateChats": { - "label": "Миграция чатов pre-0.3.0", - "hasBetterLabel": "Повторная миграция чатов до pre-0.3.0", + "label": "Миграция чатов до версии pre-0.3.0", + "hasBetterLabel": "Повторно мигрировать чаты до версии pre-0.3.0", "action_one": "Мигрировать 1 чат", "action_other": "Мигрировать {{count}} чатов", "inProgress": "Миграция чатов...", @@ -179,5 +186,29 @@ "hasBetterFooterCardText": "Мы улучшили миграцию чатов с момента вашей предыдущей миграции. Можно повторно запустить процесс миграции. (Будет создана новая папка для хранения недавно мигрированных чатов.)", "dismissConfirm": "Отмена", "dismissConfirmDescription": "Вы всегда можете обработать миграцию чатов в Настройках." + }, + "toolConfirmation": { + "label": "Подтверждение вызова инструментов", + "neverAsk": { + "label": "Никогда не запрашивать подтверждение перед запуском инструмента (НЕ РЕКОМЕНДУЕТСЯ)", + "hint": "Отключить подтверждения перед запуском инструмента. Это не рекомендуется.", + "warnTitle": "Вы уверены?", + "warnDescription": "Отключение подтверждений вызова инструментов опасно. Если какой-либо из ваших плагинов предоставил инструмент, который может выполнять деструктивные действия (например, запуск команд, удаление файлов, перезапись файлов, загрузка файлов и т.д.), модель сможет делать это без подтверждения. Вы всегда можете отключить подтверждения для конкретного инструмента или даже плагина. Включение этой опции НЕ рекомендуется. Будьте осторожны.", + "warnButton": "Я понимаю риски" + } + }, + + "defaultContextLength": { + "label": "Длина контекста по умолчанию", + "maxTitle": "Максимум модели", + "customTitle": "Пользовательское значение", + "maxSubtitle": "Использовать максимальную длину контекста, поддерживаемую каждой моделью.", + "customSubtitle": "Установить длину контекста по умолчанию для загрузки новых моделей. Если максимальная поддерживаемая длина контекста модели меньше, будет использовано это значение.", + "invalidNaNError": "Недопустимое значение длины контекста. Используется {{value}}", + "invalidRangeError": "Недопустимое значение длины контекста. Должно быть в диапазоне от 1 до 2^30. Используется {{value}}", + "largeContextWarning": "Чем больше длина контекста, тем больше памяти потребуется модели. Если вы не уверены, не изменяйте значение по умолчанию" + }, + "jitTTL": { + "subtitle": "Модели, загруженные через JIT, будут автоматически выгружаться после простоя в течение указанного времени." } } diff --git a/ru/shared.json b/ru/shared.json index d916b396..6016212e 100644 --- a/ru/shared.json +++ b/ru/shared.json @@ -7,10 +7,10 @@ "badge": "Извлечение ресурсов" }, "performingBackendHardwareSurvey": { - "badge": "Проверка совместимости с Runtime" + "badge": "Проверка совместимости среды выполнения" }, "indexingRuntimes": { - "badge": "Индексация Runtimes" + "badge": "Индексация сред выполнения" }, "indexingModels": { "badge": "Индексация моделей" @@ -31,8 +31,275 @@ "retry": "Повторить" }, "artifacts": { - "fetchError": "Не удалось получить артефакты" + "fetchError": "Не удалось получить артефакты", + "organizationVisible": "Видимо для организации" }, + "incompatible": "Несовместимо", - "compatible": "Совместимо" + "compatible": "Совместимо", + "public": "Публично", + "private": "Приватно", + "yes": "Да", + "no": "Нет", + "go": "Перейти", + + "proceedWithEllipsis": "Продолжить...", + "proceed": "Продолжить", + "inProgress": "В процессе...", + "failed": "Не удалось", + "pending": "Ожидание", + "doneWithExclamation": "Готово!", + "done": "Готово", + "beta": "Бета", + + "complete": { + "completeWithEllipsis": "Завершить...", + "complete": "Завершить", + "completingWithEllipsis": "Завершение...", + "completing": "Завершение", + "completedWithExclamation": "Завершено!", + "completed": "Завершено" + }, + + "cancel": { + "cancelWithEllipsis": "Отменить...", + "cancel": "Отменить", + "cancelingWithEllipsis": "Отмена...", + "canceling": "Отмена", + "canceled": "Отменено" + }, + + "next": { + "nextWithEllipsis": "Далее...", + "next": "Далее" + }, + + "back": { + "backWithEllipsis": "Назад...", + "back": "Назад" + }, + + "close": { + "closeWithEllipsis": "Закрыть...", + "close": "Закрыть", + "closingWithEllipsis": "Закрытие...", + "closing": "Закрытие", + "closedWithExclamation": "Закрыто!", + "closed": "Закрыто" + }, + + "delete": { + "deleteWithEllipsis": "Удалить...", + "delete": "Удалить", + "deletingWithEllipsis": "Удаление...", + "deleting": "Удаление", + "deletedWithExclamation": "Удалено!", + "deleted": "Удалено" + }, + + "retry": { + "retryWithEllipsis": "Повторить...", + "retry": "Повторить", + "retryingWithEllipsis": "Повтор...", + "retrying": "Повтор" + }, + + "refresh": { + "refreshWithEllipsis": "Обновить...", + "refresh": "Обновить", + "refreshingWithEllipsis": "Обновление...", + "refreshing": "Обновление", + "refreshedWithExclamation": "Обновлено!", + "refreshed": "Обновлено" + }, + + "confirm": { + "confirm": "Подтвердить", + "confirmingWithEllipsis": "Подтверждение...", + "confirming": "Подтверждение", + "confirmedWithExclamation": "Подтверждено!", + "confirmed": "Подтверждено" + }, + + "copy": { + "copyWithEllipsis": "Копировать...", + "copy": "Копировать", + "copyingWithEllipsis": "Копирование...", + "copying": "Копирование", + "copiedWithExclamation": "Скопировано!", + "copied": "Скопировано" + }, + + "edit": { + "editWithEllipsis": "Изменить...", + "edit": "Изменить", + "editingWithEllipsis": "Изменение...", + "editing": "Изменение", + "editedWithExclamation": "Изменено!", + "edited": "Изменено" + }, + + "load": { + "loadWithEllipsis": "Загрузить...", + "load": "Загрузить", + "loadingWithEllipsis": "Загрузка...", + "loading": "Загрузка", + "loadedWithExclamation": "Загружено!", + "loaded": "Загружено" + }, + + "save": { + "saveWithEllipsis": "Сохранить...", + "save": "Сохранить", + "savingWithEllipsis": "Сохранение...", + "saving": "Сохранение", + "savedWithExclamation": "Сохранено!", + "saved": "Сохранено" + }, + + "saveAs": { + "saveAsWithEllipsis": "Сохранить как...", + "saveAs": "Сохранить как" + }, + + "saveAsNew": { + "saveAsNewWithEllipsis": "Сохранить как новый...", + "saveAsNew": "Сохранить как новый" + }, + + "search": { + "searchWithEllipsis": "Поиск...", + "search": "Поиск", + "searchingWithEllipsis": "Поиск...", + "searching": "Поиск" + }, + + "update": { + "updateWithEllipsis": "Обновить...", + "update": "Обновить", + "updatingWithEllipsis": "Обновление...", + "updating": "Обновление", + "updatedWithExclamation": "Обновлено!", + "updated": "Обновлено" + }, + + "create": { + "createWithEllipsis": "Создать...", + "create": "Создать", + "creatingWithEllipsis": "Создание...", + "creating": "Создание", + "createdWithExclamation": "Создано!", + "created": "Создано" + }, + + "reset": { + "resetWithEllipsis": "Сбросить...", + "reset": "Сбросить", + "resettingWithEllipsis": "Сброс...", + "resetting": "Сброс" + }, + + "pause": { + "pause": "Пауза", + "pausingWithEllipsis": "Приостановка...", + "pausing": "Приостановка", + "paused": "Приостановлено" + }, + + "download": { + "download": "Скачать", + "downloadingWithEllipsis": "Скачивание...", + "downloading": "Скачивание", + "downloadedWithExclamation": "Скачано!", + "downloaded": "Скачано" + }, + + "upload": { + "uploadWithEllipsis": "Загрузить...", + "upload": "Загрузить", + "uploadingWithEllipsis": "Загрузка...", + "uploading": "Загрузка", + "uploadedWithExclamation": "Загружено!", + "uploaded": "Загружено" + }, + + "remove": { + "removeWithEllipsis": "Удалить...", + "remove": "Удалить", + "removingWithEllipsis": "Удаление...", + "removing": "Удаление", + "removedWithExclamation": "Удалено!", + "removed": "Удалено" + }, + + "uninstall": { + "uninstallWithEllipsis": "Удалить...", + "uninstall": "Удалить", + "uninstallingWithEllipsis": "Удаление...", + "uninstalling": "Удаление", + "uninstalledWithExclamation": "Удалено!", + "uninstalled": "Удалено" + }, + + "resume": { + "resumeWithEllipsis": "Возобновить...", + "resume": "Возобновить", + "resumingWithEllipsis": "Возобновление...", + "resuming": "Возобновление" + }, + + "start": { + "startWithEllipsis": "Запустить...", + "start": "Запустить", + "startingWithEllipsis": "Запуск...", + "starting": "Запуск", + "started": "Запущено" + }, + + "stop": { + "stopWithEllipsis": "Остановить...", + "stop": "Остановить", + "stoppingWithEllipsis": "Остановка...", + "stopping": "Остановка", + "stoppedWithExclamation": "Остановлено!", + "stopped": "Остановлено" + }, + + "import": { + "importWithEllipsis": "Импортировать...", + "import": "Импортировать", + "importingWithEllipsis": "Импорт...", + "importing": "Импорт", + "importedWithExclamation": "Импортировано!", + "imported": "Импортировано" + }, + + "letsGo": { + "letsGo": "Начать", + "letsGoWithEllipsis": "Начать...", + "letsGoWithExclamation": "Начать!" + }, + + "run": { + "runWithEllipsis": "Выполнить...", + "run": "Выполнить", + "runningWithEllipsis": "Выполнение...", + "running": "Выполнение" + }, + + "configure": { + "configureWithEllipsis": "Настроить...", + "configure": "Настроить", + "configuringWithEllipsis": "Настройка...", + "configured": "Настроено" + }, + + "publish": { + "publishWithEllipsis": "Опубликовать...", + "publish": "Опубликовать", + "publishingWithEllipsis": "Публикация...", + "publishing": "Публикация", + "publishedWithExclamation": "Опубликовано!", + "published": "Опубликовано" + } } diff --git a/ru/sidebar.json b/ru/sidebar.json index ddf8406c..e12dc47d 100644 --- a/ru/sidebar.json +++ b/ru/sidebar.json @@ -3,7 +3,7 @@ "discover": "Обзор моделей", "myModels": "Мои модели", "developer": "Разработка", - "runtimes": "Runtime", + "runtimes": "Среда выполнения", "settings": "Настройки", "download": "Загрузки" }