﻿# SGLang: когда encoder data parallelism отличается от TP языковой модели

Data parallelism мультимодального encoder в SGLang не равнозначен tensor parallelism языковой части модели.

Автор: Команда Retrivium
Обновлено: 2026-11-01
Канонический URL: https://retrivium.ai/ru/journal/sglang-multimodal-encoder-dp/
Language: ru

Data parallelism мультимодального encoder в SGLang не равнозначен tensor parallelism языковой части модели. Эти компоненты выполняют разные стадии запроса и могут иметь разное размещение. До настройки `mm-enable-dp-encoder` проверьте поддержку конкретной архитектуры и версии. Не переносите коэффициент TP автоматически на encoder и не считайте наличие нескольких GPU доказательством, что любая vision-language модель использует их одинаковым способом во всех фазах.

## Разложите мультимодальный запрос

Сначала изображение или другой поддерживаемый вход преобразуется encoder в представление для языковой модели. Затем language model выполняет свою часть обработки и генерации. [Руководство SGLang](https://docs.sglang.io/docs/advanced_features/dp_for_multi_modal_encoder) описывает data parallel encoder и перечень поддерживаемых моделей. Указание конкретных архитектур важно: флаг не является обещанием поддержки каждой VLM. Сохраните model revision и сведения о разделении компонентов, прежде чем объяснять использование памяти только общим числом параметров checkpoint или размером текстового контекста.

## Проверьте область аргументов

В [server arguments](https://docs.sglang.io/docs/advanced_features/server_arguments) сверяйте параметры encoder отдельно от распределения языковой части. Запишите effective settings, а не только предполагаемый launch command. Если конфигурация содержит TP для language model, укажите, где находятся encoder replicas и как распределяются входы. Ошибка на одной стадии может выглядеть как отсутствие ответа всей модели. Поэтому журнал должен позволять понять, завершилась ли обработка изображения и дошла ли подготовленная информация до text generation, не смешивая эти события в одну startup отметку.

## Пример карточки размещения

Для учебной схемы с двумя GPU составьте строки encoder и language model. В столбцах укажите replication, sharding, тип работы и ожидаемый источник наблюдений. Это схема документации, а не обещание, что любая модель поместится на двух устройствах. Дополните ее одним фиксированным изображением и одинаковым вопросом. Проверяйте размещение по runtime evidence и корректному ответу, а не по факту выделенной памяти на обеих GPU: память может относиться к другим компонентам или служебным буферам.

## Сравните разные профили входа

Для проверки отделите запрос с небольшим изображением от серии с большей encoder нагрузкой, сохранив текстовую задачу и правила вывода. Запишите время encoder, ожидание языковой части и общую задержку, если эти границы доступны. Если ускорилась подготовка изображения, но итоговый ответ не ускорился, исследуйте долю text generation и очередь. Не объявляйте такой результат ошибкой DP. Распределение одной стадии полезно ровно настолько, насколько эта стадия ограничивает полный путь конкретного запроса и не создает дополнительных накладных расходов.

## Приемка и ограничения

Сохраните поддерживаемую архитектуру, версии, карту размещения и fixtures для функционального повторения. Отдельно отметьте, какие входные размеры и concurrency проверялись. Не распространяйте вывод на видео, audio или другую модель только из-за общей маркировки multimodal. После обновления SGLang повторите проверку поддержки и фактического пути. Практический артефакт показывает, какие компоненты реплицированы, какие разделены и где измеряется их работа. Это позволяет оценивать настройку без неверного предположения, что сумма GPU памяти автоматически образует единый доступный бюджет для любой стадии, и без выдуманных утверждений о линейном ускорении encoder при добавлении еще одного устройства.

## Связанные материалы

[GPU-хостинг для мультимодальных моделей: считайте не только текст](/ru/journal/multimodal-gpu-hosting/); [Qwen3-VL: как проверить VRAM на изображениях разной сложности](/ru/journal/qwen3-vl-vram-requirements/).
