Портфолио Услуги Компания Контакты Блог Получить консультацию
uaruen
Мраморный Гефест собирает синий вычислительный модуль в светлой мастерской
ИИ для бизнеса

Локальная языковая модель в изолированном контуре: как выбрать и проверить

Иван Дейнека
Иван Дейнека
Основатель BotLabs
· Обновлено 10 мин чтения
Ключевое: Универсально лучшей локальной модели нет. Для работы без интернета выбирают не «Llama или Qwen» в целом, а конкретные веса, версию и лицензию. Затем проверяют две вещи: как модель справляется с вашими…

Универсально лучшей локальной модели нет. Для работы без интернета выбирают не «Llama или Qwen» в целом, а конкретные веса, версию и лицензию. Затем проверяют две вещи: как модель справляется с вашими документами и действительно ли вся система работает без внешних соединений. Ни название семейства, ни слово «локальная» этого не доказывают.

В статье мы рассматриваем три модели из исследования как примеры классов по размеру: Qwen3-8B, Mistral Small 3.1 24B и Llama 3.3 70B Instruct. Это не рыночный рейтинг и не список новейших моделей на октябрь 2026 года. Эти версии вышли в 2024 и 2025 годах, и к моменту чтения могли появиться более новые. Мы не запускали сравнительные тесты, поэтому не публикуем показатели скорости или качества.

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

Что означает полностью изолированный контур

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

Веса модели. Файлы параметров загружают из репозитория автора. В изолированный контур их переносят заранее и проверяют контрольные суммы. Зафиксируйте точную версию и формат (полная точность или квантированная копия): от них зависят качество и потребность в памяти.

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

Программные зависимости. Сервер инференса, Python-библиотеки, GPU-драйверы и контейнеры собирают из офлайн-зеркала пакетов или переносят готовыми образами. Карточка Qwen3-8B, например, перечисляет инструменты локального запуска: Ollama, LM Studio, MLX-LM, llama.cpp, KTransformers, а для обслуживания запросов — также vLLM и SGLang. У каждого свои зависимости, настройки и лицензия, которые проверяют отдельно от лицензии весов.

Обновления. В изолированном контуре ничего не обновляется само. Это помогает контролю, но усложняет безопасность: исправления уязвимостей в библиотеках тоже нужно доставлять вручную по процедуре.

Журналы. Сервер инференса, прокси, мониторинг и приложение над моделью могут записывать тексты запросов и ответов. Изоляция не отменяет контроля доступа к журналам: там могут оказаться те же конфиденциальные документы, ради которых строился контур.

Сетевые обращения. Закрытость проверяют с помощью сетевых запретов и наблюдения во время реальной работы: при запуске, первом запросе, загрузке документа и перезапуске. Убедитесь, что журналы покрывают нужные сетевые пути: отсутствие записей в неполных журналах не доказывает отсутствие обращений.

Три кандидата как примеры классов

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

ПараметрQwen3-8BMistral Small 3.1 24B InstructLlama 3.3 70B Instruct
Класс размераОколо 8 млрд (8,2 млрд параметров)24 млрд70 млрд
Лицензия весовApache 2.0Apache 2.0Llama 3.3 Community License, отдельная коммерческая лицензия
Контекст по карточке32 768 токенов нативно, 131 072 с YaRNДо 128 тыс. токенов128 тыс. токенов
Языки по карточкеБолее 100 языков и диалектовВ списке языков есть украинский8 языков; украинского нет
Другое из карточкиРежимы с рассуждением и без негоАнализ изображений; рекомендован сервер vLLMЯзыки вне списка считаются непредусмотренным использованием без дообучения

Отдельно о языках: для украинской компании это часто решающий фактор. В карточке Llama 3.3 перечислены восемь поддерживаемых языков: английский, немецкий, французский, итальянский, португальский, хинди, испанский и тайский. Использование других языков в карточке отнесено к непредусмотренному. Разработчикам разрешено дообучить модель для других языков при соблюдении лицензии и политики допустимого использования; ответственность за безопасное применение в этом случае лежит на разработчиках. Поэтому обещать штатную поддержку украинского нельзя. Если она нужна, запланируйте проверку лицензии, адаптацию и отдельное тестирование.

Упоминание языка в карточке тоже не доказывает качество. То, что Mistral Small 3.1 перечисляет украинский, а Qwen3-8B заявляет более ста языков, означает лишь, что авторы их не исключили. Результат на ваших договорах, накладных и письмах покажет только тест.

Три сценария и что в них важно

Поиск ответа по документам. Сотрудник задаёт вопрос, система находит фрагменты документов и просит модель сформулировать ответ со ссылкой на источник. Важны два свойства: отвечать только по предоставленному тексту и корректно сообщать «в документах этого нет». Длинный контекст полезен, но требует больше памяти.

