Generative KI-Anwendung entwickeln

In diesem Dokument erfahren Sie, wie Sie die Herausforderungen in den einzelnen Phase der Entwicklung einer generativen KI-Anwendung bewältigen. Dort erfahren Sie, wie Sie ein Modell auswählen, die Ausgabe des Modells an Ihre Anforderungen anpassen, Ihre Anpassungen bewerten und das Modell bereitstellen. In diesem Dokument wird davon ausgegangen, dass Sie bereits einen Anwendungsfall im Auge haben und dass dieser für generative KI geeignet ist. Informationen zum Entwickeln eines Anwendungsfalls finden Sie unter Geschäftsanwendungsfall der generativen KI bewerten und definieren.

Bevor Sie mit der Entwicklung einer generativen KI-Anwendung beginnen, prüfen Sie die technische Bereitschaft Ihres Unternehmens (Fähigkeiten und Infrastruktur). Informationen zur Bewertung Ihrer KI-Fähigkeiten und zur Erstellung einer Roadmap, um deren Potenzial auszuschöpfen, finden Sie unter AI Readiness Workshop. Wenn Sie Workflows entwickeln möchten, die von generativer KI automatisiert werden, prüfen Sie, ob Menschen für kritische Entscheidungsphasen einbezogen werden sollen. Die Prüfung durch Menschen kann bei Entscheidungen helfen, z. B. wo es um die verantwortungsvolle Nutzung, die Erfüllung bestimmter Anforderungen in Sachen Qualitätskontrolle oder um die Überwachung generierter Inhalte geht.

Generative KI-Modelle

Foundation Models für generative KI werden mit Multi-Terabyte-Datasets trainiert, die Texte, Bildern, Code oder auch andere Medienarten umfassen. Anhand der Daten und der Modellarchitektur können die Modelle komplexe Muster identifizieren und ein tiefes, kontextabhängiges Verständnis gewinnen sowie auf Basis der Trainingsdaten neue Inhalte wie Texte, Bilder, Musiken oder Videos erstellen.

Foundation Models bilden die Grundlage zahlreicher generativer KI-Anwendungen. Die Funktionen der Modelle bedingen neue Fähigkeiten: Auf Basis einfacher Text-Prompts können Foundation Models für generative KI lernen, verschiedene Aufgaben auszuführen, darunter Texte übersetzen, Fragen beantworten, Gedicht oder auch Code schreiben – ohne explizites Training für die einzelnen Aufgaben. Foundation Models für generative KI können auch mit verschiedenen Prompt-Techniken an bestimmte Aufgaben angepasst oder mit minimalen zusätzlichen Trainingsdaten optimiert werden.

Large Language Models (LLMs) werden mit Text trainiert. Sie sind ein Beispiel für Foundation Models, die in der Regel auf Deep-Learning-Architekturen basieren, z. B. der 2017 von Google entwickelten Transformer-Architektur. LLMs können mit Milliarden von Textbeispielen und anderen Inhalten trainiert und an spezifische Bereiche angepasst werden.

Andere multimodale Modelle erweitern die Fähigkeit generativer KI-Anwendungen, Informationen aus mehreren Modalitäten zu verarbeiten, darunter Bilder, Videos, Audio und Texte. Multimodale Prompts kombinieren mehrere Eingabeformate (Text, Bilder, Audio). Sie können beispielsweise ein Bild eingeben und eine Anwendung mit Generative AI bitten, die Objekte im Bild aufzulisten oder zu beschreiben. Die Gemini-Modelle von Google sind von Grund auf für Multimodalitäten ausgelegt und können nahtlos mit Elementen wie Texten, Bildern, Videos, Audio und Code arbeiten. Der Model Garden von Google Cloud und Vertex AI können Ihnen dabei helfen, verschiedene Basismodellen von Google, von Open Source- und von Drittanbieterquellen zu finden und anzupassen.

Modell auswählen

