Werk:AI mit Arnie/Prompt Engineering Basics
Large Language Models oder LLMs können natürlich richtig richtig viele Dinge. Aber wenn man es runterbricht auf die wirklichen Dinge, also die Dinge, die sie wirklich können, sind es eigentlich nur zwei: Sie können Texte bzw. Code – Code ist eigentlich nichts anderes als Text – erweitern und zusammenfassen. Das heißt, du gibst wenige Wörter, und es kommen viele Wörter raus, oder du gibst viele Wörter, und es kommen wenig Wörter raus. Das sind eigentlich die zwei Dinge, die Large Language Models können.
Natürlich haben wir hier auch ein Diffusion-Modell dabei, viele andere Zugriffe und so weiter. Aber das Modell an sich, das Modell von OpenAI, das wirklich den Großteil der Arbeit macht – diese Modelle können nur die zwei Dinge: Texte erweitern, Texte zusammenfassen.
Nun ist aber wichtig zu verstehen, dass sowohl das Erweitern als auch das Zusammenfassen nur funktioniert, wenn man gute Prompts verwendet. Und worum geht es im Prompt? Es geht eigentlich nur darum, Kontext zu geben.
Lasst uns einfach mal ein Beispiel von einem schlechten Prompt machen. Dann erkläre ich ein Konzept, wie man einen solchen Prompt besser machen kann:
„Ich will einen Artikel zu Handy’s schreiben. Gib ihn mir.“
Das ist ein unglaublich schlechter Prompt. Der Prompt ist nicht schlecht, weil ich Rechtschreibfehler drinnen habe, sondern weil ich keinen Kontext gebe. Der einzige Kontext ist, dass wir einen Artikel zu Handys wollen. Natürlich bekommen wir hier höchstwahrscheinlich sofort schon einen Artikel, oder das Modell fragt uns nach mehr Kontext. Mittlerweile machen die Modelle das schon relativ gut. Du siehst, das Modell hilft uns hier schon ein klein wenig, damit wir besser arbeiten.
Also: Wähle ein Thema. Handys sind ein breites Thema, und es ist wichtig, dass Sie sich auf einen bestimmten Aspekt konzentrieren. Recherchieren Sie, erstellen Sie eine Gliederung, schreiben Sie einen Artikel, überarbeiten Sie den Artikel.
Ich hoffe, also, wir bekommen hier jetzt schon sofort nur breite Tipps und nicht direkt den Artikel, weil unser Prompt halt so schlecht war. Wir sagten nur: „Wir wollen einen Artikel zu Handys schreiben. Gib ihn mir.“ Also: Der Prompt ist unglaublich schlecht, dementsprechend ist auch der Output schlecht.
Das heißt: Das Ding, was wir brauchen, ist Kontext. Wie wir den Kontext ganz genau geben, ist, um ehrlich zu sein, noch nicht mal so wichtig. Es gibt den Chain-of-Thought-Prompt, Tree-of-Thought, strukturierte Prompts – es gibt haufenweise Namen für haufenweise verschiedene Prompting-Konzepte.
Aber das aller Allerwichtigste, was ich dir jetzt hier mitgeben will – und muss sogar – ist: Semantic Association.
Was bedeutet Semantic Association? Das bedeutet einfach nur, dass sich dieses Modell Dinge dazu denken kann. Ähnlich wie du. Sage ich zu dir z. B. „das alte Rom“, hast du mit großer Wahrscheinlichkeit Bilder und Wörter in deinem Kopf, die mit dem alten Rom zu tun haben. Vielleicht hattest du antike Römer, das achte oder neunte Jahrhundert im Kopf. (Ich bin kein Geschichtsexperte, ich hoffe, ich bringe das nicht durcheinander.) Das sind zumindest die Dinge, die ich jetzt sofort im Kopf hatte.
Das heißt: Semantic Association bedeutet einfach nur, dass diese Modelle assoziativ sind – sie denken sich Dinge dazu. Warum machen sie das? Du hast gelernt, was ein Large Language Model macht: Es nimmt deine Wörter, teilt die Wörter in Wort-Token und sucht danach in entsprechenden Texten.
Wenn wir jetzt z. B. „das alte Rom“ dabei haben, also die Wörter „das alte Rom“, dann wird höchstwahrscheinlich in Texten gesucht, wo „das alte Rom“ steht. Und die Wahrscheinlichkeit ist sehr, sehr groß, dass in diesen Artikeln auch die Wörter „die Römer“ und so weiter mit dabei sind, mit drinnen sind. Dementsprechend sucht das Modell an den richtigen Orten. Und dementsprechend kannst du auch deinen Output besser anpassen.
Wenn du dem Modell z. B. sagst: „Schreibe den Artikel für einen Vierjährigen“, dann wird das runtergebrochen. Die Dinge sind assoziativ, also suchen sie erstmal natürlich in Artikeln, die vielleicht für Vierjährige geschrieben worden sind. Das heißt, wir bekommen den Stil wieder von diesem Ding. Und so funktioniert das: Du kannst einfach nur Wörter, Stichwörter, Dinge dazugeben. Die Modelle sind assoziativ und suchen dementsprechend in den richtigen Texten.
Lasst uns ein klitzekleines Beispiel machen von diesem Artikel zu Handys. Ein solcher Prompt würde z. B. besser funktionieren. Sehen wir uns mal kurz an, was ich jetzt gemacht habe. Ich habe hier im Übrigen einige Dinge kombiniert, aber wir berücksichtigen vor allem diese Semantic Association.
Erstmal: „Du bist ein Experte für Handys.“ Ich gebe diesem Modell jetzt eine Rolle – das nennt man Rollenprompting.
„Du kennst dich mit dem Google Pixel 8 Pro aus.“ Also: Er ist Experte beim Google Pixel 8 Pro.
„Schreibe einen 600 Wörter langen Artikel, warum das Google Pixel 8 Pro gut ist.“
Wir sagen jetzt in den sogenannten strukturierten Prompts, was genau gemacht werden muss: ein 600 Wörter langer Artikel, und es soll erwähnt werden, warum das Google Pixel 8 Pro gut ist. Jetzt werfe ich einfach nur noch ein paar Stichwörter mit rein: „Gemini Nano“, „LLM“ und „On-Device“.
Das Gemini Nano ist einfach nur das Large Language Model, das auf dem Google Pixel 8 Pro integriert werden sollte. Ich hoffe, dass hier alles richtig und gut eingesetzt wird, denn diese Dinge sind noch relativ neu.
Das heißt: Wir haben eine Rolle gegeben, wir haben ihm gesagt, dass er sich bei Handys – und besonders mit dem Google Pixel – auskennt. Wir haben ihm strukturiert gesagt, was wir haben wollen, nämlich einen Artikel mit 600 Wörtern. Ich habe noch ein paar Stichwörter mit reingeworfen, damit er sich dazu denken kann, was er alles so einbauen sollte. Eventuell könnten wir auch noch schreiben, dass der Artikel leicht lesbar sein soll – für meinetwegen … Studenten, oder dass er vielleicht hochwissenschaftlich sein soll, für XYZ. Es ist völlig egal. Es ist nur wichtig, dass du das spezifisch eingibst.
Ich bin mit diesem Prompt zufrieden. Vielleicht können wir noch die Audience spezialisieren oder meinetwegen auch, ob es ein Twitter-Thread oder sonst irgendwas sein soll. Wo soll der Artikel erscheinen? Z. B. noch so was: „Der Artikel ist für meine Webseite. Leser vor allem Technik-Narren.“
Und das Ganze können wir jetzt absenden. Und dann erwarte ich einen viel, viel besseren Output.
Und da haben wir unseren Artikel, und alles wurde so umgesetzt, wie ich mir das Ganze vorgestellt habe:
Also: „Das Google Pixel 8 Pro ist ein Smartphone, das mit vielen fortschrittlichen Funktionen ausgestattet ist. Es ist das erste Smartphone, das mit künstlicher Intelligenz von Gemini Nano ausgestattet ist. „Du siehst, Semantic Association hat funktioniert. „Diese Technologie ermöglicht es dem Pixel 8 Pro, eine Vielzahl von Aufgaben auszuführen, ohne dass eine Verbindung zum Internet erforderlich ist. In diesem Artikel werde ich Ihnen erklären, worum es geht …“ und so weiter. „Das Gemini Nano ist ganz einfach ein Large Language Model. Es läuft On-Device, also es ist lokal installiert, und deshalb braucht man einfach keinen Internetzugriff.“
Das erklärt uns hier dieser Artikel. Danach noch ein paar Worte zur Kamera, zum Design und das Fazit: „Google Pixel 8 Pro ist ein großartiges Smartphone …“ und so weiter.
Ich will dich hier nicht langweilen, denn mir ging es vor allem um die Prompting-Struktur. Es ist unglaublich wichtig, dass du Kontext gibst. Du kannst Kontext geben – einmal mit strukturierten Prompts. Gib ganz einfach genau ein, was du haben willst. Soll es ein Artikel sein, soll es ein Blogpost sein, soll es, was weiß ich, was sein? Für wen soll es sein? Meinetwegen noch: „Für Technik-Narren, für meine Webseite.“ Wie lang soll er sein? Z. B. 600 Wörter.
Und natürlich kannst du auch das Rollenprompting verwenden. Das heißt: Du gibst dem Modell erstmal eine Rolle und sagst, womit es sich auskennt. Und das da ist für mich zumindest eines der coolsten Dinge: Dieses Semantic Association. Das heißt: Wenige Wörter reichen dafür aus, um diesen Kontext zu geben.
In diesem Video hast du so schnell wie möglich gelernt, wie du schlechte Prompts zu guten Prompts machen kannst. Denk immer daran: Diese Modelle können eigentlich nur zwei Sachen: Text ausweiten und Text zusammenfassen. Besonders wenn du Text ausweiten willst, ist das Prompt Engineering unglaublich wichtig. Du musst Kontext geben.
Wie du den Kontext genau gibst, ist noch nicht mal so wichtig. Es gibt sehr, sehr viele Prompting-Konzepte. Ich hänge dir natürlich einige Beispiele in den Materialien an. Es ist aber wichtig, dass du diese Semantic Association verstehst.
Das heißt: Diese Modelle sind assoziativ. Einige wenige Wörter reichen, damit die Modelle genügend Kontext haben. Außerdem hast du hier noch den Vorteil, dass du Token sparst. Das heißt: Du hast ja gelernt, wir haben das sogenannte Token-Limit. Wenn du mit solchen Stichwörtern arbeitest und ganz einfach die Semantic Association verwendest und das Modell selbst dazudenken lässt, dann sparst du dir die Token, die du in den Chat reintippst und das ist unglaublich praktisch.
Und das ist das einfachste Konzept von diesem Prompt Engineering. Im nächsten Video noch ein paar weitere Tipps zum Prompt Engineering und ein paar Prompt Engineering Vorlagen, und ich denke, damit kannst du dann wirklich, wirklich anständig arbeiten, und zwar egal in welchem Interface.