generative AI

Umfassender Leitfaden zu IBM Watsonx.ai und Generativer KI

A visual guide to using IBM Watsonx.ai for generative AI applications.

Tutorial: Was ist Generative KI und wie kann sie angewendet werden?

Generative KI bezieht sich auf Deep-Learning-Modelle, die qualitativ hochwertigen Text, Bilder und andere Inhalte basierend auf den Daten generieren können, auf denen sie trainiert wurden. Ein Large Language Model (LLM) ist eine Art Sprachmodell, das für seine Fähigkeit bekannt ist, allgemeines Sprachverständnis und -generierung zu erreichen.

Das Ziel dieses Labs ist es, zu zeigen, wie Sie Prompt-Engineering mit LLMs nutzen können, um genauere, relevantere und kontextbewusste Antworten zum Thema Reiseinformationen über Länder zu erhalten. Wir werden diese Informationen nutzen, wenn wir die Anwendung im Lab 2 entwickeln.

Hinweis: Die folgenden Bilder zeigen tatsächliche Ergebnisse aus dem Watsonx.ai Prompt-Labor. Der schwach graue Text ist das, was wir dem Modell gegeben haben. Der blau hervorgehobene Text zeigt, wie das Modell geantwortet hat. Beachten Sie, dass die hier gezeigten Ausgaben möglicherweise nicht den Ausgaben entsprechen, die Sie beim Einsatz des Prompt-Labors erhalten.

Schritte

Schritt 1: Erste Schritte

Wenn Sie das Watsonx.ai Prompt-Labor öffnen und die Option Freihandmodus anklicken, sehen Sie Folgendes. Der große zentrale Textbereich ist der Prompt-Editor. Auf der rechten Seite können Sie die Modellparameter anzeigen, die Sie verwenden können, um zu optimieren, wie das Modell auf Ihren Prompt reagiert. Unten links finden Sie eine Zusammenfassung der Anzahl der Token, die Ihr Prompt während der Ausführung verwendet hat. Für weitere Informationen zum Prompt-Engineering siehe Watsonx Prompt-Labor.

Hinweis: Die Modelle, die im Prompt-Labor bereitgestellt werden, sind Fundamentmodelle, die auf IBM Cloud gehostet werden und die es uns ermöglichen, sie zu inferieren oder aufzurufen. LLMs sind eine Art Fundamentmodell, die wir in diesem Labor verwenden werden.

Schritt 2: Erster Prompt

Wenn Sie mit dem anfänglichen Prompt beginnen, ist es am besten, etwas schnell auszuprobieren, und wenn es nicht das gewünschte Ergebnis liefert, verbessern Sie es im Laufe der Zeit. Wir werden dies schrittweise tun.

Beginnen wir mit:

  • Modell: flan-t5-xxl-11b
  • Prompt-Text: Ich denke daran, nach Thailand zu reisen.

Dies produziert eine Ausgabe, wenn wir das Modell aufrufen (mit anderen Worten, auf die Schaltfläche "Generieren" klicken), die nicht sehr nützlich ist, da sie keine Informationen über Thailand liefert. Das ist vergleichbar mit der Frage an jemanden zu einem bestimmten Thema. Je offener die Fragen, desto generischer die Antworten. Umgekehrt ergeben geschlossene Fragen spezifische Antworten. Daher müssen wir es erneut versuchen und mehr spezifischen Kontext im Prompt bieten, um das Modell zu leiten, relevante Informationen über Thailand zu generieren.

Schritt 3: Direkter sein

Seien wir direkter in unserem Prompt:

  • Prompt-Text: Ich denke daran, nach Thailand zu reisen. Erzähl mir von Thailand.

Dies produziert eine vielversprechendere Ausgabe, da wir beginnen, einige Informationen über Thailand zu erhalten. Es scheint jedoch in der Mitte des Satzes zu enden. Die Zusammenfassung der Anzahl der Token (unten links) zeigt an:

Stop-Grund: Max-Token-Parameter erreicht.

Das bedeutet, dass wir nicht genügend Token haben, um die Anfrage zu verarbeiten. Token stellen die kleinste Einheit dar, die von der Modellarchitektur verarbeitet wird. Für unsere Diskussion in diesem Labor betrachten wir Token ähnlich wie Wörter. Daher müssen wir unsere "Max-Token" erhöhen.

Schritt 4: Mit Modellparametern experimentieren

Wenn wir die Max-Token auf 200 erhöhen und den gleichen Prompt erneut ausführen, erzeugen wir eine Ausgabe, die ähnlich der folgenden ist:

Diesmal hat es den Satz beendet, und die Zusammenfassung der Anzahl der Token lautet:

Stop-Grund: End of sequence token encountered.

Von dieser Seite aus ist alles gut. Jedes Mal, wenn wir das Modell abfragen, gibt es jedoch dieselbe Antwort zurück. Dies liegt daran, dass wir Greedy-Decoding verwenden, was das Modell ständig auffordert, das zu liefern, was es für die beste oder statistisch genaueste Antwort hält. Lass uns die Decoding-Methode auf Sampling ändern und sehen, was das Modell bei jedem Mal mit dem gleichen Prompt zurückgibt.

Mit dieser Anpassung werden Sie unterschiedliche Antworten erleben, ähnlich dem Sprichwort: "Vielfalt ist das Salz des Lebens!" Es stehen zusätzliche Parameter zur Verfügung, um das Modell zu konfigurieren, aber wir werden diese in diesem Labor nicht behandeln. Für weitere Details zu den Parametern und wie man sie verwendet, siehe das Watsonx Prompt-Labor.

