Перейти к содержанию
modelium.
Начать с задачи
←

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

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

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

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

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

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

--max-model-len auto в этой версии — не то же, что отсутствие флага: режим auto/-1 пытается выбрать наибольший предел, помещающийся в доступную память GPU, а без флага исходное значение выводится из конфигурации модели. Не начинайте с auto, если нужна фиксированная воспроизводимая учебная граница. Значение сверх документированного предела модели обычно отклоняется и принудительное разрешение длинного контекста несёт риск некорректного результата или ошибки; не используйте его ради обхода сообщения. s1 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 s2 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

После учебной проверки остановите сервер Ctrl+C в первом терминале. Если запрос не помещается в выбранный предел, сократите исходный текст и/или оставьте больше места для ответа: число 2048 охватывает обе части. Для разбора связи между пределом модели и сервером откройте контекстное окно модели. s1 s4

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

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

Если сервер не смог загрузить веса или выделить кеш даже с 2048, проверьте в журнале точную ошибку, конфигурацию видеокарты и используемую модель. Не объявляйте размер файла весов минимальным объёмом видеопамяти и не увеличивайте предел вслепую. Начните с общего гайда по vLLM или настройки бюджета видеопамяти в зависимости от ошибки. s3 s5

Источники

  1. vLLM v0.32.0 — ModelConfig: max_model_len, auto, проверка предела и лог — revision 5df63a7203cdb9328d824a27b682e77c7b9928be; Также строки 2129–2153 и 2527–2666; сохранённая копия и SHA в research/raw/2026-10-31/seo/vllm-max-model-len/.. Получено 31.10.2026.
  2. vLLM v0.32.0 — параметры команды serve — revision v0.32.0 / 5df63a7203cdb9328d824a27b682e77c7b9928be; Официальный версионированный HTML и SHA сохранены; отсутствие флага, auto и k/K различаются.. Получено 31.10.2026.
  3. vLLM v0.32.0 — Conserving Memory — revision 5df63a7203cdb9328d824a27b682e77c7b9928be; Раздел Context length and batch size; пример 2048 и предупреждение о памяти.. Получено 31.10.2026.
  4. vLLM v0.32.0 — Quickstart Online Serving — revision 5df63a7203cdb9328d824a27b682e77c7b9928be; Точная модель Qwen, localhost:8000, /v1/models и /v1/chat/completions в строках 276–288.. Получено 31.10.2026.
  5. vLLM v0.32.0 — требования к GPU и Linux — revision 5df63a7203cdb9328d824a27b682e77c7b9928be; Предусловия конкретного GPU-пути; объём VRAM зависит от модели и настроек.. Получено 31.10.2026.
  6. Qwen2.5-1.5B-Instruct — закреплённая конфигурация — revision 989aa7980e4cf806f80c7fef2b1adb7bc71aa306; max_position_embeddings 32768; числовое поле не является требованием к VRAM.. Получено 31.10.2026.
  7. Qwen2.5-1.5B-Instruct — карточка автора конкретной модели — revision 989aa7980e4cf806f80c7fef2b1adb7bc71aa306; Карточка указанной в vLLM Quickstart модели, лицензия Apache-2.0, русский язык по заявлению автора; общий текст про 128K относится к серии, конкретный вариант указан как 32768.. Получено 31.10.2026.