До кінця 2025 року ми керували всім, що стосується чату, безпосередньо через OpenAI. Один акаунт, один ключ, один рахунок. У січні 2026 року ми перейшли на мульти-модельний агрегатор. Ось що насправді сталося.

Що ми мали

  • OpenAI enterprise tier — $~$8k/місяць на всіх поверхнях
  • Усі завершення чату на gpt-4o або gpt-4o-mini
  • Одна модель для вбудовування, одна модель зображень (DALL-E 3)
  • Пряма інтеграція SDK у чотирьох сервісах

Що спричинило перехід

  • Claude Opus 4.6 показував помітно кращі результати на наших оцінках агентного кодування
  • Gemini 3 Pro став явним переможцем для аналізу документів з довгим контекстом
  • Ми хотіли протестувати моделі з відкритим кодом (DeepSeek, Llama 4) без розгортання інфраструктури для інференсу
  • Керування п'ятьма постачальниками означало п'ять контрактів, п'ять циклів виставлення рахунків, п'ять панелей обмеження швидкості

Міграція

Ми перейшли на агрегатор, сумісний з OpenAI (власне, цей — ми використовуємо власний продукт у виробництві). Вся зміна полягала в заміні baseURL і apiKey у SDK. Різниця в коді становила 8 рядків у чотирьох сервісах.

// До
const openai = new OpenAI({ apiKey: process.env.OPENAI_KEY });

// Після
const openai = new OpenAI({
  apiKey: process.env.AIGEN_KEY,
  baseURL: 'https://aimarcus.eu/aigenerate/api/v1',
});

Що змінилося в рахунку

  • Чат (GPT-4o → змішаний GPT-4o + Claude Sonnet в залежності від завдання): -22%
  • Агентне кодування (перейшли на Claude Opus): +8%, але оцінки покращилися на 15 пунктів
  • Аналіз довгого контексту (перейшли на Gemini 3 Pro): -40%
  • Генерація зображень (перейшли з DALL-E 3 на Nano Banana): -65%

Загальний ефект на місячний рахунок: -28%. Кращий вибір моделей на кожній поверхні + нижчі ставки за токен від агрегаторів, з якими нам не потрібно домовлятися безпосередньо.

Три речі, які пішли не так

  • Різниця у форматі потокового SSE. Claude транслює трохи інакше, ніж OpenAI. Наша логіка буферизації на стороні клієнта зламалася на 10 хвилин, поки ми не додали сумісний шар.
  • Підрахунок токенів. Різні моделі токенізують по-різному. Наш внутрішній показник "використаних токенів на розмову" потрібно було переналаштувати для кожної моделі.
  • Кешування за ключем назви моделі. Наш кеш підказок використовував gpt-4o як ключ. Коли ми почали направляти деякі запити до Claude, ми отримали застарілі хіти кешу. Урок: завжди включайте модель у ключі кешу.

Чи зробили б ми це знову?

Так — з трьох причин, не пов'язаних з вартістю.

  • Опціональність. Коли OpenAI мав 40-хвилинний збій 3 квітня, наша чат-поверхня продовжувала працювати, оскільки трафік автоматично перейшов на Anthropic і Gemini. Це саме по собі варте міграції.
  • Паритет моделей закінчився. У 2026 році немає "найкращої моделі". Є найкраща модель для кожного завдання. Агрегація — це спосіб дійсно використовувати цей факт.
  • Один рахунок. Фінансовий відділ хотів цього більше, ніж інженерний. Один рахунок, одне відношення з постачальником, один контракт для 12 постачальників.

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