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. Darin wird beschrieben, wie Sie ein Modell auswählen, die Ausgabe des Modells an Ihre Anforderungen anpassen, Ihre Anpassungen bewerten und Ihr Modell bereitstellen. In diesem Dokument wird davon ausgegangen, dass Sie bereits einen Anwendungsfall im Blick 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 für zahlreiche generative 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 generativer KI 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. Google Clouds Model Garden und Vertex AI können Ihnen dabei helfen, verschiedene Basismodelle 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 Ihren Anforderungen an Antwortqualität und Latenz entspricht.

  • 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 hängen Ihr Anwendungsfall und die Modalität des Modells eng zusammen. Wenn Ihr Anwendungsfall die Generierung von Text zu Bild umfasst, benötigen Sie ein Modell, 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 inGoogle 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 höhere Kosten verursachen können, müssen Sie möglicherweise Modelle testen und bewerten, um herauszufinden, welche Modellgröße für Ihren Anwendungsfall am besten geeignet ist.
  • Kosten: Die Kosten eines Modells hängen von seinen Funktionen ab, was in der Regel mit der Anzahl der Parameter des Modells zusammenhängt. Modelle können auch unterschiedlich angerechnet und abgerechnet werden. Bei einigen Modellen wird beispielsweise die Anzahl der Eingabe- und Ausgabetokens berechnet. 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 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 Funktionen an, die von den einzelnen Modellen unterstützt werden.

Prompts entwerfen

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. Sie können Ihnen helfen, die Auswirkungen dieser Optionen auf die Ausgabe Ihres Modells zu verstehen.

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 fundieren, 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 häufig verwendete Grounding-Technik. Bei RAG wird die Suchfunktion verwendet, um relevante Informationen zu finden. Diese Informationen werden dann einem Modell-Prompt hinzugefügt. Wenn Sie RAG verwenden, basieren die Ausgaben auf Fakten und den neuesten 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 ab, was Sie optimieren möchten. Für spezielle Nischenaufgaben ist beispielsweise ein kleineres Dataset erforderlich, um signifikante Verbesserungen zu erzielen. Weitere Informationen zur Modelloptimierung finden Sie unter Language Foundations Models optimieren.

Modell bewerten

Mithilfe der Modellevaluierung 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. Beispiel: Messwertbasierte Auswertungen lassen sich automatisieren und schnell skalieren. Außerdem lässt sich die Leistung quantifizieren. 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. Sie sollten daher 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. Wenn Sie Ihr Dataset erstellen, sollten Sie eine Vielzahl von Beispielen einbeziehen, die mit der Aufgabe übereinstimmen, die Sie auswerten, um aussagekräftige Ergebnisse zu erhalten.

Modell bereitstellen

Durch die Bereitstellung eines Modells werden ein Endpunkt und physische Maschinenressourcen mit Ihrem Modell verknüpft, um Onlinevorhersagen mit niedriger Latenz zu ermöglichen. Nicht für alle Modelle ist eine Bereitstellung erforderlich. Beispielsweise haben die Foundation Models von Google, die in der generativen KI für Vertex AI verfügbar sind, bereits Endpunkte. Die Endpunkte sind spezifisch für Ihr Google Cloud -Projekt und stehen Ihnen sofort zur Verfügung. Wenn Sie eines dieser Modelle abstimmen, müssen Sie es jedoch 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 genauere Kontrolle über Ihre Ressourcen, müssen sie aber selbst verwalten. In selbstverwalteten Umgebungen können Sie Modelle auf Plattformen wie GKE bereitstellen.

Nachdem Sie sich für eine Umgebung entschieden haben, sollten Sie den erwarteten Traffic, die Latenzanforderungen und Ihr 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 generativer KI-Modelle, damit Sie potenziellen Missbrauch und unbeabsichtigte Probleme angemessen eindämmen 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