Усі уроки · 44
Шлях 3 · Дорожня карта AI-інженера·Урок 5 з 33

Як вибрати потрібну модель

Можливості, ціна, швидкість і розмір контексту: як знайти баланс. Практичний чек-лист вибору моделі та випадки, коли досить невеликої недорогої моделі.

РівеньНовачокЧас~10 хв

Чотири параметри

Чому це важливо? Тому що «просто взяти найкращу модель» — найпоширеніший спосіб марно витратити гроші, а «просто взяти найдешевшу» — найпоширеніший спосіб випустити функцію, яка майже працює. Десять хвилин, витрачені на цей урок, вбережуть вас від обох помилок.

Вибір моделі завжди зводиться до балансу чотирьох параметрів:

  1. Можливості — чи впорається модель із завданням узагалі й наскільки добре.
  2. Вартість — у скільки обійдеться мільйон запитів.
  3. Швидкість — скільки користувач чекає на перший токен. Це називається затримкою (latency), а на практиці люди відчувають саме час до першого токена: те, як швидко на екрані з’являються перші слова.
  4. Розмір контексту — скільки тексту вміщається в один запит. (Контекстне вікно — це робоча пам’ять моделі на один запит; його вимірюють у токенах, тобто у фрагментах тексту завдовжки близько 3–4 символів.)

Новачки потрапляють в одну й ту саму пастку: оптимізують один параметр і забувають про решту. Найсильніша модель нерідко в 10 разів дорожча й у 3 рази повільніша за ту, що впорається із завданням на 95% так само добре. Для більшості продуктів користувач не помітить різниці в 5% якості, а от різниця у вартості й затримці б’є і по бюджету, і по зручності роботи.

Флагманські моделі та «робочі конячки»

Майже всі провайдери сьогодні поділяють лінійку моделей на два рівні, і ці назви варто запам’ятати:

  • Флагманські моделі (їх часто називають англійським словом frontier) — найрозумніші, найповільніші й найдорожчі. До них належать Claude Opus, моделі рівня GPT-4, старші версії Gemini. Використовуйте їх для складних міркувань, нетривіального коду та багатокрокового планування — для завдань, де помилка коштує дорого.
  • «Робочі конячки» (workhorse; їх ще називають «mini» або «flash») — менші моделі, набагато дешевші й у кілька разів швидші. Класифікація (розкладання за категоріями), вилучення даних (отримання структурованих полів із тексту), стислий виклад, просте переписування тексту, чат — саме на такі завдання припадає 80% реального трафіку в робочих системах.

Зручна аналогія: флагманська модель — це старший інженер, якого кличуть, коли завдання складне, а невеликі моделі — команда, яка щодня розбирає звичайну чергу завдань. Платити старшому інженерові за те, щоб він цілими днями сортував заявки, ніхто не стане.

Для орієнтира: невеликі моделі часто коштують порядку десятків центів за мільйон вхідних токенів, а флагманські можуть бути в 10–30 разів дорожчими. Із затримкою те саме: у флагманських моделей вона більша.

Назви й ціни швидко застарівають

Назви моделей і діапазони цін тут наведено як приклади: вони змінюються що кілька місяців. Чек-лист нижче не застаріє; а от які саме моделі в нього підставляти, доведеться щоразу з’ясовувати наново за актуальними даними.

Чек-лист вибору моделі

Ставте ці запитання щодо кожної нової функції по порядку:

  1. Яке саме завдання? Стислий виклад, класифікація за 5 категоріями, відповіді на запитання за документами чи тексти для користувачів? Що вужче завдання, то меншу модель ви можете собі дозволити.
  2. Скільки коштує помилка? Невдала рекомендація фільму — дрібниця. Неправильна відповідь медичного асистента — судовий позов. Що дорожча помилка, то вагоміший аргумент на користь флагманської моделі.
  3. Скільки контексту потрібно завданню? Порахуйте токени точно: системний промпт + документи + історія діалогу + очікувана відповідь. Якщо виходить 200 тис. токенів, потрібна модель із довгим контекстом. Якщо 2 тис. — підійде майже будь-яка.
  4. Яка затримка припустима? Чату потрібно, щоб перше слово з’являлося помітно швидше ніж за секунду, — інакше користувач устигне помітити паузу. Нічній пакетній обробці — програмі, яка всю ніч перемелює купу завдань, поки ніхто не дивиться на індикатор завантаження, — швидкість байдужа.
  5. Який обсяг? 100 запитів на день: беріть що завгодно, рахунок усе одно буде копійчаним. 10 мільйонів запитів на день: ціна за токен стає бізнес-рішенням.

Коли вистачає невеликої недорогої моделі

Невеликі моделі напрочуд добре справляються з вузькими завданнями. Використовуйте їх, коли:

  • Відповідь структурована: вилучення даних, класифікація, JSON (текстовий формат, який читає програма) заданої форми.
  • Завдання повторюється: те саме перетворення застосовується до безлічі вхідних даних.
  • Результат можна дешево перевірити: регулярним виразом (перевіркою за шаблоном, наприклад «чи схоже це на номер замовлення»), за схемою або людиною, яка в будь-якому разі бере участь у процесі.
  • Промпт без труднощів вміщується в невелике контекстне вікно.

Класична схема: невелика модель обробляє 95% запитів, а складні й неоднозначні випадки передає флагманській. Таку схему називають маршрутизатором (router): дешева модель вирішує, «чи впораюся я сама?», і лише складні випадки йдуть «нагору». Це може скоротити рахунки за LLM на порядок і майже не вплинути на якість.

Коли варто платити за флагманську модель

  • Відкриті завдання, де потрібно міркувати й планувати, особливо в кілька кроків.
  • Генерація коду, коли важлива коректність.
  • Довгі складні документи, де не можна пропустити жодної деталі.
  • Поки незрозуміло, наскільки завдання складне: зробіть прототип на флагманській моделі, а потім пробуйте перейти на простішу модель. У прототипі, який уже працює, це набагато легше, ніж підсилити модель у зламаному прототипі.

Спробуйте: вибір моделі крок за кроком

Step through the pipeline
→→→→→
1. Сформулюйте завдання

Одним реченням: «Вилучити номер замовлення та дату з листів до підтримки».

Якщо не вдається вкластися в одне речення, обирати модель ще зарано.

out› Завдання: вилучити order_no і дату з тексту листа
1/6

Перевірте себе

Перевірте себе

Завдання: «щоночі розбирати 500 листів до підтримки й позначати кожен як billing, bug або other». З якого класу моделей розумно почати?

Чому підхід «спершу флагманська модель, потім перехід на простішу» працює краще, ніж навпаки?

Яку проблему розв’язує схема з маршрутизатором?