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