Извлечение данных. Модель читает документ и заполняет поля: номер договора, дату, сумму, контрагента. Важны точность и стабильный формат. Небольшой модели может хватить для узкой задачи, но это подтверждает тест, а не предположение.

Внутренний помощник. Открытый диалог на разные темы: черновики писем, объяснения регламентов, помощь с текстами. Здесь важнее качество языка, следование инструкциям и работа с несколькими пользователями одновременно. Этот сценарий чаще всего подталкивает к более крупной модели — и требует честно посчитать нагрузку.

Лицензии и право использования

У локального развёртывания есть как минимум два уровня лицензий: лицензия весов модели и лицензии программ, которые её запускают. Их нельзя смешивать. Открытый сервер инференса не делает открытыми веса, и наоборот.

Для трёх примеров карточки указывают:

  • Qwen3-8B распространяется по Apache 2.0.
  • Mistral Small 3.1 24B также распространяется по Apache 2.0. Карточка описывает её как открытую лицензию для коммерческого и некоммерческого использования и модификации.
  • Llama 3.3 70B использует отдельную коммерческую Llama 3.3 Community License Agreement. Она включает политику допустимого использования. Дополнительное коммерческое условие распространяется на лицензиата или его аффилированных лиц, чьи продукты или сервисы на дату выпуска Llama 3.3 имели более 700 млн активных пользователей за предыдущий календарный месяц. В таком случае нужно отдельное разрешение Meta; это не универсальный порог, автоматически измеряемый каждый месяц после установки.

При проверке лицензии найдите ответы на четыре вопроса:

  1. Коммерческое использование. Разрешено ли оно без дополнительных условий для вашего типа компании и масштаба?
  2. Распространение. Можно ли передавать клиентам веса или продукт на их основе, например как готовое решение на сервере клиента? Какие требования к уведомлениям и тексту лицензии при этом действуют?
  3. Дообучение. Разрешена ли модификация и распространяются ли условия исходной лицензии на дообученную модель?
  4. Ограничения использования. Есть ли политика допустимого использования и не попадает ли ваш сценарий под запрет?

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

Оборудование и реальная нагрузка

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

Веса. Грубую оценку памяти только под веса можно посчитать самостоятельно: число параметров умножить на байты на параметр. Для 16-битного формата это 2 байта на параметр. Для 4-битного квантования — около 0,5 байта, но реальные форматы добавляют служебные данные.

МодельПараметрыВеса в 16 бит (×2 байта)Веса в 4 бита (×0,5 байта, без служебных данных)
Qwen3-8B8,2 млрд≈ 16,4 ГБ≈ 4,1 ГБ
Mistral Small 3.124 млрд≈ 48 ГБ≈ 12 ГБ
Llama 3.3 70B70 млрд≈ 140 ГБ≈ 35 ГБ

Это только арифметика для весов, а не требование к серверу. Добавьте KV cache, активации, служебную память сервера инференса и запас. Для сравнения: карточка Mistral Small 3.1 указывает около 55 ГБ GPU-памяти для запуска в bf16 или fp16 — заметно больше 48 ГБ самих весов. Та же карточка утверждает, что квантованная модель помещается в одну RTX 4090 или MacBook с 32 ГБ памяти. Это заявление автора при определённых условиях, а не гарантия для вашей длины контекста и числа пользователей.

Контекст. Большое контекстное окно в карточке — максимум, а не рабочий режим. Для длинных документов учитывайте память KV cache на такую длину, умноженную на ожидаемое число одновременных запросов.

Параллельность. Один пользователь и двадцать пользователей в девять утра создают разную нагрузку. Оценивайте пиковый час, а не средний день.

Квантование. Оно сокращает память и может ускорить работу, но может снизить качество на ваших задачах. Поэтому сравнивают не просто модель, а пару «модель + квантование», и её фиксируют в результатах пилота.

Проверка на данных компании

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

Предлагаемый пилот: 60 заданий

Подготовьте 60 обезличенных заданий на одной зафиксированной версии документов:

  • 20 на поиск ответа по документам, включая вопросы, ответов на которые в документах нет;
  • 20 на извлечение полей в заданном формате;
  • 20 на краткое изложение документа.

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

Таблица результатов выглядит так. Ячейки намеренно пусты: их заполняют по итогам измерений.

Модель и квантованиеПамять под нагрузкойПравильные ответыКорректные отказыЗадержка p95Внешние сетевые обращения
Кандидат A, формат Xизмеритьиз 60из вопросов без ответаизмеритьсетевое наблюдение
Кандидат B, формат Yизмеритьиз 60из вопросов без ответаизмеритьсетевое наблюдение
Кандидат C, формат Zизмеритьиз 60из вопросов без ответаизмеритьсетевое наблюдение

