vLLM-Omni는 AutoRound 양자화로 추론을 가속화합니다

vLLM-Omni는 AutoRound 양자화로 추론을 가속화합니다

TL;DR

vLLM-Omni는 이제 Intel의 AutoRound PTQ 알고리즘을 완전히 통합하여, 멀티모달 Omni, 확산 비디오 및 다단계 이미지 생성 파이프라인에 대해 한 번 양자화하고 직접 제공하는 워크플로를 제공합니다. 이 통합은 체크포인트 크기를 최대 62%까지 줄이고, 정확도를 유지하거나 약간 향상시키며, Intel XPU B60에서 CFG Parallel 실행을 통해 안내된 생성을 1.55~1.67배 더 빠르게 만듭니다.

소개

vLLM-Omni는 이제 AutoRound 양자화를 지원하여, 간단한 오프라인 양자화 단계 후에 추가 플래그 없이 자동 런타임 감지 및 제공을 제공합니다. AutoRound는 텐서당 세 가지 학습 가능한 매개변수로 반올림과 클리핑을 공동 최적화하는 튜닝 기반 포스트 트레이닝 양자화 방법으로, 추론 시 양자화 오버헤드가 없는 정적 체크포인트를 생성합니다. 이 통합은 vLLM-Omni가 체크포인트 메타데이터를 읽고, quantization_config.quant_method = "auto-round"를 감지하고, 블록을 런타임 모듈로 리매핑하며, 일치하는 컴퓨트 백엔드를 선택함으로써 일반 모델을 로드하는 것과 동일한 제공 API를 유지합니다.

모델 적용 범위

검증된 AutoRound + vLLM-Omni 생태계는 세 가지 주요 멀티모달 패러다임을 다룹니다.

Omni 멀티모달 모델

이 모델들은 통합된 텍스트, 비전 및 오디오 처리 루프를 처리하며, 크로스 모달 임베딩 정렬 과제를 제시합니다.

  • Qwen3-Omni-30B-A3B-Instruct (Intel/Qwen3-Omni-30B-A3B-Instruct-int4-AutoRound) – 대규모 플래그십 멀티모달 모델, vLLM-Omni에 통합 및 검증됨.
  • Qwen2.5-Omni-7B (Intel/Qwen2.5-Omni-7B-int4-AutoRound) – 가볍고低延迟 크로스 모달 엔진, vLLM-Omni에 통합 및 검증됨.

확산 및 다단계 이미지 생성

  • GLM-Image (Intel/GLM-Image-int4-AutoRound) – 다단계 텍스트-이미지 파이프라인, vLLM-Omni에 통합 및 검증됨.
  • FLUX.1-dev (vllm-project-org/FLUX.1-dev-AutoRound-w4a16) – 고충실도 확산 트랜스포머 (DiT), vLLM-Omni에 통합 및 검증됨.
  • BAGEL-7B-MoT (Intel/BAGEL-7B-MoT-int4-AutoRound) – 체크포인트 사용 가능; 런타임 통합 진행 중.
  • Ovis-Image-7B (Intel/Ovis-Image-7B-int4-AutoRound) – 체크포인트 사용 가능; 런타임 통합 진행 중.

비디오 확산

Wan2.2 가족은 vLLM-Omni에서 검증된 AutoRound INT4 체크포인트를 갖춘 최첨단 시공간 비디오 생성 모델을 나타냅니다:

  • I2V-A14B (Intel/Wan2.2-I2V-A14B-Diffusers-int4-AutoRound)
  • T2V-A14B (Intel/Wan2.2-T2V-A14B-Diffusers-int4-AutoRound)
  • TI2V-5B (Intel/Wan2.2-TI2V-5B-Diffusers-int4-AutoRound)

사용법

모든 양자화 및 튜닝 작업을 오프라인으로 유지함으로써, 프로덕션 코드는 고성능 추론에 집중할 수 있습니다.

양자화된 모델로 추론

FLUX.1-dev의 경우, Python API는 일반 vLLM-Omni 로드와 동일하며, केवल 체크포인트 경로만 다릅니다.

from vllm_omni import Omni
from vllm_omni.inputs.data import OmniDiffusionSamplingParams

