Files
ComfyUI-Lora-Manager/locales/ru.json
T
Will Miao 474da1b264 feat(settings): empty filename template reverts to recorded original filename (#1071)
Redefine the empty download filename template from a no-op to a bulk
revert: FilenameTemplateUseCase resolves the target from each model's
recorded original_file_name sidecar entry (skipping models without one),
which resolves follow-ups 1 and 2 with a single coherent semantic shared
by the download and bulk-apply paths.

Also replace the browser-native confirm() with a self-managed
confirmation modal (filenameTemplateConfirmModal) that stacks above the
settings modal, since ModalManager would close the settings modal when
opening a registered one.
2026-09-19 10:44:43 +08:00

2787 lines
206 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"common": {
"cancel": "Отмена",
"confirm": "Подтвердить",
"reorder": {
"dragHandle": "Перетащите, чтобы изменить порядок"
},
"actions": {
"save": "Сохранить",
"cancel": "Отмена",
"confirm": "Подтвердить",
"delete": "Удалить",
"move": "Переместить",
"refresh": "Обновить",
"back": "Назад",
"next": "Далее",
"backToTop": "Наверх",
"settings": "Настройки",
"help": "Справка",
"add": "Добавить",
"close": "Закрыть",
"menu": "Меню",
"remove": "Удалить",
"change": "Изменить"
},
"status": {
"loading": "Загрузка...",
"cancelling": "Отмена...",
"unknown": "Неизвестно",
"date": "Дата",
"version": "Версия",
"enabled": "Включено",
"disabled": "Отключено"
},
"language": {
"select": "Язык",
"select_help": "Выберите предпочитаемый язык интерфейса",
"english": "English",
"chinese_simplified": "中文(简体)",
"chinese_traditional": "中文(繁体)",
"russian": "Русский",
"german": "Deutsch",
"japanese": "日本語",
"korean": "한국어",
"french": "Français",
"spanish": "Español",
"Hebrew": "עברית"
},
"fileSize": {
"zero": "0 Байт",
"bytes": "Байт",
"kb": "КБ",
"mb": "МБ",
"gb": "ГБ",
"tb": "ТБ"
},
"scanProgress": {
"refreshing": "Обновление {type}...",
"fullRebuilding": "Полная пересборка {type}...",
"actionRefresh": "Обновление",
"actionFullRebuild": "Полная пересборка",
"actionRefreshLower": "обновить",
"actionRebuildLower": "пересобрать",
"stages": {
"scan_folders": "Сканирование папок...",
"count_models": "Найдено файлов: {total}",
"process_models": "Обработка моделей",
"reconcile_scan": "Проверка изменений...",
"process_new": "Обработка новых моделей",
"finalizing": "Завершение..."
},
"eta": {
"lessThanMinute": "Осталось меньше минуты",
"minutes": "Осталось ~{minutes} мин",
"hours": "Осталось ~{hours} ч {minutes} мин"
}
}
},
"onboarding": {
"languageSelection": {
"title": "Добро пожаловать в LoRA Manager",
"continue": "Продолжить",
"changeFailed": "Не удалось изменить язык: {message}"
},
"tutorial": {
"skipTutorial": "Пропустить обучение",
"back": "Назад",
"next": "Далее",
"finish": "Завершить"
},
"steps": {
"fetch": {
"title": "Получить метаданные моделей",
"content": "Нажмите кнопку <strong>Получить</strong>, чтобы загрузить метаданные моделей и изображения превью с CivitAI."
},
"download": {
"title": "Загрузить новые модели",
"content": "Используйте кнопку <strong>Загрузить</strong> для скачивания моделей напрямую по URL CivitAI."
},
"bulk": {
"title": "Массовые операции",
"content": "Войдите в массовый режим, нажав эту кнопку или клавишу <span class=\"onboarding-shortcut\">B</span>, чтобы выбрать несколько моделей и выполнить пакетные операции.<br>• <span class=\"onboarding-shortcut\">Ctrl/Cmd+A</span> — выбрать все видимые модели, <span class=\"onboarding-shortcut\">Shift+Click</span> — выбрать диапазон.<br>• <span class=\"onboarding-shortcut\">Esc</span> или клик по пустой области выходит из массового режима."
},
"searchOptions": {
"title": "Опции поиска",
"content": "Нажмите эту кнопку, чтобы настроить поля для поиска: имя файла, название модели, теги или имя автора. Настройте область поиска."
},
"filter": {
"title": "Фильтрация моделей",
"content": "Используйте фильтры для сужения списка моделей по типу базовой модели (SD1.5, SDXL, Flux и др.) или по конкретным тегам."
},
"breadcrumb": {
"title": "Навигация по папкам",
"content": "Навигация по папкам показывает ваш текущий путь и позволяет быстро переходить между папками. Нажмите на имя папки для перехода."
},
"modelCards": {
"title": "Карточки моделей",
"content": "<strong>Одиночный клик</strong> по карточке модели откроет подробную информацию и позволит редактировать метаданные. Ищите значок карандаша при наведении на редактируемые поля."
},
"contextMenu": {
"title": "Контекстное меню",
"content": "<strong>Правый клик</strong> по любой карточке модели открывает контекстное меню с действиями над карточкой, такими как перемещение, удаление или редактирование метаданных."
},
"marqueeSelect": {
"title": "Выделение рамкой",
"content": "Удерживайте <strong>левую кнопку мыши</strong> на пустой области сетки и перетащите, чтобы нарисовать рамку, выделяющую сразу несколько карточек."
},
"dragToSidebar": {
"title": "Организация перетаскиванием",
"content": "Перетащите карточку модели на папку в боковой панели, чтобы переместить туда файл. Это также работает с несколькими выделенными карточками в массовом режиме."
},
"contextMenus": {
"title": "Другие контекстные меню",
"content": "В массовом режиме <strong>правый клик по выделенной карточке</strong> открывает меню массовых операций. <strong>Правый клик по пустой области</strong> страницы открывает глобальные действия, такие как проверка обновлений и управление исключёнными моделями."
}
}
},
"modelCard": {
"actions": {
"addToFavorites": "Добавить в избранное",
"removeFromFavorites": "Удалить из избранного",
"viewOnCivitai": "Посмотреть на CivitAI",
"notAvailableFromCivitai": "Недоступно на CivitAI",
"viewOnHuggingFace": "Открыть Hugging Face",
"viewOnSource": "Открыть {source}",
"sendToWorkflow": "Отправить в ComfyUI (Клик: Добавить, Shift+Клик: Заменить)",
"copyLoRASyntax": "Копировать синтаксис LoRA",
"checkpointNameCopied": "Имя checkpoint скопировано",
"toggleBlur": "Переключить размытие",
"show": "Показать",
"openExampleImages": "Открыть папку с примерами",
"replacePreview": "Заменить превью",
"copyCheckpointName": "Копировать имя checkpoint",
"copyEmbeddingName": "Копировать имя embedding",
"embeddingNameCopied": "Синтаксис embedding скопирован",
"modelNameCopied": "Имя модели скопировано",
"sendCheckpointToWorkflow": "Отправить в ComfyUI",
"sendEmbeddingToWorkflow": "Отправить в ComfyUI"
},
"nsfw": {
"matureContent": "Контент для взрослых",
"xxxRated": "XXX-контент",
"xRated": "X-контент",
"rRated": "R-контент"
},
"favorites": {
"added": "Добавлено в избранное",
"removed": "Удалено из избранного",
"updateFailed": "Не удалось обновить статус избранного"
},
"sendToWorkflow": {
"checkpointNotImplemented": "Отправка checkpoint в workflow - функция будет реализована",
"missingPath": "Невозможно определить путь модели для этой карточки"
},
"exampleImages": {
"checkError": "Ошибка проверки примеров изображений",
"missingHash": "Отсутствует хеш модели.",
"noRemoteImagesAvailable": "Нет удаленных примеров изображений для этой модели на CivitAI"
},
"badges": {
"update": "Обновление",
"updateAvailable": "Доступно обновление",
"skipRefresh": "Обновление метаданных пропущено"
},
"usage": {
"timesUsed": "Количество использований"
},
"footer": {
"versionCount": "{count} версий",
"viewAllVersions": "Показать все локальные версии"
}
},
"globalContextMenu": {
"downloadExampleImages": {
"label": "Загрузить примеры изображений",
"missingPath": "Укажите место загрузки перед загрузкой примеров изображений.",
"unavailable": "Загрузка примеров изображений пока недоступна. Попробуйте снова после полной загрузки страницы."
},
"checkModelUpdates": {
"label": "Проверить обновления",
"loading": "Проверка обновлений для {type}...",
"success": "Найдено {count} обновлений для {type}",
"none": "Все {type} актуальны",
"error": "Не удалось проверить обновления для {type}: {message}"
},
"cleanupExampleImages": {
"label": "Очистить папки с примерами изображений",
"success": "Перемещено {count} папок в папку удалённых",
"none": "Нет папок с примерами изображений, требующих очистки",
"partial": "Очистка завершена, пропущено {failures} папок",
"error": "Не удалось очистить папки с примерами изображений: {message}"
},
"fetchMissingLicenses": {
"label": "Обновить метаданные лицензии",
"loading": "Обновление метаданных лицензии для {typePlural}...",
"success": "Обновлены метаданные лицензии для {count} {typePlural}",
"none": "У всех {typePlural} уже есть метаданные лицензии",
"error": "Не удалось обновить метаданные лицензии для {typePlural}: {message}"
},
"rematchRecipes": {
"label": "Повторное сопоставление рецептов с локальными моделями",
"loading": "Повторное сопоставление рецептов с локальными моделями...",
"success": "Сопоставлено записей: {entries} в рецептах: {recipes}",
"cancelled": "Сопоставление отменено. Обновлено рецептов: {recipes} (записей: {entries})",
"error": "Не удалось выполнить сопоставление рецептов: {message}"
},
"manageExcludedModels": {
"label": "Управление исключёнными моделями"
},
"groupByModel": {
"label": "Группировать по модели"
}
},
"header": {
"appTitle": "LoRA Manager",
"navigation": {
"loras": "LoRAs",
"recipes": "Рецепты",
"checkpoints": "Checkpoints",
"embeddings": "Embeddings",
"other": "Другое",
"statistics": "Статистика"
},
"search": {
"placeholder": "Поиск",
"options": "Опции поиска",
"searchIn": "Искать в:",
"notAvailable": "Поиск недоступен на странице статистики",
"filters": {
"filename": "Имя файла",
"modelname": "Название модели",
"tags": "Теги",
"creator": "Автор",
"hash": "Хэш",
"title": "Название рецепта",
"loraName": "Имя файла LoRA",
"loraModel": "Название модели LoRA",
"prompt": "Промпт"
}
},
"filter": {
"title": "Фильтр моделей",
"presets": "Пресеты",
"savePreset": "Сохранить текущие активные фильтры как новый пресет.",
"savePresetDisabledActive": "Невозможно сохранить: Пресет уже активен. Измените фильтры, чтобы сохранить новый пресет",
"savePresetDisabledNoFilters": "Сначала выберите фильтры для сохранения как пресет",
"savePresetPrompt": "Введите имя пресета:",
"presetClickTooltip": "Нажмите чтобы применить пресет \"{name}\"",
"presetDeleteTooltip": "Удалить пресет",
"presetDeleteConfirm": "Удалить пресет \"{name}\"?",
"presetDeleteConfirmClick": "Нажмите еще раз для подтверждения",
"presetOverwriteConfirm": "Пресет \"{name}\" уже существует. Перезаписать?",
"presetNamePlaceholder": "Имя пресета...",
"baseModel": "Базовая модель",
"baseModelSearchPlaceholder": "Поиск базовых моделей...",
"modelTags": "Теги",
"modelTypes": "Типы моделей",
"license": "Лицензия",
"noCreditRequired": "Без указания авторства",
"allowSellingGeneratedContent": "Продажа разрешена",
"allowSellingGeneratedContentTooltip": "Разрешить продажу сгенерированных изображений",
"noCreditRequiredTooltip": "Использование модели без указания автора",
"noTags": "Без тегов",
"tagSearchPlaceholder": "Поиск тегов...",
"noTagMatches": "Нет тегов, соответствующих текущему поиску.",
"autoTags": "Авто-теги",
"noBaseModelMatches": "Нет базовых моделей, соответствующих текущему поиску.",
"clearAll": "Очистить все фильтры",
"any": "Любой",
"all": "Все",
"tagLogicAny": "Совпадение с любым тегом (ИЛИ)",
"tagLogicAll": "Совпадение со всеми тегами (И)",
"loraAvailability": "Доступность LoRAs",
"availabilityReady": "Готовы к использованию",
"availabilityMissing": "Есть отсутствующие",
"availabilityDeleted": "Есть удалённые"
},
"theme": {
"toggle": "Переключить тему",
"switchToLight": "Переключить на светлую тему",
"switchToDark": "Переключить на тёмную тему",
"switchToAuto": "Переключить на автоматическую тему",
"presets": "Пресеты тем",
"default": "По умолчанию",
"nord": "Nord",
"midnight": "Midnight",
"monokai": "Monokai",
"dracula": "Dracula",
"solarized": "Solarized",
"mode": "Режим",
"light": "Светлый",
"dark": "Тёмный",
"auto": "Авто"
},
"actions": {
"checkUpdates": "Проверить обновления",
"notifications": "Уведомления",
"support": "Поддержка"
}
},
"settings": {
"civitaiApiKey": "Ключ API CivitAI",
"civitaiApiKeyPlaceholder": "Введите ваш ключ API CivitAI",
"civitaiApiKeyHelp": "Используется для аутентификации при загрузке моделей с CivitAI",
"civitaiApiKeyConfigured": "Настроен",
"civitaiApiKeyNotConfigured": "Не настроен",
"civitaiApiKeySet": "Настроить",
"civitaiHost": {
"label": "Хост CivitAI",
"help": "Выберите, какой сайт CivitAI будет открываться при использовании ссылок «View on CivitAI».",
"options": {
"com": "civitai.com (только SFW)",
"red": "civitai.red (без ограничений)"
}
},
"downloadBackend": {
"label": "Бэкенд загрузки",
"help": "Выберите способ загрузки файлов моделей. Python использует встроенный загрузчик. aria2 использует рекомендуемый внешний процесс загрузки.",
"options": {
"python": "Python (встроенный)",
"aria2": "aria2 (рекомендуемый)"
}
},
"aria2cPath": {
"label": "Путь к aria2c",
"help": "Необязательный путь к исполняемому файлу aria2c. Оставьте пустым, чтобы использовать aria2c из системного PATH.",
"placeholder": "Оставьте пустым, чтобы использовать aria2c из PATH"
},
"aria2HelpLink": "Узнайте, как настроить сервер загрузки aria2",
"civitaiHostBanner": {
"title": "Доступна настройка хоста CivitAI",
"content": "Теперь CivitAI использует civitai.com для контента SFW и civitai.red для контента без ограничений. В настройках можно изменить, какой сайт открывать по умолчанию.",
"openSettings": "Открыть настройки"
},
"openSettingsFileLocation": {
"label": "Открыть папку настроек",
"tooltip": "Открыть папку, содержащую settings.json",
"success": "Папка settings.json открыта",
"failed": "Не удалось открыть папку settings.json",
"copied": "Путь настроек скопирован в буфер обмена: {{path}}",
"clipboardFallback": "Путь настроек: {{path}}"
},
"sections": {
"contentFiltering": "Фильтрация контента",
"downloads": "Загрузки",
"videoSettings": "Настройки видео",
"layoutSettings": "Настройки макета",
"licenseIcons": "Значки лицензии",
"misc": "Разное",
"backup": "Резервные копии",
"folderSettings": "Корневые папки",
"recipeSettings": "Рецепты",
"extraFolderPaths": "Дополнительные пути к папкам",
"downloadPathTemplates": "Шаблоны путей загрузки",
"priorityTags": "Приоритетные теги",
"versionScope": "Метки обновлений",
"exampleImages": "Примеры изображений",
"autoOrganize": "Автоорганизация",
"metadata": "Метаданные",
"proxySettings": "Настройки прокси"
},
"nav": {
"general": "Общее",
"interface": "Интерфейс",
"library": "Библиотека",
"organization": "Организация",
"modelPaths": "Пути к моделям"
},
"search": {
"placeholder": "Поиск в настройках...",
"clear": "Очистить поиск",
"noResults": "Настройки, соответствующие \"{query}\", не найдены"
},
"storage": {
"locationLabel": "Портативный режим",
"locationHelp": "Включите, чтобы хранить settings.json в репозитории; выключите, чтобы сохранить его в папке конфигурации пользователя."
},
"contentFiltering": {
"blurNsfwContent": "Размывать NSFW контент",
"blurNsfwContentHelp": "Размывать превью изображений контента для взрослых (NSFW)",
"showOnlySfw": "Показывать только SFW результаты",
"showOnlySfwHelp": "Фильтровать весь NSFW контент при просмотре и поиске",
"matureBlurThreshold": "Порог размытия взрослого контента",
"matureBlurThresholdHelp": "Установить, с какого уровня рейтинга начинается размытие при включенном размытии NSFW.",
"matureBlurThresholdOptions": {
"pg13": "PG13 и выше",
"r": "R и выше (по умолчанию)",
"x": "X и выше",
"xxx": "Только XXX"
}
},
"videoSettings": {
"autoplayOnHover": "Автовоспроизведение видео при наведении",
"autoplayOnHoverHelp": "Воспроизводить превью видео только при наведении курсора"
},
"autoOrganizeExclusions": {
"label": "Исключения автосортировки",
"placeholder": "Пример: curated/*, */backups/*; *_temp.safetensors",
"help": "Пропускать перемещение файлов, соответствующих этим шаблонам. Разделяйте несколько шаблонов запятыми или точками с запятой.",
"validation": {
"noPatterns": "Введите хотя бы один шаблон, разделенный запятыми или точками с запятой.",
"saveFailed": "Не удалось сохранить исключения: {message}"
}
},
"metadataRefreshSkipPaths": {
"label": "Пути для пропуска обновления метаданных",
"placeholder": "Пример: temp, archived/old, test_models",
"help": "Пропускать модели в этих каталогах при массовом обновлении метаданных («Получить все метаданные»). Введите пути к папкам относительно корневого каталога моделей, разделённые запятой.",
"validation": {
"noPaths": "Введите хотя бы один путь, разделённый запятыми.",
"saveFailed": "Не удалось сохранить пути для пропуска: {message}"
}
},
"backup": {
"autoEnabled": "Автоматические резервные копии",
"autoEnabledHelp": "Создаёт локальный снимок раз в день и хранит последние снимки согласно политике хранения.",
"retention": "Количество хранения",
"retentionHelp": "Сколько автоматических снимков сохранять перед удалением старых.",
"management": "Управление резервными копиями",
"managementHelp": "Экспортируйте текущее состояние пользователя или восстановите его из архива резервной копии.",
"scopeHelp": "Резервная копия включает ваши настройки, историю загрузок и состояние обновлений моделей. Файлы моделей и пересоздаваемые кэши не входят.",
"locationSummary": "Текущее расположение резервных копий",
"openFolderButton": "Открыть папку резервных копий",
"openFolderSuccess": "Папка резервных копий открыта",
"openFolderFailed": "Не удалось открыть папку резервных копий",
"locationCopied": "Путь к резервной копии скопирован в буфер обмена: {{path}}",
"locationClipboardFallback": "Путь к резервной копии: {{path}}",
"exportButton": "Экспортировать резервную копию",
"exportSuccess": "Резервная копия успешно экспортирована.",
"exportFailed": "Не удалось экспортировать резервную копию: {message}",
"importButton": "Импортировать резервную копию",
"importConfirm": "Импортировать эту резервную копию и перезаписать локальное состояние пользователя?",
"importSuccess": "Резервная копия успешно импортирована.",
"importFailed": "Не удалось импортировать резервную копию: {message}",
"latestSnapshot": "Последний снимок",
"latestAutoSnapshot": "Последний автоматический снимок",
"snapshotCount": "Сохранённые снимки",
"noneAvailable": "Снимков пока нет"
},
"downloadSkipBaseModels": {
"label": "Пропускать загрузки для базовых моделей",
"help": "При включении версии, использующие выбранные базовые модели, будут пропущены.",
"searchPlaceholder": "Фильтровать базовые модели...",
"empty": "Нет базовых моделей, соответствующих текущему поиску.",
"summary": {
"none": "Ничего не выбрано",
"count": "Выбрано: {count}"
},
"actions": {
"edit": "Изменить",
"collapse": "Свернуть",
"clear": "Очистить"
},
"validation": {
"saveFailed": "Не удалось сохранить исключённые базовые модели: {message}"
}
},
"skipPreviouslyDownloadedModelVersions": {
"label": "Пропускать ранее загруженные версии моделей",
"help": "Если включено, LoRA Manager будет пропускать загрузку версии модели, если сервис истории загрузок записал, что эта конкретная версия уже загружена. Применяется ко всем потокам загрузки."
},
"layoutSettings": {
"groupByModel": "Группировать по модели",
"groupByModelHelp": "При включении отображается только последняя версия каждой модели CivitAI в виде одной карточки. Старые версии скрыты.",
"stickyControls": "Держать панель действий видимой",
"stickyControlsHelp": "При включении панель действий (Обновить, Загрузить и т. д.) остаётся закреплённой вверху при прокрутке вместе с навигацией по папкам.",
"displayDensity": "Плотность отображения",
"displayDensityOptions": {
"default": "По умолчанию",
"medium": "Средняя",
"compact": "Компактная"
},
"displayDensityHelp": "Выберите количество карточек для отображения в ряду:",
"displayDensityDetails": {
"default": "5 (1080p), 6 (2K), 8 (4K)",
"medium": "6 (1080p), 7 (2K), 9 (4K)",
"compact": "7 (1080p), 8 (2K), 10 (4K)"
},
"displayDensityWarning": "Предупреждение: Высокая плотность может вызвать проблемы с производительностью на системах с ограниченными ресурсами.",
"recipesLayout": "Макет рецептов",
"recipesLayoutHelp": "Выберите, как располагаются карточки рецептов: единая сетка или masonry-макет (в стиле Pinterest), сохраняющий пропорции каждого изображения.",
"recipesLayoutOptions": {
"grid": "Сетка",
"masonry": "Masonry"
},
"showFolderSidebar": "Показывать боковую панель папок",
"showFolderSidebarHelp": "Включает или выключает боковую панель навигации по папкам на страницах моделей. При отключении панель и область наведения скрыты.",
"cardInfoDisplay": "Отображение информации карточки",
"cardInfoDisplayOptions": {
"always": "Всегда видимо",
"hover": "Показать при наведении"
},
"cardInfoDisplayHelp": "Выберите когда отображать информацию о модели и кнопки действий",
"showVersionOnCard": "Показывать версию на карточке",
"showVersionOnCardHelp": "Показать или скрыть название версии на карточках моделей",
"modelCardFooterAction": "Действие кнопки карточки модели",
"modelCardFooterActionOptions": {
"exampleImages": "Открыть примеры изображений",
"replacePreview": "Заменить превью"
},
"modelCardFooterActionHelp": "Выберите, что делает кнопка в правом нижнем углу карточки",
"modelNameDisplay": "Отображение названия модели",
"modelNameDisplayOptions": {
"modelName": "Название модели",
"fileName": "Имя файла"
},
"modelNameDisplayHelp": "Выберите, что отображать в нижней части карточки модели",
"cardBlurAmount": "Размытие наложения карточек",
"cardBlurAmountHelp": "Настройте интенсивность размытия наложений верхнего и нижнего колонтитулов на карточках моделей и рецептов (0 = без размытия, 20 = максимальное размытие)."
},
"folderSettings": {
"activeLibrary": "Активная библиотека",
"activeLibraryHelp": "Переключайтесь между настроенными библиотеками, чтобы обновить папки по умолчанию. Изменение выбора перезагружает страницу.",
"loadingLibraries": "Загрузка библиотек...",
"noLibraries": "Библиотеки не настроены",
"defaultLoraRoot": "Корневая папка LoRA",
"defaultLoraRootHelp": "Установить корневую папку LoRA по умолчанию для загрузок, импорта и перемещений",
"defaultCheckpointRoot": "Корневая папка Checkpoint",
"defaultCheckpointRootHelp": "Установить корневую папку checkpoint по умолчанию для загрузок, импорта и перемещений",
"defaultUnetRoot": "Корневая папка Diffusion Model",
"defaultUnetRootHelp": "Установить корневую папку Diffusion Model (UNET) по умолчанию для загрузок, импорта и перемещений",
"defaultEmbeddingRoot": "Корневая папка Embedding",
"defaultEmbeddingRootHelp": "Установить корневую папку embedding по умолчанию для загрузок, импорта и перемещений",
"defaultVaeRoot": "Корневая папка VAE",
"defaultVaeRootHelp": "Установить корневую папку VAE по умолчанию для загрузок, импорта и перемещений",
"defaultUpscalerRoot": "Корневая папка Upscaler",
"defaultUpscalerRootHelp": "Установить корневую папку Upscaler по умолчанию для загрузок, импорта и перемещений",
"defaultTextEncoderRoot": "Корневая папка Text Encoder",
"defaultTextEncoderRootHelp": "Установить корневую папку Text Encoder по умолчанию для загрузок, импорта и перемещений",
"defaultClipVisionRoot": "Корневая папка CLIP Vision",
"defaultClipVisionRootHelp": "Установить корневую папку CLIP Vision по умолчанию для загрузок, импорта и перемещений",
"defaultControlnetRoot": "Корневая папка ControlNet",
"defaultControlnetRootHelp": "Установить корневую папку ControlNet по умолчанию для загрузок, импорта и перемещений",
"enableOtherModels": "Управление другими моделями",
"enableOtherModelsHelp": "Если выключено, папки VAE / Upscaler / Text Encoder / CLIP Vision / ControlNet не сканируются, страница «Другие модели» остаётся отключённой, а эти типы моделей нельзя загрузить.",
"otherSubTypes": "Управляемые типы моделей",
"otherSubTypesHelp": "Выберите, какие категории других моделей сканируются и отображаются на странице «Другие модели».",
"subTypeVae": "VAE",
"subTypeUpscaler": "Upscaler",
"subTypeTextEncoder": "Text Encoder",
"subTypeClipVision": "CLIP Vision",
"subTypeControlnet": "ControlNet",
"recipesPath": "Путь хранения рецептов",
"recipesPathHelp": "Дополнительный пользовательский каталог для сохранённых рецептов. Оставьте пустым, чтобы использовать папку recipes в первом корне LoRA.",
"recipesPathPlaceholder": "/path/to/recipes",
"recipesPathMigrating": "Перенос хранилища рецептов...",
"noDefault": "Не задано"
},
"extraFolderPaths": {
"title": "Дополнительные пути к папкам",
"description": "Дополнительные корневые пути моделей, эксклюзивные для LoRA Manager. Загружайте модели из расположений за пределами стандартных папок ComfyUI — идеально подходит для больших библиотек, которые иначе замедлили бы ComfyUI.",
"restartRequired": "Требуется перезапуск, чтобы изменения вступили в силу",
"modelTypes": {
"lora": "Пути LoRA",
"checkpoint": "Пути Checkpoint",
"unet": "Пути моделей диффузии",
"embedding": "Пути Embedding"
},
"pathPlaceholder": "/путь/к/дополнительным/моделям",
"saveSuccess": "Дополнительные пути к папкам обновлены. Требуется перезапуск для применения изменений.",
"saveError": "Не удалось обновить дополнительные пути к папкам: {message}",
"validation": {
"duplicatePath": "Этот путь уже настроен",
"checkpointUnetOverlap": "Нельзя использовать один и тот же путь для checkpoints и diffusion models: {paths}",
"checkpointUnetOverlapInline": "Этот путь уже используется для другого типа модели. Используйте отдельные папки для checkpoints и diffusion models."
}
},
"modelPaths": {
"title": "Пути библиотеки моделей",
"description": "Корневые папки, которые LoRA Manager сканирует в поисках ваших моделей. В автономном режиме это основные расположения моделей, считываемые из settings.json.",
"restartRequired": "Требуется перезапуск, чтобы изменения вступили в силу",
"coreTypes": "Основные типы моделей",
"otherTypes": "Другие типы моделей",
"otherTypesDisabledHint": "Другие типы моделей не включены. Включите нужные типы выше, чтобы настроить их папки.",
"saveSuccessRestart": "Пути библиотеки моделей обновлены. Требуется перезапуск для применения изменений.",
"pendingRestartNotice": "Изменения путей сохранены. Перезапустите LoRA Manager, чтобы они вступили в силу.",
"pendingRestartBannerTitle": "Требуется перезапуск для применения изменений путей",
"pendingRestartBannerMessage": "Пути библиотеки моделей обновлены. Перезапустите сервер LoRA Manager, чтобы просканировать новые папки.",
"folderKeys": {
"loras": "Пути LoRA",
"checkpoints": "Пути Checkpoint",
"unet": "Пути моделей диффузии",
"embeddings": "Пути Embedding",
"vae": "Пути VAE",
"upscale_models": "Пути Upscaler",
"text_encoders": "Пути Text Encoder",
"clip": "Пути CLIP (устаревшие)",
"clip_vision": "Пути CLIP Vision",
"controlnet": "Пути ControlNet"
}
},
"directoryPicker": {
"title": "Обзор папок",
"selectFolder": "Выбрать эту папку",
"goUp": "Вверх",
"pathPlaceholder": "Введите путь...",
"go": "Перейти",
"emptyFolder": "Нет подпапок",
"loadError": "Не удалось загрузить каталог"
},
"pathValidation": {
"valid": "Путь действителен",
"pathNotFound": "Путь не существует",
"notADirectory": "Не является каталогом",
"notReadable": "Путь недоступен для чтения",
"notWritable": "Путь недоступен для записи"
},
"priorityTags": {
"title": "Приоритетные теги",
"description": "Настройте порядок приоритетов тегов для каждого типа моделей (например, character, concept, style(toon|toon_style)).",
"placeholder": "character, concept, style(toon|toon_style)",
"helpLinkLabel": "Открыть справку по приоритетным тегам",
"modelTypes": {
"lora": "LoRA",
"checkpoint": "Checkpoint",
"embedding": "Embedding"
},
"saveSuccess": "Приоритетные теги обновлены.",
"saveError": "Не удалось обновить приоритетные теги.",
"loadingSuggestions": "Загрузка подсказок...",
"validation": {
"missingClosingParen": "В записи {index} отсутствует закрывающая скобка.",
"missingCanonical": "Запись {index} должна содержать каноническое имя тега.",
"duplicateCanonical": "Канонический тег \"{tag}\" встречается более одного раза.",
"unknown": "Недопустимая конфигурация приоритетных тегов."
}
},
"downloadPathTemplates": {
"title": "Шаблоны путей загрузки",
"help": "Настройте структуру папок для разных типов моделей при загрузке с CivitAI.",
"availablePlaceholders": "Доступные заполнители:",
"templateOptions": {
"flatStructure": "Плоская структура",
"byBaseModel": "По базовой модели",
"byAuthor": "По автору",
"byFirstTag": "По первому тегу",
"baseModelFirstTag": "Базовая модель + Первый тег",
"baseModelAuthor": "Базовая модель + Автор",
"authorFirstTag": "Автор + Первый тег",
"baseModelAuthorFirstTag": "Базовая модель + Автор + Первый тег",
"customTemplate": "Пользовательский шаблон"
},
"customTemplatePlaceholder": "Введите пользовательский шаблон (например, {base_model}/{author}/{first_tag})",
"modelTypes": {
"lora": "LoRA",
"checkpoint": "Checkpoint",
"embedding": "Embedding"
},
"baseModelPathMappings": "Сопоставления путей базовых моделей",
"baseModelPathMappingsHelp": "Настройте имена папок для конкретных базовых моделей (например, \"Flux.1 D\" → \"flux\")",
"addMapping": "Добавить сопоставление",
"selectBaseModel": "Выбрать базовую модель",
"customPathPlaceholder": "Пользовательский путь (например, flux)",
"removeMapping": "Удалить сопоставление",
"validation": {
"validFlat": "Действительный (плоская структура)",
"invalidChars": "Обнаружены недопустимые символы",
"doubleSlashes": "Двойные слеши не разрешены",
"leadingTrailingSlash": "Не может начинаться или заканчиваться слешем",
"invalidPlaceholder": "Недопустимый заполнитель: {placeholder}",
"validTemplate": "Действительный шаблон"
}
},
"filenameTemplates": {
"title": "[TODO: Translate] Filename Templates",
"help": "[TODO: Translate] Configure filenames for downloaded models per model type. Leave empty to keep the original filename. The original filename is always preserved in the model's metadata.",
"availablePlaceholders": "[TODO: Translate] Available placeholders:",
"templatePlaceholder": "[TODO: Translate] Enter filename template (e.g., {base_model}-{model_name}-{version_name})",
"applyButton": "[TODO: Translate] Apply to Library Now",
"applyHelp": "[TODO: Translate] Renames all existing files of this model type according to the template. Warning: renaming changes the relative path seen by ComfyUI loaders, so existing workflows referencing the old filename may need to be updated. The original filename is preserved in each model's metadata.",
"confirmApply": "[TODO: Translate] Rename all existing files of this model type according to the filename template? This changes the relative path seen by ComfyUI loaders. The original filename is preserved in each model's metadata.",
"confirmRevert": "[TODO: Translate] Restore the recorded original filenames of all previously renamed files of this model type? This changes the relative path seen by ComfyUI loaders. Files without a recorded original filename are skipped.",
"validation": {
"restoreOriginal": "[TODO: Translate] Valid (empty template restores original filenames)",
"invalidChars": "[TODO: Translate] Invalid characters detected (a filename cannot contain / \\ < > : \" | ? *)",
"invalidPlaceholder": "[TODO: Translate] Invalid placeholder: {placeholder}",
"validTemplate": "[TODO: Translate] Valid template"
}
},
"exampleImages": {
"downloadLocation": "Место загрузки",
"downloadLocationPlaceholder": "Введите путь к папке для примеров изображений",
"downloadLocationHelp": "Введите путь к папке, где будут сохраняться примеры изображений с CivitAI",
"autoDownload": "Автозагрузка примеров изображений",
"autoDownloadHelp": "Автоматически загружать примеры изображений для моделей, у которых их нет (требует настройки места загрузки)",
"openMode": "Действие открытия примеров изображений",
"openModeHelp": "Выберите, будет ли действие открывать папку на сервере, копировать сопоставленный локальный путь или запускать пользовательский URI.",
"openModeOptions": {
"system": "Открыть на сервере",
"clipboard": "Скопировать локальный путь",
"uriTemplate": "Открыть пользовательский URI"
},
"localRoot": "Локальный корень примеров изображений",
"localRootHelp": "Необязательный локальный или смонтированный корневой путь, отражающий каталог примеров изображений на сервере. Если оставить пустым, будет использован путь сервера.",
"localRootPlaceholder": "Пример: /Volumes/ComfyUI/example_images",
"uriTemplate": "Шаблон URI для открытия",
"uriTemplateHelp": "Используйте пользовательскую deep link-ссылку, например file URI или ссылку Shortcuts.",
"uriTemplatePlaceholder": "Пример: shortcuts://run-shortcut?name=Open%20Finder&input=text&text={{encoded_local_path}}",
"uriTemplatePlaceholders": "Доступные плейсхолдеры: {{local_path}}, {{encoded_local_path}}, {{relative_path}}, {{encoded_relative_path}}, {{file_uri}}, {{encoded_file_uri}}",
"openModeWikiLink": "Подробнее об удаленных режимах открытия",
"optimizeImages": "Оптимизировать загруженные изображения",
"optimizeImagesHelp": "Оптимизировать примеры изображений для уменьшения размера файла и улучшения скорости загрузки (метаданные будут сохранены)",
"download": "Загрузить",
"restartRequired": "Требует перезапуска"
},
"versionGrouping": {
"label": "Стратегия меток обновлений",
"help": "Выберите, отображать ли значки обновления только когда новая версия имеет тот же базовый модель, что и локальные файлы, или всегда при наличии любого нового релиза для этой модели.",
"options": {
"sameBase": "Совпадение обновлений по базовой модели",
"any": "Отмечать любые доступные обновления"
}
},
"hideEarlyAccessUpdates": {
"label": "Скрыть обновления раннего доступа",
"help": "При включении модели, у которых есть только обновления раннего доступа, не будут показывать значок «Доступно обновление»."
},
"hidePaidUpdates": {
"label": "Скрывать платные обновления",
"help": "Если включено, у моделей, для которых доступны только платные обновления, не будет отображаться значок «Доступно обновление»"
},
"licenseIcons": {
"useNewStyle": "Использовать обновлённые значки лицензии",
"useNewStyleHelp": "Отображать разрешения лицензии с цветными индикаторами (новый стиль) или только значки ограничений (классический стиль). Соответствует текущему дизайну CivitAI."
},
"misc": {
"includeTriggerWords": "Включать триггерные слова в синтаксис LoRA",
"includeTriggerWordsHelp": "Включать обученные триггерные слова при копировании синтаксиса LoRA в буфер обмена",
"loraSyntaxFormat": "Формат синтаксиса LoRA",
"loraSyntaxFormatHelp": "Формат синтаксиса LoRA. Полный путь включает подпапку (<lora:style/anime/x:1.0>) для беспотерьного разрешения модели. Устаревший использует только имя файла (<lora:x:1.0>) — соглашение A1111, может быть неоднозначным при дублировании имён файлов в разных папках.",
"loraSyntaxFormatOptions": {
"full": "Полный путь (подпапка/имя)",
"legacy": "Устаревший A1111 (только имя)"
}
},
"metadataArchive": {
"enableArchiveDb": "Включить архив метаданных",
"enableArchiveDbHelp": "Использовать локальную базу данных для доступа к метаданным моделей, удалённых с CivitAI.",
"status": "Статус",
"statusAvailable": "Доступно",
"statusUnavailable": "Недоступно",
"enabled": "Включено",
"management": "Управление базой данных",
"managementHelp": "Скачать или удалить базу данных архива метаданных",
"downloadButton": "Скачать базу данных",
"downloadingButton": "Скачивание...",
"downloadedButton": "Скачано",
"removeButton": "Удалить базу данных",
"removingButton": "Удаление...",
"downloadSuccess": "База данных архива метаданных успешно загружена",
"downloadError": "Не удалось загрузить базу данных архива метаданных",
"removeSuccess": "База данных архива метаданных успешно удалена",
"removeError": "Не удалось удалить базу данных архива метаданных",
"removeConfirm": "Вы уверены, что хотите удалить базу данных архива метаданных? Это удалит локальный файл базы данных, и для использования этой функции потребуется повторная загрузка.",
"preparing": "Подготовка к загрузке...",
"connecting": "Подключение к серверу загрузки...",
"completed": "Завершено",
"downloadComplete": "Загрузка успешно завершена",
"enableCivarchiveApi": "Включить CivArchive API как источник метаданных",
"enableCivarchiveApiHelp": "При включении CivArchive API используется как резервный источник метаданных моделей (например, для моделей, удалённых с CivitAI). Отключите, чтобы полностью избежать ограничений скорости CivArchive.",
"providerOrder": "Порядок резервных источников метаданных",
"providerOrderHelp": "CivitAI API всегда проверяется первым. Выберите порядок остальных источников при поиске метаданных.",
"providerOrderCivitaiArchiveSqlite": "CivitAI → CivArchive → Archive DB",
"providerOrderCivitaiSqliteArchive": "CivitAI → Archive DB → CivArchive"
},
"proxySettings": {
"enableProxy": "Включить прокси на уровне приложения",
"enableProxyHelp": "Включить пользовательские настройки прокси для этого приложения, переопределяя системные настройки прокси",
"proxyType": "Тип прокси",
"proxyTypeHelp": "Выберите тип прокси-сервера (HTTP, HTTPS, SOCKS4, SOCKS5)",
"proxyHost": "Хост прокси",
"proxyHostPlaceholder": "proxy.example.com",
"proxyHostHelp": "Имя хоста или IP-адрес вашего прокси-сервера",
"proxyPort": "Порт прокси",
"proxyPortPlaceholder": "8080",
"proxyPortHelp": "Номер порта вашего прокси-сервера",
"proxyUsername": "Имя пользователя (необязательно)",
"proxyUsernamePlaceholder": "имя пользователя",
"proxyUsernameHelp": "Имя пользователя для аутентификации на прокси (если требуется)",
"proxyPassword": "Пароль (необязательно)",
"proxyPasswordPlaceholder": "пароль",
"proxyPasswordHelp": "Пароль для аутентификации на прокси (если требуется)"
},
"aiProvider": {
"title": "Поставщик ИИ",
"provider": "Поставщик",
"providerHelp": "Выберите поставщика LLM. OpenAI и Ollama используют предустановленные API-эндпоинты. Пользовательский позволяет указать любой совместимый с OpenAI эндпоинт.",
"providerOptions": {
"openai": "OpenAI",
"ollama": "Ollama (локальный)",
"deepseek": "DeepSeek",
"groq": "Groq",
"openrouter": "OpenRouter",
"google": "Gemini",
"opencode-go": "OpenCode Go",
"custom": "Пользовательский (совместимый с OpenAI)"
},
"apiBase": "Базовый URL API",
"apiBaseHelp": "Базовый URL для LLM API. Выберите пресет или введите свой URL. В раскрывающемся списке отображаются пресеты для всех поддерживаемых провайдеров.",
"apiBasePlaceholder": "https://api.openai.com/v1",
"apiKey": "API-ключ",
"apiKeyHelp": "Ваш API-ключ поставщика LLM. Хранится локально и никогда не отправляется на другие серверы, кроме выбранного поставщика LLM.",
"apiKeyPlaceholder": "sk-...",
"apiKeyNotSet": "Не задан",
"apiKeyConfigured": "Настроен",
"apiKeySet": "Настроить",
"model": "Модель",
"modelHelp": "Имя модели для использования (например, deepseek-v4-flash, gemini-2.5-flash, gemma4:12b). Проверьте доступные модели у вашего поставщика.",
"modelPlaceholder": "Выберите модель..."
}
},
"loras": {
"controls": {
"sort": {
"title": "Сортировать модели по...",
"name": "Имени",
"nameAsc": "А - Я",
"nameDesc": "Я - А",
"date": "Дате добавления",
"dateDesc": "Новейшим",
"dateAsc": "Старейшим",
"size": "Размеру файла",
"sizeDesc": "Наибольшим",
"sizeAsc": "Наименьшим",
"usage": "Число использований",
"usageDesc": "Больше",
"usageAsc": "Меньше",
"versionsCount": "Локальные версии",
"versionsCountDesc": "Сначала больше версий",
"versionsCountAsc": "Сначала меньше версий",
"versionIdDesc": "Сначала новые версии",
"random": "Случайно",
"randomAction": "Перемешать"
},
"refresh": {
"title": "Обновить список моделей",
"full": "Перестроить кэш",
"fullTooltip": "Перечитывает все данные моделей из файлов метаданных — используйте, если библиотека выглядит устаревшей или после ручных правок."
},
"fetch": {
"title": "Получить метаданные с CivitAI",
"action": "Получить"
},
"download": {
"title": "Загрузить по URL",
"action": "Загрузить"
},
"bulk": {
"title": "Массовые операции",
"action": "Массово"
},
"duplicates": {
"title": "Найти дубликаты",
"action": "Дубликаты"
},
"favorites": {
"title": "Показать только избранное",
"action": "Избранное"
},
"updates": {
"title": "Показывать только модели с доступными обновлениями",
"action": "Обновления",
"menuLabel": "Показать параметры обновления",
"check": "Проверить обновления",
"checkTooltip": "Проверка может занять время."
}
},
"bulkOperations": {
"selected": "Выбрано {count}",
"selectedSuffix": "выбрано",
"viewSelected": "Просмотреть выбранные",
"addTags": "Добавить теги ко всем",
"setBaseModel": "Установить базовую модель для всех",
"setContentRating": "Установить рейтинг контента для всех",
"copyAll": "Копировать весь синтаксис",
"refreshAll": "Обновить все метаданные",
"rematchMetadata": "Сопоставить выбранные с локальными моделями",
"reimportMetadata": "Переимпортировать из источника",
"checkUpdates": "Проверить обновления для выбранных",
"moveAll": "Переместить все в папку",
"autoOrganize": "Автоматически организовать выбранные",
"skipMetadataRefresh": "Пропустить обновление метаданных для выбранных",
"resumeMetadataRefresh": "Возобновить обновление метаданных для выбранных",
"setFavorite": "Добавить в избранное",
"setFavoriteCount": "Добавить в избранное ({favorited}/{total})",
"unfavorite": "Удалить из избранного",
"deleteAll": "Удалить выбранные",
"downloadMissingLoras": "Скачать отсутствующие LoRAs",
"downloadExamples": "Загрузить примеры изображений",
"downloadMissingExamples": "Скачать недостающие",
"reprocessExamples": "Обработать всё заново",
"clear": "Очистить выбор",
"skipMetadataRefreshCount": "Пропустить({count} моделей)",
"resumeMetadataRefreshCount": "Возобновить({count} моделей)",
"sendToWorkflow": "Отправить в Workflow",
"sections": {
"workflow": "Workflow",
"metadata": "Метаданные",
"attributes": "Атрибуты",
"organize": "Организовать",
"download": "Скачать"
},
"autoOrganizeProgress": {
"initializing": "Инициализация автоматической организации...",
"starting": "Запуск автоматической организации для {type}...",
"processing": "Обработка ({processed}/{total}) — {success} перемещено, {skipped} пропущено, {failures} не удалось",
"cleaning": "Очистка пустых директорий...",
"completed": "Завершено: {success} перемещено, {skipped} пропущено, {failures} не удалось",
"complete": "Автоматическая организация завершена",
"error": "Ошибка: {error}"
},
"filenameTemplateProgress": {
"initializing": "[TODO: Translate] Initializing filename template apply...",
"starting": "[TODO: Translate] Applying filename template to {type}...",
"processing": "[TODO: Translate] Processing ({processed}/{total}) - {success} renamed, {skipped} skipped, {failures} failed",
"completed": "[TODO: Translate] Completed: {success} renamed, {skipped} skipped, {failures} failed",
"complete": "[TODO: Translate] Filename template apply complete",
"error": "[TODO: Translate] Error: {error}"
},
"enrichHfAgent": "Обогатить метаданные с помощью ИИ"
},
"contextMenu": {
"refreshMetadata": "Обновить данные CivitAI",
"checkUpdates": "Проверить обновления",
"linkModel": "Связать модель",
"linkCivitai": "Пересвязать с CivitAI",
"linkModelSource": "Связать с источником модели",
"copySyntax": "Копировать синтаксис LoRA",
"copyFilename": "Копировать имя файла модели",
"copyRecipeSyntax": "Копировать синтаксис рецепта",
"sendToWorkflowAppend": "Отправить в Workflow (Добавить)",
"sendToWorkflowReplace": "Отправить в Workflow (Заменить)",
"openExamples": "Открыть папку примеров",
"downloadExamples": "Загрузить примеры изображений",
"downloadMissingExamples": "Скачать недостающие",
"reprocessExamples": "Обработать всё заново",
"replacePreview": "Заменить превью",
"setContentRating": "Установить рейтинг контента",
"moveToFolder": "Переместить в папку",
"rematchMetadata": "Сопоставить с локальными моделями",
"reimportMetadata": "Переимпортировать из источника",
"excludeModel": "Исключить модель",
"restoreModel": "Восстановить модель",
"deleteModel": "Удалить модель",
"shareRecipe": "Поделиться рецептом",
"viewAllLoras": "Посмотреть все LoRAs",
"downloadMissingLoras": "Загрузить отсутствующие LoRAs",
"deleteRecipe": "Удалить рецепт",
"enrichHfAgent": "Обогатить метаданные с помощью ИИ"
}
},
"recipes": {
"title": "Рецепты LoRA",
"actions": {
"sendCheckpoint": "Отправить в ComfyUI",
"sendRecipe": "Отправить в ComfyUI",
"copyRecipeSyntax": "Копировать синтаксис рецепта",
"deleteRecipeWithShortcut": "Удалить рецепт (Del)"
},
"navigation": {
"label": "Навигация по рецептам",
"previousWithShortcut": "Предыдущий рецепт (←)",
"nextWithShortcut": "Следующий рецепт (→)"
},
"modal": {
"metadata": {
"id": "ID",
"baseModel": "Базовая модель",
"unknown": "Неизвестно"
},
"actions": {
"openFileLocation": "Открыть расположение файла",
"copyId": "Копировать ID рецепта"
},
"openFileLocation": {
"success": "Расположение файла успешно открыто",
"failed": "Не удалось открыть расположение файла",
"copied": "Путь скопирован в буфер обмена: {{path}}",
"clipboardFallback": "Путь: {{path}}"
}
},
"workflow": {
"sendWorkflow": "Отправить workflow в ComfyUI",
"sent": "Workflow отправлен в ComfyUI",
"sendFailed": "Не удалось отправить workflow в ComfyUI",
"noWorkflow": "В этом рецепте не найден встроенный workflow"
},
"status": {
"ready": "Готово к использованию",
"missingCount": "{count} отсутствует",
"deletedCount": "{count} удалено",
"downloadMissing": "Скачать {count} отсутствующих LoRAs",
"downloadMissingTooltip": "Нажмите, чтобы скачать отсутствующие LoRAs"
},
"loraStatus": {
"none": "В этом рецепте нет LoRAs",
"allAvailable": "Все LoRAs доступны - Готово к использованию",
"missing": "Отсутствует {missing} из {total} LoRAs",
"missingAndUnavailable": "Отсутствует {missing} из {total} LoRAs, {unavailable} недоступны (удалены из источника или хеш не разрешается)",
"partial": "{unavailable} из {total} LoRAs недоступны (удалены из источника или хеш не разрешается) - будут пропущены при использовании рецепта",
"noneUsable": "Нет доступных LoRAs - {unavailable} из {total} удалены из источника или хеш не разрешается"
},
"resources": {
"inLibrary": "В библиотеке",
"notInLibrary": "Не в библиотеке",
"deleted": "Удалено",
"hashInvalid": "Нераспознанный хеш",
"inLibraryTooltip": "Эта модель есть в вашей локальной библиотеке",
"notInLibraryTooltip": "Этой модели нет в вашей библиотеке",
"deletedTooltip": "Этот LoRA был удалён из источника и больше недоступен для скачивания",
"hashInvalidTooltip": "Этот хеш LoRA не удаётся распознать на CivitAI - возможно, модель была обновлена",
"noLorasAssociated": "С этим рецептом не связаны LoRA",
"noLorasWhyToggle": "Почему нет LoRA?",
"noLorasImportMethod": "Способ импорта",
"noLorasInferredNote": "Возможная причина (выведена) — этот рецепт был импортирован до того, как стала записываться диагностика импорта.",
"noLorasChannels": {
"batch_import_url": "Пакетный импорт (URL изображения)",
"batch_import_local": "Пакетный импорт (локальный файл)",
"url": "Импорт по URL изображения",
"local": "Импорт локального файла",
"upload": "Загрузка изображения",
"widget": "Сохранён из Workflow",
"reimport_url": "Повторный импорт (URL изображения)",
"reimport_local": "Повторный импорт (локальный файл)"
},
"noLorasReasons": {
"no_loras_used": "Метаданные генерации полны и не содержат ссылок на LoRA.",
"api_meta_no_lora_resources": "Исходный API не вернул данные о ресурсах LoRA для этого изображения. LoRA, отображаемые на странице CivitAI, могут поступать из внутренних данных, которые публичный API не раскрывает.",
"api_meta_missing": "Исходный API не вернул метаданные генерации для этого изображения.",
"no_embedded_metadata": "Изображение не содержит встроенных метаданных генерации, поэтому восстановить информацию о LoRA невозможно.",
"workflow_metadata_limited": "Встроенные метаданные изображения представляют собой Workflow ComfyUI; извлечение информации о LoRA из Workflow ограничено.",
"video_no_metadata": "Видеофайлы не содержат встроенных метаданных генерации.",
"metadata_unsupported": "Изображение содержит метаданные в формате, который не удалось разобрать.",
"unknown": "Причину не удалось определить по сохранённым данным рецепта."
},
"noLorasDetails": {
"apiMetaFields": "Поля метаданных API",
"modelVersionIds": "Сообщено ID версий моделей",
"embeddedMetadata": "Встроенные метаданные",
"present": "найдены",
"absent": "нет"
},
"download": "Скачать",
"downloadLoraTooltip": "Скачать этот LoRA",
"preparingDownload": "Подготовка к скачиванию...",
"reconnect": "Переподключить",
"reconnectTooltip": "Переподключить к локальному LoRA",
"reconnectInstructions": "Введите синтаксис или имя LoRA для переподключения:",
"reconnectExample": "Пример: <lora:name:1> или просто имя",
"reconnectPlaceholder": "Введите имя или синтаксис LoRA",
"reconnectSuggestionsLoading": "Поиск в локальной библиотеке...",
"reconnectSuggestionsEmpty": "В локальной библиотеке нет подходящих LoRA",
"reconnectMatchSameHash": "Тот же хеш",
"reconnectMatchSameVersion": "Та же версия модели",
"reconnectMatchSimilarFilename": "Похожее имя файла",
"reconnectMatchSimilarName": "Похожее имя",
"undoReconnect": "Отменить",
"undoReconnectTooltip": "Восстановить привязку, которая была у записи до переподключения",
"undoReconnectTooltipNamed": "Восстановить {name} (привязка до переподключения)",
"viewOnCivitai": "Открыть на CivitAI",
"openLoraDetails": "Открыть {name} в библиотеке LoRA",
"openCheckpointDetails": "Открыть {name} в библиотеке моделей",
"checkpointDeletedTooltip": "Этот чекпойнт был удалён из источника и больше не может быть скачан - переподключите его к локальной модели",
"checkpointHashInvalidTooltip": "Хеш этого чекпойнта не удаётся разрешить на CivitAI - возможно, модель была обновлена",
"reconnectCheckpoint": "Переподключить",
"reconnectCheckpointTooltip": "Переподключить к локальному чекпойнту",
"checkpointReconnectInstructions": "Введите имя чекпойнта для переподключения:",
"checkpointReconnectPlaceholder": "Введите имя чекпойнта",
"checkpointReconnectSuggestionsEmpty": "В локальной библиотеке нет подходящих чекпойнтов"
},
"controls": {
"import": {
"action": "Импортировать",
"title": "Импортировать рецепт из изображения или URL",
"dropZoneLabel": "Загрузить изображение",
"dropZoneHint": "Перетащите изображение сюда, вставьте из буфера обмена или нажмите для выбора",
"orDivider": "или перетащите / вставьте изображение",
"imageUrlOrPath": "URL изображения или путь к файлу:",
"urlPlaceholder": "https://civitai.com/images/... или https://civitai.red/images/... или C:/path/to/image.png",
"fetchImage": "Получить изображение",
"recipeName": "Название рецепта",
"recipeNamePlaceholder": "Введите название рецепта",
"tagsOptional": "Теги (необязательно)",
"addTagPlaceholder": "Добавить тег",
"addTag": "Добавить",
"noTagsAdded": "Теги не добавлены",
"lorasInRecipe": "LoRAs в этом рецепте",
"downloadLocationPreview": "Предпросмотр места загрузки:",
"useDefaultPath": "Использовать путь по умолчанию",
"useDefaultPathTooltip": "При включении файлы автоматически организуются с использованием настроенных шаблонов путей",
"selectLoraRoot": "Выберите корневую папку LoRA",
"targetFolderPath": "Путь к целевой папке:",
"folderPathPlaceholder": "Введите путь к папке или выберите из дерева ниже...",
"createNewFolder": "Создать новую папку",
"root": "Корень",
"browseFolders": "Обзор папок:",
"downloadAndSaveRecipe": "Скачать и сохранить рецепт",
"importRecipeOnly": "Импортировать только рецепт",
"importAndDownload": "Импорт и скачивание",
"downloadMissingLoras": "Скачать отсутствующие LoRAs",
"saveRecipe": "Сохранить рецепт",
"loraCountInfo": "({existing}/{total} в библиотеке)",
"processingInput": "Обработка ввода...",
"analyzingMetadata": "Анализ метаданных изображения...",
"downloadingLoras": "Загрузка LoRAs...",
"savingRecipe": "Сохранение рецепта...",
"startingDownload": "Начало загрузки LoRA {current}/{total}",
"deletedFromCivitai": "Удалено с CivitAI",
"inLibrary": "В библиотеке",
"notInLibrary": "Не в библиотеке",
"earlyAccessRequired": "Для загрузки этой LoRA требуется платный ранний доступ.",
"earlyAccessEnds": "Ранний доступ заканчивается {date}.",
"earlyAccess": "Ранний доступ",
"verifyEarlyAccess": "Убедитесь, что вы приобрели ранний доступ перед загрузкой.",
"duplicateRecipesFound": "Найдено {count} идентичных рецептов в вашей библиотеке",
"duplicateRecipesDescription": "Эти рецепты содержат одинаковые LoRAs с идентичными весами.",
"showDuplicates": "Показать дубликаты",
"hideDuplicates": "Скрыть дубликаты",
"loraCount": "{count} LoRAs",
"recipePreviewAlt": "Предпросмотр рецепта",
"loraPreviewAlt": "Предпросмотр LoRA",
"errors": {
"selectImageFile": "Пожалуйста, выберите файл изображения",
"enterUrlOrPath": "Пожалуйста, введите URL или путь к файлу",
"invalidUrl": "Введите корректный URL",
"invalidInputFormat": "Введите URL изображения или путь к локальному файлу изображения",
"selectLoraRoot": "Пожалуйста, выберите корневую папку LoRA"
}
},
"sort": {
"title": "Сортировка рецептов...",
"name": "Имя",
"nameAsc": "А - Я",
"nameDesc": "Я - А",
"date": "Дата",
"dateDesc": "Сначала новые",
"dateAsc": "Сначала старые",
"lorasCount": "Кол-во LoRA",
"lorasCountDesc": "Больше всего",
"lorasCountAsc": "Меньше всего",
"opened": "Недавно открытые",
"openedDesc": "Недавно открытые"
},
"refresh": {
"title": "Обновить список рецептов",
"full": "Перестроить кэш",
"fullTooltip": "Перестроить кэш - полное повторное сканирование всех файлов рецептов"
},
"filteredByLora": "Фильтр по LoRA",
"favorites": {
"title": "Только избранные",
"action": "Избранное"
},
"layout": {
"title": "Макет рецептов",
"grid": "Макет сеткой",
"masonry": "Masonry-макет (в стиле Pinterest, сохраняет пропорции изображения)"
}
},
"duplicates": {
"finding": "Поиск дублирующихся рецептов...",
"found": "Найдено {count} групп дубликатов",
"noGroups": "Дубликатов с текущим критерием не найдено",
"keepLatest": "Оставить последние версии",
"deleteSelected": "Удалить выбранные",
"includePromptLabel": "Учитывать промпт при поиске дубликатов",
"basis": {
"loraCombo": "Критерий: комбинация LoRA",
"loraComboAndPrompt": "Критерий: комбинация LoRA + промпт",
"hintLoraCombo": "Рецепты с одинаковыми LoRA и одинаковой силой группируются вместе.",
"hintPromptIncluded": "Рецепты группируются только при одинаковых LoRA с одинаковой силой И одинаковом промпте."
}
},
"contextMenu": {
"copyRecipe": {
"missingId": "Невозможно скопировать рецепт: отсутствует ID рецепта",
"failed": "Не удалось скопировать синтаксис рецепта"
},
"sendRecipe": {
"missingId": "Невозможно отправить рецепт: отсутствует ID рецепта",
"failed": "Не удалось отправить рецепт в workflow"
},
"viewLoras": {
"missingId": "Невозможно просмотреть LoRAs: отсутствует ID рецепта",
"noLorasFound": "В этом рецепте не найдено LoRAs",
"loadError": "Ошибка загрузки LoRAs рецепта: {message}"
},
"downloadMissing": {
"missingId": "Невозможно загрузить LoRAs: отсутствует ID рецепта",
"noMissingLoras": "Нет отсутствующих LoRAs для загрузки",
"getInfoFailed": "Не удалось получить информацию для отсутствующих LoRAs",
"prepareError": "Ошибка подготовки LoRAs для загрузки: {message}"
},
"reimport": {
"starting": "Переимпорт рецепта из источника...",
"success": "Рецепт успешно переимпортирован",
"noSourceUrl": "У рецепта нет URL источника, переимпорт невозможен",
"failed": "Не удалось переимпортировать рецепт: {message}",
"missingId": "Невозможно переимпортировать рецепт: отсутствует ID"
}
},
"batchImport": {
"title": "Пакетный импорт рецептов",
"action": "Пакетный импорт",
"urlList": "Список URL",
"directory": "Папка",
"urlDescription": "Введите URL изображений или локальные пути к файлам (по одному на строку). Каждый будет импортирован как рецепт.",
"directoryDescription": "Введите путь к папке, чтобы импортировать все изображения из неё.",
"urlsLabel": "URL изображений или локальные пути",
"urlsPlaceholder": "https://civitai.com/images/...\nhttps://civitai.com/images/...\nC:/path/to/image.png\n...",
"urlsHint": "Один URL или путь на строку",
"directoryPath": "Путь к папке",
"directoryPlaceholder": "/path/to/images/folder",
"browse": "Обзор",
"recursive": "Включая подпапки",
"tagsOptional": "Теги (необязательно, применяются ко всем рецептам)",
"tagsPlaceholder": "Введите теги через запятую",
"tagsHint": "Теги будут добавлены ко всем импортированным рецептам",
"skipNoMetadata": "Пропускать изображения без метаданных",
"skipNoMetadataHelp": "Изображения без метаданных LoRA будут пропущены автоматически.",
"start": "Начать импорт",
"startImport": "Начать импорт",
"importing": "Импорт...",
"rateLimitedSlowdown": "Ограничение частоты запросов — замедление...",
"rateLimitedHint": "Некоторые элементы были пропущены из-за ограничений частоты запросов поставщика метаданных. Повторите импорт позже, чтобы повторить попытку.",
"progress": "Прогресс",
"total": "Всего",
"success": "Успешно",
"failed": "Ошибок",
"skipped": "Пропущено",
"current": "Текущий",
"currentItem": "Текущий",
"preparing": "Подготовка...",
"cancel": "Отмена",
"cancelImport": "Отмена",
"cancelled": "Импорт отменён",
"completed": "Импорт завершён",
"completedWithErrors": "Завершено с ошибками",
"completedSuccess": "Успешно импортировано рецептов: {count}",
"successCount": "Успешно",
"failedCount": "Ошибок",
"skippedCount": "Пропущено",
"totalProcessed": "Всего обработано",
"viewDetails": "Подробнее",
"newImport": "Новый импорт",
"manualPathEntry": "Введите путь к папке вручную. Выбор файлов недоступен в этом браузере.",
"batchImportDirectorySelected": "Выбрана папка: {path}",
"batchImportManualEntryRequired": "Выбор файлов недоступен. Введите путь к папке вручную.",
"backToParent": "В родительскую папку",
"folders": "Папки",
"folderCount": "Папки: {count}",
"imageFiles": "Файлы изображений",
"images": "изображения",
"imageCount": "Изображения: {count}",
"selectFolder": "Выбрать эту папку",
"errors": {
"enterUrls": "Введите хотя бы один URL или путь",
"enterDirectory": "Введите путь к папке",
"startFailed": "Не удалось начать импорт: {message}"
}
}
},
"checkpoints": {
"title": "Модели Checkpoint",
"modelTypes": {
"checkpoint": "Checkpoint",
"diffusion_model": "Диффузионная модель"
},
"contextMenu": {
"moveToOtherTypeFolder": "Переместить в папку {otherType}",
"sendToWorkflow": "Отправить в workflow"
}
},
"embeddings": {
"title": "Модели Embedding"
},
"other": {
"title": "Другие модели",
"disabled": {
"title": "Управление другими моделями отключено",
"description": "Включите, чтобы сканировать и управлять файлами VAE, Upscaler, Text Encoder, CLIP Vision и ControlNet, а также загружать их с CivitAI.",
"enableButton": "Включить другие модели",
"hint": "Вы сможете изменить управляемые типы моделей позже в разделе «Настройки > Библиотека».",
"enableFailed": "Не удалось включить другие модели",
"downloadBlocked": "Управление другими моделями отключено для этого типа моделей. Включите его в разделе «Настройки > Библиотека», чтобы загрузить этот файл.",
"enableAction": "Включить другие модели"
},
"noPaths": {
"title": "Папки других моделей не найдены",
"descriptionStandalone": "Управление другими моделями включено, но папки других моделей не найдены. Добавьте свои папки моделей в разделе «Настройки → Пути к моделям», затем перезапустите LoRA Manager.",
"hintStandalone": "Сканируются только включённые типы моделей; включите нужные типы в разделе «Библиотека → Корневые папки».",
"descriptionComfyUI": "Управление другими моделями включено, но ни одна из настроенных папок моделей не существует на диске. Добавьте соответствующие папки моделей в пути к моделям ComfyUI и перезагрузите эту страницу.",
"hintComfyUI": "Другие модели читаются из папок vae, upscale_models, text_encoders, clip_vision и controlnet в ComfyUI.",
"openSettings": "Открыть настройки",
"openModelPaths": "Настроить папки моделей",
"openSettingsFolder": "Открыть папку настроек"
}
},
"sidebar": {
"modelRoot": "Корень",
"collapseAll": "Свернуть все папки",
"collapseAllDisabled": "Недоступно в виде списка",
"hideOnThisPage": "Скрыть боковую панель на этой странице",
"showSidebar": "Показать боковую панель",
"sidebarHiddenNotification": "Боковая панель скрыта на странице {page}",
"viewOptions": "Параметры отображения",
"treeView": "Дерево",
"listView": "Список",
"recursiveOn": "Включать вложенные папки",
"createFolder": "Новая папка",
"newSubfolder": "Новая вложенная папка",
"showEmptyFolders": "Показывать пустые папки",
"createFolderResult": {
"success": "Папка \"{name}\" создана",
"failed": "Не удалось создать папку: {message}",
"unsupported": "Создание папок не поддерживается на этой странице",
"noRoot": "Корневая папка моделей не настроена"
},
"deleteFolder": "Удалить папку",
"deleteFolderModal": {
"title": "Удалить папку?",
"message": "Папка и всё её содержимое будут безвозвратно удалены с диска.",
"folderLabel": "Папка",
"emptyNote": "В этой папке нет моделей. Остальные файлы в ней тоже будут удалены.",
"notEmptyTitle": "Папка не пуста",
"notEmptyMessage": "В этой папке ещё есть модели. Сначала удалите или переместите их — удаление папки никогда не затрагивает файлы моделей.",
"confirm": "Удалить папку"
},
"deleteFolderResult": {
"success": "Папка \"{name}\" удалена",
"successWithFiles": "Папка \"{name}\" удалена вместе с ещё {count} элемент(ами)",
"restored": "Папка восстановлена",
"failed": "Не удалось удалить папку: {message}",
"notEmpty": "В этой папке ещё есть модели. Обновите боковую панель и повторите попытку.",
"busy": "В этой папке всё ещё есть отложенное удаление. Дождитесь окончания окна отмены.",
"unsupported": "Удаление папок не поддерживается на этой странице",
"noRoot": "Корневая папка моделей не настроена"
},
"renameFolder": "Переименовать папку",
"renameFolderResult": {
"success": "Папка переименована в \"{name}\"",
"failed": "Не удалось переименовать папку: {message}",
"targetExists": "Папка с таким именем уже существует здесь",
"busy": "В этой папке всё ещё есть отложенное удаление. Дождитесь окончания окна отмены.",
"unsupported": "Переименование папок не поддерживается на этой странице",
"noRoot": "Корневая папка моделей не настроена"
},
"dragDrop": {
"unableToResolveRoot": "Не удалось определить путь назначения для перемещения.",
"moveUnsupported": "Перемещение этого элемента не поддерживается.",
"newFolderName": "Имя новой папки",
"emptyFolderName": "Пожалуйста, введите имя папки",
"invalidFolderName": "Имя папки содержит недопустимые символы",
"noDragState": "Ожидающая операция перетаскивания не найдена"
},
"empty": {
"noFolders": "Папки не найдены",
"createHint": "Нажмите кнопку «Новая папка» вверху, чтобы создать папки"
},
"folderUpdateCheck": {
"label": "Проверить обновления в этой папке",
"loading": "Проверка обновлений {type} в этой папке...",
"success": "Найдено {count} обновление(й) для {type}s в этой папке",
"none": "Все {type}s в этой папке актуальны",
"error": "Не удалось проверить папку на наличие обновлений {type}: {message}"
}
},
"statistics": {
"title": "Статистика",
"tabs": {
"overview": "Обзор",
"usage": "Анализ использования",
"collection": "Коллекция",
"storage": "Хранение",
"insights": "Аналитика"
},
"metrics": {
"totalModels": "Всего моделей",
"totalStorage": "Всего хранилища",
"totalGenerations": "Всего генераций",
"usageRate": "Коэффициент использования",
"loras": "LoRA",
"checkpoints": "Checkpoints",
"embeddings": "Embeddings",
"uniqueTags": "Уникальные теги",
"unusedModels": "Неиспользуемые модели",
"avgUsesPerModel": "Сред. использований/модель"
},
"usage": {
"mostUsedLoras": "Наиболее используемые LoRAs",
"mostUsedCheckpoints": "Наиболее используемые Checkpoints",
"mostUsedEmbeddings": "Наиболее используемые Embeddings"
},
"collection": {
"popularTags": "Популярные теги",
"modelTypes": "Типы моделей",
"collectionAnalysis": "Анализ коллекции"
},
"storage": {
"storageUsage": "Использование хранилища",
"largestModels": "Самые большие модели",
"storageEfficiency": "Эффективность хранения против использования"
},
"insights": {
"smartInsights": "Умная аналитика",
"recommendations": "Рекомендации",
"noInsights": "Нет доступных данных",
"unusedLoras": {
"high": {
"title": "Большое количество неиспользуемых LoRA",
"description": "{percent}% ваших LoRA ({count}/{total}) никогда не использовались.",
"suggestion": "Рассмотрите возможность организации или архивирования неиспользуемых моделей для освобождения места."
}
},
"unusedCheckpoints": {
"detected": {
"title": "Обнаружены неиспользуемые Checkpoints",
"description": "{percent}% ваших Checkpoints ({count}/{total}) никогда не использовались.",
"suggestion": "Проверьте и удалите ненужные Checkpoints."
}
},
"unusedEmbeddings": {
"high": {
"title": "Большое количество неиспользуемых эмбеддингов",
"description": "{percent}% ваших эмбеддингов ({count}/{total}) никогда не использовались.",
"suggestion": "Организуйте или архивируйте неиспользуемые эмбеддинги для оптимизации коллекции."
}
},
"collection": {
"large": {
"title": "Обнаружена большая коллекция",
"description": "Ваша коллекция моделей использует {size} хранилища.",
"suggestion": "Рассмотрите внешнее хранилище или облачные решения для лучшей организации."
}
},
"activity": {
"active": {
"title": "Активный пользователь",
"description": "Вы завершили {count} генераций!",
"suggestion": "Продолжайте исследовать и создавать удивительный контент с вашими моделями."
}
}
},
"charts": {
"collectionOverview": "Обзор коллекции",
"baseModelDistribution": "Распределение базовых моделей",
"usageTrends": "Тенденции использования (за последние 30 дней)",
"usageDistribution": "Распределение использования",
"date": "Дата",
"usageCount": "Количество использований",
"fileSizeBytes": "Размер файла (байты)",
"models": "Модели",
"loraUsage": "Использование LoRA",
"checkpointUsage": "Использование Checkpoint",
"embeddingUsage": "Использование Embedding"
},
"modelTypes": {
"lora": "LoRA",
"locon": "LyCORIS",
"dora": "DoRA",
"checkpoint": "Checkpoint",
"diffusion_model": "Диффузионная модель",
"embedding": "Embeddings"
},
"placeholders": {
"loading": "Загрузка...",
"noModels": "Модели не найдены",
"errorLoading": "Ошибка загрузки данных",
"noStorageData": "Нет данных о хранилище",
"rootFolder": "Корень",
"chartLibraryMissing": "Для графика требуется библиотека Chart.js"
},
"tooltips": {
"tagCount": "{tag}: {count} моделей",
"chartUsage": "{name}: {size}, {count} использований",
"chartPercentage": "{label}: {value} ({pct}%)"
}
},
"modals": {
"exclude": {
"confirm": "Исключить"
},
"download": {
"title": "Скачать модель по URL",
"titleWithType": "Скачать {type} по URL",
"civitaiUrl": "URL модели:",
"placeholder": "https://civitai.com/models/...",
"urlHint": "Введите один URL CivitAI, CivArchive, Hugging Face или ModelScope в каждой строке. Поддерживает несколько URL для пакетной загрузки.",
"selectHfFiles": "Выберите файл(ы) для загрузки из этого репозитория:",
"selectAll": "Выбрать все",
"fetchingRepoFiles": "Получение файлов репозитория...",
"locationPreview": "Предпросмотр места загрузки",
"useDefaultPath": "Использовать путь по умолчанию",
"useDefaultPathTooltip": "При включении файлы автоматически организуются с использованием настроенных шаблонов путей",
"selectRootDirectory": "Выберите корневую папку",
"selectModelRoot": "Выберите корень моделей:",
"selectTypeRoot": "Выберите корень {type}:",
"targetFolderPath": "Путь к целевой папке:",
"browseFolders": "Обзор папок:",
"createNewFolder": "Создать новую папку",
"pathPlaceholder": "Введите путь к папке или выберите из дерева ниже...",
"root": "Корень",
"download": "Скачать",
"fetchingVersions": "Получение версий модели...",
"versionPreview": "Предпросмотр версии",
"earlyAccess": "Ранний доступ",
"earlyAccessTooltip": "Требуется ранний доступ",
"inLibrary": "В библиотеке",
"downloaded": "Загружено",
"downloadedTooltip": "Ранее загружено, но сейчас этого нет в вашей библиотеке.",
"alreadyInLibrary": "Уже в библиотеке",
"partiallyDownloaded": "Загружено частично",
"autoOrganizedPath": "[Автоматически организовано по шаблону пути]",
"fileSelection": {
"title": "Выбрать формат файла",
"files": "файлов",
"select": "Выбрать файл",
"inLibrary": "В библиотеке"
},
"errors": {
"invalidUrl": "Неверный формат URL модели",
"noVersions": "Нет доступных версий для этой модели",
"mixedSources": "Нельзя смешивать URL-адреса CivitAI и Hugging Face / ModelScope в одном пакете.",
"noModelFiles": "В этом репозитории не найдено файлов моделей."
},
"status": {
"preparing": "Подготовка загрузки...",
"downloadedPreview": "Превью изображение загружено",
"downloadingFile": "Загрузка файла {type}",
"finalizing": "Завершение загрузки...",
"cancelling": "Отмена загрузки...",
"cancelled": "Загрузка отменена"
},
"progress": {
"currentFile": "Текущий файл:",
"downloading": "Скачивается: {name}",
"metadata": "Метаданные: {name}",
"indexingFile": "Чтение файла модели...",
"fetchingSourceMetadata": "Получение метаданных из {source}...",
"fetchingMetadata": "Получение метаданных...",
"transferred": "Скачано: {downloaded} / {total}",
"transferredSimple": "Скачано: {downloaded}",
"transferredUnknown": "Скачано: --",
"speed": "Скорость: {speed}"
}
},
"move": {
"title": "Переместить модели"
},
"contentRating": {
"title": "Установить рейтинг контента",
"current": "Текущий",
"multiple": "Несколько значений",
"levels": {
"pg": "PG",
"pg13": "PG13",
"r": "R",
"x": "X",
"xxx": "XXX"
}
},
"deleteModel": {
"freesSpace": "Освобождает {size}",
"title": "Удалить модель",
"message": "Вы уверены, что хотите удалить эту модель и все связанные файлы?",
"recoverableWarning": "Файл будет удалён навсегда через 20 секунд, если вы не отмените действие."
},
"deleteRecipe": {
"recoverableWarning": "Это действие можно отменить в течение 20 секунд."
},
"excludeModel": {
"title": "Исключить модель",
"message": "Вы уверены, что хотите исключить эту модель? Исключенные модели не будут отображаться в поиске или списках моделей."
},
"deleteDuplicateRecipes": {
"title": "Удалить дублирующиеся рецепты",
"message": "Вы уверены, что хотите удалить выбранные дублирующиеся рецепты?",
"countMessage": "рецептов будут удалены навсегда."
},
"deleteDuplicateModels": {
"title": "Удалить дублирующиеся модели",
"message": "Вы уверены, что хотите удалить выбранные дублирующиеся модели?",
"countMessage": "моделей будут удалены навсегда."
},
"clearCache": {
"title": "Очистить файлы кэша",
"message": "Вы уверены, что хотите очистить все файлы кэша?",
"description": "Это удалит все кэшированные данные моделей. Системе потребуется пересобрать кэш при следующем запуске, что может занять некоторое время в зависимости от размера вашей коллекции моделей.",
"action": "Очистить кэш"
},
"bulkDelete": {
"title": "Удалить несколько моделей",
"message": "Вы уверены, что хотите удалить все выбранные модели и связанные с ними файлы?",
"countMessage": "моделей будут удалены навсегда.",
"action": "Удалить все"
},
"bulkDeleteRecipes": {
"title": "Удалить несколько рецептов",
"message": "Вы уверены, что хотите удалить все выбранные рецепты и связанные с ними файлы?",
"countMessage": "рецептов будут удалены навсегда.",
"action": "Удалить все"
},
"checkUpdates": {
"title": "Проверить обновления для всех {typePlural}?",
"message": "Будут проверены обновления для всех {typePlural} в вашей библиотеке. Для больших коллекций это может занять немного больше времени.",
"tip": "Хотите проверять по частям? Переключитесь в массовый режим, выберите нужные модели и используйте \"Проверить обновления для выбранных\".",
"action": "Проверить всё"
},
"filenameTemplateConfirm": {
"titleApply": "[TODO: Translate] Apply filename template to library?",
"titleRevert": "[TODO: Translate] Restore original filenames?",
"revertButton": "[TODO: Translate] Restore Original Filenames"
},
"bulkAddTags": {
"title": "Добавить теги к нескольким моделям",
"description": "Добавить теги к",
"models": "моделям",
"tagsToAdd": "Теги для добавления",
"placeholder": "Введите тег и нажмите Enter...",
"appendTags": "Добавить теги",
"replaceTags": "Заменить теги",
"saveChanges": "Сохранить изменения"
},
"bulkBaseModel": {
"title": "Установить базовую модель для нескольких моделей",
"description": "Установить базовую модель для",
"models": "моделей",
"selectBaseModel": "Выбрать базовую модель",
"save": "Обновить базовую модель",
"cancel": "Отмена"
},
"bulkDownloadMissingLoras": {
"title": "Скачать отсутствующие LoRAs",
"message": "Найдено {uniqueCount} уникальных отсутствующих LoRAs (из {totalCount} всего в выбранных рецептах).",
"previewTitle": "LoRAs для скачивания:",
"moreItems": "...и еще {count}",
"note": "Файлы будут скачаны с использованием шаблонов путей по умолчанию. Это может занять некоторое время в зависимости от количества LoRAs.",
"downloadButton": "Скачать {count} LoRA(s)"
},
"rematchOptions": {
"title": "Повторное сопоставление рецептов",
"messageGlobal": "Все рецепты будут проверены по вашей локальной библиотеке моделей.",
"messageSingle": "Этот рецепт будет проверен по вашей локальной библиотеке моделей.",
"messageBulk": "Выбранные рецепты ({count}) будут проверены по вашей локальной библиотеке моделей.",
"relaxedLabel": "Также переподключать отсутствующие модели по имени файла",
"relaxedDescription": "Эти модели также можно исправить загрузкой — загрузка точнее. Совпадения могут привязать другую версию; они будут перечислены для проверки, и их можно будет отменить.",
"confirmButton": "Сопоставить"
},
"rematchResults": {
"undo": "Отменить",
"undone": "Отменено",
"undoFailed": "Не удалось отменить сопоставление: {message}"
},
"rematchSummary": {
"title": "Сводка повторного сопоставления",
"successMessage": "Сопоставлено записей: {entries}",
"failed": "Не удалось выполнить сопоставление",
"completedWithWarnings": "Сопоставление завершено — рекомендуется проверка",
"cancelledNote": "Запуск отменён до завершения — подсчёты неполные.",
"statMatched": "Сопоставленные записи",
"statReview": "Требуют проверки",
"statUnresolved": "Не сопоставлено",
"statErrors": "Ошибки",
"reviewSection": "Совпадения по имени файла для проверки ({count})",
"columnRecipe": "Рецепт",
"columnEntry": "Запись",
"columnFile": "Совпавший файл",
"columnUndo": "Отменить",
"copyReport": "Скопировать отчёт",
"close": "Закрыть",
"scope_global": "Все рецепты",
"scope_bulk": "Выбранные рецепты",
"scope_single": "Один рецепт"
},
"exampleAccess": {
"title": "Локальные примеры изображений",
"message": "Локальные примеры изображений для этой модели не найдены. Варианты просмотра:",
"downloadOption": {
"title": "Скачать с CivitAI",
"description": "Сохранить удаленные примеры локально для использования офлайн и более быстрой загрузки"
},
"importOption": {
"title": "Импортировать свои",
"description": "Добавить собственные примеры для этой модели"
},
"footerNote": "Удаленные примеры все еще можно просматривать в деталях модели даже без локальных копий"
},
"moveModel": {
"targetLocationPreview": "Предпросмотр целевого расположения:",
"selectModelRoot": "Выберите корень моделей:",
"targetFolderPath": "Путь к целевой папке:",
"browseFolders": "Обзор папок:",
"createNewFolder": "Создать новую папку",
"pathPlaceholder": "Введите путь к папке или выберите из дерева ниже...",
"root": "Корень"
},
"linkModelSource": {
"title": "Связать с источником модели",
"infoText": "Вставьте URL страницы модели, чтобы связать эту модель с её источником. Связывание включает обогащение метаданных с помощью ИИ для моделей Hugging Face и ModelScope.",
"urlLabel": "URL страницы модели:",
"urlPlaceholder": "https://huggingface.co/user/repo",
"helpText": "Введите полный URL страницы модели. Поддерживаемые сайты:",
"enrichNote": "Для обогащения с помощью ИИ нужна читаемая карточка модели. Сайты, которые её не предоставляют (сейчас TensorArt), можно только связать.",
"urlRequired": "Введите URL страницы модели.",
"invalidUrl": "Неподдерживаемый URL. Поддерживаемые сайты: Hugging Face, ModelScope, TensorArt.",
"linking": "Связывание с источником модели...",
"confirmAction": "Сохранить и связать"
},
"relinkCivitai": {
"title": "Пересвязать с CivitAI",
"warning": "Предупреждение:",
"warningText": "Это потенциально разрушительная операция. Пересвязывание:",
"warningList": {
"overrideMetadata": "Перезапишет существующие метаданные",
"modifyHash": "Потенциально изменит хеш модели",
"unintendedConsequences": "Может иметь другие непредвиденные последствия"
},
"proceedText": "Продолжайте только если вы уверены, что это то, что вам нужно.",
"urlLabel": "URL модели CivitAI:",
"urlPlaceholder": "https://civitai.com/models/12345/model-name?modelVersionId=67890 или https://civitai.red/models/12345/model-name?modelVersionId=67890",
"helpText": {
"title": "Вставьте любой URL модели CivitAI или CivitArchive. Поддерживаемые форматы:",
"format1": "https://civitai.com/models/12345",
"format2": "https://civitai.com/models/12345?modelVersionId=67890",
"format3": "https://civitai.com/models/12345/model-name?modelVersionId=67890",
"note": "Примечание: Если modelVersionId не указан, будет использована последняя версия.",
"format4": "https://civarchive.com/models/12345 (CivArchive)"
},
"confirmAction": "Подтвердить пересвязывание"
},
"model": {
"actions": {
"editModelName": "Редактировать название модели",
"editFileName": "Редактировать имя файла",
"editBaseModel": "Редактировать базовую модель",
"editVersionName": "Редактировать название версии",
"viewOnCivitai": "Посмотреть на CivitAI",
"viewOnCivitaiText": "Посмотреть на CivitAI",
"viewOnHuggingFace": "Открыть Hugging Face",
"viewOnHuggingFaceText": "Открыть Hugging Face",
"viewCreatorProfile": "Посмотреть профиль создателя",
"openFileLocation": "Открыть расположение файла",
"sendToWorkflow": "Отправить в ComfyUI",
"sendToWorkflowText": "Отправить в ComfyUI",
"copyHash": "Копировать хеш",
"deleteModelWithShortcut": "Удалить модель (Del)"
},
"openFileLocation": {
"success": "Расположение файла успешно открыто",
"failed": "Не удалось открыть расположение файла",
"copied": "Путь скопирован в буфер обмена: {{path}}",
"clipboardFallback": "Путь: {{path}}"
},
"sendToWorkflow": {
"noFilePath": "Невозможно отправить в ComfyUI: путь к файлу недоступен"
},
"metadata": {
"version": "Версия",
"fileName": "Имя файла",
"location": "Расположение",
"baseModel": "Базовая модель",
"size": "Размер",
"hashes": "Хэши",
"unknown": "Неизвестно",
"usageTips": "Советы по использованию",
"additionalNotes": "Дополнительные заметки",
"notesHint": "Нажмите Enter для сохранения, Shift+Enter для новой строки",
"addNotesPlaceholder": "Добавьте ваши заметки здесь...",
"aboutThisVersion": "Об этой версии",
"baseModelSearchPlaceholder": "Поиск базовой модели...",
"baseModelSuggested": "Предполагаемые",
"baseModelNoMatch": "Нет подходящих базовых моделей"
},
"notes": {
"saved": "Заметки успешно сохранены",
"saveFailed": "Не удалось сохранить заметки",
"showMore": "Показать больше",
"showLess": "Свернуть"
},
"usageTips": {
"addPresetParameter": "Добавить предустановленный параметр...",
"strengthMin": "Мин. сила",
"strengthMax": "Макс. сила",
"strengthRange": "Диапазон силы",
"strength": "Сила",
"clipStrength": "Сила клипа",
"clipSkip": "Clip Skip",
"valuePlaceholder": "Значение",
"add": "Добавить",
"invalidRange": "Неверный формат диапазона. Используйте x.x-y.y",
"invalidValue": "Введите корректное число",
"saveFailed": "Не удалось сохранить предустановленный параметр",
"added": "Предустановленный параметр добавлен",
"updated": "Предустановленный параметр обновлён"
},
"triggerWords": {
"label": "Триггерные слова",
"noTriggerWordsNeeded": "Триггерные слова не нужны",
"edit": "Редактировать триггерные слова",
"cancel": "Отменить редактирование",
"save": "Сохранить изменения",
"addPlaceholder": "Введите для добавления или нажмите на предложения ниже",
"editWord": "Редактировать триггерное слово",
"editPlaceholder": "Редактировать триггерное слово",
"copyOrEditWord": "Клик — скопировать, двойной клик — редактировать",
"deleteWord": "Удалить триггерное слово",
"suggestions": {
"noSuggestions": "Предложения недоступны",
"noTrainedWords": "В этой модели не найдено обученных слов или токенов классов. Вы можете вручную ввести триггерные слова.",
"classToken": "Токен класса",
"classTokenDescription": "Добавьте в ваш промпт для лучших результатов",
"wordSuggestions": "Предложения слов",
"wordsFound": "найдено {count} слов",
"loading": "Загрузка предложений..."
}
},
"description": {
"noDescription": "Описание модели недоступно",
"failedToLoad": "Не удалось загрузить описание модели",
"editTitle": "Редактировать описание модели",
"validation": {
"cannotBeEmpty": "Описание не может быть пустым"
},
"messages": {
"updated": "Описание модели обновлено",
"updateFailed": "Не удалось обновить описание модели"
}
},
"tabs": {
"examples": "Примеры",
"description": "Описание модели",
"recipes": "Рецепты",
"versions": "Версии"
},
"navigation": {
"label": "Навигация по моделям",
"previousWithShortcut": "Предыдущая модель (←)",
"nextWithShortcut": "Следующая модель (→)",
"noPrevious": "Предыдущая модель отсутствует",
"noNext": "Следующая модель отсутствует"
},
"license": {
"noImageSell": "Продажа сгенерированных изображений запрещена",
"noRentCivit": "Генерация через CivitAI запрещена",
"noRent": "Сервисы генерации запрещены",
"noSell": "Продажа моделей запрещена",
"creditRequired": "Требуется указание авторства",
"noDerivatives": "Запрет на совместное использование производных работ",
"noReLicense": "Требуются те же права",
"restrictionsLabel": "Лицензионные ограничения"
},
"loading": {
"exampleImages": "Загрузка примеров изображений...",
"description": "Загрузка описания модели...",
"recipes": "Загрузка рецептов...",
"examples": "Загрузка примеров...",
"versions": "Загрузка версий..."
},
"showcase": {
"hiddenBySfw": "{count} скрыто настройкой «только SFW»",
"showExamples": "Показать примеры",
"showCount": "Показать примеры ({count})",
"hideExamples": "Скрыть примеры",
"addExamples": "Добавить примеры",
"previousExample": "Предыдущий пример ([)",
"nextExample": "Следующий пример (])",
"noExamples": "Примеры изображений недоступны",
"addMoreExamples": "Добавить ещё примеры",
"dragDrop": "Перетащите изображения или видео сюда",
"or": "или",
"selectFiles": "Выбрать файлы",
"supportedFormats": "Поддерживаемые форматы: jpg, png, gif, webp, avif, jxl, mp4, webm",
"importing": "Импорт файлов...",
"noSupportedFiles": "Не выбрано поддерживаемых файлов. Пожалуйста, выберите файлы изображений или видео.",
"allFiltered": "Все примеры изображений отфильтрованы из-за настроек NSFW-контента",
"sfwOnlyEnabled": "В настройках сейчас включён показ только безопасного для работы (SFW) контента",
"changeInSettings": "Вы можете изменить это в Настройках",
"nsfwMature": "Контент для взрослых",
"nsfwR": "Контент с рейтингом R",
"nsfwX": "Контент с рейтингом X",
"nsfwXxx": "Контент с рейтингом XXX"
},
"versions": {
"heading": "Версии модели",
"copy": "Управляйте всеми версиями этой модели в одном месте.",
"media": {
"placeholder": "Нет превью"
},
"labels": {
"unnamed": "Версия без названия",
"noDetails": "Дополнительная информация отсутствует",
"earlyAccess": "EA"
},
"eaTime": {
"endingSoon": "скоро заканчивается",
"hours": "через {count}ч",
"days": "через {count}д"
},
"badges": {
"current": "Открытая версия",
"currentTooltip": "Это версия, с которой было открыто это окно",
"inLibrary": "В библиотеке",
"inLibraryTooltip": "Эта версия есть в вашей локальной библиотеке",
"downloaded": "Загружено",
"downloadedTooltip": "Эта версия уже загружалась, но сейчас отсутствует в вашей библиотеке",
"newer": "Более новая версия",
"newerTooltip": "Эта версия новее вашей последней локальной версии",
"earlyAccess": "Ранний доступ",
"earlyAccessTooltip": "Для этой версии сейчас требуется ранний доступ CivitAI",
"paid": "Платная",
"paidTooltip": "Скачивание этой версии платное",
"ignored": "Игнорируется",
"ignoredTooltip": "Уведомления об обновлениях для этой версии отключены",
"onSiteOnly": "Только на Сайте",
"onSiteOnlyTooltip": "Эта версия доступна только для генерации на сайте CivitAI"
},
"actions": {
"download": "Скачать",
"downloadTooltip": "Скачать эту версию",
"downloadChooseFilesTooltip": "Выбрать файлы для скачивания",
"downloadEarlyAccessTooltip": "Скачать эту версию раннего доступа с CivitAI",
"downloadPaidTooltip": "Скачать эту платную версию с CivitAI",
"downloadNotAllowedTooltip": "Эта версия доступна только для генерации на сайте CivitAI",
"delete": "Удалить",
"deleteTooltip": "Удалить эту локальную версию",
"ignore": "Игнорировать",
"unignore": "Перестать игнорировать",
"ignoreTooltip": "Игнорировать уведомления об обновлениях для этой версии",
"unignoreTooltip": "Возобновить уведомления об обновлениях для этой версии",
"viewVersionOnCivitai": "Посмотреть версию на CivitAI",
"earlyAccessTooltip": "Требуется покупка раннего доступа",
"resumeModelUpdates": "Возобновить обновления для этой модели",
"ignoreModelUpdates": "Игнорировать обновления для этой модели",
"viewLocalVersions": "Показать все локальные версии",
"viewLocalTooltip": "Показать все локальные версии этой модели на главной странице"
},
"filters": {
"label": "Фильтр по базе",
"state": {
"showAll": "Все версии",
"showSameBase": "Тот же базовый"
},
"tooltip": {
"showAllVersions": "Переключиться на отображение всех версий",
"showSameBaseVersions": "Переключиться на отображение только версий с тем же базовым"
},
"empty": "Нет версий, соответствующих текущему фильтру базовой модели."
},
"empty": "Для этой модели пока нет истории версий.",
"error": "Не удалось загрузить версии.",
"missingModelId": "У этой модели отсутствует идентификатор модели CivitAI.",
"sourceGroupInfo": "Это группа моделей {source}. Откройте библиотеку, чтобы увидеть все версии в сетке.",
"confirm": {
"delete": "Удалить эту версию из библиотеки?"
},
"toast": {
"modelIgnored": "Обновления для этой модели игнорируются",
"modelResumed": "Отслеживание обновлений возобновлено",
"versionIgnored": "Обновления для этой версии игнорируются",
"versionUnignored": "Версия снова активна",
"versionDeleted": "Версия удалена"
}
}
},
"metadataFetchSummary": {
"title": "Сводка получения метаданных",
"statSuccess": "Успешно",
"statFailed": "Ошибка",
"statSkipped": "Пропущено",
"statTotal": "Всего проверено",
"statDuration": "Длительность",
"successMessage": "Все {count} {type}s успешно обновлены",
"failedItems": "Ошибочные элементы ({count})",
"close": "Закрыть",
"copyReport": "Копировать отчет",
"downloadCsv": "Скачать CSV",
"columnModelName": "Имя модели",
"columnError": "Ошибка"
},
"downloadBatchSummary": {
"title": "Сводка пакетной загрузки",
"statSuccess": "Успешно",
"statFailed": "Ошибки",
"statTotal": "Всего",
"successMessage": "Все {count} моделей успешно загружены",
"completedWithErrors": "Завершено с ошибками",
"failed": "Не удалось загрузить",
"failedItems": "Неудачные элементы ({count})",
"columnName": "Имя модели",
"columnError": "Ошибка",
"close": "Закрыть",
"copyReport": "Скопировать отчёт",
"retryFailed": "Повторить неудачные ({count})"
}
},
"modelTags": {
"messages": {
"updated": "Теги успешно обновлены",
"updateFailed": "Не удалось обновить теги"
},
"validation": {
"maxLength": "Тег не должен превышать 30 символов",
"maxCount": "Максимум 30 тегов разрешено",
"duplicate": "Этот тег уже существует"
}
},
"initialization": {
"title": "Инициализация",
"message": "Подготовка вашего рабочего пространства...",
"status": "Инициализация...",
"estimatingTime": "Расчет времени...",
"loras": {
"title": "Инициализация LoRA Manager",
"message": "Сканирование и построение кэша LoRA. Это может занять несколько минут..."
},
"checkpoints": {
"title": "Инициализация Checkpoint Manager",
"message": "Сканирование и построение кэша checkpoint. Это может занять несколько минут..."
},
"embeddings": {
"title": "Инициализация Embedding Manager",
"message": "Сканирование и построение кэша embedding. Это может занять несколько минут..."
},
"other": {
"title": "Инициализация менеджера других моделей",
"message": "Сканирование и построение кэша моделей. Это может занять несколько минут..."
},
"recipes": {
"title": "Инициализация менеджера рецептов",
"message": "Загрузка и обработка рецептов. Это может занять несколько минут..."
},
"statistics": {
"title": "Инициализация статистики",
"message": "Обработка данных моделей для статистики. Это может занять несколько минут..."
},
"tips": {
"title": "Советы и хитрости",
"civitai": {
"title": "Интеграция с CivitAI",
"description": "Подключите ваш аккаунт CivitAI: Перейдите в Аватар профиля → Настройки → API ключи → Добавить API ключ, затем вставьте его в настройки Lora Manager.",
"alt": "Настройка API CivitAI"
},
"download": {
"title": "Легкая загрузка",
"description": "Используйте URL CivitAI для быстрой загрузки и установки новых моделей.",
"alt": "Загрузка с CivitAI"
},
"recipes": {
"title": "Сохранение рецептов",
"description": "Создавайте рецепты для сохранения ваших любимых комбинаций моделей для будущего использования.",
"alt": "Рецепты"
},
"filter": {
"title": "Быстрая фильтрация",
"description": "Фильтруйте модели по тегам или типу базовой модели, используя кнопку фильтра в заголовке.",
"alt": "Фильтрация моделей"
},
"search": {
"title": "Быстрый поиск",
"description": "Нажмите Ctrl+F (Cmd+F на Mac) для быстрого поиска в текущем представлении.",
"alt": "Быстрый поиск"
}
}
},
"duplicates": {
"found": "Найдено {count} групп дубликатов",
"showNotification": "Показать уведомление о дубликатах",
"deleteSelected": "Удалить выбранные",
"exitMode": "Выйти из режима",
"help": {
"identicalHashes": "Идентичные хеши означают идентичные файлы моделей, даже если у них разные названия или превью.",
"keepOne": "Оставьте только одну версию (предпочтительно с лучшими метаданными/превью) и безопасно удалите остальные."
}
},
"uiHelpers": {
"clipboard": {
"copied": "Скопировано в буфер обмена",
"copyFailed": "Копирование не удалось"
},
"lora": {
"syntaxCopied": "Синтаксис LoRA скопирован в буфер обмена",
"syntaxCopiedNoTriggerWords": "Синтаксис LoRA скопирован в буфер обмена (триггерные слова не найдены)",
"syntaxCopiedWithTriggerWords": "Синтаксис LoRA с триггерными словами скопирован в буфер обмена",
"syntaxCopiedWithTriggerWordGroups": "Синтаксис LoRA с группами триггерных слов скопирован в буфер обмена"
},
"workflow": {
"noSupportedNodes": "В workflow не найдены поддерживаемые целевые узлы",
"communicationFailed": "Не удалось установить связь с ComfyUI",
"loraAdded": "LoRA добавлена в workflow",
"loraReplaced": "LoRA заменена в workflow",
"loraFailedToSend": "Не удалось отправить LoRA в workflow",
"recipeAdded": "Рецепт добавлен в workflow",
"recipeReplaced": "Рецепт заменён в workflow",
"recipeFailedToSend": "Не удалось отправить рецепт в workflow",
"noMatchingNodes": "В текущем workflow нет совместимых узлов",
"noPromptTargets": "В рабочем процессе нет совместимых целей для промпта.\nЩёлкните правой кнопкой мыши по узлу в ComfyUI → Отметить как → Send Prompt Target",
"noTargetNodeSelected": "Целевой узел не выбран",
"modelUpdated": "Модель обновлена в workflow",
"modelFailed": "Не удалось обновить узел модели",
"embeddingAdded": "Embedding добавлен в workflow",
"embeddingFailed": "Не удалось добавить embedding",
"promptSent": "Промпт отправлен в workflow",
"promptFailed": "Не удалось отправить промпт"
},
"nodeSelector": {
"recipe": "Рецепт",
"lora": "LoRA",
"embedding": "Embedding",
"prompt": "Промпт",
"replace": "Заменить",
"append": "Добавить",
"selectTargetNode": "Выберите целевой узел",
"sendToAll": "Отправить во все"
},
"exampleImages": {
"opened": "Папка с примерами изображений открыта",
"openingFolder": "Открытие папки с примерами изображений",
"failedToOpen": "Не удалось открыть папку с примерами изображений",
"copiedPath": "Путь скопирован в буфер обмена: {{path}}",
"clipboardFallback": "Путь: {{path}}",
"copiedUri": "Ссылка скопирована в буфер обмена: {{uri}}",
"uriClipboardFallback": "Ссылка: {{uri}}",
"setupRequired": "Хранилище примеров изображений",
"setupDescription": "Чтобы добавить собственные примеры изображений, сначала нужно установить место загрузки.",
"setupUsage": "Этот путь используется как для загруженных, так и для пользовательских примеров изображений.",
"openSettings": "Открыть настройки"
}
},
"help": {
"title": "Справка и учебные материалы",
"tabs": {
"gettingStarted": "Начало работы",
"updateVlogs": "Видео обновлений",
"documentation": "Документация",
"shortcuts": "Горячие клавиши"
},
"gettingStarted": {
"title": "Начало работы с LoRA Manager",
"replayTutorial": "Повторить обучение"
},
"shortcuts": {
"title": "Горячие клавиши и действия мыши",
"groups": {
"general": "Общие",
"actions": "Действия",
"selection": "Выделение и массовый режим",
"navigation": "Навигация",
"modelModal": "Окно модели / рецепта",
"mediaViewer": "Просмотр медиа / Витрина"
},
"keys": {
"click": "Клик",
"drag": "Перетаскивание",
"rightClick": "Правый клик",
"letter": "Буква",
"swipe": "Свайп"
},
"entries": {
"focusSearch": "Переход к поиску",
"closeModal": "Закрыть модальное окно / панель",
"openShortcuts": "Открыть эту панель горячих клавиш",
"refresh": "Обновить список моделей",
"fetchMetadata": "Получить метаданные с CivitAI (только на страницах моделей)",
"downloadModel": "Загрузить модель (только на страницах моделей)",
"toggleBulkMode": "Переключить массовый режим",
"selectAll": "Выбрать все видимые модели",
"rangeSelect": "Выбор диапазона",
"marqueeSelect": "Выделение карточек рамкой (на пустой области сетки)",
"exitBulkMode": "Выйти из массового режима",
"bulkActions": "На выделенной карточке: меню массовых операций",
"globalActions": "На пустой области страницы: меню глобальных действий (проверка обновлений, управление исключёнными моделями)",
"scrollPages": "Прокрутка страниц",
"jumpAlphabet": "Переход по алфавитной панели",
"prevNext": "Предыдущая / следующая модель",
"deleteEntry": "Удалить",
"cycleMedia": "Переключение медиа ([ / ] в галерее витрины)",
"swipeTouch": "Переключение медиа на сенсорных устройствах",
"closeViewer": "Закрыть окно просмотра"
}
},
"updateVlogs": {
"title": "Последние обновления",
"watchOnYouTube": "Смотреть на YouTube",
"playlistTitle": "Плейлист обновлений LoRA Manager",
"playlistDescription": "Смотрите все видео обновлений, демонстрирующие новейшие функции и улучшения."
},
"documentation": {
"title": "Документация",
"general": "Общие",
"troubleshooting": "Устранение неполадок",
"modelManagement": "Управление моделями",
"recipes": "Рецепты",
"settings": "Настройки и конфигурация",
"extensions": "Расширения",
"newBadge": "НОВОЕ"
},
"newContentBadge": "НОВОЕ"
},
"update": {
"title": "Проверить обновления",
"notificationsTitle": "Центр уведомлений",
"tabs": {
"updates": "Обновления",
"messages": "Сообщения"
},
"updateAvailable": "Доступно обновление",
"noChangelogAvailable": "Подробный список изменений недоступен. Проверьте GitHub для получения дополнительной информации.",
"currentVersion": "Текущая версия",
"newVersion": "Новая версия",
"commit": "Коммит",
"viewOnGitHub": "Посмотреть на GitHub",
"updateNow": "Обновить сейчас",
"preparingUpdate": "Подготовка обновления...",
"changelog": "Список изменений",
"checkingUpdates": "Проверка обновлений...",
"checkingMessage": "Пожалуйста, подождите, пока мы проверяем последнюю версию.",
"showNotifications": "Показывать уведомления об обновлениях",
"latestBadge": "Последняя",
"latestMain": "Ветка main",
"channel": "Канал обновлений",
"channels": {
"release": "Релиз",
"nightly": "Nightly"
},
"updateProgress": {
"preparing": "Подготовка обновления...",
"installing": "Установка обновления...",
"completed": "Обновление успешно завершено!",
"failed": "Обновление не удалось: {error}"
},
"status": {
"updating": "Обновление...",
"updated": "Обновлено!",
"updateFailed": "Обновление не удалось"
},
"completion": {
"successMessage": "Успешно обновлено до {version}!",
"restartMessage": "Пожалуйста, перезапустите ComfyUI или LoRA Manager для применения обновления.",
"reloadMessage": "Обязательно перезагрузите ваш браузер как для LoRA Manager, так и для ComfyUI."
},
"nightly": {
"warning": "Предупреждение: Ночные сборки могут содержать экспериментальные функции и могут быть нестабильными.",
"enable": "Включить ночные обновления"
},
"channelSwitch": {
"nightlyTitle": "Переключиться на Nightly",
"nightlyMessage": "Переключение на Nightly инициализирует Git-репозиторий и отслеживает последние коммиты ветки main. Обновления чаще, но могут быть нестабильными. Вы можете вернуться к Release в любое время.",
"releaseTitle": "Переключиться на Release",
"releaseMessage": "Переключение на Release выполнит checkout последнего стабильного тега. Вы можете вернуться к Nightly в любое время.",
"switching": "Переключение на канал {channel}...",
"completed": "Успешно переключено на канал {channel}",
"failed": "Не удалось переключить канал"
},
"banners": {
"recent": "Недавние уведомления",
"empty": "Недавних баннеров нет.",
"shown": "Показано {time}",
"dismissed": "Закрыто {time}",
"active": "Активно"
}
},
"support": {
"title": "Поддержать проект",
"message": "Если вы находите LoRA Manager полезным, я буду очень признателен за вашу поддержку! 🙌",
"feedback": {
"title": "Оставить отзыв",
"description": "Ваш отзыв помогает формировать будущие обновления! Поделитесь своими мыслями:"
},
"links": {
"submitGithubIssue": "Создать issue на GitHub",
"joinDiscord": "Присоединиться к Discord",
"youtubeChannel": "YouTube канал",
"civitaiProfile": "Профиль на CivitAI",
"supportKofi": "Поддержать на Ko-fi",
"supportPatreon": "Поддержать на Patreon"
},
"sections": {
"followUpdates": "Следить за обновлениями",
"buyMeCoffee": "Купите мне кофе",
"coffeeDescription": "Если вы хотите поддержать мою работу напрямую:",
"becomePatron": "Стать покровителем",
"patronDescription": "Поддержите постоянную разработку ежемесячными взносами:",
"wechatSupport": "Поддержка через WeChat",
"wechatDescription": "Для пользователей в Китае вы можете поддержать через WeChat:",
"showWechatQR": "Показать QR-код WeChat",
"hideWechatQR": "Скрыть QR-код WeChat"
},
"footer": "Спасибо за использование LoRA Manager! ❤️",
"supporters": {
"title": "Спасибо всем сторонникам",
"subtitle": "Спасибо {count} сторонникам, которые сделали этот проект возможным",
"specialThanks": "Особая благодарность",
"allSupporters": "Все сторонники",
"totalCount": "Всего {count} сторонников"
}
},
"toast": {
"general": {
"cannotInteractStandalone": "Невозможно взаимодействовать с ComfyUI в автономном режиме",
"failedWorkflowInfo": "Не удалось получить информацию о workflow",
"pageInitFailed": "Не удалось инициализировать страницу {pageType}. Пожалуйста, перезагрузите.",
"statisticsLoadFailed": "Не удалось загрузить данные статистики"
},
"loras": {
"copyOnlyForLoras": "Копирование синтаксиса доступно только для LoRAs",
"noLorasSelected": "LoRAs не выбраны",
"missingDataForLoras": "Отсутствуют данные для {count} LoRAs",
"noValidLorasToCopy": "Нет валидных LoRAs для копирования",
"sendOnlyForLoras": "Отправка в workflow доступна только для LoRAs",
"noValidLorasToSend": "Нет валидных LoRAs для отправки",
"downloadSuccessful": "LoRAs успешно загружены",
"allDownloadSuccessful": "Все {count} LoRAs успешно загружены",
"downloadPartialSuccess": "Загружено {completed} из {total} LoRAs",
"downloadPartialWithAccess": "Загружено {completed} из {total} LoRAs. {accessFailures} не удалось из-за ограничений доступа. Проверьте ваш API ключ в настройках или статус раннего доступа.",
"pleaseSelectVersion": "Пожалуйста, выберите версию",
"pleaseSelectFile": "Пожалуйста, выберите хотя бы один файл",
"versionExists": "Эта версия уже существует в вашей библиотеке",
"downloadCompleted": "Загрузка успешно завершена",
"downloadSkippedByBaseModel": "Загрузка пропущена, потому что базовая модель {baseModel} исключена",
"autoOrganizeSuccess": "Автоматическая организация успешно завершена для {count} {type}",
"autoOrganizePartialSuccess": "Автоматическая организация завершена: перемещено {success}, не удалось {failures} из {total} моделей",
"autoOrganizeFailed": "Ошибка автоматической организации: {error}",
"filenameTemplateSuccess": "[TODO: Translate] Filename template applied successfully for {count} {type}",
"filenameTemplatePartialSuccess": "[TODO: Translate] Filename template applied with {success} renamed, {failures} failed out of {total} models",
"filenameTemplateFailed": "[TODO: Translate] Applying filename template failed: {error}",
"noModelsSelected": "Модели не выбраны"
},
"recipes": {
"fetchFailed": "Не удалось получить рецепты: {message}",
"reloadFailed": "Не удалось перезагрузить {modelType}s: {message}",
"loadFailed": "Не удалось загрузить {modelType}s: {message}",
"refreshComplete": "Обновление завершено",
"refreshFailed": "Не удалось обновить рецепты: {message}",
"syncComplete": "Синхронизация завершена",
"syncFailed": "Не удалось синхронизировать рецепты: {message}",
"updateFailed": "Не удалось обновить рецепт: {error}",
"updateError": "Ошибка обновления рецепта: {message}",
"nameSaved": "Рецепт \"{name}\" успешно сохранен",
"nameUpdated": "Название рецепта успешно обновлено",
"tagsUpdated": "Теги рецепта успешно обновлены",
"sourceUrlUpdated": "Исходный URL успешно обновлен",
"promptUpdated": "Промпт успешно обновлён",
"negativePromptUpdated": "Негативный промпт успешно обновлён",
"promptEditorHint": "Нажмите Enter для сохранения, Shift+Enter для новой строки",
"noRecipeId": "ID рецепта недоступен",
"sendToWorkflowFailed": "Не удалось отправить рецепт в workflow: {message}",
"copyFailed": "Ошибка копирования синтаксиса рецепта: {message}",
"createError": "Ошибка при создании рецепта: {message}",
"createFailed": "Не удалось создать рецепт: {error}",
"createMissingData": "Отсутствуют необходимые данные для создания рецепта",
"created": "Рецепт успешно создан",
"noMissingLoras": "Нет отсутствующих LoRAs для загрузки",
"unresolvableMarkedForReconnect": "Помечено неразрешимых записей: {count} — теперь их можно переподключить к локальному LoRA.",
"noPreviousRecipe": "Предыдущий рецепт отсутствует",
"noNextRecipe": "Следующий рецепт отсутствует",
"missingLorasInfoFailed": "Не удалось получить информацию для отсутствующих LoRAs",
"preparingForDownloadFailed": "Ошибка подготовки LoRAs для загрузки",
"enterLoraName": "Пожалуйста, введите название LoRA или синтаксис",
"reconnectedSuccessfully": "LoRA успешно переподключена",
"reconnectBaseModelMismatch": "Переподключение выполнено, но базовые модели различаются (рецепт: {recipe}, LoRA: {lora}) — они совместимы по архитектуре",
"reconnectFailed": "Ошибка переподключения LoRA: {message}",
"loraRestored": "LoRA восстановлена к прежней привязке",
"loraRestoreFailed": "Ошибка восстановления LoRA: {message}",
"noPromptToSend": "Нет промпта для отправки",
"cannotSend": "Невозможно отправить рецепт: отсутствует ID рецепта",
"sendFailed": "Не удалось отправить рецепт в workflow",
"sendError": "Ошибка отправки рецепта в workflow",
"missingCheckpointPath": "Путь к чекпойнту недоступен",
"missingCheckpointInfo": "Отсутствуют данные о чекпойнте",
"downloadCheckpointFailed": "Не удалось скачать чекпойнт: {message}",
"enterCheckpointName": "Введите имя чекпойнта",
"checkpointReconnectedSuccessfully": "Чекпойнт успешно переподключён",
"reconnectCheckpointBaseModelMismatch": "Переподключение выполнено, но базовые модели различаются (рецепт: {recipe}, чекпойнт: {checkpoint}) — они совместимы по архитектуре",
"checkpointReconnectFailed": "Ошибка переподключения чекпойнта: {message}",
"checkpointRestored": "Чекпойнт восстановлен к прежней привязке",
"checkpointRestoreFailed": "Ошибка восстановления чекпойнта: {message}",
"checkpointDownloadUnavailable": "Этот чекпойнт нельзя скачать без идентификаторов CivitAI - попробуйте переподключить его к локальному чекпойнту",
"missingLoraDownloadInfo": "Нет информации для скачивания этого LoRA",
"hashNotFoundOnCivitai": "Этот хеш LoRA не удаётся распознать на CivitAI - возможно, модель была обновлена или хеш недействителен",
"downloadLoraFailed": "Не удалось скачать LoRA: {message}",
"cannotDelete": "Невозможно удалить рецепт: отсутствует ID рецепта",
"deleteConfirmationError": "Ошибка отображения подтверждения удаления",
"deletedSuccessfully": "Рецепт успешно удален",
"deleteFailed": "Ошибка удаления рецепта: {message}",
"cannotShare": "Невозможно поделиться рецептом: отсутствует ID рецепта",
"preparingForSharing": "Подготовка рецепта для общего доступа...",
"downloadStarted": "Загрузка рецепта начата",
"shareError": "Ошибка при предоставлении общего доступа к рецепту: {message}",
"sharePreparationError": "Ошибка подготовки рецепта для общего доступа",
"selectImageFirst": "Пожалуйста, сначала выберите изображение",
"enterRecipeName": "Пожалуйста, введите название рецепта",
"processingError": "Ошибка обработки: {message}",
"folderBrowserError": "Ошибка загрузки браузера папок: {message}",
"recipeSaveFailed": "Не удалось сохранить рецепт: {error}",
"recipeSaved": "Рецепт успешно сохранён",
"importFailed": "Импорт не удался: {message}",
"folderTreeFailed": "Не удалось загрузить дерево папок",
"folderTreeError": "Ошибка загрузки дерева папок",
"batchImportFailed": "Не удалось начать пакетный импорт: {message}",
"batchImportCancelling": "Отмена пакетного импорта...",
"batchImportCancelFailed": "Не удалось отменить пакетный импорт: {message}",
"batchImportNoUrls": "Введите хотя бы один URL или путь к файлу",
"batchImportNoDirectory": "Введите путь к папке",
"batchImportRateLimited": "Достигнуто ограничение частоты запросов поставщика метаданных — запросы замедляются, некоторые элементы могут быть пропущены. Вы можете повторить импорт позже.",
"batchImportBrowseFailed": "Не удалось открыть папку: {message}",
"batchImportDirectorySelected": "Выбрана папка: {path}",
"noRecipesSelected": "Рецепты не выбраны",
"rematchSkipped": "Ни один из {total} выбранных рецептов не требует сопоставления",
"rematchFailed": "Не удалось сопоставить выбранные рецепты: {message}",
"reimporting": "Переимпорт рецепта из источника...",
"reimportingViaExtension": "Переимпорт рецепта {current}/{total} через расширение браузера...",
"reimportSuccess": "Рецепт успешно переимпортирован",
"reimportBulkComplete": "Переимпорт завершён: {completed} переимпортировано, {failed} ошибок (из {total})",
"reimportBulkFailed": "Не удалось переимпортировать некоторые рецепты",
"noMissingLorasInSelection": "В выбранных рецептах не найдены отсутствующие LoRAs",
"noLoraRootConfigured": "Корневой каталог LoRA не настроен. Пожалуйста, установите корневой каталог LoRA по умолчанию в настройках.",
"workflowSent": "Workflow отправлен в ComfyUI",
"workflowSendFailed": "Не удалось отправить workflow в ComfyUI: {error}",
"workflowNoWorkflow": "В этом рецепте не найден встроенный workflow"
},
"models": {
"noModelsSelected": "Модели не выбраны",
"deletedSuccessfully": "Успешно удалено {count} {type}(ей)",
"deleteFailed": "Ошибка: {error}",
"deleteFailedGeneral": "Не удалось удалить модели",
"selectedAdditional": "Выбрано дополнительно {count} {type}(ей)",
"marqueeSelectionComplete": "Выбрано {count} {type} с помощью выделения рамкой",
"refreshMetadataFailed": "Не удалось обновить метаданные",
"nameCannotBeEmpty": "Название модели не может быть пустым",
"nameUpdatedSuccessfully": "Название модели успешно обновлено",
"nameUpdateFailed": "Не удалось обновить название модели",
"baseModelUpdated": "Базовая модель успешно обновлена",
"baseModelUpdateFailed": "Не удалось обновить базовую модель",
"baseModelNotSelected": "Пожалуйста, выберите базовую модель",
"bulkBaseModelUpdating": "Обновление базовой модели для {count} моделей...",
"bulkBaseModelUpdateSuccess": "Базовая модель успешно обновлена для {count} моделей",
"bulkBaseModelUpdatePartial": "Обновлено {success} моделей, не удалось обновить {failed} моделей",
"bulkBaseModelUpdateFailed": "Не удалось обновить базовую модель для выбранных моделей",
"skipMetadataRefreshUpdating": "Обновление флага обновления метаданных для {count} модели(ей)...",
"skipMetadataRefreshSet": "Обновление метаданных пропущено для {count} модели(ей)",
"skipMetadataRefreshCleared": "Обновление метаданных возобновлено для {count} модели(ей)",
"skipMetadataRefreshPartial": "{success} модели(ей) обновлено, {failed} не удалось",
"skipMetadataRefreshFailed": "Не удалось обновить флаг обновления метаданных для выбранных моделей",
"bulkContentRatingUpdating": "Обновление рейтинга контента для {count} модель(ей)...",
"bulkContentRatingSet": "Рейтинг контента установлен на {level} для {count} модель(ей)",
"bulkContentRatingPartial": "Рейтинг контента {level} установлен для {success} модель(ей), {failed} не удалось",
"bulkContentRatingFailed": "Не удалось обновить рейтинг контента для выбранных моделей",
"bulkFavoriteUpdating": "Добавление {count} моделей в избранное...",
"bulkUnfavoriteUpdating": "Удаление {count} моделей из избранного...",
"bulkFavoritePartialAdded": "{success} моделей добавлено в избранное, {failed} не удалось",
"bulkFavoritePartialRemoved": "{success} моделей удалено из избранного, {failed} не удалось",
"bulkFavoriteFailed": "Не удалось обновить статус избранного",
"bulkUpdatesChecking": "Проверка обновлений для выбранных {type}...",
"bulkUpdatesSuccess": "Доступны обновления для {count} выбранных {type}",
"bulkUpdatesNone": "Обновления для выбранных {type} не найдены",
"bulkUpdatesMissing": "Выбранные {type} не привязаны к обновлениям CivitAI",
"bulkUpdatesPartialMissing": "Пропущено {missing} выбранных {type} без привязки CivitAI",
"bulkUpdatesFailed": "Не удалось проверить обновления для выбранных {type}: {message}",
"invalidCharactersRemoved": "Недопустимые символы удалены из имени файла",
"filenameCannotBeEmpty": "Имя файла не может быть пустым",
"renameFailed": "Не удалось переименовать файл: {message}",
"moveFailed": "Не удалось переместить модель(и): {message}",
"pleaseSelectRoot": "Пожалуйста, выберите корневую папку {type}",
"nameTooLong": "Название модели ограничено 100 символами",
"verificationAlreadyDone": "Эта группа уже была проверена",
"verificationCompleteMismatch": "Проверка завершена. {count} файл(ов) имеют разные фактические хеши.",
"verificationCompleteSuccess": "Проверка завершена. Все файлы подтверждены как дубликаты.",
"verificationFailed": "Не удалось проверить хеши: {message}",
"noTagsToAdd": "Нет тегов для добавления",
"bulkTagsUpdating": "Обновление тегов для {count} модел(ей)...",
"tagsAddedSuccessfully": "Успешно добавлено {tagCount} тег(ов) к {count} {type}(ам)",
"tagsReplacedSuccessfully": "Успешно заменены теги для {count} {type}(ов) на {tagCount} тег(ов)",
"tagsAddFailed": "Не удалось добавить теги к {count} модель(ям)",
"tagsReplaceFailed": "Не удалось заменить теги для {count} модель(ей)",
"bulkTagsAddFailed": "Не удалось добавить теги к моделям",
"bulkTagsReplaceFailed": "Не удалось заменить теги для моделей"
},
"search": {
"atLeastOneOption": "Должен быть выбран хотя бы один вариант поиска"
},
"settings": {
"loraRootsFailed": "Не удалось загрузить корни LoRA: {message}",
"checkpointRootsFailed": "Не удалось загрузить корни checkpoint: {message}",
"unetRootsFailed": "Не удалось загрузить корни Diffusion Model: {message}",
"embeddingRootsFailed": "Не удалось загрузить корни embedding: {message}",
"otherRootsFailed": "Не удалось загрузить корни других моделей: {message}",
"mappingsUpdated": "Сопоставления путей базовых моделей обновлены ({count})",
"mappingsCleared": "Сопоставления путей базовых моделей очищены",
"mappingSaveFailed": "Не удалось сохранить сопоставления базовых моделей: {message}",
"downloadTemplatesUpdated": "Шаблоны путей загрузки обновлены",
"downloadTemplatesFailed": "Не удалось сохранить шаблоны путей загрузки: {message}",
"filenameTemplatesUpdated": "[TODO: Translate] Filename templates updated",
"filenameTemplatesFailed": "[TODO: Translate] Failed to save filename templates: {message}",
"recipesPathUpdated": "Путь хранения рецептов обновлён",
"recipesPathSaveFailed": "Не удалось обновить путь хранения рецептов: {message}",
"settingsUpdated": "Настройки обновлены: {setting}",
"compactModeToggled": "Компактный режим {state}",
"settingSaveFailed": "Не удалось сохранить настройку: {message}",
"displayDensitySet": "Плотность отображения установлена на {density}",
"libraryLoadFailed": "Не удалось загрузить библиотеки: {message}",
"libraryActivateFailed": "Не удалось активировать библиотеку: {message}",
"languageChangeFailed": "Не удалось изменить язык: {message}",
"cacheCleared": "Файлы кэша успешно очищены. Кэш будет пересобран при следующем действии.",
"cacheClearFailed": "Не удалось очистить кэш: {error}",
"cacheClearError": "Ошибка очистки кэша: {message}"
},
"filters": {
"applied": "{message}",
"cleared": "Фильтры очищены",
"noCustomFilterToClear": "Нет пользовательского фильтра для очистки",
"noActiveFilters": "Нет активных фильтров для сохранения"
},
"presets": {
"created": "Пресет \"{name}\" создан",
"deleted": "Пресет \"{name}\" удален",
"applied": "Пресет \"{name}\" применен",
"overwritten": "Пресет \"{name}\" перезаписан",
"restored": "Пресеты по умолчанию восстановлены"
},
"error": {
"presetNameEmpty": "Имя пресета не может быть пустым",
"presetNameTooLong": "Имя пресета должно содержать не более {max} символов",
"presetNameInvalidChars": "Имя пресета содержит недопустимые символы",
"presetNameExists": "Пресет с таким именем уже существует",
"presetNotFound": "Пресет не найден",
"invalidPreset": "Недопустимые данные пресета",
"deletePresetFailed": "Не удалось удалить пресет",
"applyPresetFailed": "Не удалось применить пресет"
},
"downloads": {
"imagesCompleted": "Примеры изображений {action} завершены",
"imagesFailed": "Примеры изображений {action} не удались",
"loadError": "Ошибка загрузки downloads: {message}",
"downloadError": "Ошибка загрузки: {message}",
"downloadStopped": "Загрузка отменена"
},
"import": {
"folderTreeFailed": "Не удалось загрузить дерево папок",
"folderTreeError": "Ошибка загрузки дерева папок",
"imagesImported": "Примеры изображений успешно импортированы",
"imagesPartial": "{success} изображ. импортировано, {failed} не удалось",
"importFailed": "Не удалось импортировать примеры изображений: {message}"
},
"triggerWords": {
"loadFailed": "Не удалось загрузить обученные слова",
"tooLong": "Триггерное слово не должно превышать 500 слов",
"tooMany": "Максимум 100 триггерных слов разрешено",
"alreadyExists": "Это триггерное слово уже существует",
"updateSuccess": "Триггерные слова успешно обновлены",
"updateFailed": "Не удалось обновить триггерные слова",
"copyFailed": "Копирование не удалось"
},
"undo": {
"action": "Отменить",
"deleted": "Удалено: {name}",
"deletedBulk": "Удалено: {count} шт.",
"expired": "Время отмены истекло. Элемент был удалён навсегда.",
"failed": "Не удалось отменить: {error}",
"restored": "Элемент восстановлен"
},
"virtual": {
"loadFailed": "Не удалось загрузить элементы",
"loadMoreFailed": "Не удалось загрузить больше элементов",
"loadPositionFailed": "Не удалось загрузить элементы в этой позиции"
},
"bulk": {
"unableToSelectAll": "Невозможно выбрать все элементы"
},
"duplicates": {
"findFailed": "Не удалось найти дубликаты: {message}",
"noDuplicatesFound": "Дубликаты {type} не найдены",
"noItemsSelected": "Не выбрано {type} для удаления",
"deleteError": "Ошибка: {message}",
"deleteSuccess": "Успешно удалено {count} {type}",
"deleteFailed": "Не удалось удалить {type}: {message}"
},
"controls": {
"reloadFailed": "Не удалось перезагрузить {pageType}: {message}",
"refreshFailed": "Не удалось {action} {pageType}: {message}",
"fetchMetadataFailed": "Не удалось получить метаданные: {message}",
"clearFilterFailed": "Не удалось очистить пользовательский фильтр: {message}"
},
"contextMenu": {
"contentRatingSet": "Рейтинг контента установлен на {level}",
"contentRatingFailed": "Не удалось установить рейтинг контента: {message}",
"relinkSuccess": "Модель успешно пересвязана с CivitAI",
"relinkFailed": "Ошибка: {message}",
"linkHfSuccess": "Модель успешно связана с HuggingFace",
"linkHfFailed": "Ошибка: {message}",
"linkCivArchSuccess": "Модель успешно пересвязана через CivitArchive",
"fetchMetadataFirst": "Пожалуйста, сначала получите метаданные с CivitAI",
"noCivitaiInfo": "Информация CivitAI недоступна",
"missingHash": "Хеш модели недоступен",
"enrichNeedsSource": "Сначала свяжите эту модель с источником модели (Связать модель → Связать с источником модели)",
"enrichUnsupportedSource": "Обогащение с помощью ИИ недоступно для моделей {source}"
},
"exampleImages": {
"pathUpdated": "Путь к примерам изображений успешно обновлен",
"pathUpdateFailed": "Не удалось обновить путь к примерам изображений: {message}",
"downloadInProgress": "Загрузка уже в процессе",
"enterLocationFirst": "Пожалуйста, сначала введите место загрузки",
"downloadStarted": "Загрузка примеров изображений начата",
"downloadStartFailed": "Не удалось начать загрузку: {error}",
"downloadPaused": "Загрузка приостановлена",
"pauseFailed": "Не удалось приостановить загрузку: {error}",
"downloadResumed": "Загрузка возобновлена",
"resumeFailed": "Не удалось возобновить загрузку: {error}",
"downloadStopped": "Загрузка отменена",
"stopFailed": "Не удалось отменить загрузку: {error}",
"deleted": "Пример изображения удален",
"deleteFailed": "Не удалось удалить пример изображения",
"setPreviewFailed": "Не удалось установить превью изображение"
},
"api": {
"fetchFailed": "Не удалось получить {type}s: {message}",
"reloadFailed": "Не удалось перезагрузить {type}s: {message}",
"deleteSuccess": "{type} успешно удален",
"deleteFailed": "Не удалось удалить {type}: {message}",
"excludeSuccess": "{type} успешно исключен",
"excludeFailed": "Не удалось исключить {type}: {message}",
"restoreSuccess": "{type} успешно восстановлен",
"restoreFailed": "Не удалось восстановить {type}: {message}",
"fileNameUpdated": "Имя файла успешно обновлено",
"fileRenameFailed": "Не удалось переименовать файл: {error}",
"previewUpdated": "Превью успешно обновлено",
"previewUploadFailed": "Не удалось загрузить превью изображение",
"previewDropInvalid": "Неподдерживаемый тип файла: {name}. Перетащите вместо этого изображение или видео MP4.",
"refreshComplete": "{action} завершено",
"refreshFailed": "Не удалось {action} {type}s",
"metadataRefreshed": "Метаданные успешно обновлены",
"metadataRefreshFailed": "Не удалось обновить метаданные: {message}",
"metadataUpdateComplete": "Обновление метаданных завершено",
"operationCancelled": "Операция отменена пользователем",
"operationCancelledPartial": "Операция отменена. Обработано {success} элементов.",
"metadataFetchFailed": "Не удалось получить метаданные: {message}",
"bulkMetadataCompleteAll": "Успешно обновлены все {count} {type}s",
"bulkMetadataCompletePartial": "Обновлено {success} из {total} {type}s",
"bulkMetadataCompleteNone": "Не удалось обновить метаданные ни для одного {type}s",
"bulkMetadataFailureDetails": "Неудачные обновления:\n{failures}",
"bulkMetadataFailed": "Не удалось обновить метаданные: {message}",
"moveNotSupported": "Перемещение {type}s не поддерживается",
"alreadyInFolder": "{type} уже находится в выбранной папке",
"moveInfo": "{message}",
"moveSuccess": "{type} успешно перемещен",
"bulkMoveNotSupported": "Перемещение {type}s не поддерживается",
"allAlreadyInFolder": "Все выбранные {type}s уже находятся в целевой папке",
"bulkMovePartial": "Перемещено {successCount} {type}s, {failureCount} не удалось",
"bulkMoveFailures": "Неудачные перемещения:\n{failures}",
"bulkMoveSuccess": "Успешно перемещено {successCount} {type}s",
"exampleImagesDownloadSuccess": "Примеры изображений успешно загружены!",
"exampleImagesDownloadFailed": "Не удалось загрузить примеры изображений: {message}",
"moveFailed": "Не удалось переместить элемент: {message}",
"copiedToClipboard": "Скопировано в буфер обмена",
"downloadStarted": "Загрузка начата"
},
"agent": {
"llmNotConfigured": "Поставщик ИИ не настроен. Включите его в Настройки → Поставщик ИИ.",
"enrichStarted": "Обогащение метаданных с помощью ИИ...",
"enrichComplete": "Обогащение метаданных завершено: {{summary}}",
"enrichFailed": "Ошибка обогащения метаданных: {{error}}"
}
},
"doctor": {
"kicker": "Системная диагностика",
"title": "Доктор",
"buttonTitle": "Запустить диагностику и обычные исправления",
"loading": "Проверка окружения...",
"footer": "Экспортируйте диагностический пакет, если проблема сохраняется после исправления.",
"summary": {
"idle": "Выполнить проверку настроек, целостности кэша и согласованности интерфейса.",
"ok": "В текущем окружении активных проблем не обнаружено.",
"warning": "Обнаружено {count} проблем(ы). Большинство можно исправить прямо из этой панели.",
"error": "Перед тем как приложение станет полностью исправным, нужно устранить {count} проблем(ы)."
},
"status": {
"ok": "Исправно",
"warning": "Требует внимания",
"error": "Требуется действие"
},
"issues": {
"civitai_api_key": {
"title": "Ключ API CivitAI"
},
"cache_health": {
"title": "Состояние кэша моделей"
},
"filename_conflicts": {
"title": "Конфликты дублирующихся имён файлов"
},
"ui_version": {
"title": "Версия интерфейса"
}
},
"actions": {
"runAgain": "Запустить снова",
"exportBundle": "Экспортировать пакет",
"open-settings": "Открыть настройки",
"open-settings-syntax-format": "Переключиться на полные пути",
"repair-cache": "Пересобрать кэш",
"resolve-filename-conflicts": "Разрешить конфликты",
"reload-page": "Перезагрузить интерфейс"
},
"labels": {
"conflicts": "Конфликты",
"version": "Версия"
},
"toast": {
"loadFailed": "Не удалось загрузить диагностику: {message}",
"repairSuccess": "Перестройка кэша завершена.",
"repairFailed": "Не удалось перестроить кэш: {message}",
"exportSuccess": "Диагностический пакет экспортирован.",
"exportFailed": "Не удалось экспортировать диагностический пакет: {message}",
"conflictsResolved": "Разрешено конфликтов имён файлов: {count}.",
"conflictsResolveFailed": "Не удалось разрешить конфликты имён файлов: {message}"
}
},
"conflictConfirm": {
"title": "Разрешить конфликты имён файлов",
"message": "Переименование с добавлением 4-символьного хеша к каждому дублирующемуся имени файла.",
"note": "Эта операция переименовывает файлы на диске. Если вы используете синтаксис A1111, ссылки на модели в существующих рабочих процессах могут потребовать обновления.",
"detail": "Пример: <code>filename_v1.2</code> → <code>filename_v1.2-ab3c</code>",
"impact": "Будет переименовано <strong>{count}</strong> файл(ов) в <strong>{groups}</strong> группе(ах) дубликатов",
"confirm": "Переименовать файлы",
"cancel": "Отмена"
},
"banners": {
"versionMismatch": {
"title": "Обнаружено обновление приложения",
"content": "Ваш браузер работает с устаревшей версией LoRA Manager ({storedVersion}). Сервер был обновлен до версии {currentVersion}. Пожалуйста, обновите страницу для обеспечения правильной работы.",
"refreshNow": "Обновить сейчас",
"refreshingIn": "Обновление через",
"seconds": "секунд"
},
"communitySupport": {
"title": "Поддержите развитие LoRA Manager ❤️",
"content": "LoRA Manager — это проект по призванию, которым в полную силу занимается один разработчик. Ваша поддержка на Ko-fi помогает покрывать расходы на разработку, обеспечивает новые обновления и даёт лицензионный ключ для расширения LM CivitAI в качестве благодарности. Каждый вклад действительно важен.",
"supportCta": "Поддержать на Ko-fi",
"learnMore": "Руководство по расширению LM CivitAI"
},
"cacheHealth": {
"corrupted": {
"title": "Обнаружено повреждение кэша"
},
"degraded": {
"title": "Обнаружены проблемы с кэшем"
},
"content": "{invalid} из {total} записей кэша недействительны ({rate}). Это может привести к отсутствию моделей или ошибкам. Рекомендуется перестроить кэш.",
"rebuildCache": "Перестроить кэш",
"dismiss": "Отклонить",
"rebuilding": "Перестроение кэша...",
"rebuildFailed": "Не удалось перестроить кэш: {error}",
"retry": "Повторить"
},
"otherModels": {
"title": "Управление другими моделями доступно",
"content": "Сканирование и управление файлами VAE, Upscaler, Text Encoder, CLIP Vision и ControlNet, а также загрузка их с CivitAI — всё на одной отдельной странице.",
"enable": "Включить другие модели",
"openSettings": "Открыть настройки"
},
"pager": {
"previous": "Предыдущее уведомление",
"next": "Следующее уведомление",
"position": "Уведомление {current} из {total}"
}
}
}