Зависимость от поставщика модели снимается не выбором «правильного» провайдера, а тремя решениями, которые принимаются в первую неделю разработки и стоят вместе 38 часов инженера. Никакой поставщик не защищён от того, что у него сменятся условия, вырастет тариф или закроется доступ; защищена бывает только система, которая умеет уйти к другому за дни. Всё остальное — надежда на то, что рынок не изменится, а за последние два года он менялся быстрее любого проекта.

Полезно сразу отделить страх от расчёта. Развязка не бесплатна: она добавляет к смете 114 000 ₽ и требует 60 960 ₽ в год на регулярную проверку. В некоторых проектах эти деньги тратить не нужно — например, в пилоте, который заведомо перепишут. Но решение «мы не будем развязываться» должно быть записано в протоколе вместе с ценой ухода, а не приниматься по умолчанию из-за того, что подрядчику так быстрее.

Ниже — три вида блокировки и что каждая делает с работающим проектом, устройство развязки по слоям, список активов, которые обязаны лежать у вас, порядок квартального учения и признаки в коммерческом предложении, по которым видно, что систему строят без развязки. Все суммы — модельные расчёты на прозрачных вводных при ставке инженера 3 000 ₽/час и методиста базы знаний 900 ₽/час, по состоянию на сентябрь 2026 года.

Три вида блокировки и когда каждая обнаруживается

Слово «зависимость» скрывает три разных механизма с разной ценой и разной скоростью наступления. Их путают, и от этого возникает типовая ошибка: компания заключает договор с российским юрлицом, считает юридический риск закрытым и обнаруживает через год, что уйти всё равно нельзя — по техническим и ценовым причинам.

Вид блокировкиКак выглядитКогда обнаруживаетсяЦена в модельном расчёте
ЮридическаяДоступ просто закрыт: отключён посредник, изменились условия использования, ограничение со стороны регулятораВ день отключения, обычно без предупреждения351 000 ₽ на аварийную миграцию плюс ручная работа во время простоя
ТехническаяСистема написана под один интерфейс: вызовы разбросаны по коду, формат ответа разбирается в пяти местах, сценарии собраны в конструкторе платформыКогда вы впервые пробуете уйти — то есть в худший момент78 часов и 234 000 ₽; если сценарии в конструкторе — 144 часа и 432 000 ₽
ЦеноваяТариф вырос, а уйти дороже, чем терпеть. Формально вы свободны, фактически — нетВ квартальном счёте, обычно через год после запускаПоставщик может поднять счёт на 31 % и остаться выгоднее ухода

Ценовая блокировка — самая недооценённая, потому что не выглядит как авария. Никто не отключает доступ, никто не нарушает договор: просто счёт растёт, а альтернатива требует проекта на месяц. Именно эта разновидность встречается чаще двух других и именно она хуже всего считается на глаз.

сравнениеzavisimost-ot-odnogo-postavshchika-modeli--01
Три колонки блокировок: юридическая, техническая и ценовая с ценой и моментом обнаружения

Сравнение в три колонки одинаковой ширины. Колонка «Юридическая»: подписи «доступ закрыт», «обнаруживается в день отключения», «351 000 ₽ аварийная миграция». Колонка «Техническая»: «система написана под один интерфейс», «обнаруживается при попытке уйти», «78 часов, 234 000 ₽; со сценариями в конструкторе — 144 часа, 432 000 ₽». Колонка «Ценовая»: «тариф вырос, уйти дороже», «обнаруживается в квартальном счёте», «рост счёта на 31 % без развязки». Под колонками общая подпись: «Договор с российским юрлицом закрывает только левую колонку». Чертёжный стиль, подписи по-русски.

Три механизма с разной скоростью: первый бьёт за день, третий — за год

Слой адаптера: что он прячет и сколько стоит

Что это значитАдаптер доступа к модели

Тонкий слой кода между вашей системой и конкретным поставщиком. Система обращается к одному внутреннему интерфейсу — «спроси модель», — а какой именно провайдер за ним стоит, определяется настройкой, а не кодом. Смена поставщика превращается из проекта в замену драйвера. Подробный разбор архитектуры и цифр по каждому критерию выбора — в опорной статье кластера про выбор языковой модели для бизнеса.

