Die Zukunft ist angebrochen, Technologien der künstlichen Intelligenz und des maschinellen Lernens werden bereits erfolgreich von Ihren Lieblingsgeschäften, Transportunternehmen und sogar von Putenfarmen eingesetzt.

Und wenn etwas existiert, dann gibt es auch im Internet darüber... ein offenes Projekt! Sehen Sie, wie der Open Data Hub dabei hilft, neue Technologien zu skalieren und Schwierigkeiten bei deren Implementierung zu vermeiden.
Trotz all der Vorteile der künstlichen Intelligenz (artificial Intelligence, AI) und des maschinellen Lernens (machine learning, ML) stoßen Organisationen oft auf Schwierigkeiten bei der Skalierung dieser Technologien. Die Hauptprobleme sind in der Regel folgende:
- Informationsaustausch und Zusammenarbeit – es ist nahezu unmöglich, Informationen ohne großen Aufwand auszutauschen und in schnellen Iterationen zusammenzuarbeiten.
- Zugang zu Daten – für jede Aufgabe muss der Zugang von Grund auf neu und manuell erstellt werden, was viel Zeit in Anspruch nimmt.
- On-Demand-Zugang – es gibt keine Möglichkeit, on-demand Zugang zu den Werkzeugen und Plattformen des maschinellen Lernens sowie zur Recheninfrastruktur zu erhalten.
- Produktion – die Modelle bleiben in der Prototypenphase und werden nicht bis hin zur Serienanwendung weiterentwickelt.
- Überwachung und Erklärung der Ergebnisse der KI-Arbeit – Reproduzierbarkeit, Nachverfolgbarkeit und Erklärung der Ergebnisse von AI/ML sind schwierig.
Wenn diese Probleme ungelöst bleiben, beeinträchtigen sie die Geschwindigkeit, Effizienz und Produktivität wertvoller Datenanalysten. Dies führt zu Frustration, Enttäuschung über die Arbeit, und letztendlich werden die Erwartungen des Unternehmens an AI/ML zunichtegemacht.
Die Verantwortung für die Lösung dieser Probleme liegt bei den IT-Spezialisten, die den Datenanalytikern – richtig, so etwas wie eine Cloud – zur Verfügung stellen müssen. Genauer gesagt, wird eine Plattform benötigt, die Freiheit bei der Wahl bietet und einfachen Zugriff ermöglicht. Sie sollte schnell, leicht umkonfigurierbar, bei Bedarf skalierbar und ausfallsicher sein. Der Aufbau einer solchen Plattform auf Basis von Open-Source-Technologien hilft, die Abhängigkeit von einem Anbieter zu vermeiden und langfristige strategische Vorteile bei der Kostenkontrolle zu wahren.
Vor einigen Jahren geschah etwas Ähnliches in der App-Entwicklung, das zur Entstehung von Microservices, hybriden Cloud-Umgebungen, IT-Automatisierung und agilen Prozessen führte. Um all dem gerecht zu werden, begannen IT-Spezialisten, Container, Kubernetes und offene hybride Clouds zu nutzen.
Jetzt wird diese Erfahrung genutzt, um auf die Herausforderungen der KI zu reagieren. Daher entwickeln IT-Spezialisten Plattformen, die auf Containern basieren, die es ermöglichen, AI/ML-Dienste im Rahmen agiler Prozesse zu erstellen, Innovationen zu beschleunigen und die auf hybride Cloud ausgerichtet sind.

Wir werden mit dem Aufbau einer solchen Plattform bei Red Hat OpenShift beginnen, unserer Kubernetes-Containerplattform für hybride Clouds, die über ein schnell wachsendes Ökosystem aus Software- und Hardware-ML-Lösungen (NVIDIA, H2O.ai, Starburst, PerceptiLabs usw.) verfügt. Einige unserer Kunden, wie die BMW Group, ExxonMobil und andere, haben bereits containerisierte ML-Toolchains und DevOps-Prozesse auf dieser Plattform und ihrem Ökosystem bereitgestellt, um ihre ML-Architekturen in den industriellen Betrieb zu überführen und die Arbeit von Datenanalysten zu beschleunigen.
Ein weiterer Grund, warum wir das Projekt Open Data Hub gestartet haben, ist, ein Beispiel für Architektur auf Basis mehrerer Open-Source-Projekte zu demonstrieren und zu zeigen, wie der gesamte Lebenszyklus einer ML-Lösung auf der OpenShift-Plattform umgesetzt werden kann.
Projekt Open Data Hub
Dies ist ein Open-Source-Projekt, das sich innerhalb der entsprechenden Entwicklungs-Community entwickelt und den vollständigen Zyklus von Operationen – von der Hochladung und Umwandlung von Rohdaten bis zur Erstellung, dem Training und der Wartung von Modellen – bei der Lösung von AI/ML-Aufgaben mithilfe von Containern und Kubernetes auf der OpenShift-Plattform implementiert. Dieses Projekt kann als Referenzimplementierung angesehen werden, als Beispiel dafür, wie eine offene Lösung der Kategorie "AI/ML als Dienst" auf Basis von OpenShift und entsprechenden offenen Werkzeugen wie Tensorflow, JupyterHub, Spark und anderen aufgebaut werden kann. Wichtig ist, dass Red Hat selbst dieses Projekt zur Bereitstellung seiner AI/ML-Dienste nutzt. Darüber hinaus integriert OpenShift mit den Schlüssellösungen für Software und Hardware im ML-Bereich von NVIDIA, Seldon, Starburst und anderen Anbietern, was den Aufbau und die Bereitstellung eigener Systeme für maschinelles Lernen erleichtert.

