LLM API и интеграция
Как не переписывать интеграцию под каждый релиз
Частота релизов выросла быстрее, чем способность команд их осваивать. За последние недели в нашем каталоге позиции приходили и уходили почти ежедневно, у одного вендора исчезла из актуального перечня целая линейка, у другого опубликовано расписание вывода версий на месяцы вперёд. Для интеграции это означает простую вещь: срок жизни конкретного идентификатора модели сократился до месяцев. Если он зашит в код, каждое такое событие — релиз с ревью и выкаткой. Если вынесен наружу — перезапуск. Разбираем, что именно вынести и как обновляться по измеримой причине, а не по факту анонса.
Что вынести из кода
Пять вещей, по убыванию отдачи.
Идентификатор модели. Самое дешёвое и самое полезное. Одна строка в конфигурации вместо константы в коде — и смена позиции перестаёт быть релизом.
Системный промпт. Он меняется чаще кода и не должен требовать выкатки. Заодно появляется возможность откатить формулировку, не откатывая приложение.
Параметры генерации. Длина ответа, уровень усилий рассуждения, ограничители — что они меняют.
Список моделей для маршрутизации. Если у вас разведены простые и сложные запросы, набор должен быть данными, а не кодом — как устроена маршрутизация.
Пороги и лимиты. Максимальная длина запроса, предел эскалаций, пределы расхода.
Всё пять — это конфигурация, а не логика. Их вынесение занимает вечер и окупается на первом же изменении у вендора.