Berücksichtigen Sie bei der Auswahl eines Modells die Modalität, Größe und Kosten des Modells. Wählen Sie das kostengünstigste Modell aus, das Ihre Anforderungen an die Antwortqualität und ‑latenz erfüllt.

  • Modalität: Wie im vorherigen Abschnitt beschrieben, entspricht die Modalität eines Modells den übergeordneten Datenkategorien, für die ein Modell trainiert wird, z. B. Texte, Bilder und Video. In der Regel sind Ihr Anwendungsfall und die Modalität des Modells eng miteinander verbunden. Wenn Ihr Anwendungsfall die Text-zu-Bild-Generierung umfasst, müssen Sie ein Modell finden, das mit Text- und Bilddaten trainiert wurde. Wenn Sie die Flexibilität mehrerer Modalitäten benötigen, wie z. B. bei multimodalen Suchen, gibt es Modelle, die auch multimodale Anwendungsfälle unterstützen. Kosten und Latenz können hier jedoch höher sein.
    • Vertex AI-Modelle bieten eine umfangreiche Liste generativer KI-Modelle, die Sie verwenden können.
    • Model Garden bietet eine Liste von Erstanbieter- und Open-Source-ML-Modelle-Angeboten in Google Cloud.
  • Größe: Die Größe eines Modells wird in der Regel anhand der Anzahl der Parameter gemessen. Im Allgemeinen kann ein größeres Modell komplexere Muster und Beziehungen innerhalb von Daten erlernen, was zu qualitativ besseren Antworten führen kann. Da größere Modelle derselben Familie eine höhere Latenz und Kosten verursachen können, müssen Sie möglicherweise Modelle testen und bewerten, um festzustellen, welche Modellgröße für Ihren Anwendungsfall am besten geeignet ist.
  • Kosten: Die Kosten eines Modells hängen von seinen Funktionen ab, die in der Regel mit der Anzahl der Parameter des Modells zusammenhängen. Modelle können auch unterschiedlich angerechnet und abgerechnet werden. Bei einigen Modellen wird beispielsweise die Anzahl der Eingabe- und Ausgabetokens berücksichtigt. Andere Modelle werden basierend auf der Anzahl der Knotenstunden abgerechnet, die während der Bereitstellung des Modells verbraucht werden.

    • Informationen zu den Preisen für generative KI-Modelle für Vertex AI finden Sie unter Vertex AI-Preise.

    • Informationen zu den Kosten für die Bereitstellung von Modellen in der Google Kubernetes Engine (GKE) finden Sie unter GKE-Preise.

  • Features: Nicht alle Modelle unterstützen Features wie Feinabstimmung und Destillation. Wenn diese Funktionen für Sie wichtig sind, sehen Sie sich die von den einzelnen Modellen unterstützten Funktionen an.

Designvorschläge

Beim Prompt-Design werden Prompt- und Antwortpaare erstellt, um Sprachmodellen zusätzlichen Kontext und Anweisungen zu geben. Nachdem Sie Prompts erstellt haben, geben Sie diese als Prompt-Dataset zum Vortraining an das Modell. Wenn ein Modell Vorhersagen liefert, antwortet es mit Ihren integrierten Anweisungen.

Wenn Sie eine bestimmte Ausgabe erhalten möchten, können Sie Prompt-Design-Strategien nutzen, z. B. das Modell anweisen, eine Teileingabe abzuschließen oder dem Modell Beispiele für ideale Antworten bereitzustellen. Weitere Informationen finden Sie unter Einführung in das Prompt-Design.

Modell anpassen

Nach dem Design des Prompts stellen Sie möglicherweise fest, dass die Antworten eines Modells so gut funktionieren, dass Sie es nicht anpassen müssen. Wenn das Modell nicht gut funktioniert, z. B. wenn es zu Halluzinationen kommt, können Sie zusätzliche Anpassungsmethoden verwenden. In den folgenden Abschnitten werden solche Techniken vorgestellt und Sie erfahren, wie sich diese Optionen auf die Ausgabe Ihres Modells auswirken.

Funktionsaufrufe und Erweiterungen

Durch Funktionsaufrufe und Vertex AI-Erweiterungen werden die Funktionen Ihres Modells erweitert. Betrachten Sie die Anwendungsfälle für Ihre Anwendung und bedenken Sie, in welchen Fällen die Verwendung eines Modells allein möglicherweise nicht ausreicht. Um ein Modell zu unterstützen, fügen Sie Funktionsaufrufe oder Erweiterungen hinzu. Beispielsweise kann Ihr Modell Kalenderinformationen aus Text extrahieren und dann mithilfe einer Erweiterung eine Reservierung suchen und die Buchung vornehmen.

