In diesem Dokument des Google Cloud Well-Architected Framework werden Prinzipien und Empfehlungen beschrieben, mit denen Sie KI- und ML-Arbeitslasten in Google Cloud entwerfen, erstellen und verwalten können, die Ihre operativen, sicherheitsbezogenen, zuverlässigen, kostenbezogenen und leistungsbezogenen Ziele erfüllen.
Die Zielgruppe für dieses Dokument umfasst Entscheidungsträger, Architekten, Administratoren, Entwickler und Betreiber, die KI- und ML-Arbeitslasten in Google Cloudentwerfen, erstellen, bereitstellen und verwalten.
Auf den folgenden Seiten werden für jede Säule des Well-Architected Framework Prinzipien und Empfehlungen speziell für KI und ML beschrieben:
- KI und ML: Operative Exzellenz
- KI und ML: Sicherheit
- KI und ML: Zuverlässigkeit
- KI und ML: Kostenoptimierung
- KI und ML: Leistungsoptimierung
Beitragende
Autoren:
- Benjamin Sadik | AI and ML Specialist Customer Engineer
- Filipe Gracio, PhD | Customer Engineer
- Isaac Lo | AI Business Development Manager
- Kamilla Kurta | GenAI/ML Specialist Customer Engineer
- Mohamed Fawzi | Benelux Security and Compliance Lead
- Rick (Rugui) Chen | Solutions Architect für KI-Infrastruktur
- Sannya Dang | KI-Lösungsarchitektin
Weitere Beitragende:
- Daniel Lees | Cloudsicherheitsarchitekt
- Gary Harmson | Customer Engineer
- Jose Andrade | Enterprise Infrastructure Customer Engineer
- Kumar Dhanagopal | Cross-Product Solution Developer
- Marwan Al Shawi | Partner Customer Engineer
- Nicolas Pintaux | Customer Engineer, Application Modernization Specialist
- Radhika Kanakam | Senior Program Manager, Cloud GTM
- Ryan Cox | Principal Architect
- Stef Ruinard | Solutions Architect für generative KI
- Wade Holmes | Global Solutions Director
- Zach Seils | Networking Specialist
KI und ML: Operative Exzellenz
Dieses Dokument im Well-Architected Framework: KI- und ML-Perspektive bietet einen Überblick über die Prinzipien und Empfehlungen, die Ihnen beim Erstellen und Betreiben robuster KI- und ML-Systeme in Google Cloudhelfen. Diese Empfehlungen helfen Ihnen, grundlegende Elemente wie Beobachtbarkeit, Automatisierung und Skalierbarkeit einzurichten. Die Empfehlungen in diesem Dokument stimmen mit dem Säulenelement „Operative Exzellenz“ des Google Cloud Well-Architected-Frameworks überein.
Betriebsoptimierung im Bereich KI und ML bedeutet, die komplexen KI- und ML-Systeme und ‑Pipelines, die die strategischen Ziele Ihres Unternehmens unterstützen, nahtlos bereitzustellen, zu verwalten und zu steuern. Mit operativer Exzellenz können Sie effizient auf Veränderungen reagieren, die betriebliche Komplexität reduzieren und dafür sorgen, dass die Abläufe den Geschäftszielen entsprechen.
Eine solide Grundlage für die Modellentwicklung schaffen
Schaffen Sie eine solide Grundlage, um die Modellentwicklung von der Problemdefinition bis zur Bereitstellung zu optimieren. So stellen Sie sicher, dass Ihre KI-Lösungen auf zuverlässigen und effizienten Komponenten und Optionen basieren. Diese Art von Grundlage hilft Ihnen, Änderungen und Verbesserungen schnell und einfach bereitzustellen.
Beachten Sie die folgenden Empfehlungen:
- Definieren Sie das Problem, das das KI-System lösen soll, und das gewünschte Ergebnis.
- Relevante Daten identifizieren und erfassen, die zum Trainieren und Bewerten Ihrer Modelle erforderlich sind. Bereinigen und verarbeiten Sie dann die Rohdaten. Implementieren Sie Datenvalidierungskontrollen, um die Datenqualität und -integrität zu gewährleisten.
- Wählen Sie den für die Aufgabe geeigneten ML-Ansatz aus. Berücksichtigen Sie beim Entwerfen der Struktur und Parameter des Modells die Komplexität und die Berechnungsanforderungen des Modells.
- Verwenden Sie ein Versionskontrollsystem für Code, Modell und Daten.
Lebenszyklus der Modellentwicklung automatisieren
Von der Datenvorbereitung und dem Training bis hin zur Bereitstellung und Überwachung hilft Ihnen die Automatisierung, die Qualität und Effizienz Ihrer Abläufe zu verbessern. Durch Automatisierung wird eine nahtlose, wiederholbare und fehlerfreie Modellentwicklung und -bereitstellung ermöglicht. Durch Automatisierung wird manuelles Eingreifen minimiert, Release-Zyklen werden beschleunigt und für Konsistenz in allen Umgebungen gesorgt.
Beachten Sie die folgenden Empfehlungen:
- Verwenden Sie ein verwaltetes Pipeline-Orchestrierungssystem, um den ML-Workflow zu orchestrieren und zu automatisieren. Die Pipeline muss die wichtigsten Schritte des Entwicklungszyklus abdecken: Vorbereitung, Training, Bereitstellung und Bewertung.
- CI/CD-Pipelines für den Lebenszyklus der Modellentwicklung implementieren. Diese Pipelines sollten das Erstellen, Testen und Bereitstellen von Modellen automatisieren. Die Pipelines sollten auch ein kontinuierliches Training umfassen, um die Modelle bei Bedarf mit neuen Daten neu zu trainieren.
- Implementieren Sie schrittweise Release-Ansätze wie Canary-Bereitstellungen oder A/B-Tests, um Modelle sicher und kontrolliert einzuführen.
Beobachtbarkeit implementieren
Wenn Sie die Beobachtbarkeit implementieren, erhalten Sie detaillierte Informationen zur Modellleistung, zu Datenabweichungen und zum Systemstatus. Implementieren Sie kontinuierliche Überwachungs-, Benachrichtigungs- und Logging-Mechanismen, um Probleme proaktiv zu erkennen, rechtzeitige Reaktionen auszulösen und die Betriebskontinuität zu gewährleisten.
Beachten Sie die folgenden Empfehlungen:
- Implementieren Sie ein dauerhaftes und automatisiertes Leistungsmonitoring für Ihre Modelle. Verwenden Sie Messwerte und Erfolgskriterien für die kontinuierliche Bewertung des Modells nach der Bereitstellung.
- Überwachen Sie Ihre Bereitstellungsendpunkte und die Infrastruktur, um die Dienstverfügbarkeit zu gewährleisten.
- Richten Sie benutzerdefinierte Benachrichtigungen basierend auf unternehmensspezifischen Grenzwerten und Anomalien ein, damit Probleme rechtzeitig erkannt und behoben werden.
- Mit Explainable AI-Techniken Modellergebnisse verstehen und interpretieren
Eine Kultur der operativen Exzellenz schaffen
Betriebswirtschaftliche Spitzenleistung basiert auf Menschen, Kultur und professionellen Praktiken. Der Erfolg Ihres Teams und Ihres Unternehmens hängt davon ab, wie effektiv Ihr Unternehmen Methoden implementiert, die eine zuverlässige und schnelle Entwicklung von KI-Funktionen ermöglichen.
Beachten Sie die folgenden Empfehlungen:
- Automatisierung und Standardisierung als zentrale Entwicklungsmethoden fördern. Mit MLOps-Techniken können Sie Ihre Workflows optimieren und den ML-Lebenszyklus effizient verwalten. Aufgaben automatisieren, um Zeit für Innovationen zu schaffen, und Prozesse standardisieren, um für Konsistenz und eine einfachere Fehlerbehebung zu sorgen.
- Kontinuierliches Lernen und Verbesserung priorisieren Bieten Sie Lernmöglichkeiten an, mit denen Teammitglieder ihre Fähigkeiten verbessern und auf dem neuesten Stand der Entwicklungen in den Bereichen KI und ML bleiben können. Ermutigen Sie zu Experimenten und führen Sie regelmäßig Retrospektiven durch, um Verbesserungsmöglichkeiten zu identifizieren.
- Eine Kultur der Rechenschaftspflicht und Eigenverantwortung fördern. Definieren Sie klare Rollen, damit alle ihren Beitrag verstehen. Mithilfe transparenter Messwerte können Teams Entscheidungen innerhalb von Grenzen treffen und den Fortschritt verfolgen.
- Integrieren Sie Ethik und Sicherheit bei der Nutzung von KI in Ihre Unternehmenskultur. Setzen Sie verantwortungsbewusste Systeme auf die Prioritätsliste, indem Sie ethische Aspekte in jede Phase des ML-Lebenszyklus einbinden. Legen Sie klare ethische Grundsätze fest und fördern Sie offene Diskussionen über ethische Herausforderungen.
Skalierbarkeit im Blick behalten
Entwerfen Sie Ihre KI-Lösungen so, dass sie mit steigenden Datenmengen und Nutzeranforderungen umgehen können. Verwenden Sie eine skalierbare Infrastruktur, damit sich Ihre Modelle an die wachsenden Anforderungen Ihres Projekts anpassen und optimal funktionieren können.
Beachten Sie die folgenden Empfehlungen:
- Kapazität und Kontingente planen Berücksichtigen Sie zukünftiges Wachstum und planen Sie Ihre Infrastrukturkapazität und Ressourcenkontingente entsprechend.
- Auf Spitzenereignisse vorbereiten Achten Sie darauf, dass Ihr System plötzliche Trafficspitzen oder Arbeitslasten bei Spitzenereignissen bewältigen kann.
- KI-Anwendungen für die Produktion skalieren Die Lösung sollte für die horizontale Skalierung ausgelegt sein, um Arbeitslasterhöhungen zu berücksichtigen. Verwenden Sie Frameworks wie Ray in Vertex AI, um Aufgaben parallel auf mehreren Maschinen auszuführen.
- Verwaltete Dienste nach Bedarf verwenden Verwenden Sie Dienste, mit denen Sie skalieren und gleichzeitig den operativen Aufwand und die Komplexität manueller Eingriffe minimieren können.
Beitragende
Autoren:
- Sannya Dang | KI-Lösungsarchitektin
- Filipe Gracio, PhD | Customer Engineer
Weitere Beitragende:
- Kumar Dhanagopal | Cross-Product Solution Developer
- Marwan Al Shawi | Partner Customer Engineer
- Ryan Cox | Principal Architect
- Stef Ruinard | Solutions Architect für generative KI
KI und ML – Sicherheit
Dieses Dokument im Well-Architected Framework: KI- und ML-Perspektive bietet einen Überblick über Prinzipien und Empfehlungen, mit denen Sie dafür sorgen können, dass Ihre KI- und ML-Bereitstellungen die Sicherheits- und Compliance-Anforderungen Ihres Unternehmens erfüllen. Die Empfehlungen in diesem Dokument entsprechen der Sicherheitssäule des Google Cloud Well-Architected Framework.
Die sichere Bereitstellung von KI- und ML-Arbeitslasten ist eine wichtige Anforderung, insbesondere in Unternehmensumgebungen. Um diese Anforderung zu erfüllen, müssen Sie einen ganzheitlichen Sicherheitsansatz verfolgen, der von der ersten Konzeption Ihrer KI- und ML-Lösungen bis hin zur Entwicklung, Bereitstellung und laufenden Wartung reicht. Google Cloud bietet robuste Tools und Dienste, die speziell für die Sicherheit Ihrer KI- und ML-Arbeitslasten entwickelt wurden.
Klare Ziele und Anforderungen definieren
Es ist einfacher, die erforderlichen Sicherheits- und Compliance-Kontrollen frühzeitig in den Design- und Entwicklungsvorgang einzubinden, als sie nach der Entwicklung hinzuzufügen. Treffen Sie von Beginn an des Design- und Entwicklungszyklus Entscheidungen, die für Ihre spezifische Risikoumgebung und Ihre spezifischen Geschäftsprioritäten geeignet sind.
Beachten Sie die folgenden Empfehlungen:
- Identifizieren Sie potenzielle Angriffsvektoren und berücksichtigen Sie von Anfang an Sicherheits- und Compliance-Aspekte. Berücksichtigen Sie beim Entwerfen und Entwickeln Ihrer KI-Systeme die Angriffsfläche, potenzielle Risiken und Verpflichtungen, denen Sie möglicherweise gegenüberstehen.
- Richten Sie Ihre Sicherheitsmaßnahmen für KI und ML auf Ihre Geschäftsziele aus und achten Sie darauf, dass Sicherheit ein wesentlicher Bestandteil Ihrer Gesamtstrategie ist. Informieren Sie sich über die Auswirkungen Ihrer Sicherheitsentscheidungen auf Ihre wichtigsten Geschäftsziele.
Daten schützen und Verlust oder Missbrauch verhindern
Daten sind ein wertvolles und sensibles Gut, das geschützt werden muss. Mithilfe der Datensicherheit können Sie das Vertrauen der Nutzer aufrechterhalten, Ihre Geschäftsziele unterstützen und die Compliance-Anforderungen erfüllen.
Beachten Sie die folgenden Empfehlungen:
- Erfassen, speichern oder verwenden Sie keine Daten, die für Ihre Geschäftsziele nicht unbedingt erforderlich sind. Verwenden Sie nach Möglichkeit synthetische oder vollständig anonymisierte Daten.
- Datenerhebung, -speicherung und -transformation im Blick behalten Protokolle für alle Datenzugriffs- und Manipulationsaktivitäten führen Anhand der Protokolle können Sie den Datenzugriff prüfen, unbefugte Zugriffsversuche erkennen und unerwünschten Zugriff verhindern.
- Implementieren Sie unterschiedliche Zugriffsebenen (z. B. keinen Zugriff, Lesezugriff oder Schreibzugriff) basierend auf Nutzerrollen. Achten Sie darauf, dass Berechtigungen gemäß dem Prinzip der geringsten Berechtigung zugewiesen werden. Nutzer müssen nur die Mindestberechtigungen haben, die für die Ausführung ihrer Rollenaktivitäten erforderlich sind.
- Implementieren Sie Maßnahmen wie Verschlüsselung, sichere Perimeter und Einschränkungen bei der Datenübertragung. Mit diesen Maßnahmen können Sie die Daten-Exfiltration und den Datenverlust verhindern.
- Schützen Sie Ihre ML-Trainingssysteme vor Datenmanipulation.
KI-Pipelines sicher und manipulationssicher machen
Ihr KI- und ML-Code sowie die codedefinierten Pipelines sind wichtige Assets. Nicht gesicherter Code kann manipuliert werden, was zu Datenlecks, Verstößen gegen die Compliance und Unterbrechungen wichtiger Geschäftsaktivitäten führen kann. Wenn Sie Ihren KI- und ML-Code schützen, können Sie die Integrität und den Wert Ihrer Modelle und Modellergebnisse gewährleisten.
Beachten Sie die folgenden Empfehlungen:
- Verwenden Sie bei der Modellentwicklung sichere Programmierpraktiken wie Abhängigkeitsverwaltung oder Eingabevalidierung und ‑bereinigung, um Sicherheitslücken zu vermeiden.
- Schützen Sie Ihren Pipelinecode und Ihre Modellartefakte wie Dateien, Modellgewichte und Bereitstellungsspezifikationen vor unbefugtem Zugriff. Implementieren Sie für jedes Artefakt unterschiedliche Zugriffsebenen, die auf den Rollen und Anforderungen der Nutzer basieren.
- Herkunft und Nachverfolgung Ihrer Assets und Pipelineausführungen erzwingen. Diese Erzwingung hilft Ihnen, Compliance-Anforderungen zu erfüllen und Produktionssysteme zu schützen.
Bereitstellung auf sicheren Systemen mit sicheren Tools und Artefakten
Sorgen Sie dafür, dass Ihr Code und Ihre Modelle in einer sicheren Umgebung ausgeführt werden, die ein robustes Zugriffskontrollsystem mit Sicherheitsmaßnahmen für die in der Umgebung bereitgestellten Tools und Artefakte hat.
Beachten Sie die folgenden Empfehlungen:
- Trainieren und implementieren Sie Ihre Modelle in einer sicheren Umgebung mit geeigneten Zugriffssteuerungen und Schutzmaßnahmen gegen unbefugte Nutzung oder Manipulation.
- Halten Sie sich an die standardmäßigen Lieferkettenebenen für Software-Artefakte (SLSA) für Ihre KI-spezifischen Artefakte wie Modelle und Softwarepakete.
- Verwenden Sie vorzugsweise validierte vorkonfigurierte Container-Images, die speziell für KI-Arbeitslasten entwickelt wurden.
Eingaben schützen und überwachen
KI-Systeme benötigen Eingaben, um Vorhersagen zu treffen, Inhalte zu generieren oder Aktionen zu automatisieren. Einige Eingaben können Risiken darstellen oder als Angriffsvektoren verwendet werden, die erkannt und bereinigt werden müssen. Wenn Sie potenzielle schädliche Eingaben frühzeitig erkennen, können Sie Ihre KI-Systeme schützen und dafür sorgen, dass sie wie vorgesehen funktionieren.
Beachten Sie die folgenden Empfehlungen:
- Implementieren Sie sichere Praktiken zur Entwicklung und Verwaltung von Prompts für Systeme mit generativer KI und achten Sie darauf, dass die Prompts auf schädliche Absichten geprüft werden.
- Überwachen Sie die Eingaben in Prognose- oder generative Systeme, um Probleme wie überlastete Endpunkte oder Prompts zu vermeiden, die die Systeme nicht verarbeiten können.
- Sorgen Sie dafür, dass nur die vorgesehenen Nutzer eines bereitgestellten Systems darauf zugreifen können.
Ergebnisse beobachten, bewerten und auf sie reagieren
KI-Systeme bieten einen Mehrwert, da sie Ergebnisse liefern, die die menschliche Entscheidungsfindung ergänzen, optimieren oder automatisieren. Um die Integrität und Vertrauenswürdigkeit Ihrer KI-Systeme und ‑Anwendungen zu wahren, müssen Sie dafür sorgen, dass die Ausgaben sicher sind und innerhalb der erwarteten Parameter liegen. Außerdem benötigen Sie einen Plan für die Reaktion auf Vorfälle.
Beachten Sie die folgenden Empfehlungen:
- Überwachen Sie die Ausgabe Ihrer KI- und ML-Modelle in der Produktion und identifizieren Sie Leistungs-, Sicherheits- und Compliance-Probleme.
- Bewerten Sie die Modellleistung, indem Sie robuste Messwerte und Sicherheitsmaßnahmen implementieren, z. B. die Identifizierung nicht sachgemäßer generativer Antworten oder extremer Ausgaben in Prognosemodellen. Holen Sie Feedback zur Modellleistung von Nutzern ein.
- Implementieren Sie zuverlässige Benachrichtigungs- und Verfahren zur Reaktion auf Vorfälle, um potenzielle Probleme zu beheben.
Beitragende
Autoren:
- Kamilla Kurta | GenAI/ML Specialist Customer Engineer
- Filipe Gracio, PhD | Customer Engineer
- Mohamed Fawzi | Benelux Security and Compliance Lead
Weitere Beitragende:
- Daniel Lees | Cloudsicherheitsarchitekt
- Kumar Dhanagopal | Cross-Product Solution Developer
- Marwan Al Shawi | Partner Customer Engineer
- Wade Holmes | Global Solutions Director
KI und ML – Zuverlässigkeit
Dieses Dokument im Well-Architected Framework: KI- und ML-Perspektive bietet einen Überblick über die Prinzipien und Empfehlungen zum Entwerfen und Betreiben zuverlässiger KI- und ML-Systeme in Google Cloud. Es wird erläutert, wie Sie erweiterte Zuverlässigkeitspraktiken und Beobachtbarkeit in Ihre Architekturentwürfe einbinden. Die Empfehlungen in diesem Dokument entsprechen der Säule „Zuverlässigkeit“ des Google Cloud Well-Architected Framework.
In der sich schnell entwickelnden KI- und ML-Branche sind zuverlässige Systeme unerlässlich, um die Kundenzufriedenheit zu gewährleisten und Geschäftsziele zu erreichen. Sie benötigen KI- und ML-Systeme, die robust, zuverlässig und anpassungsfähig sind, um die individuellen Anforderungen sowohl von prädiktivem ML als auch von generativer KI zu erfüllen. Um die Komplexität von MLOps zu bewältigen – von der Entwicklung bis zur Bereitstellung und kontinuierlichen Verbesserung –, müssen Sie einen Ansatz verfolgen, bei dem Zuverlässigkeit an erster Stelle steht. Google Cloud bietet eine speziell für KI entwickelte Infrastruktur, die den Prinzipien von Site Reliability Engineering (SRE) entspricht und eine solide Grundlage für zuverlässige KI- und ML-Systeme bietet.
Sorgen Sie dafür, dass die Infrastruktur skalierbar und hochverfügbar ist.
Wenn Sie Ihre Architektur auf Skalierbarkeit und Verfügbarkeit ausrichten, können Ihre Anwendungen unterschiedliche Anforderungen bewältigen, ohne dass es zu Dienstunterbrechungen oder Leistungseinbußen kommt. So sind Ihre KI-Dienste auch bei Infrastrukturausfällen und bei sehr hohem Traffic für Nutzer verfügbar.
Beachten Sie die folgenden Empfehlungen:
- Entwerfen Sie Ihre KI-Systeme mit automatischen und dynamischen Skalierungsfunktionen, um Schwankungen der Nachfrage zu bewältigen. So lässt sich die Leistung auch bei Spitzenlasten optimieren.
- Ressourcen proaktiv verwalten und zukünftige Anforderungen durch Lasttests und Leistungsüberwachung antizipieren. Verwenden Sie Verlaufsdaten und Prognoseanalysen, um fundierte Entscheidungen über die Ressourcenzuweisung zu treffen.
- Sorgen Sie für Hochverfügbarkeit und Fehlertoleranz, indem Sie die Archetypen für die Bereitstellung in mehreren Zonen und Regionen in Google Cloud anwenden und Redundanz und Replikation implementieren.
- Sie können den eingehenden Traffic auf mehrere Instanzen Ihrer KI- und ML-Dienste und ‑Endpunkte verteilen. Load Balancing hilft, eine Überlastung einzelner Instanzen zu verhindern und für eine gleichbleibende Leistung und Verfügbarkeit zu sorgen.
Modulare und lose gekoppelte Architektur verwenden
Verwenden Sie eine modulare Architektur, um Ihre KI-Systeme widerstandsfähig gegen Ausfälle einzelner Komponenten zu machen. Entwerfen Sie beispielsweise die Komponenten für die Datenverarbeitung und Datenvalidierung als separate Module. Wenn eine bestimmte Komponente ausfällt, hilft die modulare Architektur, Ausfallzeiten zu minimieren und Ihre Teams können schneller Fehler beheben und Lösungen implementieren.
Beachten Sie die folgenden Empfehlungen:
- Teilen Sie Ihr KI- und ML-System in kleine, in sich geschlossene Module oder Komponenten auf. Dieser Ansatz fördert die Wiederverwendbarkeit von Code, vereinfacht Tests und Wartung und ermöglicht die unabhängige Entwicklung und Bereitstellung einzelner Komponenten.
- Entwerfen Sie die lose gekoppelten Module mit klar definierten Schnittstellen. Dieser Ansatz minimiert Abhängigkeiten und ermöglicht unabhängige Updates und Änderungen, ohne dass sich dies auf das gesamte System auswirkt.
- Planen Sie für eine schrittweise Fehlertoleranz. Wenn eine Komponente ausfällt, müssen die anderen Teile des Systems weiterhin eine ausreichende Funktionalität bieten.
- Verwenden Sie APIs, um klare Grenzen zwischen Modulen zu schaffen und die Implementierungsdetails auf Modulebene auszublenden. So können Sie einzelne Komponenten aktualisieren oder ersetzen, ohne dass sich dies auf die Interaktionen mit anderen Teilen des Systems auswirkt.
Automatisierte MLOps-Plattform entwickeln
Mit einer automatisierten MLOps-Plattform sind die Phasen und Ausgaben des Modelllebenszyklus zuverlässiger. Wenn Sie für Konsistenz, lose Kopplung und Modularität sorgen und Vorgänge und Infrastruktur als Code ausdrücken, können Sie fehleranfällige manuelle Schritte entfernen und KI- und ML-Systeme verwalten, die robuster und zuverlässiger sind.
Beachten Sie die folgenden Empfehlungen:
- Automatisieren Sie den gesamten Lebenszyklus der Modellentwicklung – von der Datenvorbereitung und -validierung bis hin zum Modelltraining, zur Bewertung, Bereitstellung und Überwachung.
- Verwalten Sie Ihre Infrastruktur als Code (IaC). Dieser Ansatz ermöglicht eine effiziente Versionskontrolle, schnelle Rollbacks bei Bedarf und wiederholbare Bereitstellungen.
- Prüfen Sie, ob sich Ihre Modelle mit relevanten Daten wie erwartet verhalten. Automatisieren Sie die Leistungsüberwachung Ihrer Modelle und erstellen Sie entsprechende Benachrichtigungen für unerwartete Ergebnisse.
- Prüfen Sie die Eingaben und Ausgaben Ihrer KI- und ML-Pipelines. Sie können beispielsweise Daten, Konfigurationen, Befehlszeilenargumente, Dateien und Vorhersagen validieren. Benachrichtigungen für unerwartete oder nicht zulässige Werte konfigurieren
- Verwenden Sie eine verwaltete Versionskontrollstrategie für Ihre Modellendpunkte. Diese Art von Strategie ermöglicht inkrementelle Releases und eine schnelle Wiederherstellung bei Problemen.
Vertrauen und Kontrolle durch Daten- und Modellverwaltung aufrechterhalten
Die Zuverlässigkeit von KI- und ML-Systemen hängt von den Vertrauens- und Governance-Funktionen Ihrer Daten und Modelle ab. KI-Ergebnisse können auf unerwartete Weise nicht den Erwartungen entsprechen. Die Ausgaben können beispielsweise formal konsistent, aber falsch oder unerwünscht sein. Durch die Implementierung von Rückverfolgbarkeit und einer strengen Governance können Sie dafür sorgen, dass die Ergebnisse zuverlässig und vertrauenswürdig sind.
Beachten Sie die folgenden Empfehlungen:
- Mit einem Daten- und Modellkatalog können Sie Ihre Assets effektiv verfolgen und verwalten. Um die Nachverfolgung und Prüfung zu erleichtern, sollten Sie während des gesamten Lebenszyklus einen umfassenden Daten- und Modellversionsverlauf führen.
- Implementieren Sie strenge Zugriffssteuerungen und Prüfpfade, um sensible Daten und Modelle zu schützen.
- Das wichtige Thema Voreingenommenheit bei KI angehen, insbesondere bei Anwendungen mit generativer KI. Um Vertrauen aufzubauen, sollten Sie für Transparenz und Erklärbarkeit bei den Modellergebnissen sorgen.
- Automatisieren Sie die Generierung von Funktionsstatistiken und implementieren Sie die Anomalieerkennung, um Datenprobleme proaktiv zu erkennen. Um die Zuverlässigkeit des Modells zu gewährleisten, sollten Sie Mechanismen einrichten, mit denen sich Änderungen der Datenverteilungen erkennen und abmildern lassen.
Ganzheitliche Verfahren für die Beobachtbarkeit und Zuverlässigkeit von KI und ML implementieren
Wenn Sie Ihre KI-Anwendungen kontinuierlich verbessern möchten, müssen Sie sinnvolle Zuverlässigkeitsziele definieren und den Fortschritt messen. Die Beobachtbarkeit ist ein grundlegendes Element zuverlässiger Systeme. Mithilfe der Beobachtbarkeit können Sie laufende Vorgänge und kritische Ereignisse verwalten. Eine gut implementierte Beobachtbarkeit hilft Ihnen, einen zuverlässigen Dienst für Ihre Nutzer zu erstellen und zu verwalten.
Beachten Sie die folgenden Empfehlungen:
- Infrastrukturmesswerte für Prozessoren (CPUs, GPUs und TPUs) und andere Ressourcen wie Arbeitsspeichernutzung, Netzwerklatenz und Laufwerknutzung erfassen Führen Sie Lasttests und Leistungsüberwachung durch. Verwenden Sie die Testergebnisse und Messwerte aus der Überwachung, um die Skalierung und Kapazität Ihrer KI- und ML-Systeme zu verwalten.
- Legen Sie Zuverlässigkeitsziele fest und erfassen Sie Anwendungsmesswerte. Messen Sie Messwerte wie Durchsatz und Latenz für die von Ihnen erstellten KI-Anwendungen. Beobachten Sie das Nutzungsverhalten Ihrer Anwendungen und der freigegebenen Endpunkte.
- Legen Sie modellspezifische Messwerte wie Genauigkeits- oder Sicherheitsmesswerte fest, um die Zuverlässigkeit des Modells zu bewerten. Beobachten Sie diese Messwerte im Zeitverlauf, um Abweichungen oder Leistungseinbußen zu erkennen. Für eine effiziente Versionskontrolle und Automatisierung sollten Sie die Monitoringkonfigurationen als Code definieren.
- Definieren und erfassen Sie Messwerte auf Unternehmensebene, um die Auswirkungen Ihrer Modelle und deren Zuverlässigkeit auf die Geschäftsergebnisse zu verstehen. Wenn Sie die Zuverlässigkeit Ihrer KI- und ML-Dienste messen möchten, sollten Sie den SRE-Ansatz verwenden und Service Level Objectives (SLOs) definieren.
Beitragende
Autoren:
- Rick (Rugui) Chen | Solutions Architect für KI-Infrastruktur
- Filipe Gracio, PhD | Customer Engineer
Weitere Beitragende:
- Jose Andrade | Enterprise Infrastructure Customer Engineer
- Kumar Dhanagopal | Cross-Product Solution Developer
- Marwan Al Shawi | Partner Customer Engineer
KI und ML: Kostenoptimierung
Dieses Dokument im Well-Architected Framework: KI- und ML-Perspektive bietet einen Überblick über Prinzipien und Empfehlungen zur Optimierung der Kosten Ihrer KI-Systeme während des gesamten ML-Lebenszyklus. Mit einem proaktiven und fundierten Ansatz zur Kostenverwaltung kann Ihr Unternehmen das volle Potenzial von KI- und ML-Systemen ausschöpfen und gleichzeitig die finanzielle Disziplin wahren. Die Empfehlungen in diesem Dokument entsprechen der Kostenoptimierungssäule des Google Cloud Well-Architected-Frameworks.
KI- und ML-Systeme können Ihnen helfen, aus Daten wertvolle Informationen und Prognosefunktionen zu gewinnen. So können Sie beispielsweise Reibungsverluste in internen Prozessen reduzieren, die Nutzerfreundlichkeit verbessern und tiefere Kundeninformationen gewinnen. Die Cloud bietet enorme Ressourcen und eine schnelle Amortisierung ohne große Vorabinvestitionen für KI- und ML-Arbeitslasten. Wenn Sie den Geschäftswert maximieren und die Ausgaben auf Ihre Geschäftsziele ausrichten möchten, müssen Sie die Kostentreiber verstehen, die Kosten proaktiv optimieren, Ausgabenkontrollen einrichten und FinOps-Praktiken anwenden.
Kosten und Renditen definieren und messen
Wenn Sie Ihre KI- und ML-Kosten in Google Cloudeffektiv verwalten möchten, müssen Sie die Ausgaben für Cloud-Ressourcen und den Geschäftswert Ihrer KI- und ML-Initiativen definieren und messen. Google Cloud bietet umfassende Tools für die Abrechnung und Kostenverwaltung, mit denen Sie die Ausgaben detailliert im Blick behalten können. Zu den Messwerten für den Geschäftswert, die Sie messen können, gehören die Kundenzufriedenheit, der Umsatz und die Betriebskosten. Wenn Sie konkrete Messwerte für Kosten und Geschäftswert festlegen, können Sie fundierte Entscheidungen über die Ressourcenzuweisung und -optimierung treffen.
Beachten Sie die folgenden Empfehlungen:
- Legen Sie klare Geschäftsziele und Leistungskennzahlen (KPIs) für Ihre KI- und ML-Projekte fest.
- Verwenden Sie die von Google Cloud bereitgestellten Abrechnungsinformationen, um Kostenüberwachungs- und Berichtsprozesse zu implementieren, mit denen Sie Kosten bestimmten KI- und ML-Aktivitäten zuordnen können.
- Richten Sie Dashboards, Benachrichtigungs- und Berichtssysteme ein, um Kosten und Renditen anhand von KPIs zu verfolgen.
Ressourcenzuweisung optimieren
Wenn Sie in Google CloudKosteneffizienz für Ihre KI- und ML-Arbeitslasten erzielen möchten, müssen Sie die Ressourcenzuweisung optimieren. Wenn Sie die Ressourcenzuweisung sorgfältig an die Anforderungen Ihrer Arbeitslasten anpassen, können Sie unnötige Kosten vermeiden und dafür sorgen, dass Ihre KI- und ML-Systeme die Ressourcen haben, die sie für eine optimale Leistung benötigen.
Beachten Sie die folgenden Empfehlungen:
- Mit dem Autoscaling können Sie die Ressourcen für Training und Inferenz dynamisch anpassen.
- Beginnen Sie mit kleinen Modellen und Daten. Sparen Sie Kosten, indem Sie Hypothesen nach Möglichkeit in kleinerem Umfang testen.
- Ermitteln Sie Ihre Rechenanforderungen durch Tests. Passen Sie die Ressourcen, die für das Training und den Dienst verwendet werden, an Ihre ML-Anforderungen an.
- MLOps-Methoden übernehmen, um Duplikate, manuelle Prozesse und ineffiziente Ressourcenzuweisung zu reduzieren
Datenverwaltung und -governance erzwingen
Eine effektive Datenverwaltung und -governance spielen eine wichtige Rolle bei der Kostenoptimierung. Gut organisierte Daten helfen Ihrem Unternehmen, unnötige Duplikate zu vermeiden, den Aufwand für die Gewinnung hochwertiger Daten zu reduzieren und Teams zur Wiederverwendung von Datensätzen zu ermutigen. Durch eine proaktive Datenverwaltung können Sie die Speicherkosten senken, die Datenqualität verbessern und dafür sorgen, dass Ihre ML-Modelle mit den relevantesten und wertvollsten Daten trainiert und ausgeführt werden.
Beachten Sie die folgenden Empfehlungen:
- Ein klar definiertes Data-Governance-Framework einrichten und anwenden.
- Wenden Sie Labels und relevante Metadaten bei der Datenaufnahme auf Datasets an.
- Sorgen Sie dafür, dass Datensätze in der gesamten Organisation auffindbar und zugänglich sind.
- Achten Sie darauf, dass Ihre Datasets und Features nach Möglichkeit während des gesamten ML-Lebenszyklus wiederverwendbar sind.
Mit MLOps automatisieren und optimieren
Ein Hauptvorteil der Einführung von MLOps-Praktiken ist eine Kostensenkung, sowohl aus technologischer Sicht als auch in Bezug auf Personalaktivitäten. Mithilfe von Automatisierung können Sie die Duplizierung von ML-Aktivitäten vermeiden und die Produktivität von Data Scientists und ML-Entwicklern steigern.
Beachten Sie die folgenden Empfehlungen:
- Erhöhen Sie den Automatisierungs- und Standardisierungsgrad Ihrer Technologien zur Datenerhebung und ‑verarbeitung, um den Entwicklungsaufwand und die Entwicklungszeit zu reduzieren.
- Entwickeln Sie automatisierte Trainingspipelines, um manuelle Eingriffe zu reduzieren und die Produktivität der Entwickler zu steigern. Implementieren Sie Mechanismen für die Pipelines, um vorhandene Assets wie vorbereitete Datasets und trainierte Modelle wiederzuverwenden.
- Mit den Modellbewertungs- und -Optimierungsdiensten in Google Cloud können Sie die Modellleistung mit weniger Iterationen steigern. So können Ihre KI- und ML-Teams in kürzerer Zeit mehr Ziele erreichen.
Verwaltete Dienste und vortrainierte oder vorhandene Modelle verwenden
Es gibt viele Ansätze, mithilfe von KI und ML Geschäftsziele zu erreichen. Verwenden Sie einen inkrementellen Ansatz für die Modellauswahl und -entwicklung. So lassen sich übermäßige Kosten vermeiden, die mit einem Neuanfang verbunden sind. Um die Kosten zu kontrollieren, sollten Sie mit einem einfachen Ansatz beginnen: Verwenden Sie ML-Frameworks, verwaltete Dienste und vortrainierte Modelle.
Beachten Sie die folgenden Empfehlungen:
- Mit Notebook-Umgebungen können explorative und schnelle ML-Tests durchgeführt werden.
- Verwenden Sie vorhandene und vortrainierte Modelle als Ausgangspunkt, um die Modellauswahl und den Modellentwicklungsprozess zu beschleunigen.
- Verwaltete Dienste zum Trainieren oder Bereitstellen Ihrer Modelle verwenden Sowohl AutoML als auch verwaltete Dienste zum Trainieren benutzerdefinierter Modelle können dazu beitragen, die Kosten für das Modelltraining zu senken. Verwaltete Dienste können auch dazu beitragen, die Kosten Ihrer Infrastruktur für die Modellbereitstellung zu senken.
Kostenbewusstsein und kontinuierliche Optimierung fördern
Schaffen Sie eine Arbeitsumgebung, die Kommunikation und regelmäßige Bewertungen fördert. Mit diesem Ansatz können Teams im gesamten ML-Lebenszyklus kostensparende Möglichkeiten identifizieren und implementieren.
Beachten Sie die folgenden Empfehlungen:
- Berücksichtigen Sie FinOps-Prinzipien während des gesamten ML-Lebenszyklus.
- Achten Sie darauf, dass allen Kosten und Geschäftsvorteilen von KI- und ML-Projekten Eigentümer mit klarer Zuständigkeit zugewiesen sind.
Beitragende
Autoren:
- Isaac Lo | AI Business Development Manager
- Filipe Gracio, PhD | Customer Engineer
Weitere Beitragende:
- Kumar Dhanagopal | Cross-Product Solution Developer
- Marwan Al Shawi | Partner Customer Engineer
- Nicolas Pintaux | Customer Engineer, Application Modernization Specialist
KI und ML: Leistungsoptimierung
Dieses Dokument im Well-Architected Framework: KI- und ML-Perspektive bietet einen Überblick über Prinzipien und Empfehlungen, mit denen Sie die Leistung Ihrer KI- und ML-Arbeitslasten auf Google Cloudoptimieren können. Die Empfehlungen in diesem Dokument entsprechen dem Säulenelement zur Leistungsoptimierung des Google Cloud Well-Architected-Frameworks.
KI- und ML-Systeme ermöglichen neue Automatisierungs- und Entscheidungsfunktionen für Ihr Unternehmen. Die Leistung dieser Systeme kann sich direkt auf Ihre Geschäftskennzahlen wie Umsatz, Kosten und Kundenzufriedenheit auswirken. Wenn Sie das volle Potenzial Ihrer KI- und ML-Systeme ausschöpfen möchten, müssen Sie ihre Leistung anhand Ihrer Geschäftsziele und technischen Anforderungen optimieren. Die Leistungsoptimierung erfordert oft bestimmte Kompromisse. So kann beispielsweise eine Designentscheidung, die die erforderliche Leistung bietet, zu höheren Kosten führen. Bei den Empfehlungen in diesem Dokument hat die Leistung Vorrang vor anderen Aspekten wie den Kosten.
Um die KI- und ML-Leistung zu optimieren, müssen Sie Entscheidungen zu Faktoren wie der Modellarchitektur, den Parametern und der Trainingsstrategie treffen. Berücksichtigen Sie bei diesen Entscheidungen den gesamten Lebenszyklus der KI- und ML-Systeme und ihrer Bereitstellungsumgebung. Sehr große LLMs können beispielsweise bei einer massiven Trainingsinfrastruktur eine hohe Leistung erzielen, aber sehr große Modelle funktionieren möglicherweise nicht gut in kapazitätsbeschränkten Umgebungen wie Mobilgeräten.
Geschäftsziele in Leistungsziele umsetzen
Wenn Sie architektonische Entscheidungen treffen möchten, die die Leistung optimieren, beginnen Sie mit klaren Geschäftszielen. Entwerfen Sie KI- und ML-Systeme, die die technische Leistung bieten, die für die Unterstützung Ihrer Geschäftsziele und -prioritäten erforderlich ist. Ihre technischen Teams müssen die Zuordnung zwischen Leistungszielen und Geschäftszielen verstehen.
Beachten Sie die folgenden Empfehlungen:
- Geschäftsziele in technische Anforderungen umsetzen: Wandeln Sie die Geschäftsziele Ihrer KI- und ML-Systeme in spezifische technische Leistungsanforderungen um und bewerten Sie die Auswirkungen, wenn diese nicht erfüllt werden. Bei einer Anwendung, die beispielsweise die Kundenabwanderung vorhersagt, sollte das ML-Modell bei Standardmesswerten wie Accuracy und Recall eine gute Leistung erzielen und die Anwendung sollte betriebliche Anforderungen wie eine geringe Latenz erfüllen.
- Leistung in allen Phasen des Modelllebenszyklus überwachen: Beobachten Sie während der Tests und des Trainings nach der Bereitstellung des Modells Ihre wichtigsten Leistungskennzahlen (Key Performance Indicators, KPIs) und achten Sie auf Abweichungen von den Geschäftszielen.
- Automatische Bewertung für reproduzierbare und standardisierte Ergebnisse: Mit einer standardisierten und vergleichbaren Plattform und Methodik für die Testbewertung können Ihre Entwickler die Leistungsverbesserung beschleunigen.
Häufige Tests ausführen und verfolgen
Wenn Sie Innovation und Kreativität in Leistungsverbesserungen umwandeln möchten, benötigen Sie eine Kultur und eine Plattform, die Experimente unterstützen. Die Leistungssteigerung ist ein fortlaufender Prozess, da sich KI- und ML-Technologien kontinuierlich und schnell weiterentwickeln. Um einen zügigen, iterativen Prozess aufrechtzuerhalten, müssen Sie den Testbereich von Ihren Trainings- und Bereitstellungsplattformen trennen. Ein standardisierter und robuster Testprozess ist wichtig.
Beachten Sie die folgenden Empfehlungen:
- Testumgebung erstellen: Für Leistungsverbesserungen ist eine spezielle, leistungsstarke und interaktive Umgebung erforderlich, die das Testen und die gemeinsame Entwicklung von ML-Pipelines unterstützt.
- Experimentieren als Kultur etablieren: Führen Sie Tests vor jeder Produktionsbereitstellung durch. Neue Versionen iterativ veröffentlichen und immer Leistungsdaten erfassen Experimentieren Sie mit verschiedenen Datentypen, Merkmalstransformationen, Algorithmen und Hyperparametern.
Training und Bereitstellung von Diensten erstellen und automatisieren
Das Training und Bereitstellen von KI-Modellen sind Kernkomponenten Ihrer KI-Dienste. Sie benötigen robuste Plattformen und Verfahren, die eine schnelle und zuverlässige Erstellung, Bereitstellung und Ausführung von KI-Modellen unterstützen. Nehmen Sie sich Zeit und Mühe, um grundlegende Plattformen für Ihre wichtigsten Aufgaben im Bereich des Trainings und der Bereitstellung von KI zu erstellen. Diese grundlegenden Plattformen helfen Ihren Teams, Zeit und Aufwand zu sparen und die Qualität der Ergebnisse mittel- und langfristig zu verbessern.
Beachten Sie die folgenden Empfehlungen:
- KI-spezifische Komponenten eines Trainingsdienstes verwenden: Dazu gehören Hochleistungs-Computing- und MLOps-Komponenten wie Feature Stores, Modellregistre, Metadatenspeicher und Dienste zur Modellleistungsbewertung.
- KI-spezifische Komponenten eines Vorhersagedienstes verwenden: Diese Komponenten bieten leistungsstarke und skalierbare Ressourcen, unterstützen das Feature-Monitoring und ermöglichen die Überwachung der Modellleistung. Um Leistungseinbußen zu verhindern und zu verwalten, implementieren Sie zuverlässige Bereitstellungs- und Rollback-Strategien.
Designentscheidungen an die Leistungsanforderungen anpassen
Wenn Sie Designentscheidungen zur Leistungsverbesserung treffen, sollten Sie sorgfältig prüfen, ob diese Entscheidungen Ihre Geschäftsanforderungen erfüllen oder verschwenderisch und kontraproduktiv sind. Um die richtige Infrastruktur, Modelle oder Konfigurationen auszuwählen, müssen Sie Leistungsengpässe identifizieren und prüfen, wie sie mit Ihren Leistungsmesswerten zusammenhängen. So können beispielsweise auch bei sehr leistungsstarken GPU-Beschleunigern Leistungsengpässe bei Ihren Trainingsaufgaben auftreten, die auf Probleme mit der Daten-E/A der Speicherebene oder auf Leistungseinschränkungen des Modells selbst zurückzuführen sind.
Beachten Sie die folgenden Empfehlungen:
- Hardwareverbrauch basierend auf Leistungszielen optimieren: Wenn Sie ML-Modelle trainieren und bereitstellen möchten, die Ihre Leistungsanforderungen erfüllen, müssen Sie die Infrastruktur auf den Ebenen Rechenleistung, Speicher und Netzwerk optimieren. Sie müssen die Variablen messen und verstehen, die sich auf Ihre Leistungsziele auswirken. Diese Variablen unterscheiden sich für die Trainings- und Inferenzphase.
- Auf arbeitslastspezifische Anforderungen konzentrieren: Konzentrieren Sie Ihre Bemühungen zur Leistungsoptimierung auf die individuellen Anforderungen Ihrer KI- und ML-Arbeitslasten. Verwaltete Dienste für die Leistung der zugrunde liegenden Infrastruktur nutzen
- Passende Trainingsstrategien auswählen: Es gibt mehrere vortrainierte und grundlegende Modelle. Es werden regelmäßig weitere solcher Modelle veröffentlicht. Wählen Sie eine Trainingsstrategie aus, die für Ihre Aufgabe eine optimale Leistung erzielen kann. Entscheiden Sie, ob Sie ein eigenes Modell erstellen, ein vorab trainiertes Modell an Ihre Daten anpassen oder eine API für vorab trainierte Modelle verwenden sollten.
- Bedenken Sie, dass sich die Vorteile von Leistungsoptimierungsstrategien mit der Zeit verringern können: Wenn eine bestimmte Strategie zur Leistungsoptimierung keinen messbaren zusätzlichen Geschäftswert bietet, sollten Sie sie nicht weiter verfolgen.
Leistungsmesswerte mit Design- und Konfigurationsoptionen verknüpfen
Um Innovationen zu entwickeln, Probleme zu beheben und Leistungsprobleme zu untersuchen, sollten Sie einen klaren Zusammenhang zwischen Designentscheidungen und Leistungsergebnissen herstellen. Neben den Tests müssen Sie auch die Herkunft Ihrer Assets, Bereitstellungen, Modellausgaben sowie die Konfigurationen und Eingaben, die zu den Ausgaben geführt haben, zuverlässig erfassen.
Beachten Sie die folgenden Empfehlungen:
- Ein Daten- und Modellabstammungssystem erstellen: Alle bereitgestellten Assets und ihre Leistungsmesswerte müssen mit den Daten, Konfigurationen, dem Code und den Entscheidungen verknüpft sein, die zu den bereitgestellten Systemen geführt haben. Außerdem müssen Modellausgaben mit bestimmten Modellversionen und der Art und Weise verknüpft sein, wie die Ausgaben erstellt wurden.
- Erklärbarkeitstools zur Verbesserung der Modellleistung verwenden: Tools und Benchmarks für die explorative Datenanalyse und Erklärbarkeit von Modellen einführen und standardisieren. Mit diesen Tools können Ihre ML-Entwickler das Modellverhalten besser verstehen und die Leistung verbessern oder Verzerrungen beseitigen.
Beitragende
Autoren:
- Benjamin Sadik | AI and ML Specialist Customer Engineer
- Filipe Gracio, PhD | Customer Engineer
Weitere Beitragende:
- Kumar Dhanagopal | Cross-Product Solution Developer
- Marwan Al Shawi | Partner Customer Engineer
- Zach Seils | Networking Specialist