Поиск
Как мы создали суверенный ПАК с LLM, подружив DeepSeek-R1 с отечественными процессорам ARM64, NVIDIA A100 и все это в составе 100% отечественного сервера
Новости 16.06.2026

Мы хотим поделиться с вами нашим опытом запуска LLM модели с открытым кодом на сервере собственной разработки. Сразу скажем, мы не сделали нечего революционного, LLM на GPU‑ускорителях запускали и используют многие. Но запустить LLM с открытым кодом на 100% отечественном сервере, построенном на отечественных процессорах архитектуры ARM64 с двумя NVIDIA Tesla A100, в изолированном контуре, и чтобы она работала устойчиво, без падений, это оказалось нетривиальным квестом.

Большие языковые модели (LLM) – это очень большие модели глубокого обучения, обученные на огромных объемах данных. Лежащий в основе трансформер – это набор нейронных сетей с множеством параметров с возможностью самонаблюдения. Их называют «ИИ», потому что они умеют обобщать, писать код, отвечать на вопросы и даже шутить. Но под капотом — матричные умножения, attention и гигабайты весов.

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

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

•        Как отечественные процессоры с архитектурой ARM64 (48 ядер на сокет) справляются с инференсом LLM;

•        Насколько эффективно работает связка ЦПУ с архитектурой ARM64 от отечественного чипмейкера и GPU-ускорители от североамериканского производителя;

•        Можно ли эффективно использовать два ускорителя NVIDIA Tesla A100 без NVLink;

•        Сколько типовой пользователь затратит времени на развертывание аналогичной системы.

Вариантов выбора LLM было несколько: Llama 3, Qwen, Mistral, российские модели… Мы выбрали DeepSeek-R1-70B в квантизации Q4_K_M по нескольким причинам:

•        Открытая модель — можно установить и использовать без ограничений;

•        Достаточно мощная для начала (тестовая генерации документации, помощь в отладке, код-ревю (code review));

•        Контекстное окно в 128000 токенов гарантированно поместится в VRAM двух GPU-ускорителей;

•        Скромная ресурсоёмкость — 70B параметров в 4-битном виде с окном в 128000 токенов весят примерно по 42 ГБ на каждый ускоритель NVIDIA A100. Это оставляет запас для будущих экспериментов, так как на каждом ускорителе установлено по 80 ГБ VRAM;

•        Популярность и отзывы — модель показала себя неплохо на бенчмарках и в реальном использовании.

Позже мы планируем экспериментировать с Qwen3 72B или 200B+ с RAG (Retrieval- Augmented Generation).

Давайте посмотрим в какой конфигурации аппаратной платформы работает выбранная LLM. Как уже отмечено выше, мы использовали универсальный модульный сервер «М1»:

•        Сервер М1 в исполнении для инфраструктуры стоек 19”; 

•        Шасси: М1РШ (19″, 6U, 4хCRPS 3000 Вт, до 10 вычислительных модулей);

•        Вычислительный модуль MB26: 2 процессора × ARM64 (48 ядер на сокет), 384 ГБ DDR4-3200 ECC (12х32 ГБ), 2х NVIDIA Tesla A100 80GB PCIe (без NVLink), 2х 256 ГБ NVMe М.2 для системы, 1GbE. Возможна установка до 8 SSD накопителей M.2 NVMe, но в данной конфигурации они не использовались, так же как не использовались 2 штатных порта 25 Гб/с. 

сервер 1.jpg

Почему мы выбрали именно такую конфигурацию?

•        MB26 — модель вычислительного модуля, спроектированная для задач ИИ, которая позволяет размещать 2 полноразмерных GPU-ускорителя (двойная ширина, два слота PCIe x16).

•        Системная плата «Ключевская» с двумя процессорами отечественного чипмейкера на борту, 12 слотами оперативной памяти и двумя дисками SSD для размещения ОС или гипервизора. Для подключения GPU-ускорителей используются райзеры PCIe x16 4.0. 

•        2х NVIDIA Tesla A100 — золотой стандарт для LLM: 80 ГБ HBM2e, Tensor Cores, поддержка FP16/BF16/INT8. GPU Nvidia A100, установленные в райзеры благодаря огромным пассивным радиаторам, занимают почти всё внутреннее пространство верхней (или правой в вертикальном положении) части вычислительного модуля.

•        384 ГБ ОЗУ — не максимум, но достаточно для будущих больших контекстов и нескольких параллельных запросов, оптимально.

Важный нюанс с NUMA: наша платформа привязывает GPU к разным NUMA-узлам:

•        GPU0 → потоки 0-47,

•        GPU1 → потоки 48-95.

Это осознанное решение и в процессе тестирования, мы увидели, что это положительно сказывается на производительности при параллельной обработке множественных запросов. Модель 70B в Q4_K_M весит 42 ГБ. Один ускоритель A100 80 ГБ мог бы обрабатывать ее целиком, но:

•        Тогда пропадает возможность параллельной обработки разных запросов на разных GPU и при запросах от десятков пользователей задержка ответов LLM может возрасти.

•        Мы теряем NUMA-оптимизацию (каждый GPU-ускоритель работает со «своим» центральным процессором (CPU)). Tensor parallelism (разрезание матриц) даёт небольшой выигрыш в скорости на больших батчах.