Sie können Funktionsaufrufe und Erweiterungen synonym verwenden, es gibt jedoch einige allgemeine Unterschiede. Ein Funktionsaufruf ist ein asynchroner Vorgang. Sie müssen keine Anmeldedaten in Ihren Code aufnehmen. Vertex AI-Erweiterungen bieten vordefinierte Optionen, die Sie für komplexe Aufgaben verwenden können, sodass Sie keine eigenen Funktionen schreiben müssen. Da Vertex AI-Extensions jedoch Funktionen für Sie zurückgeben und aufrufen, müssen Sie für Erweiterungen Anmeldedaten in Ihren Code aufnehmen.

Nullniveau

Fundierung bezieht sich auf die Erweiterung von Modellantworten, indem sie an überprüfbaren Informationsquellen gebunden werden. Um ein Modell zu verankern, verbinden Sie es mit einer Datenquelle. Durch das Fundieren eines Modells können Sie die Vertrauenswürdigkeit der generierten Inhalte verbessern, indem die Halluzinationen reduziert werden.

Retrieval-Augmented Generation (RAG) ist eine gängige Methode zur Grounding. RAG verwendet die Suchfunktion, um relevante Informationen zu finden, und fügt diese Informationen dann einem Modellprompt hinzu. Bei der Verwendung von RAG basiert die Ausgabe auf Fakten und aktuellen Informationen. Die RAG-Suche verwendet Vektoreinbettungen und Vektordatenbanken, in denen Daten als numerische Darstellungen unstrukturierter Daten (z. B. Texte und Bilder) gespeichert werden. Weitere Informationen finden Sie unter Was ist eine Vektordatenbank?.

Weitere Informationen zur Fundierung in Vertex AI finden Sie im Fundierungs-Überblick. Informationen zum Einrichten eines Einbettungsworkflows in AlloyDB for PostgreSQL finden Sie im Einbettungsworkflow-Beispiel.

Modellabstimmung

Spezialisierte Aufgaben, wie das Trainieren eines Sprachmodells mit einer bestimmten Terminologie, erfordern möglicherweise mehr Training, als allein mit dem Prompt-Design möglich ist. In diesem Szenario können Sie die Modellabstimmung verwenden, um die Leistung zu verbessern und das Modell zu zwingen, sich an bestimmte Ausgabeanforderungen anzupassen.

Zum Optimieren eines Modells müssen Sie ein Trainings-Dataset erstellen und dann eine Abstimmungsmethode auswählen, z. B. überwachte Abstimmung, Abstimmung durch bestärkendes Lernen durch menschliches Feedback (RLHF) oder Modelldestillation. Die Größe des Datasets und die Optimierungsmethoden hängen von Ihrem Modell und dem Optimierungsziel ab. Für spezialisierte Nischenaufgaben ist beispielsweise ein kleinerer Datensatz erforderlich, um signifikante Verbesserungen zu erzielen. Weitere Informationen zur Modelloptimierung finden Sie unter Language Foundations Models optimieren.

Modell bewerten

Mithilfe der Modellbewertung können Sie beurteilen, wie sich Ihre Prompts und Anpassungen auf die Leistung eines Modells auswirken. Jede Bewertungsmethode hat ihre eigenen Stärken und Schwächen. So können beispielsweise messwertbasierte Bewertungen automatisiert und schnell skaliert werden, um die Leistung quantifizierbar zu messen. Messwerte können jedoch die Ergebnisse zu sehr vereinfachen und den Kontext und Nuancen natürlicher Sprache verpassen. Um diese Schwachstellen zu minimieren,können Sie verschiedene Messwerten in Kombination mit menschlichen Bewertungen verwenden.

Generative AI für Vertex AI bietet eine automatische vergleichende Bewertung, mit der Sie die Ausgabe zweier Modelle mit der Grundwahrheit vergleichen können. “ Ein drittes Modell hilft Ihnen bei der Auswahl der qualitativ besseren Antworten. Die automatische vergleichende Bewertung entspricht der von menschlichen Evaluators, ist jedoch schneller und ist bei Bedarf verfügbar. Für die Vergleiche erfordert diese Methode jedoch ein Modell, das größer als die zu bewertenden Modelle ist, die nämlich inhärente Verzerrungen haben können. Daher sollten Sie weiterhin einige manuelle Bewertungen durchführen.

