Новаком
AI

Локальные LLM или облако: как российскому бизнесу выбрать в 2026

Self-hosted LLM против облачных API: реальная экономика (метрика CPT), приватность под 152-ФЗ и приказ 966, малые модели (SLM) и роутинг запросов. Практика для enterprise на Java/Kotlin.

Н
Новаком
2026-06-18 · 16 минут чтения

Содержание


Спор, который идёт прямо сейчас

В русскоязычных IT-сообществах в 2026-м идёт жёсткий спор, который раскалывает инженеров на два лагеря. Одни говорят: «Зачем возиться с железом, если за копейки есть облачные Haiku, Flash, GigaChat, которые умнее любой локалки?» Другие отвечают: «Это звучит логично ровно до того момента, как ты посчитал деньги на масштабе и подумал о сохранности данных».

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

Мы в Новаком внедряем LLM-решения для enterprise — от чат-ботов по базе знаний до агентских пайплайнов — и почти всегда финальная архитектура оказывается не «или-или», а гибридом. Ниже — как к нему прийти, опираясь на реальные цифры, а не на хайп.

Деньги: почему счёт за API удивляет на масштабе

Облачный API дешёв на пилоте и неприятно дорог в проде. Пока вы гоняете десяток запросов в день, разница незаметна. Когда система обрабатывает сотни тысяч документов, картина меняется.

Главная ловушка — контекст, который вы оплачиваете каждый раз. Если вы каждый запрос прокидываете в облачную модель промптом на 10 000 токенов (инструкции, примеры, кусок базы знаний), вы платите за эти 10К токенов снова и снова. На объёме это превращается в чек, который в конце месяца вызывает вопросы у финансового директора.

Практики предлагают завести в KPI инженеров метрику CPT — Cost Per Token (стоимость одного корпоративного токена). Как только эта цифра появляется в отчётах, «дорогие и сложные» локальные модели внезапно начинают выглядеть привлекательно. По оценкам из обзоров enterprise-внедрений, обслуживание модели на 7B параметров обходится в 10–30 раз дешевле, чем модели на 70–175B, а дообучить 7B под свою узкую нишу стоит порядка пары сотен долларов.

При этом облако в России подешевело: например, Яндекс выпустил Alice AI LLM Flash с ценой около 100 ₽ за 1 млн входных токенов и 200 ₽ за 1 млн выходных ($1.4 / $2.8). Для умеренных объёмов это делает облако разумным дефолтом. Экономика разворачивается в пользу self-hosted на двух условиях: высокий и предсказуемый объём + чувствительные данные.

Правило большого пальца: если ваш месячный счёт за API перевалил за $2 000 и продолжает расти линейно с нагрузкой — пора считать TCO собственного инференса. До этого порога self-hosting чаще всего не окупает возни с железом и MLOps.

Малые модели стали достаточно умными

Ключевое, что изменилось к 2026 году: малые модели (SLM, Small Language Models) перестали быть игрушкой. Несколько исследований это зафиксировали:

  • NVIDIA Research в работе «Small Language Models are the Future of Agentic AI» показали, что для агентских задач (вызов API, парсинг, классификация) модели до 10B параметров предсказуемее и галлюцинируют меньше, чем универсальные гиганты класса GPT.
  • Microsoft с Phi-4 (14B, обучена на синтетических данных) обходит куда более крупные модели в логике и кодинге — и работает в разы быстрее.
  • IBM в исследованиях про SLM подтверждает: связка нескольких специализированных «малышей» бьёт одну универсальную модель по метрике «качество на доллар».

Логика простая: для 80% корпоративных задач сверхразум не нужен. Преобразовать данные, вытащить сущности по ключам, сделать предобработку, классифицировать тикет, перегнать формат — с этим малая локальная модель справляется отлично и заметно дешевле. Один практик метко сравнил это с типичным джуном: он не похож на Opus или флагманский GPT, но рутинную работу делает — и за это ему платят меньше.

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

Приватность и закон

Это та часть, где для российского enterprise теория заканчивается и начинается регуляторика.

Во-первых, закон. Помимо 152-ФЗ о персональных данных есть приказ ФСТЭК № 966, который описывает, как именно нужно обезличивать каждый тип ПД (и для обычных, и для финансовых данных требования различаются). Отправить сырые персональные данные клиентов в публичный облачный API — это не «удобно», это потенциальное нарушение.

