Железо под свою модель
Расчёт сервера для локальной языковой модели: видеопамять, PCIe, процессор, память, диск, питание и охлаждение.
Для локальной языковой модели нужна третья машина в дополнение к серверу портала и серверу моделей.
Портал обращается к модели по сети и не управляет её видеокартами. На этой странице перечислены требования к серверу модели.
Этот сервер не заменяет сервер моделей. Служебная модель базы знаний остаётся на нём; третья машина выполняет пользовательские задачи и отвечает в чате.
Из чего складывается требование
Видеопамять рассчитывают для двух составляющих:
- Веса модели. Постоянная величина. В формате
FP8один параметр занимает один байт, поэтому модель на 284 миллиарда параметров требует около 285 ГБ. - Контекст. Объём растёт вместе с длиной обращения и числом одновременных обращений. При длинном контексте он сопоставим с весами.
Число карт определяет сумма памяти для весов и контекста.
Расчёт под DeepSeek V4 Flash
Пример: DeepSeek V4 Flash, контекст до 500 тысяч единиц текста и 10 одновременных
сессий.
| Размер | 284 миллиарда параметров всего, 13 миллиардов работают на каждом обращении |
| Длина обращения | до миллиона единиц текста, вы ограничиваете её сами |
| Картинки | не читает — только текст |
Веса
284 миллиарда параметров в формате FP8 занимают около 285 ГБ видеопамяти постоянно.
Для весов нужны минимум четыре карты по 96 ГБ; память для контекста считается отдельно.
Память под контекст
При 500 тысячах единиц текста и 10 сессиях сервер одновременно держит в памяти 5 миллионов единиц текста. Для модели такого размера контекст требует объём, сопоставимый с весами.
| Конфигурация | Видеопамять | Что получается |
|---|---|---|
4 × RTX 6000 Pro | 384 ГБ | веса помещаются, под контекст остаётся меньше сотни гигабайт — на заявленные полмиллиона и десять сессий не хватит |
8 × RTX 6000 Pro | 768 ГБ | веса плюс почти пятьсот гигабайт под контекст и рабочую память — конфигурация под заявленное |
Картами большего объёма можно обойтись меньшим числом — считается суммарная видеопамять, а не количество, — но само число карт берут степенью двойки: 2, 4, 8, 16. Модель раскладывается между ними поровну, и при другом числе сервер модели не стартует. Чем заменить видеокарты.
Всё остальное в машине — процессор, память, диск, питание — считается от этого числа карт и разобрано ниже, в разделе «Машина вокруг карт».
Точный объём памяти под контекст зависит от устройства модели. Проверьте его запуском
vLLM с нужной длиной обращения и числом сессий. Сервер сообщает доступную память и не
запускается, если заданные пределы не помещаются.
Сколько сессий закладывать
Портал по умолчанию выполняет две задачи одновременно; дополнительную нагрузку создают чаты и разбор файлов. Если постоянной нагрузки от десятков сотрудников нет, задайте меньше 10 сессий: это снизит требование к видеопамяти.
Сокращение максимальной длины обращения также уменьшает требование к видеопамяти. Полмиллиона единиц текста соответствует нескольким тысячам страниц в одном обращении.
По умолчанию портал сокращает переписку после 250 тысяч единиц текста. Если этот предел не изменён при установке, рассчитывать чат на 500 тысяч единиц не нужно. Проверьте настройку до заказа карт.
Машина вокруг карт
Кроме видеокарт производительность определяют линии PCIe, процессор, оперативная память
и диск.
| Что | Требование |
|---|---|
| Видеокарты | 8 × RTX 6000 Pro по 96 ГБ — 768 ГБ видеопамяти |
| Материнская плата | слот PCIe 5.0 на 16 линий под каждую карту, разведённый от процессора (одной карте допустимо отдать восемь) |
| Процессор | один разъём, 128 линий PCIe 5.0, от 32 ядер, базовая частота от 3 ГГц |
| Оперативная память | 192 ГБ минимум, 384 ГБ рабочая величина, все каналы платы заполнены |
| Диск | местный NVMe от 1 ТБ, чтение подряд от 2 ГБ/с |
| Питание | 6–8 кВт с резервированием |
| Корпус | серверный, от 4U, с продувом под пассивные карты |
Материнская плата: линии PCIe
Карты обмениваются данными только по PCIe. У RTX 6000 Pro нет NVLink — моста, которым в серверных
ускорителях карты соединяются напрямую, минуя плату. Всё, чем модель обменивается между
картами — а разложенная на восемь карт модель обменивается на каждом слое каждого
обращения, — идёт через материнскую плату.
Поэтому каждой карте нужен слот PCIe 5.0 с 16 электрическими
линиями, а не только полноразмерный разъём. Слот, который выглядит как
шестнадцатилинейный, но разведён на восемь или четыре линии, карту примет и она
заработает; обмен между картами при этом станет вдвое-вчетверо медленнее, а увидите вы это
только по скорости ответов и ни в одном сообщении об ошибке.
Восемь карт занимают 128 линий. Один процессорный разъём серверной платформы обычно даёт столько же, поэтому для дисков и сети используют один из двух вариантов:
- семь карт на 16 линиях, восьмая на восьми — освободившиеся линии уходят под диски и сеть. Так собрано большинство готовых машин на восемь карт;
- плата с коммутаторами линий — карты делят пропускную способность между собой, зато все получают полную ширину разъёма.
Если процессорных разъёмов на плате два, важно ещё одно: карты, между которыми
раскладывается модель, должны сидеть на линиях одного процессора. Иначе их обмен пойдёт
через мост между процессорами, а он в разы уже, чем PCIe, и станет узким местом всей
машины.
Процессор
Модель считают карты; процессор раздаёт линии, поднимает веса с диска, принимает обращения и собирает ответы.
- Линии важнее ядер. Нужны 128 линий
PCIe5.0 на разъём. Это отсекает настольные процессоры целиком, включая самые дорогие: у них линий втрое меньше. - Ядра — от 32. Считается так: свой рабочий процесс на каждую карту, плюс приём обращений, плюс система. 48–64 ядра — с запасом, больше не нужно.
- Базовая частота — от 3 ГГц. Между процессором на 64 ядра по 3,3 ГГц и на 128 ядер по 2,2 ГГц берите первый. Многоядерные модели набирают ядра, снижая частоту, и на этой машине лишние ядра не компенсируют низкую частоту: от неё зависит скорость одного обращения.
- Предпочтителен один разъём. Второй процессор добавляет межпроцессорный мост, который может ограничить обмен между картами.
Оперативная память
192 ГБ — минимум, 384 ГБ — рекомендуемый объём. Обычной памяти нужно меньше, чем видеопамяти. При запуске файл весов отображается с диска; в оперативной памяти находятся только используемые части.
Под саму работу уходит немного: рабочий процесс на каждую карту — восемь процессов со своей обвязкой, закреплённые буферы обмена с картами, запас под приостановленные обращения, служба и система. Всё вместе — десятки гигабайт, и ни одна из этих статей не растёт от объёма видеопамяти. Отсюда нижняя граница в 192 ГБ.
Разницу между 192 и 384 ГБ делает старт. Каждый из восьми процессов читает файл с весами целиком, выбирая оттуда свою долю. Если веса поместились в кэш памяти, с диска они читаются один раз; если нет — восемь. На 285 ГБ и диске в 2 ГБ/с это разница между двумя с половиной минутами и двадцатью. 384 ГБ — как раз тот объём, при котором веса в кэш помещаются и остаётся место на работу; на платформе с 12 каналами он ещё и набирается ровно, двенадцатью планками по 32 ГБ.
Тот же старт ускоряется и без памяти — если разложить веса по числу карт заранее, каждый процесс читает только свою долю, и время запуска перестаёт зависеть и от памяти, и от числа карт. Это делается на стороне сервера модели и портала не касается.
Правило «обычной памяти в полтора-два раза больше видеопамяти», которое легко найти в описаниях таких машин, к запуску модели не относится: оно считает место под состояние дообучения, которое выносят в обычную память. Для машины, которая модель только запускает, оно завышает требование в три-четыре раза.
Заполняйте все каналы памяти. Серверные платформы дают 12 каналов на процессор, и половина установленных планок — это половина скорости памяти, независимо от их общего объёма.
Отсюда и некруглые числа: на двенадцати каналах объём набирается двенадцатью планками — 192, 288 или 384 ГБ. Круглые 256 ГБ так не раскладываются, и собирают их обычно восемью планками по 32 ГБ, оставляя четыре канала пустыми. Памяти выходит больше, а работает она медленнее, чем 192 ГБ на всех двенадцати.
Диск
Объём — от 1 ТБ. Веса одной модели занимают 285 ГБ; для проверки новой версии без остановки текущей нужно место для двух комплектов весов.
Из скоростей важно последовательное чтение: оно определяет время запуска после перезагрузки. 285 ГБ весов на 2 ГБ/с читаются около двух с половиной минут, на 7 ГБ/с — меньше минуты. Число мелких операций в секунду здесь не важно совсем: модель читается один раз при старте, дальше диск почти не трогают. Этим третья машина отличается от сервера портала, где всё наоборот.
Питание и охлаждение
Восемь карт по 600 Вт — это 4,8 кВт только на карты. С процессором, памятью, дисками и вентиляторами закладывайте 6–8 кВт на машину: столько же, сколько потребляет небольшая серверная целиком, и это подводимая мощность, а не пиковая.
- Блоки питания ставят с резервированием, чтобы отказ одного не гасил машину с восемью картами в ней.
- Карты серверного исполнения пассивные — своих вентиляторов у них нет, воздух через них гонит корпус. В корпусе, не рассчитанном на такой продув, они перегреются и сбросят частоту. Отсюда требование к корпусу: серверный, от 4U, с проверенным производителем режимом на восемь карт.
- Те же 6–8 кВт машина отдаёт в помещение в виде тепла. Это отдельная линия питания и расчёт охлаждения.
- У
RTX 6000 Proесть исполнение на 300 Вт вместо 600. Видеопамять та же, 96 ГБ, ниже скорость счёта — зато восемь карт просят 2,4 кВт вместо 4,8. Когда упирается не в мощность и охлаждение, рассмотрите этот вариант.
Для восьми карт нужны стойка, выделенная линия питания и серверное охлаждение. Учитывайте стоимость размещения при сравнении с облачной моделью.
Приёмка
Выполните три независимые проверки:
- Каждая карта видна на 16 линиях
PCIe5.0 — не на восьми и не на четырёх, кроме единственной, которую вы сами отдали под восемь линий. Это смотрят до всякой модели. - Модель стартует с заявленными пределами — с той длиной обращения и тем числом сессий, ради которых машина покупалась. Это и есть приёмка расчёта видеопамяти, о ней врезка выше.
- Полчаса-час под нагрузкой с наблюдением за температурой и частотами карт. Ошибки продува проявляются не сразу: машина проходит короткий тест и сбрасывает частоту на двадцатой минуте.
Согласуйте предел длины обращения
Длина обращения задаётся на сервере модели и в портале. Укажите одинаковое значение, иначе портал может отправить обращение больше допустимого.
Картинки остаются за служебной моделью
DeepSeek V4 Flash работает только с текстом. Сканы и фотографии документов обрабатывает
служебная модель на сервере моделей.
Проблема появляется, если назначить на разбор картинок именно DeepSeek. Портал такую
установку не запустит: при старте он проверяет, умеет ли назначенная на картинки модель их
читать, и при отрицательном ответе отказывается работать с явным сообщением. Это сделано
намеренно — молча проигнорировать половину базы знаний было бы хуже.
Распознавание текста на сканах — отдельная служба, она работает всегда и от выбора модели не зависит. Речь здесь о другом: о понимании содержимого картинки, когда модель должна увидеть схему или фотографию, а не только вытащенные из них буквы.
Ограничения локальной модели
- На сложных рассуждениях локальная модель может уступать ведущим облачным. Для разбора документов, пересказов и типовых задач разница меньше, чем для многошаговых рассуждений.
- Пропускная способность конечна. Один сервер обслуживает поток обращений по очереди. Если очередь становится постоянной, нужна более мощная машина.
- Сервер требует обслуживания. Нужно контролировать обновления, температуру, сбои и замену компонентов.
Для повседневных и сложных задач можно назначить разные модели — см. смешанный вариант.