Тонкая настройка против дизайна промптов: когда стоит использовать инструменты
Используйте простое дерево решений для выбора между тонкой настройкой и дизайном промптов — с признаками, когда нужны инструменты, в каком порядке тестировать варианты и какие ошибки стоят дорого.

Почему команды выбирают неверный путь
Многие команды винят модель, хотя сама задача ещё не до конца ясна. Они видят слабые ответы, медленный вывод или странный формат и сразу идут к кастомной донастройке — потому что это кажется серьёзным решением.
Такой скачок распространён и часто ошибочен. Модели может вовсе не требоваться дополнительное обучение. Ей может понадобиться более чёткая инструкция, доступ к правильным данным или возможность вызвать инструмент вместо угадывания.
Большинство решений можно свести к трём вариантам. Можно улучшить промпт — дать более точные инструкции и примеры. Можно добавить инструменты, чтобы модель могла искать по документам, опрашивать базу данных или запускать рабочие процессы. Или можно дообучить модель, чтобы она надёжнее следовала узкому шаблону.
Команды часто пропускают первые два варианта, потому что тонкая настройка звучит более продвинуто. Она также выглядит убедительно на встречах. Цена неправильного выбора реальна: команда может потратить недели на чистку данных, эксперименты и настройку пайплайна, чтобы выяснить, что более строгий промпт или поиск по документам решили большую часть проблемы за два дня.
Обратная ошибка тоже встречается. Некоторые команды продолжают переписывать промпты для задачи, которой явно требуется доступ к инструментам — например, проверка статуса счёта или получение актуального текста политики. В таком случае модели не хватает фактов, а не стиля.
Поэтому не начинайте с дебатов о дизайне промптов против тонкой настройки. Начните с более простой цели: получать лучшие ответы с минимальной тратой времени. Если модель уже знает задачу, промптов может быть достаточно. Если ей нужны актуальные факты — дайте инструменты. Если нужно, чтобы она всегда повторяла один и тот же шаблон — тонкая настройка может окупиться.
Начинайте с задачи, а не с модели
Большинство команд принимают неверное решение ещё до того, как трогают промпты или обучение. Они начинают с названий моделей и пытаются вписать задачу в то, что умеет модель. Гораздо лучше делать наоборот.
Опишите задачу одной простой фразой, например: "классифицировать тикеты поддержки по категориям: биллинг, баг, проблемы с доступом" или "подготовить ответ, используя только данные из карточки клиента".
Потом определите, что такое правильный ответ. «Звучит умно» — бесполезно. Хороший ответ имеет правильный формат, использует верные факты, соответствует нужному тону и работает достаточно быстро для реальной работы. Если двое из вашей команды не могут договориться, как должен выглядеть корректный вывод, модель будет отклоняться.
Короткая шпаргалка помогает:
- Какие входные данные получит модель?
- Какой вывод она должна генерировать?
- Что делает ответ правильным или неправильным?
- Как часто люди будут запускать эту задачу?
После этого посмотрите, где нынешние ответы проваливаются. Некоторые ошибки — это проблемы со стилем. Ответ слишком длинный, слишком официальный, слишком разговорный или непоследователен. Такие проблемы часто лечатся сильнее продуманными промптами, точными примерами и чёткими правилами.
Другие ошибки вызваны отсутствием данных. Модель не может упомянуть политику возврата, которую она не видела. Она не проверит статус заказа в реальном времени без инструмента. Она не процитирует внутренний регламент, если этот контент недоступен во время выполнения.
Если смешивать проблемы со стилем и с данными, можно потерять месяцы. Команда может донастроить модель, чтобы она звучала лучше, в то время как реальная проблема — доступ к системе тикетов. Начните с описания задачи, критериев успеха и паттерна ошибок. Тогда правильный путь становится очевиднее.
Простое дерево решений
Большинству команд стоит тестировать опции в одном порядке: сначала инструкции, затем инструменты, и только потом обучение. Такой порядок экономит время, потому что слабый вывод чаще всего вызван не самой моделью, а расплывчатыми промптами, отсутствующим контекстом или сломанным рабочим процессом.
Посмотрите на несколько реальных задач, держите окружение постоянным и задавайте по одному вопросу за раз.
- Если переписать инструкции, улучшается ли вывод быстро? Сделайте цель, формат, тон и пограничные случаи явными. Если качество растёт после двух–трёх правок промпта, останавливайтесь.
- Если модель всё ещё угадывает — не хватает ли фактов или возможности действовать? Дайте ей внешние данные, поиск, извлечение или инструменты. Ассистент поддержки, которому нужно знать статус заказа, должен проверять систему заказов, а не выдумывать ответ.
- Если задача повторяется по одной и той же схеме в больших объёмах, спросите, оправдает ли обучение вложения. Тонкая настройка имеет смысл, когда нужна очень последовательная структура или специализированная формулировка, которую промпты не держат.
- Остановитесь, когда один путь явно подходит. Не насыпайте одновременно трюков с промптами, retrieval, агентов и донастройки — вы не поймёте, что именно улучшило результат.
Небольшой пример делает это очевидным. Если после переписывания промпта модель пишет хорошие ответы по возвратам, инструменты и обучение не нужны. Если перед ответом нужно подтянуть данные по аккаунту — подойдут инструменты. Если команда обрабатывает тысячи похожих запросов и хочет почти идентичный вывод, стоит подумать о донастройке.
Это ближе к диагностике, чем к бесконечным экспериментам. Выберите первый вариант, который решит задачу достаточно хорошо, измерьте результат и двигайтесь дальше.
Когда хватает дизайна промптов
Дизайн промптов обычно решает проблему, когда модель уже знает предмет, но даёт ответ в неправильной форме. Может быть, она пишет дружелюбный текст, когда нужен короткий статус. Может давать длинное объяснение, когда нужен JSON-блок. В таких случаях менять модель — излишне.
Начните с запроса, а не с весов. Более чёткая инструкция, фиксированный формат вывода и один–два удачных примера часто быстро меняют результат.
Хороший промпт обычно выполняет четыре задачи:
- задаёт роль и задачу
- определяет точный формат вывода
- показывает небольшой пример корректного ответа
- указывает, чего следует избегать
Примеры важнее, чем многие команды ожидают. Если вам нужны короткие сводки тикетов — покажите три реальных сводки. Если нужен спокойный ответ поддержки — включите один пример в нужном тоне. Модель обычно следует образцу, если он ясен.
Вносите изменения по одному. Если за один день вы переписали системный промпт, добавили примеры, поменяли temperature и сменили модель — вы ничего не узнаете. Уточняйте один элемент, протестируйте, затем переходите к следующему. Сначала это кажется медленнее, но обычно экономит недели.
Используйте один и тот же тестовый набор каждый раз. Выберите 20–50 реальных задач и оценивайте их по формату, тону и корректности. Если версия B кажется лучше, но по баллам равна версии A — продолжайте дорабатывать. Ощущения шумны; стабильный тестовый набор показывает реальный прогресс.
Дизайн промптов достаточен, когда модель знает содержание, ошибается в подаче и улучшается после нескольких аккуратных правок. Это часто встречается и обычно самый дешёвый путь.
Когда логичнее использовать инструменты
Если модели нужны факты, которые меняются каждый день, не пытайтесь запихнуть их в промпты или обучение. Дайте возможность получать актуальные данные.
Обычно это поиск, запросы к базе данных, вызовы API, калькуляторы или внутренние действия. Модель решает, что делать дальше; инструмент выполняет работу.
Несколько ситуаций делают выбор очевидным:
- Ответ зависит от живых данных: наличие на складе, цены, статус тикета или данные аккаунта.
- Задача требует точной математики, фильтрации или поиска по большому набору записей.
- Модель должна совершить реальное действие: создать тикет, обновить поле в CRM или отправить запрос на возврат.
- Модель должна проверить несколько систем перед корректным ответом.
Один только промпт не решит такие задачи. Промпт может указать, как вести себя, но не даст свежие данные по заказу и не посчитает налоги.
Это важно особенно, когда требуемая точность — «скучно надёжная». Если бот поддержки должен цитировать актуальную политику — он должен обратиться к источнику политики. Если ассистент по операциям должен отчитаться о состоянии серверов — он должен читать мониторинг, а не угадывать по старым примерам.
Простой паттерн работает хорошо: сузьте зону ответственности модели. Пусть она классифицирует запрос, выбирает нужный инструмент, спрашивает недостающие детали и объясняет результат простым языком.
Из-за этого системы с инструментами лучше подходят для оперативной работы. Статус деплоя, логи, результаты тестов и данные репозитория меняются слишком быстро, чтобы тонкая настройка могла серьёзно помочь. Модель, которая может вызвать нужную систему, дольше остаётся полезной и реже ломается.
Если проблема в получении актуальных фактов или выполнении реальной работы, инструменты чаще выигрывают у обучения.
Когда тонкая настройка оправдана
Тонкая настройка имеет смысл после того, как вы всесторонне поработали с промптами, и модель всё ещё регулярно ошибается по одной и той же схеме. Если ошибки случайны — донастройка не поможет. Если ошибки повторяются (не тот тон, неверный ярлык, постоянно пропускается одно и то же поле), возможно, это проблема обучения.
Тонкая настройка обычно выигрывает в узких, повторяющихся задачах. Подумайте о задачах типа: классификация тикетов, написание ответов в строгом фирменном тоне или извлечение одних и тех же полей из одного типа документов. Задача должна оставаться примерно одинаковой в течение месяцев, а не меняться каждую неделю из-за пересмотра правил.
Обычно стоит, когда выполняются все четыре условия:
- У вас много чистых примеров, а не пара удачных промптов.
- Люди могут размечать новые данные без споров о правильном ответе.
- У задачи есть стабильная цель и чёткие критерии «сдал/не сдал».
- Вы планируете запускать эту задачу достаточно часто, чтобы улучшение окупило время на настройку.
Скрытые расходы — не столько сама тренировка, сколько разметка, ревью и последующие переобучения. Команды часто недооценивают эту часть. Если нужно двоим людям почистить 5 000 примеров, проверять пограничные случаи и повторять это ежемесячно — реальная цена быстро растёт.
Простой тест помогает. Спросите, как часто меняется задача, сколько размеченных примеров уже есть и насколько сильно текущие промахи бьют по бизнесу. Если ответы «редко», «много» и «каждый день», — донастройка стоит внимания. Если нет — лучше сначала улучшить промпты или подключить инструменты.
Как поэтапно тестировать опции
Большинство команд получают больше знаний из одного небольшого теста, чем из недель споров. Вопрос становится яснее, когда вы тестируете одну узкую задачу в одинаковых условиях.
Выберите задачу, которую люди уже часто делают: маркировка тикетов поддержки или превращение заметок с совещания в задачи. Выберите одну метрику, которая важна: корректность с первого раза, среднее время ответа или сэкономленное время на правку. Если одновременно отслеживать пять метрик, люди будут спорить и ничего не решится.
Соберите небольшой тестовый набор из реальной работы. 50–100 примеров обычно достаточно, чтобы увидеть закономерности. Оставьте в наборе сложные случаи, не только простые — лёгкие примеры делают слабые идеи лучше, чем они есть.
- Начните с простого промпта и зафиксируйте стоимость, скорость и процент ошибок.
- Улучшите промпт — добавьте инструкции, примеры и формат вывода.
- Если модели всё ещё не хватает фактов, подключите инструменты или retrieval перед тем, как трогать обучение.
- Запускайте тот же тестовый набор после каждого изменения.
- Останавливайтесь, когда прирост становится незначительным или поддержание решения слишком дорого.
Доступ к инструментам часто решает проблемы, которые команды ошибочно считают вопросом обучения. Если модели нужны актуальные данные по заказам, файлы политики или калькулятор — подключите их сначала. Тренировать модель на угадывание меняющихся фактов — обычно плохая идея.
Планируйте бюджет на донастройку только после того, как улучшения от промптов и инструментов выровняются. В этот момент вам нужен не оптимизм, а доказательство, что обучение улучшает стабильный паттерн.
Реалистичный пример: триаж для службы поддержки
Представьте маленькую команду e‑commerce с одним общим почтовым ящиком и 300 сообщениями в день. Большинство писем про задержку доставок, возвраты, повреждённые товары или проблемы с доступом. Команда хочет ускорить ответы, но не желает потратить месяцы на создание неправильно выбранного решения.
Они начинают с одной модели, которая делает две вещи: сортирует каждое письмо по очереди и готовит черновик ответа для агента. Здесь дизайн промптов обычно даёт первый выигрыш. Чёткий промпт может задать простую структуру: кратко резюмировать проблему, выбрать категорию, указать срочность и написать спокойный ответ в тоне компании.
Промпт также может остановить многие плохие привычки. Он может велеть не обещать возврат денег, не угадывать дату доставки и задавать один уточняющий вопрос, если в письме нет данных заказа. Для многих команд это решает проблему тона и формата без донастройки.
Слабое место проявляется быстро: модели всё ещё не хватает фактов. Если клиент спрашивает: «Где заказ 18427?», модель должна иметь инструмент для проверки системы заказов. Если спрашивают: «Можно ли вернуть вскрытые косметические средства?», нужен актуальный текст политики, а не догадки.
На практике настройка часто выглядит так:
- промпты формируют ответ и поддерживают консистентность
- инструменты подтягивают статус заказа, правила возврата, даты доставки и данные аккаунта
- агенты утверждают черновик или возвращают его с правками
Тонкая настройка начинает иметь смысл позже. Представьте, что каждую неделю появляются одни и те же сложные кейсы: разделённые отправления, частичные возвраты, замены деталей и гарантийные случаи с запутанной историей заказа. Если эти случаи следуют повторяющимся паттернам, донастроенная модель может лучше их классифицировать и готовить черновики с меньшим числом правок.
Это обычный путь. Промпты решают стиль. Инструменты дают правду. Тонкая настройка помогает, когда одинаковые сложные случаи постоянно возвращаются и у команды уже есть хорошие примеры.
Ошибки, которые отнимают месяцы
Команды часто начинают с обучения, потому что это кажется прогрессом. Это ошибка. Сначала решите, что значит «лучше» в числах: меньше неверных ответов, меньше времени на обработку, выше точность маршрутизации или ниже стоимость за задачу. Если вы не можете назвать метрику, проект превратится в гадание.
Другая частая ошибка — тестировать на примерах, которые уже выгодны модели. Десять чистых тикетов прошлой недели мало что скажут. Используйте грязный набор реальных кейсов: неясные запросы, пограничные случаи, плохой ввод и случаи с пропущенными данными. Держите отдельный тестовый набор и не трогайте его во время экспериментов.
Команды также тратят время, меняя промпт, инструменты и модель одновременно. Тогда никто не поймёт, что сработало. Меняйте по одному фактору, измеряйте, записывайте результат и переходите дальше. Это кажется медленным пару дней, но экономит недели.
Рабочие процессы с инструментами добавляют случаи отказов, которые демо скрывают. Модель может вызвать поиск, базу данных или внутренний API и блистать на встрече. В продакшене один медленный инструмент может сделать систему непригодной. Проверьте задержки, таймауты, пустые результаты, устаревшие данные и то, что модель говорит при отказе инструмента.
Команды также забывают, кто будет поддерживать систему через шесть месяцев. Первая версия может жить в голове одного человека: специальные промпты, хардкодные правила и скрипты, склеенные на скорую руку. Такое редко живёт долго. Если новый инженер не сможет понять поток из одного короткого документа, система слишком хрупкая.
Маленькая команда поддержки может упасть во все эти ловушки сразу. Они донастраивают модель, добавляют retrieval и меняют ярлыки тикетов в одном спринте. Точность растёт, но никто не понимает почему. Два месяца спустя они всё ещё не доверяют выдаче. Обычно решение простое: откатиться, тестировать каждое изменение на одном наборе данных и держать систему достаточно простой, чтобы её мог поддерживать следующий человек.
Быстрые проверки перед решением
Большинство споров упрощается, если перестать спрашивать, что звучит продвинуто, и спросить, что именно ломается. Если более чёткий промпт, хорошие примеры или строгий формат вывода исправляют большинство ошибок — остановитесь на этом. Команды часто спешат с обучением просто потому, что первый промпт был расплывчат.
Быстрый тест помогает. Перепишите промпт, добавьте 2–3 удачных примера и определите, как выглядит корректный ответ. Если качество резко растёт — это ещё не проблема модели.
Прежде чем тратить время и деньги, задайте пять простых вопросов:
- Большинство ошибок — просто инструкции? Если модель игнорирует тон, формат или простые правила, промпты обычно решают это быстрее.
- Требует ли задача свежих данных при каждом запуске? Если да — цены, изменения политики, данные пользователя или живые документы, инструменты важнее обучения.
- Достаточно ли у вас чистых примеров? Пара старых таблиц и чат‑логов не дадут надёжной донастройки.
- Сможет ли команда сопровождать это после запуска? Кто будет следить за качеством, обновлять промпты, проверять инструменты и перебучать модель при изменениях?
- Оправданы ли затраты бизнес-задачей? Экономия 5 секунд на низкочастотной задаче редко окупит месяцы работы над моделью.
Один пример: команда хочет улучшить маршрутизацию тикетов. Если категории стабильны и у вас тысячи хорошо размеченных тикетов — донастройка может помочь. Если маршрутизация зависит от статусов аккаунтов и меняющихся правил — модель должна обращаться к инструментам и брать текущие данные.
Здесь многие проекты скатываются: решение выглядит умным, но выигрыш маленький. Простой промпт, один шаг retrieval и простой цикл ревью часто лучше, чем кастомная модель, которую никто не захочет поддерживать через полгода.
Что делать дальше
Выберите одну задачу, которая достаточно болезненна, чтобы иметь значение, и при этом маленькая, чтобы протестировать за неделю. Черновик ответа поддержки, сводка документа или правило маршрутизации — лучшее начало, чем переписывать платформу целиком. Команды застревают, когда пытаются решать десять проблем одновременно.
Перед первым тестом запишите правило остановки. Решите, какой результат считается достаточным, сколько времени вы потратите и что считается провалом. Если промпт‑только подход не даёт результата после заданного числа итераций — двигайтесь дальше. Если подключение инструментов добавляет слишком много задержек или сложности — отмените его. Если для донастройки нет нужных данных — отложите её, не заставляйте происходить.
Держите таблицу показателей простой, чтобы люди действительно ею пользовались. Отслеживайте одни и те же числа для каждого варианта:
- процент успешных задач
- среднее время правки человеком
- стоимость на 100 или 1 000 запусков
- время отклика
- время на настройку и поддержку
Эта таблица скажет вам больше, чем убедительные мнения на встрече. Она также делает видимыми компромиссы. Метод, который выглядит умным на демо, может всё равно проиграть, если люди тратят много времени на исправления.
Если команда хочет внешнюю проверку до того, как потратить недели на неправильный подход, Oleg Sotnikov at oleg.is делает консультации в формате Fractional CTO и стартап‑адвайзинга. Он помогает командам разобраться, нужна ли задача лучшими промптами, рабочие процессы с инструментами или тонкая настройка, и может проверить инфраструктуру вокруг системы.
Небольшие тесты бьют большие планы. Выберите одну задачу, задайте правило остановки, ведите счёт и позвольте результатам решать.