# vLLM max-model-len: задать длину контекста при запуске

Источник: https://modelium.tech/zhurnal/vllm-max-model-len/

В vLLM `--max-model-len` ограничивает общую длину текста запроса и генерируемого ответа в токенах — небольших частях текста. Для одного учебного запуска можно указать `2048`, найти `Using max model len 2048` в журнале и отправить короткий запрос на локальный адрес сервера. Это уменьшает допустимый контекст, но само по себе не гарантирует, что веса модели поместятся в память видеокарты.

vLLM — программа, которая запускает модель и принимает запросы от других программ. Если длинный запрос не проходит или серверу не хватает памяти, проверьте `--max-model-len`: он задаёт **общий предел для запроса и ответа**, а не число слов или только длину ответа. «Токены» — небольшие части текста, которые считает модель; русские слова не переводятся в токены один к одному. Уменьшение лимита может сократить расход памяти под обработанный текст, но не устранит любую ошибку видеокарты. [s1](#src-s1) [s3](#src-s3)

**Проверено по источникам 31 октября 2026 года:** инструкция для инженера с установленным vLLM v0.32.0 на Linux и совместимой видеокартой NVIDIA (CUDA — её программная платформа для вычислений). Это не домашний рецепт с графическим интерфейсом. Редакция не скачивала веса, не запускала модель на видеокарте и не измеряла память; необходимый объём видеопамяти для вашей модели здесь неизвестен. Если весов ещё нет на компьютере, для их получения нужен интернет. [s4](#src-s4) [s5](#src-s5) [s7](#src-s7)

## Чем число отличается от предела самой модели?

При пропущенном флаге vLLM берёт длину из конфигурации модели. У конкретной `Qwen/Qwen2.5-1.5B-Instruct` закреплённый `config.json` указывает `max_position_embeddings: 32768`; ниже мы **сознательно ограничим** учебный сервер числом `2048`. Это не обещание, что любая видеокарта поместит эту модель. В карточке Qwen есть общая фраза о 128K для серии, но для этой конкретной модели там же указано 32768: не переносите общий показатель серии на этот файл. [s1](#src-s1) [s6](#src-s6) [s7](#src-s7)

`--max-model-len auto` в этой версии — **не** то же, что отсутствие флага: режим `auto`/`-1` пытается выбрать наибольший предел, помещающийся в доступную память GPU, а без флага исходное значение выводится из конфигурации модели. Не начинайте с `auto`, если нужна фиксированная воспроизводимая учебная граница. Значение сверх документированного предела модели обычно отклоняется и принудительное разрешение длинного контекста несёт риск некорректного результата или ошибки; не используйте его ради обхода сообщения. [s1](#src-s1) [s2](#src-s2)

## Как задать 2048 и проверить сервер?

Откройте терминал Linux в окружении, где установлен vLLM v0.32.0. Для примера из официального Quickstart запустите `vllm serve Qwen/Qwen2.5-1.5B-Instruct --host 127.0.0.1 --max-model-len 2048`. Оставьте окно открытым: сервер при успешном запуске принимает запросы на `127.0.0.1:8000`. В журнале найдите `**Using max model len 2048**`: исходный код пишет фактически выбранное число, а не просто повторяет пожелание из команды. Если до готовности сервера появилась ошибка выделения памяти, выбранное число не доказывает успешный запуск. [s1](#src-s1) [s2](#src-s2) [s4](#src-s4)

В **другом** терминале выполните `curl http://127.0.0.1:8000/v1/models` — `curl` отправит запрос локальному серверу. В полученном списке найдите `Qwen/Qwen2.5-1.5B-Instruct`. Затем отправьте короткий учебный запрос: `curl -sS http://127.0.0.1:8000/v1/chat/completions -H 'Content-Type: application/json' -d '{"model":"Qwen/Qwen2.5-1.5B-Instruct","messages":[{"role":"user","content":"Напиши одно слово: тест"}],"max_tokens":32}'`. В ответе в формате JSON (структурированном тексте) ищите поле `choices` с текстом; точный ответ мы не придумываем и не гарантируем. Список моделей подтверждает маршрут к серверу, **не** работу генерации — потому нужен второй запрос. [s4](#src-s4)

После учебной проверки остановите сервер Ctrl+C в первом терминале. Если запрос не помещается в выбранный предел, сократите исходный текст и/или оставьте больше места для ответа: число `2048` охватывает обе части. Для разбора связи между пределом модели и сервером откройте [контекстное окно модели](/zhurnal/kontekstnoe-okno/). [s1](#src-s1) [s4](#src-s4)

## Что делать, если сервер не запускается или запрос отклонён?

Если сервер сообщает, что контекст слишком велик, проверьте длину **всего** отправленного текста, включая предыдущие сообщения диалога, и планируемый ответ; уменьшите ввод либо повторите запуск с большим значением в пределах поддерживаемого моделью и оборудованием. Больший лимит может потребовать больше видеопамяти. Не считайте `--gpu-memory-utilization` эквивалентом `--max-model-len`: первый регулирует бюджет памяти экземпляра, второй — длину контекста. Отдельное ограничение `max_num_seqs` касается числа одновременно обрабатываемых запросов. [s1](#src-s1) [s3](#src-s3)

Если сервер не смог загрузить веса или выделить кеш даже с `2048`, проверьте в журнале точную ошибку, конфигурацию видеокарты и используемую модель. Не объявляйте размер файла весов минимальным объёмом видеопамяти и не увеличивайте предел вслепую. Начните с [общего гайда по vLLM](/zhurnal/vllm/) или [настройки бюджета видеопамяти](/zhurnal/vllm-gpu-memory-utilization/) в зависимости от ошибки. [s3](#src-s3) [s5](#src-s5)

## Источники

1. [vLLM v0.32.0 — ModelConfig: max_model_len, auto, проверка предела и лог](https://github.com/vllm-project/vllm/blob/5df63a7203cdb9328d824a27b682e77c7b9928be/vllm/config/model.py#L245-L257) — получено 2026-10-31
2. [vLLM v0.32.0 — параметры команды serve](https://docs.vllm.ai/en/v0.32.0/cli/serve/#-max-model-len) — получено 2026-10-31
3. [vLLM v0.32.0 — Conserving Memory](https://github.com/vllm-project/vllm/blob/5df63a7203cdb9328d824a27b682e77c7b9928be/docs/configuration/conserving_memory.md) — получено 2026-10-31
4. [vLLM v0.32.0 — Quickstart Online Serving](https://github.com/vllm-project/vllm/blob/5df63a7203cdb9328d824a27b682e77c7b9928be/docs/getting_started/quickstart.md#L206-L232) — получено 2026-10-31
5. [vLLM v0.32.0 — требования к GPU и Linux](https://github.com/vllm-project/vllm/blob/5df63a7203cdb9328d824a27b682e77c7b9928be/docs/getting_started/installation/gpu.md) — получено 2026-10-31
6. [Qwen2.5-1.5B-Instruct — закреплённая конфигурация](https://huggingface.co/Qwen/Qwen2.5-1.5B-Instruct/blob/989aa7980e4cf806f80c7fef2b1adb7bc71aa306/config.json) — получено 2026-10-31
7. [Qwen2.5-1.5B-Instruct — карточка автора конкретной модели](https://huggingface.co/Qwen/Qwen2.5-1.5B-Instruct/blob/989aa7980e4cf806f80c7fef2b1adb7bc71aa306/README.md) — получено 2026-10-31
