LMDeploy

Effizientes Toolkit zur Bereitstellung von LLMs vom Shanghai AI Lab — inference, Quantisierung und Serving in Produktionsqualität für große Sprachmodelle mit kontinuierlicher Bündelung und PagedAttention.

🏛️ Entwickelt von OpenMMLab / Shanghai AI Lab | Apache-2.0-Lizenz | 4.000+ GitHub-Sterne


Was ist LMDeploy?

LMDeploy ist ein umfassendes Toolkit zum Komprimieren, Bereitstellen und Servieren großer Sprachmodelle in der Produktion. Entwickelt vom selben Team hinter OpenMMLab (MMDetection, MMSeg), bringt es forschungsnahe Optimierungen in die praktische Bereitstellung:

  • TurboMind-Engine — leistungsstarkes C++-Inference-Backend mit CUDA-Optimierungen

  • PyTorch-Engine — flexibles, Python-basiertes Engine für breite Modellkompatibilität

  • Kontinuierliches Batching — maximiert die GPU-Auslastung bei gleichzeitigen Anfragen

  • PagedAttention — effizientes KV-Cache-Management (ähnlich wie vLLM)

  • 4-Bit- / 8-Bit-Quantisierung — Unterstützung für AWQ und SmoothQuant

  • Vision-Language-Modelle — Unterstützung für InternVL, LLaVA, Qwen-VL

Im Vergleich zu vLLM liefert LMDeploys TurboMind-Engine etwa 1,36× höheren Durchsatz auf Llama 3 8B bei batch=32, und seine AWQ-Quantisierung ist erstklassig — kein Nachgedanke. Für VLMs (insbesondere InternVL2) ist LMDeploy der Referenz-Deployment-Stack.

Warum LMDeploy?

Funktion
LMDeploy
vLLM
TGI

Kontinuierliches Batching

AWQ-Quantisierung

Spekulatives Decoding

Vision-Language

Begrenzt

Begrenzt

OpenAI-API

TurboMind (benutzerdefinierte Engine)


Schnellstart auf Clore.ai

Schritt 1: Wählen Sie einen GPU-Server

Auf clore.aiarrow-up-right Marktplatz:

  • Minimum: NVIDIA-GPU mit 8 GB VRAM (für 7B-Modelle)

  • Empfohlen: RTX 3090/4090 (24GB) oder A100 (40/80GB)

  • CUDA: 11.8 oder 12.x erforderlich

Schritt 2: LMDeploy Docker bereitstellen

Port-Mappings:

Container-Port
Zweck

22

SSH-Zugriff

23333

LMDeploy API-Server

Umgebungsvariablen:

Schritt 3: SSH und Überprüfung


Starten des API-Servers

OpenAI-kompatibler Server (empfohlen)

PyTorch-Engine (breitere Kompatibilität)

Server-Startausgabe

circle-check

Unterstützte Modelle

Textmodelle

Vision-Language-Modelle


Quantisierung

AWQ 4-Bit-Quantisierung

LMDeploys AWQ (activation-aware weight quantization) liefert exzellente Qualität bei 4 Bit:

SmoothQuant W8A8

8-Bit-Gewichts- und Aktivierungsquantisierung (besser für durchsatzkritische Deployments):

Auswirkungen der Quantisierung

Quantisierung
VRAM (7B)
Qualitätsverlust
Durchsatzgewinn

Keiner (bf16)

~14GB

Keiner

Baseline

SmoothQuant W8A8

~8GB

Minimal

+20%

AWQ W4A16

~4GB

Gering

+15%

GPTQ W4A16

~4GB

Gering

+10%

circle-info

AWQ-Empfehlung: Für die meisten Anwendungsfälle ist AWQ 4-Bit die beste Balance zwischen Qualität und VRAM-Einsparung. Verwenden Sie --w-group-size 128 für bessere Qualität bei etwas höherem Speicherverbrauch.


API-Nutzungsbeispiele

