Files
llm/docs/runbooks/deploy-vllm.md
T

2.5 KiB
Raw Blame History

Deploy vLLM

Цель: поднять первый OpenAI-compatible inference API на docker-gpu.cin.su.

1. Check GPU Host

powershell -NoProfile -ExecutionPolicy Bypass -File scripts/check_gpu_host.ps1

Если SSH ругается на host key, см. docs/runbooks/gpu-host-preflight.md.

2. Prepare Env

Для реального запуска лучше создать локальный .env рядом с compose-файлом:

Copy-Item core/deploy/docker-gpu/vllm/.env.example core/deploy/docker-gpu/vllm/.env

Отредактировать:

  • VLLM_MODEL_ID
  • VLLM_SERVED_MODEL_NAME
  • HOST_MODELS_DIR
  • HOST_HF_CACHE_DIR
  • HF_TOKEN, если модель закрытая

На Windows GPU-хосте используйте проверенный образ VLLM_IMAGE=vllm/vllm-openai:v0.10.2. С драйвером CUDA 12.8 новые образы могут не стартовать из-за требования CUDA 13. После обновления драйвера до CUDA 13.x образ latest проходит CUDA-проверку, но vLLM 0.23.0 на Docker Desktop/WSL падает при старте движка с UVA is not available.

Файл .env не коммитится.

3. Validate Compose

Без запуска:

powershell -NoProfile -ExecutionPolicy Bypass -File scripts/deploy_vllm.ps1 -ConfigOnly

4. Deploy

С .env.example:

powershell -NoProfile -ExecutionPolicy Bypass -File scripts/deploy_vllm.ps1 -Pull

С реальным .env:

powershell -NoProfile -ExecutionPolicy Bypass -File scripts/deploy_vllm.ps1 -EnvFile core/deploy/docker-gpu/vllm/.env -Pull

5. Check Endpoint

powershell -NoProfile -ExecutionPolicy Bypass -File scripts/check_vllm_endpoint.ps1

Или напрямую:

python scripts/check_inference_endpoint.py --base-url http://docker-gpu.cin.su:8000 --expected-model qwen3-4b-instruct --print
python scripts/smoke_chat.py --base-url http://docker-gpu.cin.su:8000 --model qwen3-4b-instruct

6. Stop

docker --host ssh://test@docker-gpu.cin.su compose --env-file core/deploy/docker-gpu/vllm/.env -f core/deploy/docker-gpu/vllm/compose.yaml down

Если для GPU-хоста нужен явный пользователь, передайте его в параметре:

powershell -NoProfile -ExecutionPolicy Bypass -File scripts/deploy_vllm.ps1 -DockerHost ssh://USER@docker-gpu.cin.su -ConfigOnly