Во-вторых, государственный курс. В 2026-м правительство переписывает правила госзакупок (44-ФЗ и 223-ФЗ) под гарантированный спрос на отечественный ИИ. Для контуров КИИ и оборонки нейросети должны быть обучены на суверенных датасетах. Госсектор и корпорации с госучастием обязывают закупать отечественные LLM — характерный пример, когда Объединённая авиастроительная корпорация заявила о проектировании техники с помощью GigaChat. Если вы работаете с госсектором, выбор моделей сужается регулятором, а не вашими предпочтениями.

В-третьих, здравый смысл про IP. Совет «не стройте локальные кластеры, это долго и дорого, несите данные в наше защищённое облако» звучит разумно — но у него есть оборотная сторона. Отдавая корпоративные логи провайдеру, вы рискуете, что на ваших же данных дообучат модель, к которой потом продадут вам доступ по подписке. Для R&D и чувствительных данных закрытый контур — это не паранойя, а защита интеллектуальной собственности.

Вывод: чем чувствительнее данные и чем ближе вы к госсектору, тем сильнее весы качаются в сторону on-prem или гибрида с обезличиванием. Чистое облако без обработки ПД остаётся для публичных, не-персональных данных.

Гибрид побеждает: архитектура роутинга

На практике лучший результат даёт не «всё локально» и не «всё в облако», а маршрутизация запросов между моделями. Идею продвигают и IBM Research (их LLM Routers дают до −85% на инференсе), и LMSYS со своим RouteLLM.

Архитектура из трёх уровней:

  1. Диспетчер (1–3B, локально) — смотрит на запрос и решает, кому его отдать. Дёшево и быстро.
  2. Рабочая лошадка (7–14B, локально) — закрывает ~90% задач прямо на месте. Без облака, без утечек, без счетов.
  3. Эксперт (облачная модель) — только 5–10% по-настоящему сложных запросов (синтез сложных идей, финальный tone of voice, нетривиальный анализ) уходят наверх, где за качество не жалко заплатить.

Скелет такого роутера на Kotlin + Spring Boot:

enum class Tier { LOCAL_SMALL, LOCAL_WORKHORSE, CLOUD_EXPERT }

@Service
class LlmRouter(
    private val classifier: LocalSmallModel,   // 1–3B, диспетчер
    private val workhorse: LocalWorkhorse,      // 7–14B, локально
    private val cloud: CloudExpertClient,       // облачный API
) {
    fun route(req: LlmRequest): Tier {
        // дешёвый классификатор сложности на малой модели
        val complexity = classifier.scoreComplexity(req.prompt)   // 0.0..1.0
        val touchesPii = req.containsPersonalData                 // флаг из пайплайна
        return when {
            complexity < 0.4            -> Tier.LOCAL_WORKHORSE   // рутина
            touchesPii                  -> Tier.LOCAL_WORKHORSE   // ПД не выпускаем
            complexity > 0.8            -> Tier.CLOUD_EXPERT      // редкая сложность
            else                        -> Tier.LOCAL_WORKHORSE
        }
    }

    fun complete(req: LlmRequest): LlmResponse = when (route(req)) {
        Tier.LOCAL_SMALL     -> classifier.complete(req)
        Tier.LOCAL_WORKHORSE -> workhorse.complete(req)
        Tier.CLOUD_EXPERT    -> cloud.complete(anonymize(req))    // см. ниже
    }
}

Обратите внимание на два правила в route(): запросы с персональными данными никогда не уходят в облако напрямую, а большинство трафика остаётся на локальной рабочей лошадке. Это и есть источник экономии и compliance одновременно.

Слой анонимизации

Что делать, когда сложный запрос всё-таки нужно отправить в облако, но в нём есть ПД? Ответ — промежуточный слой обезличивания между формированием запроса и его отправкой. Он кодирует персональные данные перед отправкой и декодирует обратно при приёме ответа. Это рабочий паттерн, который практики уже реализуют как отдельные библиотеки для анонимизации датасетов (с учётом того, что для обычных и финансовых ПД правила различаются — как и требует приказ 966).

Принцип:

@Component
class PiiAnonymizer {
    // прямой проход: ФИО/телефоны/счета → плейсхолдеры, маппинг в памяти запроса
    fun mask(text: String): MaskedPayload {
        val map = mutableMapOf<String, String>()
        var masked = text
        detectors.forEach { d ->
            d.findAll(masked).forEachIndexed { i, m ->
                val token = "<${d.type}_$i>"
                map[token] = m.value
                masked = masked.replace(m.value, token)
            }
        }
        return MaskedPayload(masked, map)
    }