Das Projekt Open Data Hub richtet sich an folgende Benutzergruppen und Nutzungsszenarien:
- Ein Datenanalyst, der eine cloudbasierte Lösung für die Umsetzung von ML-Projekten mit Self-Service-Funktionen benötigt.
- Ein Datenanalyst, der die größtmögliche Auswahl an den neuesten Open-Source-Tools und -Plattformen für AI/ML benötigt.
- Ein Datenanalyst, der während des Trainings von Modellen Zugang zu Datenquellen benötigt.
- Ein Datenanalyst, der Zugang zu Rechenressourcen (CPU, GPU, Speicher) benötigt.
- Ein Datenanalyst, der die Möglichkeit benötigt, mit Kollegen zusammenzuarbeiten und Arbeitsergebnisse auszutauschen, um Feedback zu erhalten und durch schnelles Iterieren Verbesserungen einzuführen.
- Ein Datenanalyst, der mit Entwicklern (und DevOps-Teams) interagieren möchte, damit seine ML-Modelle und Arbeitsergebnisse in die Produktion gehen.
- Ein Dateningenieur, der sicherstellen muss, dass der Datenanalyst Zugriff auf verschiedene Datenquellen unter Berücksichtigung von Sicherheitsnormen und -anforderungen hat.
- Ein Administrator/Operator von IT-Systemen, der ohne großen Aufwand den Lebenszyklus (Installation, Konfiguration, Aktualisierung) von Open-Source-Komponenten und -Technologien überwachen muss. Außerdem werden entsprechende Verwaltungs- und Quotenwerkzeuge benötigt.
Das Open Data Hub-Projekt vereint eine Vielzahl von Open-Source-Tools zur Umsetzung des vollständigen Zyklus von AI/ML-Operationen. Als Hauptarbeitsinstrument für Datenanalysten wird hier Jupyter Notebook verwendet. Dieses Werkzeug ist bei Fachleuten für Datenverarbeitung und -analyse sehr beliebt, und das Open Data Hub ermöglicht es ihnen, Arbeitsbereiche in Jupyter Notebook einfach zu erstellen und zu verwalten, indem JupyterHub integriert ist. Neben der Erstellung und dem Import von Jupyter Notebooks enthält das Open Data Hub-Projekt auch eine Reihe bereits fertiger Notebooks in Form einer AI-Bibliothek.
Diese Bibliothek stellt eine Sammlung von Open-Source-Komponenten für maschinelles Lernen und Lösungen für gängige Szenarien dar, die das schnelle Prototyping erleichtern. JupyterHub ist mit dem RBAC-Zugriffsmodell von OpenShift integriert, was die Nutzung bereits vorhandener OpenShift-Konten und die Umsetzung eines Single Sign-On ermöglicht. Darüber hinaus bietet JupyterHub eine benutzerfreundliche Schnittstelle namens Spawner, mit der der Benutzer die Menge an Rechenressourcen (Prozessorkerne, Speicher, GPU) für das gewählte Jupyter-Notizbuch einfach konfigurieren kann.
Nachdem der Datenanalyst das Notebook erstellt und konfiguriert hat, übernimmt der Kubernetes-Planer, der Teil von OpenShift ist, alle weiteren Aufgaben. Den Benutzern bleibt nur, ihre Experimente durchzuführen, ihre Ergebnisse zu speichern und zu teilen. Darüber hinaus können fortgeschrittene Benutzer direkt von Jupyter-Notebooks auf die CLI-Shell von OpenShift zugreifen, um Kubernetes-Primitiven wie Job zu verwenden oder Funktionen von OpenShift wie Tekton oder Knative zu nutzen. Alternativ kann dafür die benutzerfreundliche OpenShift-GUI verwendet werden, die als "OpenShift-Webkonsole" bekannt ist.