Что оставить в коде
Обратная сторона, чтобы не перестараться.
Проверки результата. Сверка чисел, валидация полей, контроль формата — это логика, и она не должна меняться от смены модели.
Обработка ошибок. Различение видов отказов и стратегия повторов — коды, повторы и fallback.
Границы прав. Что модель может вызвать — решение архитектуры, а не настройка.
Правило простое: в конфигурацию идёт то, что вы захотите поменять, не думая; в коде остаётся то, что нельзя менять не подумав.
Как решать, обновляться ли
Четыре условия. Достаточно одного, но нужно хотя бы одно.
Старая версия уходит. Самая честная причина. Проверяется по страницам моделей у вендора и по полям каталога.
Новая дешевле при том же качестве. Проверяется прогоном выборки.
Новая точнее на вашей задаче. Тоже прогоном, а не по анонсу.
Появилась нужная возможность. Например, проверенная поддержка картинок там, где раньше её не было.
Чего в списке нет: «вышла новая версия». Само по себе это не причина — почему сравнение по анонсам не работает.
Выборка как страховка
Инструмент, который делает всё вышеописанное осмысленным.
Двадцать-двести своих реальных задач с известными правильными ответами. Один раз собрали — дальше каждое обновление проверяется прогоном за минуты, а решение принимается по цифре, а не по ощущению.
Что смотреть при сравнении версий:
Долю правильных ответов. Основное.
Среднюю длину ответа. Новая модель может писать в полтора раза длиннее при той же инструкции — счёт вырастет молча.
Стоимость прогона. Ставки и служебный контекст различаются между позициями.
Долю отказов. Строгость правил у моделей разная, и запросы, проходившие раньше, могут начать отклоняться — как это различать.
Подробно про сбор и ведение выборки — как тестировать нейросеть.
Что ломается тихо
Пять изменений, которые не дают ошибки.
Длина ответов. Растёт — растёт счёт и ломается вёрстка.
Формат. Другая модель оформляет иначе; разбор регулярным выражением перестаёт работать.
Следование промпту. Правила, накопленные под старую версию, на новой работают иначе.
Набор допустимых значений параметров. У одной из недавних моделей из списка уровней рассуждения исчезло значение, которое передавал существующий код.
Обслуживающая модель. Слаг тот же, отвечает другая позиция. Ловится только логированием поля model из ответа.
Последний пункт стоит включить в код прямо сегодня, если его там нет: две строки, и вы будете знать, кто вам на самом деле отвечает — что произошло с одной из линеек.
Порядок обновления
Шесть шагов, занимает вечер.
- Прочитайте поля новой позиции в каталоге: статус протокола, ставку, условия доступа, проверенные возможности.
- Прогоните выборку на текущей модели. Зафиксируйте базовое значение.
- Прогоните на новой. Ничего не меняя в промпте.
- Сравните четыре величины из раздела выше.
- Переключите часть трафика, а не весь.
- Держите откат наготове — одна строка в конфигурации.
Пятый шаг показывает то, чего не видно на выборке: поведение на реальном разнообразии запросов. Подробный разбор перехода — как перейти на другую модель.
Чего это не решает
Три честные оговорки.
Промпт всё равно придётся перепроверять. Он отлаживался под конкретную модель.
Замеры не переносятся. Старые цифры к новой позиции не относятся.
Отключение всё равно потребует внимания. Дешёвый переезд — это минуты вместо спринта, но не ноль.
Как это устроено у нас
Коротко и по делу.
В каталоге на 7 сентября 2026 года 56 позиций в шестнадцати семействах под одним ключом и одним совместимым протоколом. Смена модели — правка строки в конфигурации, без нового договора и новой интеграции.
Статусы, ставки, условия доступа и проверенные возможности публикуются в GET /v1/models без ключа и без регистрации — то есть проверить кандидата можно до того, как что-то менять — как читать эти поля.
Честная оговорка: мы посредник, то есть ещё одно звено. Поэтому запасной маршрут стоит держать в любом случае — и это ровно та же конфигурация, о которой шла речь выше.
Признаки, что пора обновляться
Пять сигналов, каждый проверяется без чтения анонсов.
Позиция сменила статус в каталоге. Ушла в review или исчезла — повод проверить запасной вариант, не дожидаясь отказов.
Поле model в ответе перестало совпадать с запросом. Значит вас уже обслуживает другая модель, и вопрос лишь в том, знаете вы об этом или нет.
Расход вырос без роста нагрузки. Возможно, изменилась ставка или служебный контекст маршрута.
Доля отказов поползла вверх. Строгость правил у вендоров меняется вместе с версиями.
В каталоге появилась позиция того же класса дешевле. Тут решение принимается прогоном выборки, а не сразу.
Все пять видны из ваших же логов и из живой выдачи — при условии, что вы их записываете. Отсюда практический вывод: мониторинг своей интеграции важнее чтения новостей. Анонс расскажет о том, что вышло; логи расскажут о том, что изменилось у вас.
Разумная периодичность — раз в месяц потратить полчаса: сверить статусы используемых позиций, посмотреть на расход в пересчёте на запрос и прогнать выборку на текущей модели. Это дешевле, чем разбираться в аврале, и почти всегда что-нибудь обнаруживает.
Чего мы не утверждаем
Не обещаем, что обновление пройдёт без правок. Обычно правки нужны.
Не сравниваем модели по качеству. Своих замеров мы не делали.
Не обещаем доступности конкретной позиции. Каталог меняется; статус читается перед запросом.
Что нужно, чтобы подготовиться
Ключ заводится за минуту на keydealer.ru/login — почта и пароль, без документов и без зарубежной карты. Оплата российской картой в рублях.
Платные текстовые модели доступны сразу на приветственном бонусе: собрать выборку и прогнать её на паре кандидатов можно без пополнения. Это и есть та подготовка, которая превращает следующее отключение в минуту работы.
И ещё одно: чем дешевле у вас переезд, тем спокойнее вы относитесь к чужим релизам. Команда, у которой смена модели занимает минуту, читает анонсы как информацию; команда, у которой это спринт, — как угрозу. Разница между ними — один вынесенный в конфигурацию идентификатор.
Что держать в голове
Идентификатор модели, промпт и параметры — в конфигурацию. Проверки и обработка ошибок — в код. Эта граница определяет, будет ли обновление перезапуском или спринтом.
И обновляйтесь по измеримой причине: старая уходит, новая дешевле или точнее на вашей выборке. Выход новой версии сам по себе причиной не является.
Как мы проверяем факты и что храним из запросов — на странице о проекте и в llms.txt. Собрать выборку и проверить кандидата: keydealer.ru/login.
Частые вопросы
Почему приходится часто менять модель?
Вендоры выпускают версии быстрее, чем раньше, и отключают старые. Слаг, на котором вы работали полгода назад, может исчезнуть из актуального перечня без отдельного объявления.
Что вынести из кода в первую очередь?
Идентификатор модели. Это одна строка в конфигурации, которая превращает переезд из релиза в перезапуск.
Как понять, что новая версия лучше?
Прогнать одну и ту же выборку своих задач до и после и сравнить долю правильных ответов, длину ответов и стоимость прогона.
Нужно ли обновляться на каждую новинку?
Нет. Обновляться стоит, когда есть измеримая причина: дешевле, точнее на вашей выборке или старая версия уходит.
Как узнать об отключении заранее?
Читать страницы моделей у вендора и следить за полями каталога. Часть отключений проходит без объявления.