    // обратный проход: плейсхолдеры в ответе модели → реальные значения
    fun unmask(text: String, map: Map<String, String>): String =
        map.entries.fold(text) { acc, (token, real) -> acc.replace(token, real) }
}

В облако уходит текст вида «клиент <NAME_0> с картой <CARD_0> просит…», а пользователь получает уже восстановленный ответ. Облачная модель видит структуру задачи, но не видит персональных данных — и формально, и фактически 152-ФЗ не нарушается.

Когда что выбирать: матрица решения

СценарийРекомендация
Пилот, низкий объём, публичные данныеОблачный API (быстрый старт, минимум MLOps)
Высокий предсказуемый объём, бюджет растёт линейноSelf-hosted workhorse (7–14B) + роутинг
Персональные / финансовые данныеЛокально или гибрид со слоем анонимизации
Госсектор, КИИ, оборонкаОтечественные модели, суверенные датасеты, on-prem
Рутина: парсинг, классификация, предобработкаМалая локальная модель
Редкие сложные задачи: синтез, сложный анализОблачный эксперт через роутер
R&D и чувствительная интеллектуальная собственностьЗакрытый контур, on-prem

Чек-лист перед внедрением

  1. Посчитайте CPT. Без метрики стоимости токена любой спор про «дорого/дёшево» — это спор вслепую.
  2. Разложите пайплайн на этапы. Отделите рутину (отдать локалке) от точек, где нужен интеллект (отдать облаку).
  3. Промаркируйте данные. Где ПД, где коммерческая тайна, где публичная информация — от этого зависит маршрут.
  4. Заложите роутер с первого дня. Даже если сейчас один провайдер — абстракция LlmRouter окупится при первом же изменении цен или закона.
  5. Постройте слой анонимизации, если хоть один сценарий касается ПД и при этом нужен облачный эксперт.
  6. Инструментуйте качество. Валидаторы, линтеры, автотесты вокруг модели поднимают планку даже у малых моделей.
  7. Проверьте регуляторные ограничения (152-ФЗ, приказ 966, требования к суверенным датасетам), если вы рядом с госсектором.

Инфраструктура такого уровня — это не «подключить API», а полноценная backend-разработка: роутинг, обезличивание, кэш, наблюдаемость, деплой моделей. Если нужна команда, которая построит гибридный LLM-контур под ваши данные и нагрузку — это наша разработка ИИ-решений, и шире — заказная разработка ПО на Java/Kotlin под ключ.

FAQ

Локальная модель действительно может заменить облачную?

Для 80% корпоративных задач — да. Рутина (парсинг, классификация, предобработка, извлечение сущностей) отлично решается моделью на 7–14B локально. Сложный синтез и нетривиальный анализ разумнее оставить облачному эксперту через роутер. Полной замены нет — есть разделение труда.

С какого объёма self-hosting окупается?

Ориентир — месячный счёт за API от $2 000, растущий линейно с нагрузкой. До этого порога возня с железом и MLOps чаще не оправдана. После — считайте TCO: 7B-модель в обслуживании в 10–30 раз дешевле гиганта.

Можно ли использовать облако и не нарушать 152-ФЗ?

Да — через слой анонимизации, который заменяет персональные данные плейсхолдерами до отправки и восстанавливает их в ответе. Облачная модель видит структуру задачи, но не сами ПД. Требования к обезличиванию по типам данных описывает приказ ФСТЭК № 966.

Что выбрать для работы с госсектором?

Отечественные LLM, обученные на суверенных датасетах, и развёртывание в закрытом контуре. Для КИИ и оборонки это требование регулятора, а не вопрос предпочтений. Правила госзакупок (44-ФЗ, 223-ФЗ) в 2026-м переписываются именно под это.

Какие модели брать как «рабочую лошадку» локально?

Open-weights модели на 7–14B (семейства Qwen, Phi, Llama и их дообученные под русский язык варианты) на старте. Главное — подобрать под доступную память сервера и дообучить под вашу нишу: узкая специализация бьёт универсальность по качеству на доллар.

РАЗРАБОТКА

Нужна похожая задача?

Обсудим вашу задачу и предложим решение за 30 минут.

Обсудить проект