•        Мы не смогли бы проверить работу сразу двух GPU-ускорителей, а нам необходимо было это сделать.

Сервер_2.jpg


Процесс установки ПО подробно рассмотрен в статье, которую мы в ближайшее время разместим на Хабр. Если кратко, то мы использовали ОС Debian 13 (trixie) как наиболее простую в настройке, а драйверы NVIDIA и CUDA работают на процессоре с архитектурой ARM64, но есть свои особенности.

Что в итоге мы получили? Добились ли того, чего хотели получить – работоспособную LLM, решающую задачи компании в различных областях, от бэкофиса до разработки железа? 

Основные метрики Загрузка GPU (написание короткого фрагмента документации):

•        Prefill (обработка входа) — около 600 токен/с.

•        Generation (декодинг) — 20–23 токен/с.

Это быстрее, чем чтение человеком. Для двух параллельных пользователей скорость падает до ~19-21 токен/с на каждого — всё ещё комфортно.

Поскольку мы планируем использовать данную LLM модель для боевого применения, мы задали модели несколько провокационных вопросов:

•        «На каких процессорах ты исполняешься?» Модель честно ответила (перефразирую): «Я выполняюсь на двух GPU NVIDIA A100, а CPU управляют вводом-выводом, планированием и prepost-обработкой. Мои матричные вычисления идут на Tensor Cores A100, CPU почти не участвуют в генерации.» То есть центральные процессоры выступают в роли дирижёров оркестра из GPU и не играют большой роли при выполнении данной задачи. Это закономерно для задач LLM, поэтому можно было бы использовать менее производительные процессоры, или даже один.

•        «Как решение на базе российского центрального процессора и open‑source LLM может обеспечить технологический суверенитет?»

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

1.jpg

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

И да, мы не говорим, что уже полностью независимы от решений компании NVIDIA. Но мы делаем первый шаг: учимся запускать LLM на российском CPU + любых доступных GPU. В планах использование российских ускорителей, тем более что ранее мы уже успешно протестировали совместимость нашей серверной платформы с ускорителями компании «ХайТек» и сейчас проводим тестирование ускорителей еще одной российской компании. В планах подтверждении совместимости наших серверов «М1» и «М2» со всеми существующими отечественными ускорителями для задач ИИ.

Текущая установка — это тестовый прототип. В ближайших планах:

•        Развернуть Qwen3-72B (или даже 235B) — более мощную LLM модель с открытым кодом.

•        Добавить RAG — «прикрутить» векторную базу данных (например, Qdrant или Chroma), чтобы модель отвечала на вопросы по нашей внутренней документации (технические описания, схемы, протоколы испытаний).

•        Увеличить контекст до 256k токенов — чтобы можно было загрузить целиком большой кусок кода или документ.

•        Перевести сервер в полностью изолированный контур (без доступа к внешней сети), закэшировав все зависимости.

Предвосхищая очевидные вопросы, ответим на самый очевидный из них: почему не отечественная LLM модель? Это сугубо наше понимание и мнение, возможно, оно ошибочное и наши уважаемые подписчики нас поправят, но мы выяснили следующее:

•        GigaChat (Сбер) — закрытая модель, для локальной установки требуется коммерческая лицензия и специализированное железо.

•        YandexGPT (Яндекс) — также закрытая модель в облачном исполнении, локальной версии нет.

•        Открытые разработки отдельных команд — часто отстают по качеству от DeepSeek- R1 или Llama-3-70B на бенчмарках.

•        Другие отечественные модели, мы пока не пытались тестировать. 

Мы очень хотели бы использовать отечественные LLM модели, когда они будут предоставляться в варианте с открытым кодом. Наше решение не привязано к конкретной модели — благодаря llama.cpp мы можем подставить любую модель в формате GGUF: российскую, китайскую, американскую.

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

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

•        Разрабатывают, собирают и тестируют кластеры из десятков узлов, суперкомпьютеры в сотни узлов, в том числе, ориентированные на использование ИИ. В целом создают решения, ориентированные на ИИ, облачные нагрузки, большие данные, контейнеры и виртуализацию. Это наше второе направление, которое постепенно расширяется в сторону наращивания компетенций в развертывании и настройке кластерной сети (RoCE, InfiniBand) для многоузловых (часто распределенных) комплексов, настройке работы специфических приложений заказчика в среде контейнеризации, портировании (как совместно с производителем ПО, так и самостоятельно) прикладного ПО на архитектуру ARM64, в том числе AI-фреймворков, как в данном проекте. 

Мы не пытаемся удивить мир чем-то сверхновым. Мы просто показываем реальный рабочий прототип, где LLM работает на отечественных процессорах с архитектурой ARM64 и двух NVIDIA Tesla A100. Мы задокументировали все грабли, и готовы помочь Вам, чтобы Вы не наступали на них, если решите повторить. Мы готовы реализовывать проекты по созданию ПАК для задач ИИ и помогать с внедрением у заказчиков. Хотите такую же локальную LLM в закрытом контуре? Обращайтесь!

Видеоверсия этого кейса — скоро появится на наших официальных каналах, и ссылка будет добавлена здесь и в описании.

Спасибо, что прочитали и проявили интерес к нашей работе!

Медведь-рука-5.jpg