Что на самом деле должно быть в запросе на сборку?
Четыре вещи, и я говорю это, понаблюдав, как что-то около двухсот таких запросов превратились в готовые сайты: что это такое, для кого это, обязательные функции и — по желанию — настроение. Всё остальное — это шум, который сборщик заполнит значениями по умолчанию в любом случае, поэтому настоящий навык не в том, чтобы писать больше, а в том, чтобы заметить, по какому из этих четырёх пунктов у вас реально есть мнение, и сказать только это.
Начните с того, что это такое, и держитесь категории, а не технического задания. «Сайт для записи в йога-студию» лучше, чем «сайт, где люди видят время и нажимают кнопку, чтобы забронировать место, и получают подтверждение», хотя во втором варианте больше информации. Категория активирует значения по умолчанию, которые уже есть у сборщика — расписания выглядят как расписания, потоки бронирования выглядят как потоки бронирования — тогда как описание заставляет его восстанавливать категорию с нуля.
Нужно ли указывать, для кого это?
Не обязательно, но это та строка, которую люди пропускают, а не стоило бы. «Для действующих учеников студии» и «для людей, впервые узнающих о студии» дают почти всегда разные сайты в тех местах, где это важно — тон текста, будет ли большой маркетинговый заголовок или сразу переход к расписанию, будут ли цены на видном месте (новым посетителям это нужно) или спрятаны (постоянные и так их знают). Одна фраза здесь может снять сотню мелких неоднозначностей, которые страница пожеланий по функциям никогда бы не сняла. Если аудитория действительно общая, оставьте это поле пустым — не придумывайте её только ради заполнения слота.
Сколько обязательных функций нужно перечислить?
Две-три. Проверка, которую я использую: отклонили бы вы первую сборку из-за отсутствия этого? «Расписание занятий, онлайн-оплата, биографии преподавателей» проходит эту проверку для йога-студии — без расписания это не уменьшенная версия сайта, это другой сайт. «Подписка на рассылку в футере» почти никогда не проходит — это приятное дополнение, а приятные дополнения место в последующем чате, после того как вы увидели план, а не втиснуты в начальный запрос, где они конкурируют с тем, что действительно важно.
Это, честно говоря, ингредиент, который люди портят хуже всего, в обе стороны. Ноль обязательных функций — и сборщик угадывает, иногда неверно. Восемь обязательных функций — и сборщик относится ко всем восьми как к одинаково важным, и на выходе получается список функций в костюме сайта — без иерархии, без пространства для дыхания. Если бы мне пришлось настаивать на том, чтобы не пропускать хотя бы один ингредиент, это был бы именно этот. Даже одна фраза «вот эти две вещи делают это твоим» почти всегда экономит лишний круг, потому что это единственная информация, которую сборщик никак не может вывести из одной только категории.
Стоит ли указывать настроение?
Только если он у вас есть. Многие хорошие промпты вообще обходятся без этого, и это нормально — арт-директор всё равно определится с художественным направлением, укажете вы его или нет. Настроение из двух слов («тёплое и рукописное», «клиническое и быстрое», «как в аркадах 90-х») просто направляет это решение вместо того, чтобы оставлять его на усмотрение стандартных настроек категории. Если у вас есть чёткая реакция — вы точно знаете, что хотите кремовый фон и тёплый шрифт с засечками, или точно ненавидите скруглённые углы — потратьте на это фразу. «Чистый и современный», кстати, не считается. Это не настроение, а его отсутствие, и оно ничего не направляет, при этом всё равно занимая слот.
Почему бы просто не описать всё, что я думаю?
Потому что строитель выполняет всё буквально. Это и есть настоящая проблема, и она не то, чего ожидают люди — дело не в том, что слишком много информации сбивает строителя с толку, а в том, что каждое ваше предложение воспринимается как инструкция, включая полусформированные мысли, от которых вы бы с лёгкостью отказались при повторном взгляде. Я видел, как кто-то написал «может быть, раздел с отзывами, не уверен» и получил в ответ раздел с отзывами и тремя тестовыми цитатами, потому что «может быть, не уверен» — это оговорка для человека-читателя и запрос на функцию для системы, которая понимает вас буквально.
Это не имело бы значения, если бы недостаточная детализация была дорогой, как в случае с командой разработчиков-людей, где неоднозначность стоит вам двух недель, прежде чем кто-то заметит, что построено не то. Здесь это не дорого. Строитель планирует перед тем, как строить — вы видите конкретное предложение до того, как что-либо зафиксировано в коде, — поэтому недостаточная детализация обходится вам в пятиминутную правку в чате, тогда как избыточная детализация выгружает все ваши самые слабые полусформированные идеи именно в тот момент, когда у вас меньше всего информации, чтобы понять, какие из них стоит оставить. Десять слов реальных требований лучше, чем двести слов потока сознания, не потому что больше информации — это плохо в принципе, а потому что именно в этом интерфейсе каждое лишнее слово становится обязательством.
Есть и более тихая цена: это сглаживает иерархию. Перечислите двенадцать функций с одинаковым акцентом — и у строителя не будет сигнала о том, какие три вам действительно важны, поэтому он либо придаёт всем двенадцати одинаковый визуальный вес (получается загромождённо), либо угадывает приоритет (иногда неверно, и теперь вы отлаживаете догадку вместо того, чтобы просто указать предпочтение). Три чётко сформулированных обязательных пункта сохраняют эту иерархию. Двенадцать пунктов в абзаце стирают её.
Как выглядит хороший промпт на самом деле?
| Запрос | Почему это работает |
|---|---|
| «Дневник тренировок для скалолазов — сессии, категории сложности, графики прогресса». | Что плюс три обязательных пункта — всего десять слов требований. Без указания аудитории, потому что «скалолазы, ведущие учёт своих тренировок» очевидно из самой категории — промпт верно опускает единственный компонент, который здесь ничего не даёт. |
| «Лендинг для моего подкаста о городском фермерстве, тёплый и в редакционном стиле, со списком эпизодов и формой подписки». | Что, аудитория подразумевается фразой «мой подкаст», настроение, две функции. Не указано, какой плеер встраивать для эпизодов или сколько показывать на странице — это вопросы второго раунда, а не начального промпта. |
| «Аэрохоккей для двух игроков, реальная физика, одна клавиатура». | На играх этот паттерн виден особенно наглядно: жанр плюс одно ограничение, которое определяет саму суть игрового процесса. «Реальная физика» и «одна клавиатура» — это не столько функции, сколько два решения, определяющих, будет ли игра ощущаться такой, как вы её представляли. Цвет стола, следы шайбы, интерфейс счёта — всё это предлагает строитель, а вы реагируете. |
Что объединяет все три примера — не краткость сама по себе, а то, что каждое слово выполняет свою работу. Уберите «тёплый и в редакционном стиле» из промпта про подкаст — и получите обычную страницу подкаста; уберите «городское фермерство» — и слову о настроении будет не к чему привязаться. Это и есть настоящий тест на то, хорошо ли составлен промпт — не количество слов. Я бы предпочёл промпт из 40 слов, где каждая фраза оправдывает своё место, промпту из 15 слов, который краток ради краткости и незаметно упускает обязательный пункт.
А если у меня уже есть фирменные цвета или реальные фотографии?
Прикрепите их. Не описывайте. Я видел, как люди тщательно составляли абзац, пытаясь словами передать фирменную палитру, близкую к hex-кодам — «глубокий лесной зелёный, немного приглушённый», — тогда как настоящее руководство по бренду в виде PDF всё это время лежало у них на рабочем столе. Описанный цвет — это догадка, которую строителю приходится реконструировать; прикреплённый — просто верен. Реальные меню, реальные фотографии, фирменные материалы — функции базы знаний и справочных материалов передают их напрямую в сборку, а факты всегда побеждают описания фактов.



