close-icon
Erhalte direkt unseren nächsten Artikel über MLOps Tools
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Warum du ein Model Serving Tool wie Seldon verwenden solltest

Eine Plattform wie Seldon macht aus ML Modellen automatisch API endpoints.

datarevenue-icon
by
DataRevenue
Markus Schmitt

Der klassischer Weg, ML Modelle zu entwickeln, läuft in etwa so ab:

  • Deine Data Scientists entwickeln und testen ein Modell. Wenn es gut funktioniert, schickst du es in Produktion.
  • Dein Entwicklungsteam hat reichlich Erfahrung mit APIs, daher arbeiten sie mit ihrem bewährten Toolkit (z.B. bestehend aus Flask, Django, FastAPI oder einem anderen Web-Framework)
  • Das funktioniert ... so lala. Ziemlich schnell wird das Team feststellen, dass die Modelldatei größer wird als die Assets, mit denen in den meisten APIs gearbeitet wird. Da jede Anfrage außerdem die gesamte Modelldatei laden muss, wird die Hardware bei stärkerer Belastung stark strapaziert.
  • Eine Weile später soll ein neues Modell online gestellt werden. Bevor sich deine Data Scientists sicher sein können, dass es besser funktioniert als das alte, möchten sie es in Produktion testen. Daher schreiben deine Entwickler ein A/B-Test-Skript, um das neue Modell schrittweise online zu nehmen und dabei die Ergebnisse zu kontrollieren.
  • Um das Modell auch skalieren zu können, feilen die Entwickler zusätzlich an einer in-Memory Lösung für die Modelle.
  • Nach mehreren Monaten entsteht so aus einer einzigen Modelldatei viel mehr. Aus einem überschaubaren 100-Zeilen-Skript wurde mit jeder zusätzlichen Funktion am Ende ein kompliziertes und unüberschaubares Tool.
Eine einfache Architektur zeigt lediglich eine Modelldatei und eine rest_api.py-Datei. Unten ist jedoch die Realität dargestellt, die eine ganze Sammlung von Modulen umfasst, darunter Metriken, Protokollierung, Überwachung und AB-Tests.
Entwicklerteams unterschätzen häufig den Aufwand, der nötig ist, um ein Machine Learning-Modell in eine zuverlässige REST-API zu verwandeln

Keine dieser "extra" Komponenten sind nur für Spezialfälle wichtig. Alle Machine Learning Teams stehen vor nahezu den gleichen Herausforderungen, und trotzdem entwickeln viele für jedes Projekt den gleichen Code von Grund auf neu.

Genau das kann jedoch mit einem Model Serving Tool vermieden werden: Dabei handelt sich um ein Framework, das diese gängigen Aufgaben für dich erledigt, und gleichzeitig an deine eigenen, ganz speziellen Anwendungsfälle angepasst werden kann. Ein ausgezeichnetes Model Serving Tool ist Seldon

Wie kann Seldon diese Probleme für uns lösen?

Als Teil unserer Open MLOps-Architektur verwenden wir Seldon-core, ein Open Source Model Serving Tool, das auf Kubernetes läuft.

Damit können wir unsere Modelldateien ganz einfach in eine REST-API umwandeln, und zwar fast völlig automatisiert.

Wenn wir beispielsweise ein neues Modell im Rahmen eines Tests schrittweise implementieren wollen, ist das einfache Einstellung in Seldon. 

Am wichtigsten ist allerdings, dass wir mit Seldon unsere Machine Learning-Pipeline vollständig automatisieren können. Seldon findet die neueste Version eines trainierten Modells über unser Modell-Registry, wandelt diese in eine API um und stellt sie allen Nutzern zur Verfügung. All das erfolgt automatisch - ganz ohne manuelle Konfiguration oder Veränderungen im Code.

Seldon übernimmt das Roll-Out, Serving, Monitoring und Optimieren unserer Modelle. Damit hilft es uns, Machine Learning-Lösungen zu erstellen, die automatisiert und reproduzierbar sind. 

Seldon hilft uns nicht nur dabei, bestehenden Prozesse zu optimieren, sondern bietet auch neue Möglichkeiten. So werden z.B. unsere Modelle interpretierbarer, wir können Bias überwachen und haben direkten Zugriff auf alle wichtigen Performance-Metriken.

Wie lässt sich Seldon in eine bestehende Architektur integrieren?

Model Serving ist nur eine Komponente in unserer Open MLOps-Architektur. Seldon integriert sich mit unserem Model Registry, Feature Store und unserem Experimentation Hub integrieren.

Ein Diagramm, das zeigt, wie ein ML-Team einen Experimentation Hub verwendet, der mit einem Data Flow Tool, einem Feature Store, einem Model Registry und einem Model Serving Tool integriert ist.
So passt ein Model Serving Tool in unsere Open MLOps Architektur.

Unser Team entwirft seine Experimente also in einer Notebook-Umgebung, kann jedes dabei verwendete Feature und Modell in einem Feature Store und einem Model Registry nachverfolgen, und stellt die Modelle dann über unser Model Serving Tool für Produktion bereit.

Endnutzer können auf die Modelle am Ende über eine API zugreifen.

Brauchst du Hilfe bei deiner Machine Learning Architektur?

Wir haben fast alle gängigen Tools getestet und diejenigen herausgesucht, die für uns am besten funktionieren. Falls du auch gerade dabei bist, ein Team zusammenzustellen und dich über deine Machine Learning Architektur austauschen möchtest, helfen wir dir gerne weiter. Vereinbare dafür einfach einen kostenlosen Termin mit unserem CEO Markus.

Bekomme immer die neusten Artikel

Trag dich mit deiner E-Mail ein, um du bekommst jede Woche unseren neusten Artikel.

Ich danke Ihnen! Ihre Einreichung ist eingegangen!
Oops! Something went wrong while submitting the form.