Адаптер должен прятать не только вызов. Провайдеры отличаются десятком мелочей, и каждая из них, просочившись в бизнес-логику, добавляет часы к будущей миграции. Полезный список того, что обязано лежать внутри слоя и не встречаться больше нигде.

  • Формат запроса и авторизация — адрес, заголовки, способ передачи ключа. В бизнес-логике не должно быть ни одного упоминания домена провайдера.
  • Вызов внешних инструментов — описание функций, которые модель может вызвать. Формат описаний у провайдеров разный, и это самое частое место утечки специфики наружу.
  • Схема ответа и валидация полей — модель возвращает текст, система ждёт структуру. Разбор ответа должен быть в одном месте, а не в пяти обработчиках.
  • Обработка ошибок, повторы и таймауты — что делать при отказе, сколько раз повторять, через какой интервал. Ниже по коду про ошибки провайдера знать не должны.
  • Лимиты и очередь — ограничение на запросы в минуту у каждого поставщика своё; очередь и деградация при упоре в лимит живут в адаптере.
  • Учёт токенов и журнал вызовов — свой счётчик, свой журнал. Кабинет провайдера считает для биллинга, а вам нужна стоимость одного обращения в разрезе сценариев.
Цена развязки, заложенной на старте проекта
Адаптер: единый интерфейс вызова, схема ответа, повторы и таймауты — 14 ч42 000 ₽
Драйвер второго поставщика сразу, чтобы развязка была проверенной, а не заявленной — 6 ч18 000 ₽
Исходники базы знаний и скрипт сборки индекса в своём хранилище — 8 ч24 000 ₽
Ежедневная выгрузка журнала диалогов к себе — 6 ч18 000 ₽
Переключение поставщика настройкой, без выкладки кода — 4 ч12 000 ₽
Итого38 часов, 114 000 ₽ разово при ставке 3 000 ₽/час — около недели работы одного инженера

Отдельно стоит сказать, чего адаптер не закрывает. Он прячет провайдера, но не спасает от привязки к конструктору сценариев: визуально собранные диалоги живут выше слоя кода и при переезде пересобираются руками. Именно поэтому переезд с платформы на платформу в модельном расчёте стоит 144 часа против 34 — разница целиком в сценариях, и мы разбирали её на сравнении двух российских платформ в материале про GigaChat и YandexGPT.

Что должно лежать у вас, а не в кабинете поставщика

Адаптер — это половина работы. Вторая половина — активы, которые накапливаются по ходу эксплуатации и которые легко оставить на стороне платформы, не заметив этого. Проверка простая: представьте, что завтра личный кабинет поставщика не открывается. Что из перечисленного ниже у вас останется?

АктивГде оказывается по умолчаниюЧто теряется вместе с доступомКак вынести
Исходники базы знанийЗагружены в платформу, индекс построен там жеПереиндексация с нуля другой моделью векторизацииСвоё хранилище файлов плюс скрипт сборки индекса, 8 часов
Промпты и их версииВ конструкторе платформы, без истории измененийВосстановление формулировок по памяти и повторная отладкаОбычный репозиторий или таблица с версиями и датами
Размеченные примеры и эталоныУ подрядчика на его ноутбукеНечем доказать, что новая модель не хуже старой180 примеров в таблице у заказчика; повторная сборка — 50 часов и 91 200 ₽
Журнал диалоговВ кабинете поставщика, срок хранения 30–90 днейНечем пополнять регресс-набор и нечего предъявить в спореЕжедневная выгрузка в свою базу, 6 часов на настройку
Ключи и учётные записиОформлены на сотрудника подрядчикаПотеря доступа при смене подрядчика, а не поставщикаАккаунт на юрлицо заказчика, подрядчику — отдельный ключ
Строка в договор, которая решает половину вопроса

«Исходные документы базы знаний, промпты, набор размеченных примеров с эталонными ответами и журнал диалогов принадлежат заказчику и передаются ему в машиночитаемом виде по первому требованию, а также при завершении работ». Это не про недоверие к подрядчику: регресс-набор переживает и смену поставщика модели, и смену исполнителя, и второй раз он собирается хуже — часть истории дефектов теряется навсегда.

карта связейzavisimost-ot-odnogo-postavshchika-modeli--02
Карта активов: что остаётся у компании и что исчезает вместе с кабинетом поставщика

Карта из двух зон, разделённых вертикальной штриховой границей. Слева зона «Ваш контур»: блоки «исходники базы знаний», «промпты с версиями», «180 размеченных примеров», «журнал диалогов», «ключи на юрлицо заказчика». Справа зона «Кабинет поставщика»: блоки «индекс», «очередь запросов», «биллинг», «модель». Стрелки идут слева направо и подписаны «запрос» и «ответ». Внизу подпись: «Повторная сборка набора примеров — 50 часов и 91 200 ₽». Чертёжный стиль, подписи по-русски.