Python-Client

Streaming

LMDeploy Native Python-Client

Vision-Language-Modell


Multi-GPU-Bereitstellung

Tensor-Parallellität


Erweiterte Konfiguration

TurboMind-Engine-Konfiguration

Generierungs-Konfiguration


Überwachung & Metriken

Server-Health prüfen

GPU-Überwachung


Docker-Compose-Beispiel


Benchmarking

Beispielausgabe (RTX 4090, TurboMind, bf16):

Auf einer A100 80GB erwartet man bei hoher Parallelität etwa 2,2× höheren Durchsatz gegenüber einer RTX 4090 wegen der HBM2e-Speicherbandbreite (2 TB/s vs. 1 TB/s).


Clore.ai GPU-Empfehlungen

Wählen Sie basierend auf der Zielmodellgröße und der Serving-Last:

Anwendungsfall
GPU
VRAM
Warum

7–13B-Modelle, Entwicklung/Staging

RTX 3090

24 GB

Bestes $/VRAM-Verhältnis; unterstützt 7B bf16 oder 13B AWQ

7–13B-Modelle, Produktion

RTX 4090

24 GB

~40% schneller als 3090 bei gleichem VRAM; 412 tok/s auf Llama 3 8B

70B-Modelle, Team-Serving

A100 40GB

40 GB

Passt 70B AWQ; ECC-Speicher für Zuverlässigkeit

70B-Modelle, hoher Durchsatz

A100 80GB

80 GB

Passt 70B bf16; 2× Durchsatz vs A100 40GB bei batch=32

Budget-Wahl: RTX 3090 + AWQ 4-Bit — bedient Llama 3 8B mit ~280 tok/s bei batch=8, deckt die meisten API-Anwendungsfälle ab.

Geschwindigkeits-Wahl: RTX 4090 — am schnellsten pro Dollar für 7–13B-Modelle; TurboMind holt jede GB/s aus seiner 1 TB/s-Bandbreite heraus.

Produktions-Wahl: A100 80GB — betreiben Sie Qwen2-72B oder Llama 3 70B vollständig in bf16 ohne Qualitätskompromisse durch Quantisierung; passt leicht in Multi-Instance-GPU-Serving.


Fehlerbehebung

Modell wird nicht geladen

CUDA Out of Memory

Port bereits in Gebrauch

circle-exclamation

Clore.ai GPU-Empfehlungen

LMDeploys TurboMind-Engine und W4A16-Quantisierung liefern branchenführenden Durchsatz — insbesondere auf Ampere-/Hopper-GPUs.

GPU
VRAM
Clore.ai-Preis
Durchsatz Llama 3 8B
Llama 3 70B Q4

RTX 3090

24 GB

~$0.12/Stunde

~120 tok/s (fp16)

❌ Zu groß

RTX 4090

24 GB

~$0.70/Stunde

~200 tok/s (fp16)

❌ Zu groß

A100 40GB

40 GB

~$1.20/Stunde

~160 tok/s (fp16)

~55 tok/s (W4A16)

A100 80GB

80 GB

~$2.00/Stunde

~175 tok/s (fp16)

~80 tok/s (fp16)

2× RTX 4090

48 GB

~$1.40/std

~380 tok/s (Tensor-Parallellität)

~60 tok/s

circle-info

RTX 3090 bei ~$0.12/std ist die beste Wahl für 7B–13B-Modelle. LMDeploys TurboMind-Engine holt nahezu maximalen Durchsatz aus Consumer-GPUs. Eine einzelne RTX 3090, die Llama 3 8B bedient, verarbeitet 120 tok/s — ausreichend für Produktions-APIs mit 10–20 gleichzeitigen Nutzern.

Für 70B-Modelle: A100 40GB (~$1.20/std) mit W4A16-Quantisierung liefert ~55 tok/s — kosteneffektiver als zwei RTX 4090.


Ressourcen

Zuletzt aktualisiert

War das hilfreich?