
Интерфейс настройки узла Template
Шаблонизатор Jinja2
Узлы Template используют синтаксис шаблонизатора Jinja2 для создания динамического содержимого, которое адаптируется в зависимости от данных рабочего процесса. Это даёт возможности, близкие к программированию: циклы, условия и фильтры для сложной генерации текста.Подстановка переменных
Ссылайтесь на переменные рабочего процесса с помощью двойных фигурных скобок:{{ variable_name }}. Вы можете обращаться к свойствам вложенных объектов и элементам массивов через точечную нотацию и квадратные скобки.
Условная логика
Показывайте разное содержимое в зависимости от значений данных с помощью конструкций if-else:Циклы и итерации
Обрабатывайте массивы и объекты с помощью циклов for для генерации повторяющегося содержимого:
Обработка результатов поиска по базе знаний с помощью узла Template
Форматирование данных
Фильтры
Фильтры Jinja2 преобразуют данные при отрисовке шаблона:Обработка ошибок
Корректно обрабатывайте отсутствующие или некорректные данные с помощью значений по умолчанию и условных проверок:Интерактивные формы
Шаблоны могут генерировать интерактивные HTML-формы для структурированного сбора данных в Chatflow. При отправке значения формы передаются в чат как следующее сообщение конечного пользователя. Формат зависит от атрибутаdata-format элемента <form>:
data-format="json": значения сериализуются как объект JSON. Последующий узел Code или Экстрактор параметров может выполнитьJSON.parse(или сопоставить по шаблону), чтобы извлечь каждое поле.- Не задан (или любое другое значение): значения передаются как обычный текст, по одной паре
name: valueв строке. Так проще для чтения LLM.

Поддерживаемые теги
Не оставляйте пустые строки между тегами внутри
<form>. Пустая строка завершает блок HTML при разборе markdown, и любые теги после разрыва не будут отрисованы как поля формы.Поддерживаемые типы полей ввода
-
Любое другое значение
typeотрисовывает заглушку «Unsupported tag» вместо поля. -
Атрибуты валидации HTML5, такие как
required,min,maxиpattern, не применяются. -
Браузеры могут автоматически заполнять
<input type="password">и<input type="email">сохранёнными учётными данными для текущего сайта; используйте<input type="text">для полей, которые не должны заполняться заранее.
Кнопки быстрого ответа
Отдельный элемент<button>, размещённый за пределами любой формы <form>, отрисовывается как кликабельная кнопка в чате. Используйте такие кнопки, чтобы предлагать готовые ответы или внешние ссылки прямо в сообщении ассистента. Например:

Если заданы оба атрибута, приоритет имеет
data-link. Кнопка без обоих атрибутов отрисовывается, но при нажатии не выполняет никаких действий.
Применяйте data-variant и data-size для стилизации, используя те же значения, что перечислены для кнопок формы выше.
В отличие от кнопок формы, отдельные кнопки передают
data-variant и data-size в базовый компонент без валидации. Нераспознанное значение может привести к тому, что кнопка отрисуется как обычный текст, а не как стилизованная кнопка.Используйте только перечисленные выше значения.Ограничения вывода
Вывод узла Template ограничен 400 000 символами (настраивается черезTEMPLATE_TRANSFORM_MAX_LENGTH). Это предотвращает проблемы с памятью и обеспечивает разумное время обработки для больших объёмов вывода шаблона.