Проверка простая: завтра кабинет не открывается — что у вас останется

Ценовая блокировка: сколько поставщик может поднять цену безнаказанно

Это самый полезный расчёт в статье, потому что он переводит абстрактную «зависимость» в переговорную позицию. Логика такая: поставщик может повышать цену ровно до тех пор, пока годовая переплата не превысит стоимость вашего ухода. Значит, стоимость ухода — это и есть размер его свободы.

Порог безразличия при 60 000 обращений в месяц
Счёт за модель сейчас: 60 000 обращений × 1,04 ₽62 400 ₽/мес
Уход без развязки: 78 часов × 3 000 ₽234 000 ₽ разово
Те же деньги, разнесённые на год: 234 000 ₽ ÷ 1219 500 ₽/мес
Порог безразличия без развязки: 19 500 ₽ ÷ 62 400 ₽рост счёта на 31 %
Уход с развязкой: 34 часа × 3 000 ₽102 000 ₽ разово
Те же деньги на год: 102 000 ₽ ÷ 128 500 ₽/мес
Порог безразличия с развязкой: 8 500 ₽ ÷ 62 400 ₽рост счёта на 14 %
ИтогоРазвязка снижает потолок безнаказанного повышения цены с 31 % до 14 %. В деньгах это 11 000 ₽ в месяц, или 132 000 ₽ в год

Проверить арифметику несложно: разница между 19 500 ₽ и 8 500 ₽ — это 11 000 ₽ в месяц, то есть 132 000 ₽ за год. И это ровно разница между 234 000 ₽ и 102 000 ₽ — стоимостью ухода в двух вариантах. Подставьте свой объём и свою цену обращения, и вы получите собственный порог. Если ваш счёт за модель меньше 10 000 ₽ в месяц, порог теряет смысл вместе со всей ценовой блокировкой — там развязка нужна ради двух других видов, а не ради денег.

графикzavisimost-ot-odnogo-postavshchika-modeli--03
Столбчатая диаграмма: порог роста счёта 31 % без развязки и 14 % с развязкой

Столбчатая диаграмма с двумя парами столбцов на общей базе «счёт за модель 62 400 ₽/мес». Левая пара подписана «Без развязки»: надстройка над базой 19 500 ₽/мес, подпись «+31 %». Правая пара подписана «С развязкой»: надстройка 8 500 ₽/мес, подпись «+14 %». Между вершинами надстроек — двусторонняя стрелка с подписью «11 000 ₽ в месяц, 132 000 ₽ в год». Ось значений в рублях в месяц, подписи по-русски, чертёжный стиль.

Стоимость вашего ухода — это и есть размер свободы поставщика в переговорах о цене
Развязка — не мультипровайдерность

Из «надо уметь уйти» иногда делают вывод «надо работать сразу с тремя моделями». Это другая, более дорогая ошибка: три поставщика — это три договора, три набора лимитов, три поведения на одном промпте и три регресс-прогона перед каждой выкладкой. Развязка означает, что вы можете переключиться за день, а не что вы постоянно работаете на нескольких. Рабочая конфигурация — один основной поставщик и один проверенный запасной драйвер.

Учение «переключаемся»: четыре часа раз в квартал

Развязка, которую ни разу не проверяли, существует только в документации. За квартал у второго поставщика меняется версия модели, у вас — половина промптов, а ключ резервного аккаунта успевает протухнуть. Поэтому переключение проверяется по расписанию, как проверяют пожарную сигнализацию, а не в момент пожара.

  1. 1
    Шаг 1. Переключить настройку в тестовом контуре

    Если развязка есть, это одно значение в конфигурации и десять минут. Если на этом шаге понадобилась выкладка кода — развязки нет, и остальные шаги можно не делать: результат учения уже получен.

  2. 2
    Шаг 2. Прогнать регресс-набор из 180 примеров

    Один прогон с автоматической частью — три часа методиста и 3 240 ₽. Смотрим не на среднюю оценку, а на список конкретных примеров, которые упали на резервном поставщике: обычно это 5–15 случаев, и почти всегда они про формат ответа, а не про смысл.

  3. 3
    Шаг 3. Записать расхождения в лист подгонки

    К каждому упавшему примеру — одна строка: что именно отличается и какую правку промпта это потребует. Лист живёт рядом с адаптером и на реальной миграции экономит те самые 10 часов подгонки, которые иначе тратятся вслепую.

  4. 4
    Шаг 4. Вернуть основного поставщика и записать дату

    В журнале остаются четыре поля: дата, версия резервной модели, число упавших примеров, время переключения. Через год это уже история, по которой видно, деградирует ли ваша запасная опора.

