Промпт пишет языковая модель

<!-- lesson: llm-prompt -->

Урок «llm-prompt» в группе Паки и инструменты списка уроков. Шагов: 10.

Чему вы научитесь

Языковая модель внутри ComfyUI превращает короткую идею в подробный промпт, а переключатель сравнивает его с вашим.

Что понадобится

  • Урок продолжает Два варианта промпта и один переключатель. Карточка говорит об этом; это подсказка, а не замок.
  • Файлы моделей, которые урок проверяет:
    • для поля clip_name ноды Load CLIP: файл, в имени которого есть qwen или gemma.
  • Ноды: CLIP Text Encode (Prompt), If/Else Switch, Text (Multiline), Load CLIP, Generate Text / TextGenerate, Preview as Text.
  • Приложение ничего не скачивает и не устанавливает. Тексты шагов ниже говорят, какие файлы, в какие папки и какой шаблон ComfyUI их называет.

Шаги

Слова каждого шага, как их показывает урок. Имена нод выделены.

  1. Языковая модель в графе (чтение)

    Языковая модель умеет превратить короткую идею в подробный промпт: свет, композиция, материалы, стиль. ComfyUI делает это своей нодой Generate Text, на вашей видеокарте, без другой программы и без облака.

    Этот урок продолжает «Два варианта промпта и один переключатель»: ваша идея остаётся на одной стороне переключателя, а вариант модели идёт на другую.

    Нужен файл языковой модели в ComfyUI/models/text_encoders: тот, который называют шаблоны генерации текста у ComfyUI, например Qwen 3 4B, Qwen 3.5 или Gemma 4. Возьмите его с официальной страницы модели; приложение ничего не скачивает.

  2. Нужен граф с переключателем

    На холсте должен быть граф «Два варианта промпта и один переключатель»: If/Else Switch с выходом в CLIP Text Encode (Prompt) и нода Text (Multiline) с вашим промптом на входе on_false.

    Если его нет, сначала пройдите тот урок.

  3. Загрузите языковую модель

    Добавьте ноду Load CLIP и выберите файл языковой модели в её поле clip_name. type оставьте таким, как его ставит шаблон этой модели; официальные шаблоны Qwen 3.5 и Gemma 4 оставляют stable_diffusion.

    Языковая модель грузится как текстовый энкодер: в ComfyUI это один вид файлов. Эта нода не связана с текстовым энкодером модели картинок: она питает только Generate Text.

  4. Generate Text

    Добавьте ноду Generate Text. Подключите выход Load CLIP к её входу clip, а выход Text (Multiline) ко входу prompt. Поставьте max_length на 512.

    Теперь модель читает вашу идею. max_length это самый длинный ответ в токенах, кусочках слов; промпту нужно гораздо меньше, предел только останавливает разговорившуюся модель. Оставьте thinking выключенным: тогда ответом будет сам промпт.

  5. Вариант модели в переключатель

    Подключите выход generated_text ноды Generate Text ко входу on_true ноды If/Else Switch. Связь от второго варианта заменится.

    Теперь true отправляет в картинку промпт модели, а false ваш. Вторая текстовая нода свободна: следующий шаг даст ей новую работу.

  6. Указание

    Подключите ноду Text (Multiline) (свободную или новую) ко входу system_prompt ноды Generate Text и напишите указание в её поле value. Например: Rewrite the idea as one detailed image prompt in English: subject, setting, light, camera, style. Answer with the prompt only.

    Указание говорит, что делать с идеей; идея говорит, о чём. «Answer with the prompt only» не пускает в картинку приветствия и пояснения.

  7. Посмотрите, что написала модель

    Добавьте ноду Preview as Text и подключите выход generated_text ноды Generate Text к её входу source.

    После запуска текст появится на ноде. Читайте его: если модель добавляет то, чего вы не хотели, скажите об этом в указании.

  8. Память и время (чтение)

    Языковая модель такая же модель, как остальные: файл 4B занимает около 8 ГБ в 16 битах, меньше в fp8. ComfyUI загружает её, пишет текст и уносит её, когда место нужно модели картинок.

    При закреплённом seed и неизменной идее ComfyUI хранит написанный текст и не запускает языковую модель снова. Поменяете идею, только тогда напишется новый текст.

  9. Другие пути (чтение)

    • comfyui-ollama: отправляет идею на сервер Ollama, который вы запускаете сами; Ollama Generate отдаёт текст из выхода result.
    • ComfyUI-QwenVL: модели Qwen «зрение + язык», которые описывают картинку; пак скачивает их в models/LLM при первом запуске.
    • comfyui_LLM_party: агенты и облачные модели с вашим ключом API.
    • Партнёрские ноды ComfyUI (OpenAI, Gemini и другие) работают в облаке.

    Облачные модели стоят денег и отправляют ваш текст этой компании. Generate Text работает на вашей видеокарте.

  10. Граф готов (чтение)

Сохраните граф через «Файл ▸ Сохранить workflow для ComfyUI…», откройте файл в ComfyUI и запустите там. Само приложение ничего в ComfyUI не запускает.

Запустите один раз с true и один раз с false на переключателе, с тем же seed. Оставьте то, что работает: короткую идею, длинный промпт или промпт модели, поправленный руками.

Что проверяет урок

Шаг для чтения сделан, когда вы нажимаете Понятно, дальше. Шаг с делом отмечается сам, когда на холсте есть:

  • Шаг 2, Нужен граф с переключателем:
    • нода CLIP Text Encode (Prompt).
    • нода If/Else Switch.
    • нода Text (Multiline).
    • output ноды If/Else Switch во вход text ноды CLIP Text Encode (Prompt).
    • STRING ноды Text (Multiline) (идея) во вход on_false ноды If/Else Switch.
  • Шаг 3, Загрузите языковую модель:
    • нода Load CLIP.
    • в поле clip_name ноды Load CLIP стоит файл, в имени которого есть qwen или gemma (заглавные буквы, точки и дефисы не важны).
  • Шаг 4, Generate Text:
    • нода Generate Text или TextGenerate.
    • CLIP ноды Load CLIP во вход clip ноды Generate Text или TextGenerate.
    • STRING ноды Text (Multiline) (идея) во вход prompt ноды Generate Text или TextGenerate.
    • max_length ноды Generate Text или TextGenerate: от 256 до 1024; «Сделать за меня» ставит 512.
  • Шаг 5, Вариант модели в переключатель:
    • generated_text ноды Generate Text или TextGenerate во вход on_true ноды If/Else Switch.
  • Шаг 6, Указание:
    • нода Text (Multiline).
    • STRING ноды Text (Multiline) (инструкция) во вход system_prompt ноды Generate Text или TextGenerate.
    • value ноды Text (Multiline) (инструкция): не меньше 30 знаков.
  • Шаг 7, Посмотрите, что написала модель:
    • нода Preview as Text.
    • generated_text ноды Generate Text или TextGenerate во вход source ноды Preview as Text.

См. также

Страница перенесена из wiki репозитория приложения (docs/wiki/lessons/LLM-Prompt.ru.md, ревизия b8e3f71). То же руководство встроено в приложение: «Справка ▸ Руководство».

Чтобы обновить её, выполните npm run import, а затем npm run build в папке сайта.