Описание
Визуальный конструктор промптов для структурированного формата JSON-подписей Ideogram 4.
Этот узел предоставляет интерактивный редактор внутри ComfyUI, позволяющий рисовать области на холсте, назначать метки объектов или текста, описания и цветовые палитры, а затем собирать итоговую JSON-строку подписи, совместимую со схемой Ideogram 4.
Редактор поддерживает рисование областей перетаскиванием, выбор, встроенное редактирование, копирование/вставку/дублирование, а также полную панель инструментов, включая управление фоновым изображением, ползунок яркости, оценку количества токенов и операции с буфером обмена.
Входы
Обязательно
| Имя | Тип | По умолчанию | Подсказка |
|---|---|---|---|
width | INT | 1024 | Ширина соотношения сторон холста (также пиксельная сетка, в которой измеряется bbox). Для Ideogram 4 необходимо кратное 16. Мин: 64, Макс: 16384, Шаг: 16. |
height | INT | 1024 | Высота соотношения сторон холста (также пиксельная сетка, в которой измеряется bbox). Для Ideogram 4 необходимо кратное 16. Мин: 64, Макс: 16384, Шаг: 16. |
high_level_description | STRING | "" | Необязательное однострочное описание всего изображения (пусто = опущено). |
background | STRING | "" | Обязательное описание фона сцены. |
style | DYNAMICCOMBO | (динамический) | Выпадающий список, заполняемый редактором (вероятно, пресеты стилей). |
aesthetics | STRING | "" | Дескриптор стиля (пусто = опущено). |
lighting | STRING | "" | Дескриптор стиля (пусто = опущено). |
medium | STRING | "" | Дескриптор стиля (пусто = опущено). |
style_palette_data | STRING | "" | Сериализованная цветовая палитра стиля из редактора (управляется UI узла). |
elements_data | STRING | "" | Сериализованные области из редактора (управляются UI узла). |
bg_brightness | INT | 25 | Яркость фонового изображения в процентах (управляется ползунком UI узла). Мин: 0, Макс: 100. |
import_mode | COMBO | "when empty" | Как используется прикреплённая import_json: "when empty" — заполняет редактор, только если в нём ещё нет областей (затем редактор становится главным, позволяя редактировать); "always" — делает прикреплённый JSON авторитетным, поэтому его изменения всегда передаются на выход. Варианты: ["when empty", "always"]. |
output_format | STRING | "compact" | Форматирование выходного JSON (устанавливается через панель инструментов редактора): "compact" (по умолчанию, ожидаемый Ideogram 4) или "pretty" (с отступами, для чтения). |
coord_mode | STRING | "normalized" | Пространство координат bbox (устанавливается через панель инструментов редактора): "normalized" (по умолчанию, сетка 0–1000, ожидаемая Ideogram 4) или "absolute" (пиксели, масштабированные по width/height — НЕСТАНДАРТНЫЙ для Ideogram, для других инструментов, работающих с пиксельными координатами). |
bbox_order | STRING | "yx" | Порядок осей bbox (устанавливается через панель инструментов редактора): "yx" (по умолчанию, Ideogram [ymin, xmin, ymax, xmax]) или "xy" ([xmin, ymin, xmax, ymax], стандартный x1,y1,x2,y2, используемый Qwen‑VL и большинством детекторов). |
photo | STRING | "" | (нет подсказки в источнике) |
art_style | STRING | "" | (нет подсказки в источнике) |
Необязательно
| Имя | Тип | По умолчанию | Подсказка |
|---|---|---|---|
image | IMAGE | — | Необязательное эталонное изображение, отображаемое в качестве фона редактора (и за предпросмотром). |
import_json | STRING | "" | Необязательный: полный JSON подписи. При подключении загружается в редактор и управляет выходом в соответствии с import_mode. |
bboxes | BOUNDINGBOX | — | Необязательные прямоугольники в пиксельном пространстве ({x, y, width, height}), используемые для заполнения областей редактора, когда они отсутствуют. Игнорируется после появления областей. |
Выходы
| Индекс | Тип | Описание |
|---|---|---|
| 0 | STRING | Собранная JSON-строка подписи в выбранном формате (compact или pretty). |
| 1 | IMAGE | (вероятно, предпросмотр/фоновое изображение, повторно используемое или захваченное через панель инструментов) |
| 2 | BOUNDINGBOX | (возможно, ограничивающие рамки из редактора в пиксельной или нормализованной форме) |
| 3 | INT | (неизвестно, возможно, количество токенов или количество областей) |
| 4 | INT | (неизвестно) |
Примечания по использованию / Функции редактора
-
Управление холстом
- Перетаскивание: нарисовать новую область.
- Ctrl/Cmd+перетаскивание: принудительное рисование новой области поверх существующей.
- Щелчок: выбрать область.
- Alt+щелчок: циклический перебор перекрывающихся областей.
- Двойной щелчок: редактировать описание прямо на месте.
- Правая кнопка мыши: список областей (выбрать / удалить / дублировать / изменить порядок; верх = на переднем плане).
- Del / Backspace: удалить выбранную область.
- Ctrl/Cmd + C / V / D: копировать / вставить / дублировать выбранную область.
- Поля bbox (px / out) рядом с obj/text редактируемы.
-
Образцы цветов
- Щелчок: редактировать.
- Перетаскивание: изменить порядок.
- Правая кнопка: удалить.
- Навести курсор + Ctrl/Cmd + C / V: копировать / вставить шестнадцатеричный код.
- «+»: добавить цвет (использует цвет из буфера обмена, если он есть).
-
Панель инструментов
- Live: использовать предпросмотр сэмплирования в реальном времени в качестве фона (и захватить итоговый результат).
- Grab BG / Clear BG: использовать последнее сгенерированное изображение в качестве фона.
- Ползунок яркости, оценка количества токенов, копировать / вставить / очистить всё.
-
Ограничивающие рамки по умолчанию нормализуются к сетке 0–1000 как
[ymin, xmin, ymax, xmax];widthиheightзадают соотношение сторон холста. -
Поведение режима импорта:
"when empty": Импортирует JSON, только если в редакторе ещё нет областей. После редактирования главным становится редактор."always": Прикреплённый JSON является авторитетным; любое изменение в JSON принудительно обновляет выход, перезаписывая состояние редактора.
-
Режимы координат и порядок bbox настраиваются для совместимости с различными downstream-моделями. Ideogram 4 ожидает
"normalized"и"yx". -
Формат вывода:
"compact"(без пробелов) — ожидаемый Ideogram 4;"pretty"(с отступами) — для удобства чтения. -
Вход
imageнеобязателен и предоставляет эталонный фон в редакторе, но не влияет на сгенерированный JSON. -
Входы
style_palette_data,elements_dataиbg_brightness— это внутреннее сериализованное состояние; UI узла управляет ими автоматически при взаимодействии с редактором. -
Поля
photoиart_style— дополнительные строковые поля, которые могут соответствовать структуре подписи Ideogram 4 (дальнейшие детали в источнике отсутствуют).
Комментарии
Войдите через GitHub, чтобы участвовать в обсуждении.