Стоимость учения складывается из четырёх часов инженера — 12 000 ₽ — и одного прогона регресс-набора за 3 240 ₽. Итого 15 240 ₽ за учение и 60 960 ₽ в год при квартальном ритме. Для системы, где счёт за модель составляет 62 400 ₽ в месяц, это чуть меньше месячного счёта в год — и это самая дешёвая страховка из всех, что бывают в таких проектах.

этапыzavisimost-ot-odnogo-postavshchika-modeli--04
Годовая линия с четырьмя квартальными учениями и стоимостью каждого

Горизонтальная лента на 12 месяцев с четырьмя отметками через равные промежутки. Каждая отметка подписана «учение: переключение, прогон 180 примеров, лист подгонки — 15 240 ₽». Под лентой итог: «60 960 ₽ в год». Справа за пределами ленты — отдельный крупный блок «незапланированный переезд в аврале: 351 000 ₽ и 12 рабочих дней». Чертёжный стиль, подписи по-русски.

Четыре точки в году по 15 240 ₽ — дешевле, чем один незапланированный переезд

Шесть признаков в коммерческом предложении

Развязка почти никогда не обсуждается на этапе выбора подрядчика: она не видна в демонстрации и не влияет на срок запуска. Поэтому её отсутствие приходится вычитывать из документа. Шесть признаков, каждый из которых проверяется за минуту.

  1. 1В смете нет отдельной строки про слой доступа к модели. Формулировки «интеграция с нейросетью» или «подключение ИИ» этот слой не подразумевают — они его как раз и пропускают.
  2. 2Название конкретного поставщика встречается в описании работ пять раз, а слово «драйвер» или «переключение поставщика» — ни разу.
  3. 3Сценарии собираются в конструкторе платформы, и это подано как преимущество по скорости. Преимущество настоящее, цена его — 144 часа при переезде, и она должна быть названа.
  4. 4База знаний «загружается в платформу», а про то, где остаются исходники и кто хранит скрипт сборки индекса, не сказано ничего.
  5. 5Регресс-набор не упомянут вовсе либо упомянут с формулировкой «остаётся у исполнителя». Это тот самый актив, который стоит 91 200 ₽ при повторной сборке.
  6. 6На прямой вопрос «сколько будет стоить переезд на другого поставщика» ответ звучит как «это не понадобится». Правильный ответ — число часов и оговорка, от чего оно зависит.

Ни один из признаков сам по себе не означает, что подрядчик плохой. Четыре из шести означают, что вам продают быстрый запуск за счёт будущей мобильности — и это допустимая сделка, если она заключена сознательно. Как выглядит нормальная приёмка такого проекта, разобрано в материале про выбор подрядчика по автоматизации, а состав работ и гарантии мы описали на странице как устроена работа.

Когда развязкой сознательно пренебрегают

Есть четыре ситуации, в которых 114 000 ₽ на развязку лучше потратить иначе. Общее у них одно: цена ухода либо мала, либо не имеет значения, потому что уходить будет не с чего.

  • Пилот на 4–6 недель, который заведомо перепишут. Задача пилота — понять, работает ли идея на ваших данных. Он не должен пережить решение о запуске, поэтому вкладываться в его мобильность бессмысленно.
  • Малый объём. При 500 обращениях в месяц счёт за модель — около 520 ₽, и ценовая блокировка не существует как явление. Здесь развязка нужна максимум в виде дисциплины хранения исходников, а это часы, а не десятки часов.
  • Модель уже в вашем контуре. Если система работает на локальной модели на своём железе, юридическая блокировка снята по построению. Техническая остаётся: переход с одной локальной модели на другую — это те же промпты и тот же регресс-набор.
  • Осознанная ставка на конструктор. Иногда собрать двадцать сценариев визуально за две недели важнее, чем сохранить возможность уйти за три дня. Это нормальное решение — при условии, что 432 000 ₽ будущего переезда записаны в протоколе, а не выяснятся через год.

И обратная сторона: есть один случай, когда развязка обязательна независимо от объёмов и бюджета. Это процесс, остановка которого останавливает выручку или нарушает обязательство перед клиентом — приём заявок, распознавание первичных документов в закрывающемся периоде, диспетчеризация. Там вопрос не в деньгах, а в том, сколько часов компания может прожить без этого процесса; если ответ измеряется часами, а не неделями, запасной драйвер оплачивается сам собой.

Мобильность системы определяется не тем, сколько поставщиков в неё встроено, а тем, сколько часов занимает переключение на второго.