Für alle Bewertungsmethoden benötigen Sie ein Bewertungs-Dataset. Ein Bewertungs-Dataset enthält Prompt- und Grundwahrheit-Paare (ideale Antwort), die Sie erstellen. Fügen Sie beim Erstellen Ihres Datasets eine Vielzahl von Beispielen hinzu, die zur Aufgabe passen, die Sie bewerten möchten, um aussagekräftige Ergebnisse zu erhalten.

Modell bereitstellen

Wenn Sie ein Modell bereitstellen, werden ein Endpunkt und physische Maschinenressourcen mit Ihrem Modell verknüpft, um Onlinevorhersagen mit niedriger Latenz bereitzustellen. Nicht alle Modelle müssen bereitgestellt werden. Beispielsweise haben die Foundation Models von Google, die in der generativen KI für Vertex AI verfügbar sind, bereits Endpunkte. Die Endpunkte sind für Ihr Google Cloud-Projekt spezifisch und können sofort verwendet werden. Wenn Sie eines dieser Modelle jedoch optimieren, müssen Sie es an einem Endpunkt bereitstellen.

Entscheiden Sie beim Bereitstellen eines Modells, ob Sie Modelle in einer vollständig verwalteten oder in einer selbstverwalteten Umgebung bereitstellen möchten. In einer vollständig verwalteten Umgebung wählen Sie die benötigten physischen Ressourcen aus, darunter Maschinen- und Beschleunigertyp. Vertex AI instanziiert und verwaltet dann die Ressourcen für Sie. Informationen zum Aktivieren von Onlinevorhersagen, bei denen Vertex AI die Bereitstellungsressourcen für Sie verwaltet, finden Sie unter Modell auf einem Endpunkt bereitstellen. In einer selbstverwalteten Umgebung haben Sie eine detailliertere Kontrolle über Ihre Ressourcen, müssen sie aber selbst verwalten. Mit selbstverwalteten Umgebungen können Sie Modelle auf Plattformen wie GKE bereitstellen.

Nachdem Sie sich entschieden haben, in welcher Art von Umgebung Sie die Bereitstellung vornehmen möchten, sollten Sie den erwarteten Traffic, die Latenz-Anforderungen und das Budget berücksichtigen. Sie müssen diese Faktoren mit Ihren physischen Ressourcen in Einklang bringen. Wenn beispielsweise niedrigere Kosten Priorität haben, können Sie möglicherweise die höhere Latenz der kostengünstigeren Maschinen tolerieren. Testumgebungen sind ein gutes Beispiel für diesen Kompromiss. Weitere Informationen zur Auswahl eines Maschinentyps finden Sie im Notebook Idealen Maschinentyp für Vertex AI-Endpunkte bestimmen.

Responsible AI

Die generative KI in Vertex AI wurde unter Berücksichtigung der KI-Prinzipien von Google entwickelt. Es ist jedoch wichtig, dass Sie Modelle testen, um sicherzustellen, dass sie sicher und verantwortungsvoll verwendet werden. Aufgrund der unglaublichen Vielseitigkeit von LLMs ist es schwierig, unbeabsichtigte oder unvorhergesehene Antworten vorherzusagen.

Berücksichtigen Sie bei der Entwicklung von Anwendungen für Ihren Anwendungsfall die Einschränkungen von generativen KI-Modellen, damit Sie potenziellen Missbrauch und unbeabsichtigte Probleme angemessen abmildern können. Ein Beispiel für eine Modelleinschränkung ist, dass ein Modell nur so gut wie die verwendeten Daten ist. Wenn Sie dem Modell suboptimale Daten liefern, wie z. B. ungenaue oder unvollständige Daten, können Sie keine optimale Leistung erwarten. Prüfen Sie, ob Ihre Eingabedaten und Prompts korrekt sind. Andernfalls kann das Modell eine suboptimale Leistung oder falsche Modellausgaben liefern. Weitere Informationen zu den Einschränkungen der generativen KI-Modelle finden Sie unter Responsible AI.

Nächste Schritte