Modell-Ladeanleitung#

Dieses Dokument dient der Bereitstellung einer Funktionsbeschreibung zum Laden von Modellen.

Kopie#

Kopien werden verwendet, um die Anzahl der Instanzen eines Modells beim Laden anzugeben. Wenn Sie beispielsweise zwei GPUs haben und jede Karte eine Kopie des Modells aufnehmen kann, können Sie die Anzahl der Kopien auf 2 setzen. Dadurch werden zwei identische Modellinstanzen auf den beiden GPUs verteilt. Xinference gleicht die Last automatisch aus, um sicherzustellen, dass Anfragen gleichmäßig auf die mehreren Karten verteilt werden. Für den Benutzer erscheint es weiterhin als ein einziges Modell, was die Gesamtressourcennutzung erheblich verbessert.

Alte Version – Mehrinstanz-Bereitstellung:

Wenn Sie mehrere GPUs besitzen, kann jede GPU eine Modellinstanz hosten. In diesem Fall kann die Anzahl der Instanzen auf die Anzahl der GPUs gesetzt werden. Beispiel:

  • 2 GPUs, 2 Instanzen: Jede GPU führt eine Modellinstanz aus.

  • 4 GPUs, 4 Instanzen: Jede GPU betreibt ein Modell-Instanz.

Added in version v1.15.0.

Führen Sie eine neue Umgebungsvariable ein:

XINFERENCE_ALLOW_MULTI_REPLICA_PER_GPU

Steuert, ob die Einzel-GPU-Mehrfachkopie-Funktion aktiviert ist. Standardwert: 1

Neue Funktion: Intelligente Replik-Bereitstellung

  1. Einzel-GPU-Mehrfachkopien

Neue Unterstützung: Auch mit nur einer GPU können mehrere Modellkopien ausgeführt werden.

  • Szenario: Sie verfügen über 1 GPU mit ausreichend Videospeicher.

  • Konfiguration: Anzahl der Replikate = 3, Anzahl der GPUs = 1

  • Ergebnis: 3 Modellinstanzen, die auf derselben GPU laufen und sich die GPU-Ressourcen teilen.

  1. Gemischte GPU-Zuweisung

Intelligente Verteilung: Die Replikatanzahl muss nicht der Anzahl der GPUs entsprechen, das System verteilt intelligent.

  • Szenario: Sie haben 2 GPUs und benötigen 3 Replikate.

  • Konfiguration: Replikate=3, GPU-Anzahl=2

  • Ergebnis: GPU0 führt 2 Instanzen aus, GPU1 führt 1 Instanz aus.

Gemischte Verteilungsstrategie#

Aktuelle Strategie ist Leerlaufpriorität: Der Scheduler versucht stets, Replikate auf die am wenigsten ausgelastete GPU zuzuweisen. Verwenden Sie den Parameter XINFERENCE_ENV_LAUNCH_STRATEGY, um die Startstrategie auszuwählen.

Setzen Sie die Umgebungsvariable.#

Added in version v1.8.1.

Manchmal möchten wir zur Laufzeit Umgebungsvariablen für bestimmte Modelle festlegen. Ab v1.8.1 bietet Xinference die Möglichkeit, Umgebungsvariablen separat zu konfigurieren, ohne sie vor dem Start von Xinference setzen zu müssen.

Für die Web-Benutzeroberfläche.

actor

Bei Verwendung der Befehlszeile geben Sie die Umgebungsvariable mit --env an.

Beispielverwendung:

xinference launch xxx --env A 0 --env B 1

Am Beispiel von vLLM gibt es die beiden Versionen V1 und V0, und standardmäßig wird automatisch entschieden, welche Version verwendet wird. Wenn Sie beim Laden des Modells erzwingen möchten, dass V0 verwendet wird, können Sie die Umgebungsvariable VLLM_USE_V1=0 setzen.

Konfiguration des virtuellen Modellraums#

Added in version v1.8.1.

Für diesen Teil lesen Sie bitte Virtuelle Umgebungen und benutzerdefinierte Abhängigkeiten.

Batch / Sequential Batch Processing#

Xinference unterstützt Batch-Verarbeitung zur Steigerung des Durchsatzes. Für Large Language Models, die auf der transformers-Engine basieren, kann die Funktion zur kontinuierlichen Batch-Verarbeitung aktiviert werden, die beim Start über Umgebungsvariablen konfiguriert werden kann.

Kern-Einstellungen:

  • XINFERENCE_BATCH_SIZE und XINFERENCE_BATCH_INTERVAL werden verwendet, um das normale Batch-Verhalten zu steuern.

  • XINFERENCE_TEXT_TO_IMAGE_BATCHING_SIZE (Text-zu-Bild-Modell, sofern unterstützt).

Beispiel (Große Sprachmodelle, Transformers):

XINFERENCE_BATCH_SIZE=32 XINFERENCE_BATCH_INTERVAL=0.003 xinference-local --log-level debug
xinference launch -e <endpoint> --model-engine transformers -n qwen1.5-chat -s 4 -f pytorch -q none

Beispiel (Text-zu-Bild):

XINFERENCE_TEXT_TO_IMAGE_BATCHING_SIZE=1024*1024 xinference-local --log-level debug

Informationen zu detailliertem Verhalten, unterstützten Modellen und zum Abbrechen von Anfragen finden Sie unter Kontinuierliches Batch-Verarbeitung.

Denkmodus#

Bestimmte hybride Reasoning-Modelle (z. B. Qwen3) unterstützen einen optionalen Denkmodus. Sie können diese Funktion beim Start über den Parameter --enable-thinking aktivieren.

Beispielverwendung:

xinference launch -n qwen3-xxx --model-engine vllm --enable-thinking