«Корректные отказы» показывают, как часто модель честно говорит, что ответа в документах нет, вместо того чтобы его выдумать. Задержка p95 — время ответа для 95% запросов; она лучше среднего описывает пользовательский опыт. Нулевое число сетевых обращений можно записать только при подтверждении сетевыми журналами во время теста, а не по описанию продукта.

Как измерять скорость

Для нагрузочного теста сервера инференса можно использовать vLLM. Его документация объясняет метрики задержки: время до первого токена (TTFT), время между последовательными частями потокового ответа (ITL) и среднее время на выходной токен (TPOT). Там же описаны параметры нагрузки: целевая частота запросов, неравномерность их поступления и предел одновременных запросов. Пример отчёта показывает среднее, медиану и P99. Если нужен именно p95, настройте отчёт или вычислите его по исходным результатам.

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

Ещё одно условие: одинаковый протокол для всех кандидатов. Та же машина и версия сервера, те же настройки генерации и одинаковая длина входных и выходных текстов. Иначе вы сравниваете конфигурации, а не модели.

Эксплуатация без интернета

Пилот завершён, модель выбрана. Теперь начинается часть, которую часто недооценивают: систему нужно годами поддерживать без доступа к внешним репозиториям.

Резервные копии. Храните копии весов, токенизатора, конфигурации, образов контейнеров и пакетов зависимостей вместе с контрольными суммами. Проверьте, что из них можно восстановить рабочий сервер на чистой машине. Проверка восстановления важнее самого факта наличия копии.

Доставка обновлений. Определите, кто загружает новую версию библиотеки или модели за пределами контура, кто проверяет контрольные суммы и лицензию, как файлы попадают внутрь и как выполняется откат. Новая версия модели означает повторный запуск теста на 60 заданий, а не просто замену файлов.

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

Журналы и доступ. Определите, какие тексты запросов и ответов записываются, где и как долго хранятся и кто имеет к ним доступ.

Ответственный инженер. Назначьте человека, отвечающего за конфигурацию, обновления и повторные проверки. Без владельца изолированный контур со временем превращается в сервер, настройки которого никто не помнит.

Что сделать в ближайшее время:

  1. Опишите один сценарий (поиск, извлечение или помощник) и языки, на которых он работает.
  2. Отберите два-три кандидата и проверьте лицензии и языковые ограничения по карточкам.
  3. Рассчитайте память для весов в нужном формате и оцените запас под контекст и параллельные запросы.
  4. Подготовьте 60 обезличенных заданий с эталонными ответами и проведите пилот в одинаковой конфигурации.
  5. Зафиксируйте запрет исходящих соединений и проверьте сетевые журналы во время пилота.
  6. До запуска назначьте ответственного инженера и опишите резервное копирование и обновления.

Часто задаваемые вопросы

Иногда — для конкретной модели, квантования и нагрузки. Например, карточка Mistral Small 3.1 заявляет, что квантованная модель помещается в одну RTX 4090. Но для вашей длины контекста и числа пользователей это нужно измерить: проверьте память и задержку p95 под реалистичной нагрузкой.

Нет. Остаются права доступа к серверу, журналы с текстами запросов, резервные копии, процесс обновления и возможные внешние соединения отдельных компонентов. Локальный запуск устраняет один риск — передачу данных внешнему поставщику модели, — но не остальные.

Да. Качество на рабочих языках проверяют на характерных документах компании, а не выводят из общего рейтинга или списка языков в карточке. Для Llama 3.3 это особенно важно: украинского нет среди восьми перечисленных языков.

Получить консультацию

15 мин · консультация специалиста

Консультация по локальной языковой модели

За 15 минут со специалистом по AI-интеграциям обсудим одну задачу, языки документов и пиковую нагрузку. Определим, с какого теста начать выбор модели для вашего закрытого контура.

15 минут со специалистом.

КОНСУЛЬТАЦИЯ ДЛЯ БИЗНЕСА
РАБОЧАЯ ЗАДАЧА → ПИЛОТ МОДЕЛИ → СЛЕДУЮЩИЙ ШАГ

Рабочая задача
Пилот модели

15 минут со специалистом: определим первый тест модели на ваших задачах и рабочих языках.

консультация по AI-интеграциям15 мин · консультация специалиста
… нажмите, чтобы поддержать
Поделиться: Telegram LinkedIn Facebook
Иван Дейнека
Иван Дейнека
Основатель BotLabs
Иван Дейнека — основатель BotLabs Agency. Более 8 лет работает с цифровыми продуктами и автоматизацией бизнеса.
← Назад в Блог

Рекомендуемые статьи

Локальная модель для бизнеса15 минут со специалистом.Получить консультацию