if __name__ == '__main__':
    omni = Omni(model="vllm-project-org/FLUX.1-dev-AutoRound-w4a16
    outputs = omni.generate(
        "A cat sitting on a windowsill",
        OmniDiffusionSamplingParams(num_inference_steps=28, guidance_scale=3.5),
    )
    outputs[0].images[0].save("output.png

Wan2.2 비디오 모델의 경우, 제공은 표준 vLLM-Omni 명령이며, 요청은 BF16 변형과 동일한 비디오 엔드포인트를 사용합니다.

vllm serve Intel/Wan2.2-T2V-A14B-Diffusers-int4-AutoRound --omni --port 8091
curl -X POST "http://127.0.0.1:8091/v1/videos/sync" \
  -F 'prompt=Cherry blossoms swaying gently in the breeze, cinematic motion' \
  -F 'width=832' -F 'height=480' -F 'num_frames=48' \
  -F 'num_inference_steps=40' -F 'guidance_scale=5.0' \
  --output t2v_output.mp4

Qwen2.5-Omni와 같은 Omni 모델의 경우, OpenAI 호환 채팅 인터페이스는 변경되지 않습니다.

vllm serve Intel/Qwen2.5-Omni-7B-int4-AutoRound --omni --port 8091
curl -s http://localhost:8091/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "Intel/Qwen2.5-Omni-7B-int4-AutoRound",
    "messages": [{"role": "user", "content": "What is 2 + 3?"}],
    "max_tokens": 128
  }'

vLLM-Omni는 체크포인트에서 양자화 메타데이터를 자동으로 감지하므로, 사전 양자화된 AutoRound 모델에는 별도의 --quantization 플래그가 필요하지 않습니다.

새로운 모델 양자화

새로운 체크포인트는 오프라인에서 AutoRound 도구로 생성된 후 vLLM-Omni에 의해 직접 제공되며, 제공 중에는 캘리브레이션 또는 양자화가 발생하지 않습니다.

# FLUX.1-dev
auto-round \
  --model black-forest-labs/FLUX.1-dev \
  --scheme W4A16 \
  --batch_size 1 \
  --disable_opt_rtn \
  --dataset coco2014 \
  --iters 0

# Wan2.2-T2V-A14B
auto-round \
  --model_name Wan-AI/Wan2.2-T2V-A14B-Diffusers \
  --format auto_round \
  --scheme W4A16 \
  --iters 100 \
  --nsamples 32 \
  --batch_size 1 \
  --num-inference-steps 3 \
  --guidance-scale 5.0 \
  --dataset coco2014 \
  --output_dir Wan2.2-T2V-A14B-Diffusers-int4-AutoRound

# Qwen3-Omni-30B-A3B-Instruct
auto-round \
  --model Qwen/Qwen3-Omni-30B-A3B-Instruct \
  --bits 4 \
  --group_size 128 \
  --format auto_round \
  --iters 200 \
  --lr 5e-3 \
  --output_dir tmp_qwen3_omni_w4a16 \
  --trust_remote_code

결과 체크포인트는 config.json에 양자화 메타데이터를 포함합니다:

{
  "quantization_config": {
    "quant_method": "auto-round",
    "bits": 4,
    "group_size": 128,
    "sym": true,
    "packing_format": "auto_round:auto_gptq"
  }
}

AutoRound 및 vLLM 지침에 따르면, 128개의 캘리브레이션 샘플과 약 200회의 최적화 반복이 종종 안정적인 수렴에 충분하지만, 더 크거나 더 민감한 모델은 추가 튜닝으로부터 이익을 얻을 수 있습니다.

품질 검증

확산 모델에 대해, vLLM-Omni는 BF16 참조와 양자화된 후보 간의 동일한 시드 회귀 테스트를 위한 비교 도구를 제공합니다.

python -m vllm_omni.quantization.tools.compare_diffusion_trajectory_similarity \
  --task t2i \
  --reference-model black-forest-labs/FLUX.1-dev \
  --candidate-model vllm-project-org/FLUX.1-dev-AutoRound-w4a16 \
  --prompt "a cup of coffee on the table" \
  --height 512 --width 512 \
  --num-inference-steps 20 \
  --seed 142 \
  --output-json /tmp/flux_similarity/result.json

정량적 평가: 정확도 및 품질

양자화는 모델의 핵심 지능을 보존할 때만 유용합니다. 광범위한 멀티모달 회귀 테스트가 수행되었습니다.

Omni 멀티모달 평가 (OmniBench)

evalscope를 사용하여 100개의 altamente 복잡한 멀티모달 작업(이미지 및 오디오 모달리티 포함)에서, W4A16 모델은 BF16 기준보다 약간 높은 종합 OmniBench 점수를 달성했습니다. OmniBench results comparing BF16 and W4A16 AutoRound quantized variants of Qwen3-Omni-30B-A3B-Instruct.

다단계 확산 평가 (TIIF-Bench)

다단계 텍스트-이미지 시스템에 대해, 성능은 정렬, 구성 및 충실도를 평가하는 9개의 구조적 하위 속성에서 측정되었습니다. TIIF-Bench evaluation across 9 structural sub-attributes for multi-stage text-to-image pipelines. 모든 축에서의 평균 정확도 저하는 약 1.3%이며, 프로덕션 배포에 허용 가능한 범위 내에 안전하게 포함됩니다.

비디오 생성 평가 (Wan2.2)

비디오 파이프라인은 naive 스칼라 양자화 하에서 시간적 일관성 드리프트로 인해 취약합니다; AutoRound는 여러 차원에서 객관적 메트릭을 사용하여 평가되었습니다. Text-to-Video evaluation on Wan2.2 T2V-A14B under W4A16 AutoRound quantization. Image-to-Video evaluation on Wan2.2 I2V-A14B under W4A16 AutoRound quantization. W4A16 AutoRound 하에서, 텍스트-비디오 변형 (T2V-A14B)은 구조적 일관성 메트릭에서 약간의 향상을 보였으며, 이는 클리핑 최적화가 정규화 효과를 제공할 수 있다는 가설과 일치합니다.

성능, footprint 및 제공 벤치마크

VRAM footprint 최적화

W4A16 AutoRound의 1차적 이점은 체크포인트 크기와 실행 메모리 footprint의 극적인 감소입니다. VRAM footprint comparison between BF16 and W4A16 AutoRound across vLLM-Omni model families. W4A16은 BF16 기준 대비 양자화된 가중치 저장소를 원래 가중치 footprint의 약 4분의 1로 줄여 메모리 헤드룸을 제공합니다. 엔드 투 엔드 속도 향상은 이전에 메모리 용량 또는 대역폭으로 병목이 되었던 작업량의 정도에 따라 달라집니다.

메모리 헤드룸을 latency 감소와 교환

5.1절에서 W4A16의 첫 번째 순 메모리 혜택을 확립한 후, 이 사례 연구는 해당 메모리 헤드룸이 어떻게 아키텍처상의 이점으로 전환되는지를 보여줍니다 — 원시 계산 절감만으로는 예측할 수 없는 실제 처리량 향상을 제공하는 GPU 할당 전략을 가능하게 합니다. 모든 벤치마크는 Intel XPU B60에서 수행되었습니다.

W4A16은 최소 하드웨어 요구 사항을 4 GPU에서 단 1 GPU로 줄입니다

BF16 FLUX.1-dev 트랜스포머 (23 GB)는 런타임 활성화를 포함하면 단일 B60의 24.4 GB 용량을 초과하므로, TP=4 (모든 4 GPU)가 필요하여 제공됩니다. W4A16의 7 GB 트랜스포머는 단일 GPU에 편안히 맞으며 19%의 헤드룸을 남깁니다.

W4A16 + CFG Parallel = 안내된 생성에서 1.55x - 1.67x 더 빠름

Classifier-Free Guidance (CFG)는 단계당 두 번의 디노이징 패스를 필요로 합니다 — 하나는 프롬프트와 함께, 다른 하나는 네거티브 프롬프트와 함께. BF16이 텐서 병렬성을 위해 모든 4 GPU를 점유할 때, 이러한 패스는 순차적으로 실행되어야 합니다 (2X 지연). W4A16은 TP=2에 맞춰 2개의 GPU를 확보합니다.これにより、CFG Parallel — 2つのGPUグループ間でガイダンスの両方のブランチを同時に実行することが可能になります。 Latency and memory tradeoff analysis: W4A16 reduces minimum hardware requirement from 4 GPUs to 1, enabling CFG Parallel execution. CFG Parallel execution on Intel XPU B60 achieves 1.55-1.67x speedup over sequential BF16 serving. 핵심 통찰: W4A16의 확산 워크로드에서의 가치는 메모리 서사 이상입니다; 메모리 헤드룸은 원시 디퀀타이제이션 오버헤드만으로는 예측할 수 있는 것보다 더 큰 엔드 투 엔드 속도 향상을 생성하는 병렬성 전략을 가능하게 합니다.

결론

AutoRound는 오프라인 체크포인트 생성, 자동 런타임 감지, 예측 가능한 메모리 절감, 그리고 롤아웃 전 품질 검증 경로를 존중함으로써 vLLM-Omni에 잘 맞습니다. 그 결과는 FLUX 및 Wan에서 GLM, BAGEL, Ovis 및 Qwen Omni에 이르기까지 vLLM-Omni 생태계의 의미 있는 부분을 포괄하는 실용적인 저비트 제공 워크플로입니다. 더 넓은 커뮤니티에 대해, 양자화는 기초 인프라로 성숙했습니다; AutoRound가 모델 가족 및 하드웨어 아키텍처 전반에 걸쳐 호환성을 넓힘에 따라, 멀티모달 성능, 배포 비용 및 출력 품질 사이의 균형을 맞추는 효과적인 경로를 제공합니다. 진행 중인 작업에는 더 넓은 형식 지원 및 모델 가족과 하드웨어 대상 전반에 걸친 지속적인 확장이 포함됩니다. Linear 및 MoE 모듈에 대한 MXFP4 및 MXFP8과 같은 추가 양자화 형식 지원, 그리고 주의 레이어에 대한 저비트 기술 (예: SageAttention) 탐색이 진행 중입니다. 이러한 개선점은 멀티모달 제공의 효율성과 유연성을 가까운 미래에 더욱 확장할 것입니다.

Acknowledgements

vLLM-Omni 팀의 Hongsheng Liu, Shunyang Li, WeiQing Chen 및 Intel의 Chendi Xue에게 AutoRound를 vLLM-Omni에 통합하는 데 놀라운 지원을 제공해 주셔서 특별히 감사드립니다. 또한 vLLM-Omni 커뮤니티에 AutoRound의 빠른 채택에 대해 깊이 감사드립니다.

Sources