Model Deployment
Entdecken Sie die Grundlagen der Modellbereitstellung und verwandeln Sie ML-Modelle in reale Werkzeuge für Vorhersagen, Automatisierung und KI-gestützte Erkenntnisse.
Die Modellbereitstellung ist die entscheidende Phase im Lebenszyklus des maschinellen Lernens, in der ein trainiertes
Modell für maschinelles Lernen (ML) in eine Produktionsumgebung
eine Produktionsumgebung integriert wird, um auf Live-Daten zu reagieren. Sie überbrückt die Lücke zwischen der Entwicklung - wo Modelle in kontrollierten Umgebungen trainiert und
in kontrollierten Umgebungen trainiert und validiert werden, und der realen Anwendung, in der sie einen Wert schaffen, indem sie verwertbare
Erkenntnisse liefern. Ohne effektiven Einsatz bleibt selbst das ausgefeilteste
neuronales Netzwerk (NN) eine statische Datei, die nicht
nicht in der Lage, mit Endbenutzern oder externen Softwaresystemen zu interagieren. Das Hauptziel besteht darin, die Vorhersagefähigkeiten des Modells
Vorhersagefähigkeiten des Modells für Anwendungen zugänglich, zuverlässig und skalierbar zu machen - von mobilen Anwendungen bis hin zu Cloud-Diensten für Unternehmen.
Dienste.
Die Verteilungspipeline
Die Überführung eines Modells aus einer Forschungsumgebung in die Produktion erfordert in der Regel eine strukturierte Pipeline, die
Leistung und Stabilität zu gewährleisten.
-
Modell-Optimierung: Bevor ein Modell die Trainingsumgebung verlässt, wird es häufig einer
Modelloptimierung, um die
um die Ausführungsgeschwindigkeit zu erhöhen und den Speicherbedarf zu verringern. Techniken wie die
Quantisierung reduzieren die Genauigkeit der
Gewichte des Modells (z. B. von 32-Bit-Gleitkomma auf 8-Bit-Ganzzahl), wodurch die Rechenanforderungen drastisch gesenkt werden
mit minimalen Auswirkungen auf die Genauigkeit.
-
Modell-Export: Das optimierte Modell wird in ein Standardformat konvertiert, das unabhängig vom
Ausbildungsrahmenwerk. Formate wie das
ONNX (Offener Austausch neuronaler Netze)
ermöglichen es, dass Modelle, die in PyTorch trainiert wurden, auf verschiedenen Inferenzmaschinen laufen. Für hardwarespezifische Beschleunigung können Entwickler
den Export nach TensorRT für NVIDIA oder OpenVINO für
Intel exportieren.
-
Containerisierung: Um sicherzustellen, dass das Modell in verschiedenen Computerumgebungen konsistent läuft, ist es
ist es gängige Praxis, Container zu verwenden.
Tools wie Docker verpacken das Modell, seine
Modell, seine Abhängigkeiten und die Laufzeitumgebung in eine einzige, leichtgewichtige Einheit und eliminieren
Maschine" Probleme.
-
Orchestrierung und Skalierung: In Szenarien mit hoher Nachfrage werden die bereitgestellten Container von
Orchestrierungssysteme wie Kubernetes verwaltet. Diese Plattformen verwalten
Skalierbarkeit, indem sie automatisch neue Modellinstanzen
Instanzen, um Verkehrsspitzen zu bewältigen und hohe Verfügbarkeit zu gewährleisten.
Bereitstellungsumgebungen
Die Wahl der Umgebung hängt stark von den Anforderungen der Anwendung an
Inferenzlatenz, Datenschutz und Konnektivität
Konnektivität ab.
-
Cloud-Bereitstellung: Hosting-Modelle auf Cloud-Plattformen wie
AWS SageMaker oder
Google Vertex AI bietet praktisch unbegrenzte Rechenleistung und
einfache Skalierbarkeit. Dies ist ideal für komplexe
große Sprachmodelle (LLMs) oder Stapelverarbeitungs
oder Stapelverarbeitungsaufgaben, bei denen eine Reaktion in Echtzeit weniger wichtig ist.
-
Edge AI: Für Anwendungen, die
Echtzeit-Inferenz ohne Internetabhängigkeit
abhängig sind, werden die Modelle direkt auf lokalen Geräten bereitgestellt.
Edge AI nutzt kompakte Hardware, wie zum Beispiel den
NVIDIA Jetson oder
Raspberry Pi, um Daten direkt an der Quelle zu verarbeiten. Dieser Ansatz minimiert
Latenzzeit und verbessert den Datenschutz, indem sensible
sensiblen Informationen auf dem Gerät.
-
Browser-basiert: Frameworks wie TensorFlow.js ermöglichen
Modelle vollständig innerhalb eines Webbrowsers unter Verwendung der Hardware des Kunden laufen zu lassen. Dieser Null-Installations-Ansatz ist ausgezeichnet für
interaktive Webanwendungen und leichtgewichtige
Computer Vision (CV) Aufgaben.
Anwendungsfälle in der Praxis
-
Automatisierte Qualitätskontrolle in der Fertigung: In einer Fabrikumgebung, einer
YOLO11 Objekterkennungsmodell an einem Kantengerät eingesetzt
Gerät eingesetzt, das mit einer Kamera über einem Förderband verbunden ist. Während die Produkte vorbeilaufen, führt das Modell eine Echtzeit
Echtzeit-Anomalieerkennung durch, um Defekte wie Risse
Risse oder falsch ausgerichtete Etiketten. Das System löst sofort einen mechanischen Arm aus, um fehlerhafte Produkte zu entfernen.
Effizienz im Vergleich zur manuellen Inspektion deutlich erhöht. Erfahren Sie mehr über
KI in der Fertigung.
-
Intelligente Einzelhandelsanalysen: Einzelhändler setzen
Objektverfolgungsmodelle zur Analyse des Kunden
Kundenverhalten in den Geschäften zu analysieren. Durch die Verarbeitung von Video-Feeds auf einem lokalen Server erstellt das System Heatmaps von stark frequentierten
Bereichen und überwacht die Länge der Warteschlangen. Diese Daten helfen den Managern bei der Optimierung des Ladenlayouts und des Personalbestands. Sehen Sie, wie
KI im Einzelhandel das Einkaufserlebnis verändert
Erlebnis.
Verwandte Konzepte: Bereitstellung vs. Serving vs. MLOps
Es ist wichtig, "Model Deployment" von verwandten Begriffen im Ökosystem zu unterscheiden:
-
Model Deployment vs. Model Serving: Deployment bezieht sich auf den übergreifenden Prozess, ein Modell in die Produktion zu bringen. Model Serving ist der spezifische
Mechanismus oder Software (z. B.
NVIDIA Triton Inference Server oder
TorchServe), der auf API-Anfragen wartet und das Modell ausführt, um
Vorhersagen zu generieren. Serving ist eine Komponente der Bereitstellung.
-
Model Deployment vs.
MLOps: Die Bereitstellung ist eine einzelne Phase innerhalb des breiteren MLOps-Rahmens. MLOps (Machine Learning Operations) umfasst den
den gesamten Lebenszyklus, einschließlich Datenerfassung, Training, Bewertung, Bereitstellung und kontinuierliche
Modellüberwachung zur detect Problemen wie
Datendrift.
Exportieren eines Modells für die Bereitstellung
Ein üblicher erster Schritt beim Einsatz ist der Export eines trainierten Modells in ein hochkompatibles Format. Das folgende Beispiel
zeigt, wie man ein YOLO11 in das ONNX exportiert, indem man das ultralytics Paket, so dass es für den Einsatz
für den Einsatz auf verschiedenen Plattformen.
from ultralytics import YOLO
# Load a pretrained YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to ONNX format for broad compatibility
# This creates 'yolo11n.onnx' which can be used in deployment environments
model.export(format="onnx")