Schritt 5: Spezifischer werden

Nachdem wir mit dem Prompt-Text und den Modellparametern experimentiert haben, haben wir das Modell geleitet, um Informationen über Thailand bereitzustellen. Diese Informationen sind jedoch immer noch recht allgemein. Für die Gestaltung unserer Reiseanwendung möchten wir maßgeschneiderte Informationen für die Interessen der Benutzer. Lassen Sie uns den Prompt-Text wie folgt aktualisieren, um Informationen über Wassersport und Essen zu erhalten:

  • Prompt-Text: Ich denke daran, nach Thailand zu reisen. Ich mag Wassersport und Essen. Erzähl mir von Thailand.

Diese Antwort ist sehr begrenzt, und sie sollte informativer für die praktische Verwendung in Ihrer Anwendung sein. Wir haben mit verschiedenen Prompts und Parametern experimentiert, aber wir haben immer noch nicht die relevanten Informationen, die benötigt werden. Vielleicht ist es an der Zeit, ein anderes Modell zu erkunden?

Schritt 6: Andere Modelle ausprobieren

Das Watsonx.ai Prompt-Labor bietet Informationskarten zu den unterstützten Modellen. Jede Karte enthält:

  • Anbieter und Quelle des Modells
  • Aufgaben, in denen das Modell hervorragend abschneidet
  • Wie man das Modell anpasst
  • Die wissenschaftliche Arbeit, auf die es sich stützt
  • Voreingenommenheiten, Risiken und Einschränkungen

Um Informationen zu den Modellen zu erhalten, klicken Sie auf das Dropdown neben dem Modellnamen und wählen Sie "Alle Fundamentmodelle anzeigen". Hier ist eine Liste von Modellen, die derzeit auf der kostenlosen Version des Prompt-Labors unterstützt werden:

Klicken Sie auf das Modell llama-2-70b-chat, um die Informationskarte zu überprüfen. Dort steht, dass das Modell "für Dialoganwendungsfälle optimiert" ist, was es zu einem starken Kandidaten für unsere Informationsbedürfnisse machen könnte. Klicken Sie auf die Schaltfläche "Modell auswählen", und lassen Sie uns versuchen, dieses Modell auszuprobieren, um zu sehen, ob es mehr Informationen über Thailand liefert.

Schritt 7: Ein anderes Modell verwenden

Nachdem wir das Modell llama-2-70b-chat ausgewählt haben und die gleiche Eingabeaufforderung und Parameter beibehalten, überprüfen wir, was dieses Modell zurückgibt.

Dies scheint eindeutig eine Verbesserung zu sein, jedoch wird die Antwort erneut abgeschnitten – ein Muster, das wir zuvor gesehen haben. Dies wird durch den Stop-Grund bestätigt, der darauf hinweist, dass die Max-Token erreicht wurden.

Mit steigenden Token steigen auch die Kosten für den Aufruf eines Modells. Diesmal wäre es klug, anstatt einfach nur die Tokenanzahl zu erhöhen, Begrenzungen für den Prompt festzulegen.

Schritt 8: Einschränkungen zum Prompt hinzufügen

Wir werden den Prompt-Text aktualisieren, um Einschränkungen zur zurückgegebenen Antwort einzuschließen. Auf diese Weise leiten wir das Modell an, Informationen zurückzugeben, die auf unsere Definition der Anfrage beschränkt sind:

  • Prompt-Text: Ich denke daran, nach Thailand zu reisen. Ich mag Wassersport und Essen. Geben Sie mir 5 Sätze über Thailand.

Endlich haben wir jetzt eine nützliche, informative und auf die Benutzerpräferenzen zugeschnittene Antwort auf unsere Anfrage zu Thailand. Darüber hinaus entspricht sie unserem maximalen Token-Kontingent.

Fazit und nächste Schritte

Das Tuning von Prompts bei einem LLM bietet eine Alternative zum Training und zur Erstellung eines Modells, das auf Ihre Bedürfnisse zugeschnitten ist. Wie im Labor veranschaulicht, erfordert dieser Prozess iteratives Testen und Anpassen, um ein Modell und einen Prompt zu erreichen, die mit Ihren Spezifikationen übereinstimmen. Während die hier gezeigten Beispiele einen grundlegenden Fall darstellen, sind die Prinzipien auf verschiedene Szenarien übertragbar. Möglicherweise sind mehr Kontext im Prompt oder sogar Beispiele (d. h. Shot-Prompting) erforderlich, um die Antworten genau zu steuern.

Es wurde bereits erwähnt, dass die Modelle auf der IBM Cloud gehostet werden und durch Inferenz/Aufruf über die Schaltfläche "Generieren" zugegriffen wird. Sie können die REST-API überprüfen, indem Sie auf das Dropdown "Code anzeigen" klicken, wie gezeigt, um Ihnen alle Details des API-Aufrufs zu zeigen, einschließlich des Modellnamens, des Prompt-Texts und der Parameter.

Weiterlesen

A user-friendly interface of LlamaFactory for fine-tuning AI models.
Illustration of AI model training process with smaller and larger models

Hinterlasse einen Kommentar

Alle Kommentare werden vor der Veröffentlichung geprüft.

Diese Website ist durch hCaptcha geschützt und es gelten die allgemeinen Geschäftsbedingungen und Datenschutzbestimmungen von hCaptcha.