feat: Human Input Node (#32060)

The frontend and backend implementation for the human input node.

Co-authored-by: twwu <twwu@dify.ai>
Co-authored-by: JzoNg <jzongcode@gmail.com>
Co-authored-by: yyh <92089059+lyzno1@users.noreply.github.com>
Co-authored-by: zhsama <torvalds@linux.do>
This commit is contained in:
QuantumGhost
2026-02-09 14:57:23 +08:00
committed by GitHub
parent 56e3a55023
commit a1fc280102
474 changed files with 32667 additions and 2050 deletions

View File

@ -8,6 +8,7 @@
"blocks.document-extractor": "Экстрактор документов",
"blocks.end": "Вывод",
"blocks.http-request": "HTTP-запрос",
"blocks.human-input": "Ввод человека",
"blocks.if-else": "ЕСЛИ/ИНАЧЕ",
"blocks.iteration": "Итерация",
"blocks.iteration-start": "Начало итерации",
@ -38,6 +39,7 @@
"blocksAbout.document-extractor": "Используется для разбора загруженных документов в текстовый контент, который легко воспринимается LLM.",
"blocksAbout.end": "Определите вывод и тип результата рабочего процесса",
"blocksAbout.http-request": "Разрешить отправку запросов на сервер по протоколу HTTP",
"blocksAbout.human-input": "Запросить подтверждение человека перед генерацией следующего шага",
"blocksAbout.if-else": "Позволяет разделить рабочий процесс на две ветки на основе условий if/else",
"blocksAbout.iteration": "Выполнение нескольких шагов над объектом списка до тех пор, пока не будут выведены все результаты.",
"blocksAbout.iteration-start": "Начальный узел итерации",
@ -145,6 +147,9 @@
"common.fileUploadTip": "Функции загрузки изображений были обновлены до загрузки файлов.",
"common.goBackToEdit": "Вернуться к редактору",
"common.handMode": "Режим руки",
"common.humanInputEmailTip": "Электронное письмо (метод доставки) отправлено настроенным получателям",
"common.humanInputEmailTipInDebugMode": "Электронное письмо (метод доставки) отправлено на <email>{{email}}</email>",
"common.humanInputWebappTip": "Только предварительный просмотр отладки, пользователь не увидит это в веб-приложении.",
"common.importDSL": "Импортировать DSL",
"common.importDSLTip": "Текущий черновик будет перезаписан. Экспортируйте рабочий процесс в качестве резервной копии перед импортом.",
"common.importFailure": "Ошибка импорта",
@ -500,6 +505,104 @@
"nodes.http.value": "Значение",
"nodes.http.verifySSL.title": "Проверить SSL-сертификат",
"nodes.http.verifySSL.warningTooltip": "Отключение проверки SSL не рекомендуется для производственных сред. Это следует использовать только в разработке или тестировании, так как это делает соединение уязвимым для угроз безопасности, таких как атаки «человек посередине».",
"nodes.humanInput.deliveryMethod.added": "Добавлено",
"nodes.humanInput.deliveryMethod.contactTip1": "Не хватает нужного вам способа доставки?",
"nodes.humanInput.deliveryMethod.contactTip2": "Сообщите нам по адресу <email>support@dify.ai</email>.",
"nodes.humanInput.deliveryMethod.emailConfigure.allMembers": "Все участники ({{workspaceName}})",
"nodes.humanInput.deliveryMethod.emailConfigure.body": "Содержание",
"nodes.humanInput.deliveryMethod.emailConfigure.bodyPlaceholder": "Введите текст письма",
"nodes.humanInput.deliveryMethod.emailConfigure.debugMode": "Режим отладки",
"nodes.humanInput.deliveryMethod.emailConfigure.debugModeTip1": "В режиме отладки письмо будет отправлено только на ваш аккаунт <email>{{email}}</email>.",
"nodes.humanInput.deliveryMethod.emailConfigure.debugModeTip2": "Производственная среда не затронута.",
"nodes.humanInput.deliveryMethod.emailConfigure.description": "Отправить запрос на ввод по электронной почте",
"nodes.humanInput.deliveryMethod.emailConfigure.memberSelector.add": "+ Добавить",
"nodes.humanInput.deliveryMethod.emailConfigure.memberSelector.added": "Добавлено",
"nodes.humanInput.deliveryMethod.emailConfigure.memberSelector.placeholder": "Email, через запятую",
"nodes.humanInput.deliveryMethod.emailConfigure.memberSelector.title": "Добавить участников рабочего пространства или внешних получателей",
"nodes.humanInput.deliveryMethod.emailConfigure.memberSelector.trigger": "Выбрать",
"nodes.humanInput.deliveryMethod.emailConfigure.recipient": "Получатель",
"nodes.humanInput.deliveryMethod.emailConfigure.requestURLTip": "Переменная URL запроса является точкой входа для ввода человека.",
"nodes.humanInput.deliveryMethod.emailConfigure.subject": "Тема",
"nodes.humanInput.deliveryMethod.emailConfigure.subjectPlaceholder": "Введите тему письма",
"nodes.humanInput.deliveryMethod.emailConfigure.title": "Настройка электронной почты",
"nodes.humanInput.deliveryMethod.emailSender.debugDone": "Тестовое письмо отправлено на <email>{{email}}</email>. Пожалуйста, проверьте ваш почтовый ящик.",
"nodes.humanInput.deliveryMethod.emailSender.debugModeTip": "Режим отладки включён.",
"nodes.humanInput.deliveryMethod.emailSender.debugModeTip2": "Письмо будет отправлено на <email>{{email}}</email>.",
"nodes.humanInput.deliveryMethod.emailSender.done": "Письмо отправлено",
"nodes.humanInput.deliveryMethod.emailSender.optional": "(необязательно)",
"nodes.humanInput.deliveryMethod.emailSender.send": "Отправить письмо",
"nodes.humanInput.deliveryMethod.emailSender.testSendTip": "Отправить тестовые письма вашим настроенным получателям",
"nodes.humanInput.deliveryMethod.emailSender.testSendTipInDebugMode": "Отправить тестовое письмо на {{email}}",
"nodes.humanInput.deliveryMethod.emailSender.tip": "Рекомендуется <strong>включить режим отладки</strong> для тестирования доставки писем.",
"nodes.humanInput.deliveryMethod.emailSender.title": "Тестовый отправитель писем",
"nodes.humanInput.deliveryMethod.emailSender.vars": "Переменные в содержимом формы",
"nodes.humanInput.deliveryMethod.emailSender.varsTip": "Заполните переменные формы, чтобы эмулировать то, что на самом деле видят получатели.",
"nodes.humanInput.deliveryMethod.emailSender.wholeTeamDone1": "Письмо отправлено участникам <team>{{team}}</team> и следующим адресам электронной почты:",
"nodes.humanInput.deliveryMethod.emailSender.wholeTeamDone2": "Письмо отправлено участникам <team>{{team}}</team>.",
"nodes.humanInput.deliveryMethod.emailSender.wholeTeamDone3": "Письмо отправлено на следующие адреса электронной почты:",
"nodes.humanInput.deliveryMethod.emailSender.wholeTeamTip1": "Письмо будет отправлено участникам <team>{{team}}</team> и следующим адресам электронной почты:",
"nodes.humanInput.deliveryMethod.emailSender.wholeTeamTip2": "Письмо будет отправлено участникам <team>{{team}}</team>.",
"nodes.humanInput.deliveryMethod.emailSender.wholeTeamTip3": "Письмо будет отправлено на следующие адреса электронной почты:",
"nodes.humanInput.deliveryMethod.emptyTip": "Способ доставки не добавлен, операция не может быть запущена.",
"nodes.humanInput.deliveryMethod.notAvailableInTriggerMode": "Недоступно",
"nodes.humanInput.deliveryMethod.notConfigured": "Не настроено",
"nodes.humanInput.deliveryMethod.title": "Способ доставки",
"nodes.humanInput.deliveryMethod.tooltip": "Как форма ввода человека доставляется пользователю.",
"nodes.humanInput.deliveryMethod.types.discord.description": "Отправить запрос на ввод через Discord",
"nodes.humanInput.deliveryMethod.types.discord.title": "Discord",
"nodes.humanInput.deliveryMethod.types.email.description": "Отправить запрос на ввод по электронной почте",
"nodes.humanInput.deliveryMethod.types.email.title": "Электронная почта",
"nodes.humanInput.deliveryMethod.types.slack.description": "Отправить запрос на ввод через Slack",
"nodes.humanInput.deliveryMethod.types.slack.title": "Slack",
"nodes.humanInput.deliveryMethod.types.teams.description": "Отправить запрос на ввод через Teams",
"nodes.humanInput.deliveryMethod.types.teams.title": "Teams",
"nodes.humanInput.deliveryMethod.types.webapp.description": "Показать конечному пользователю в веб-приложении",
"nodes.humanInput.deliveryMethod.types.webapp.title": "Веб-приложение",
"nodes.humanInput.deliveryMethod.upgradeTip": "Разблокировать доставку по электронной почте для ввода человека",
"nodes.humanInput.deliveryMethod.upgradeTipContent": "Отправляйте запросы на подтверждение по электронной почте до того, как агенты предпримут действия — полезно для публикации и рабочих процессов утверждения.",
"nodes.humanInput.deliveryMethod.upgradeTipHide": "Отклонить",
"nodes.humanInput.editor.previewTip": "В режиме предварительного просмотра кнопки действий не функционируют.",
"nodes.humanInput.errorMsg.duplicateActionId": "Обнаружен дублирующийся идентификатор действия в действиях пользователя",
"nodes.humanInput.errorMsg.emptyActionId": "Идентификатор действия не может быть пустым",
"nodes.humanInput.errorMsg.emptyActionTitle": "Название действия не может быть пустым",
"nodes.humanInput.errorMsg.noDeliveryMethod": "Пожалуйста, выберите хотя бы один способ доставки",
"nodes.humanInput.errorMsg.noDeliveryMethodEnabled": "Пожалуйста, включите хотя бы один способ доставки",
"nodes.humanInput.errorMsg.noUserActions": "Пожалуйста, добавьте хотя бы одно действие пользователя",
"nodes.humanInput.formContent.hotkeyTip": "Нажмите <Key/> для вставки переменной, <CtrlKey/><Key/> для вставки поля ввода",
"nodes.humanInput.formContent.placeholder": "Введите содержимое здесь",
"nodes.humanInput.formContent.preview": "Предварительный просмотр",
"nodes.humanInput.formContent.title": "Содержимое формы",
"nodes.humanInput.formContent.tooltip": "Что увидят пользователи после открытия формы. Поддерживает форматирование Markdown.",
"nodes.humanInput.insertInputField.insert": "Вставить",
"nodes.humanInput.insertInputField.prePopulateField": "Предварительно заполнить поле",
"nodes.humanInput.insertInputField.prePopulateFieldPlaceholder": "Добавьте <staticContent/> или <variable/>. Пользователи изначально увидят это содержимое, или оставьте пустым.",
"nodes.humanInput.insertInputField.saveResponseAs": "Сохранить ответ как",
"nodes.humanInput.insertInputField.saveResponseAsPlaceholder": "Назовите эту переменную для последующей ссылки",
"nodes.humanInput.insertInputField.staticContent": "Статическое содержимое",
"nodes.humanInput.insertInputField.title": "Вставить поле ввода",
"nodes.humanInput.insertInputField.useConstantInstead": "Использовать константу вместо этого",
"nodes.humanInput.insertInputField.useVarInstead": "Использовать переменную вместо этого",
"nodes.humanInput.insertInputField.variable": "переменная",
"nodes.humanInput.insertInputField.variableNameInvalid": "Имя переменной может содержать только буквы, цифры и подчеркивания и не может начинаться с цифры",
"nodes.humanInput.log.backstageInputURL": "URL ввода за кулисами:",
"nodes.humanInput.log.reason": "Причина:",
"nodes.humanInput.log.reasonContent": "Требуется ввод человека для продолжения",
"nodes.humanInput.singleRun.back": "Назад",
"nodes.humanInput.singleRun.button": "Сгенерировать форму",
"nodes.humanInput.singleRun.label": "Переменные формы",
"nodes.humanInput.timeout.days": "Дни",
"nodes.humanInput.timeout.hours": "Часы",
"nodes.humanInput.timeout.title": "Тайм-аут",
"nodes.humanInput.userActions.actionIdFormatTip": "Идентификатор действия должен начинаться с буквы или подчеркивания, за которым следуют буквы, цифры или подчеркивания",
"nodes.humanInput.userActions.actionIdTooLong": "Идентификатор действия должен содержать не более {{maxLength}} символов",
"nodes.humanInput.userActions.actionNamePlaceholder": "Название действия",
"nodes.humanInput.userActions.buttonTextPlaceholder": "Текст кнопки для отображения",
"nodes.humanInput.userActions.buttonTextTooLong": "Текст кнопки должен содержать не более {{maxLength}} символов",
"nodes.humanInput.userActions.chooseStyle": "Выберите стиль кнопки",
"nodes.humanInput.userActions.emptyTip": "Нажмите кнопку '+' для добавления действий пользователя",
"nodes.humanInput.userActions.title": "Действия пользователя",
"nodes.humanInput.userActions.tooltip": "Определите кнопки, на которые пользователи могут нажимать, чтобы ответить на эту форму. Каждая кнопка может запускать разные пути рабочего процесса. Идентификатор действия должен начинаться с буквы или подчеркивания, за которым следуют буквы, цифры или подчеркивания.",
"nodes.humanInput.userActions.triggered": "<strong>{{actionName}}</strong> был запущен",
"nodes.ifElse.addCondition": "Добавить условие",
"nodes.ifElse.addSubVariable": "Подпеременная",
"nodes.ifElse.and": "и",