Im nächsten Schritt ermöglicht der Open Data Hub die Verwaltung von Datenpipelines. Hierfür wird ein Ceph-Objekt verwendet, das in Form eines S3-kompatiblen Objektspeichers bereitgestellt wird. Apache Spark sorgt für das Streaming von Daten aus externen Quellen oder aus dem integrierten Ceph S3-Speicher und ermöglicht auch die Durchführung von Vorverarbeitungen der Daten. Apache Kafka bietet erweiterte Verwaltungsmöglichkeiten für Datenpipelines (wo mehrfache Lade-, Umwandlungs-, Analyse- und Speicherungsvorgänge durchgeführt werden können).
Der Datenanalyst hat also Zugriff auf die Daten erhalten und ein Modell erstellt. Nun möchte er die gewonnenen Ergebnisse mit Kollegen oder Anwendungsentwicklern teilen und ihnen sein Modell als Dienstleistung anbieten. Dazu ist ein Serveausgang erforderlich, und der Open Data Hub bietet einen solchen Server, der Seldon heißt und es ermöglicht, das Modell als RESTful-Service zu veröffentlichen.
Irgendwann gibt es mehrere solcher Modelle auf dem Seldon-Server, und es entsteht der Bedarf, zu überwachen, wie sie verwendet werden. Zu diesem Zweck bietet der Open Data Hub eine Sammlung entsprechender Metriken und eine Berichtsengine, die auf weit verbreiteten Open-Source-Überwachungstools wie Prometheus und Grafana basiert. So erhalten wir Feedback zur Überwachung der Nutzung von KI-Modellen, insbesondere in Produktionsumgebungen.

Somit bietet der Open Data Hub einen Cloud-ähnlichen Ansatz während des gesamten AI/ML-Betriebszyklus, beginnend mit dem Zugriff auf und der Vorbereitung von Daten bis hin zum Training und dem industriellen Einsatz des Modells.
Alles zusammenfassen
Jetzt stellt sich die Frage, wie der Administrator von OpenShift das alles organisieren kann. Hier kommt ein spezieller Kubernetes-Operator für Open Data Hub-Projekte ins Spiel.

Dieser Operator verwaltet die Installation, Konfiguration und den Lebenszyklus des Open Data Hub-Projekts, einschließlich der Bereitstellung der oben genannten Tools wie JupyterHub, Ceph, Spark, Kafka, Seldon, Prometheus und Grafana. Das Open Data Hub-Projekt kann in der Webkonsole von OpenShift im Bereich der Community-Operatoren gefunden werden. So kann der OpenShift-Administrator angeben, dass die entsprechenden OpenShift-Projekte zur Kategorie „Open Data Hub-Projekt“ gehören. Dies geschieht einmalig. Danach kann der Datenanalyst über die Webkonsole von OpenShift auf seinen Projektbereich zugreifen und sehen, dass der entsprechende Kubernetes-Operator für seine Projekte installiert und verfügbar ist. Anschließend erstellt er mit einem Mausklick eine Instanz des Open Data Hub-Projekts und erhält sofort Zugriff auf die oben beschriebenen Tools. Und das alles kann im Hochverfügbarkeits- und Fehlertoleranzmodus konfiguriert werden.

Wenn Sie das Open Data Hub-Projekt selbst ausprobieren möchten, beginnen Sie mit . Technische Einzelheiten zur Architektur des Open Data Hub finden Sie , die Entwicklungspläne des Projekts – . In Zukunft ist geplant, eine zusätzliche Integration mit Kubeflow umzusetzen, verschiedene Fragen zur Datenregulierung und -sicherheit zu klären sowie eine Integration mit regelbasierten Systemen wie Drools und Optaplanner zu organisieren. Teilen Sie Ihre Meinung und werden Sie Teil des Projekts kann auf der Seite .
Fassen wir zusammen: Schwerwiegende Probleme mit der Skalierung hindern Organisationen daran, das Potenzial von Künstlicher Intelligenz und maschinellem Lernen voll auszuschöpfen. Red Hat OpenShift wird seit langem erfolgreich eingesetzt, um ähnliche Probleme in der Softwarebranche zu lösen. Das Projekt Open Data Hub, das im Rahmen der Open-Source-Entwicklungsgemeinschaft realisiert wurde, bietet eine Referenzarchitektur für die Organisation des gesamten Zyklus an AI/ML-Operationen auf Basis des hybriden OpenShift-Cloud. Wir haben einen klaren und durchdachten Entwicklungsplan für dieses Projekt und sind ernsthaft darauf bedacht, eine aktive und produktive Gemeinschaft für die Entwicklung offener AI-Lösungen auf der OpenShift-Plattform aufzubauen.
Quelle: habr.com
