Podcast

AI Prompting

Kontext ist Gold

Alle, die schon einmal mit Large Language Models wie GPT-4 gearbeitet oder experimentiert haben, kennen es: Die generative KI produziert erstaunlich natürlichsprachliche Texte, doch oft wirken die Ergebnisse generisch und führen nicht zum gewünschten Ziel. In dieser Folge gehen Anja und Robert der Frage nach: Wie formuliert man Prompts, die zu wirklich hilfreichen Ergebnissen führen? Robert rät: "Talk to it like a human". Was bedeutet das für unsere Arbeitsweise? Wie verbessert der richtige Kontext die Ergebnisse generativer KI entscheidend? Wie trifft man den richtigen Grad zwischen aufwendigem Prompt-Engineering und schnellen "Aus-der-Hüfte-Prompts"?
Listen to other episodes

Shownotes & Links

Transkript

show / hide transcript

Anja Hallo und herzlich willkommen zum INNOQ Podcast. Mein Name ist Anja Kammer und heute habe ich mir meinen Kollegen Robert Glaser eingeladen. Hallo Robert.

Robert Hi Anja, grüß dich.

Anja Robert, erzähl doch mal, weshalb wir heute miteinander sprechen.

Robert Ja, ich freue mich, mal wieder Gast sein zu dürfen, obwohl wir keine Gastgeberverteilung heute haben. Warum bin ich zu Gast? Wir haben letzte Woche erst gesprochen am Donnerstag. Da hatten wir eine interne Runde, so was wie ein Roundtable. Das nennen wir AI Trigs und da geht es um den Wissensaustausch, Erfahrung, Teilen, die wir alle so gemacht haben, im Umgang mit AI, Machine Learning, Data, Anwendungen und Methodiken. Und da hatten wir eine Session zu Prompting bzw. Prompt Engineering. Danach habe ich dich angeschrieben und gesagt, komm, lass dann mal eine Folge dazu machen, oder? So war es.

Anja Ja, genau. Ich fand diese Session auch sehr inspirierend. Also man hat richtig gemerkt, die Leute haben Bock, was zu machen. Und wir haben auch sehr lange gesprochen. Die Session war eigentlich für eine Stunde geplant. Wir hatten zweieinhalb Stunden draus gemacht. Also es war wirklich sehr inspirierend. Und ja, in diesem Hype-Moment haben wir gesagt, okay, lass uns doch mal eine Folge machen.

Robert Ich hab den Hype noch, ich hoffe du auch. Okay.

Anja Ja, auf jeden Fall. Wichtig ist auf jeden Fall zu sagen, dass wir nicht mit akademischem Hintergrund über AI sprechen wollen, sondern wir erzählen aus unserer Erfahrung, aus der Praxis, aus unseren Experimenten. Also ich persönlich habe mich jetzt noch nicht so intensiv damit beschäftigt. Ich probiere einfach immer nur aus und lerne. Und Dinge, die ich dann lerne, da sagen andere, ja, ist doch ein klassischer Fall von, was war das, Single-Shot-Problem oder irgendetwas?

Robert Single-Shot und Few-Shot-Prompting und sowas.

Anja Also du kennst dich da besser aus. Was hast du denn so mit AI schon gemacht?

Robert Also ich mach jetzt schon, was heißt ein bisschen länger, ich habe auch Disclaimer, ich habe keinerlei Background in dem Sinne, dass ich da irgendwelche akademischen Veröffentlichungen zu gemacht hätte. Wir erwischen uns aber jetzt wieder dabei, dass wir uns vorauseilend entschuldigen, keinen akademischen Hintergrund in der AI zu haben.

Aber das ist, glaube ich, auch total okay und oftmals legen wir uns, glaube ich, alle so ein bisschen übermäßig Anforderungen auf. Gerade wenn es um dieses Thema geht und das Thema hier, also generative KI bedienen, denn darum geht es ja mit Prompting, ist ja was, was alle gerade lernen. Du hast ja gesagt, du probierst auch seit Kurzem viel damit aus.

Wenn man damit viel macht, Ethan Mollick sagt ja, kann man vielleicht mal in die Show Notes packen, in seinem Buch, das gestern erschienen ist. Wenn man sich wirklich mit generativer KI und Large Language Models beschäftigen will, da muss man drei schlaflose Nächte investieren. Genau, und Prompting ist ja eben, dass aktuell das UI oder das API, wobei APIs gibt es auch noch in dem Kontext, wie man mit einem Large-Language-Model so als generativen Sprach-Text-KI eben kommuniziert und sagt, was man will.

Das ist der ganze Erfolg in menschlicher Sprache und das gibt es jetzt noch gar nicht so lang. Deswegen, wie gesagt, kommen wir zurück zum Punkt. Wir sind alle gerade, niemand hat damit 16 Jahre Berufserfahrung. Einige machen viel damit, andere wenig, andere sind frustriert oder denken, ja, okay, spricht schon ganz gut, hört sich an wie ein Mensch. Aber ich habe hier mal was reingeschrieben und nicht das bekommen, was ich wollte. Da gibt es, glaube ich, ganz, ganz, ganz viele Menschen, die sagen, das ist schon krass, besonders wie natürlichsprachlich die Maschine hier so textet. Und das ist allemal besser als mein Alexa, Siri, whatever zu Hause, Google Assistant.

Aber es ist irgendwie so generisch und weiß ich nicht, verfolge ich jetzt nicht so weiter, aber ich sehe vielleicht, was das für Umwälzungen mit sich bringen wird. Und dann gibt es die, die da wahrscheinlich wie uns beide, die da viel mit gerade rumprobieren und machen. Und dadurch auch viel lernen von dem, was andere schon gelernt haben und bereits benamt haben. Also wir hatten gerade Single-Shot und Few-Shot-Prompting, gibt es noch einige andere Techniken. Das hast du ja wahrscheinlich unterwegs auch schon festgestellt, dass du bestimmte Ansätze Erfolg versprechender sind als andere, oder?

Anja Ja, also ich habe mitbekommen, das beste Ergebnis erziele ich, indem ich einfach mit dem AI-Assistenten so spreche wie mit dem Menschen. Ich habe folgendes Problem, das habe ich schon ausprobiert, kannst du mir bei dem und dem helfen? Oder so wie ich ein Bug-Ticket schreibe. Ich habe erwartet das, stattdessen ist das passiert, schlage mir doch mal was vor.

Oder was ich aber auch mitbekommen habe, ist, ich darf meinen eigenen Bias nicht zeigen. Wenn ich eine selbst eine Hypothese habe, darf ich die nicht zeigen. Da beißt sich die AI-Assistenz total daran fest und gibt mir nicht genau das, was ich erwarte. Statt dass ich sozusagen sage, okay, ich habe die Hypothese, es gibt keine Vögel in Australien, sollte ich nicht schreiben, weshalb gibt es keine Vögel in Australien, sondern, welche Vogelarten gibt es in Australien, dass ich sozusagen eines Besseren belehrt werden kann. Also das sind so Dinge, die ich mir angewöhnt habe, obwohl ich genau diese Frage natürlich nicht stellen würde.

Robert Das finde ich interessant, da sind wir, glaube ich, direkt beim, können wir einfach als erstes Thema uns mal vornehmen, überhaupt das Thema Kontext.

Denn Kontext ist ja, glaube ich, Gold, wenn es um gutes Prompting geht, beziehungsweise um Prompts, die zu hoffentlich hilfreichen und guten Ergebnissen führen. Und du hast ja jetzt Bias schon genannt. Das kann ja positive wie negative Effekte haben auf das Ergebnis. Aber am Ende ist es nur eine Facette von Kontext. Und was meint Kontext? Kontext meint einfach: Wenn ich etwas haben will, sonst würde ich wahrscheinlich eine KI nicht prompten, dann muss ich Kontext geben. Es sei denn, ich schmeiße da irgendwelche Fibonacci, wilde Fibonacci-Zahlen oder sonst was rein. Aber wenn ich halt wirklich ein sprachlich gefärbtes Ergebnis möchte und Sprache ist ja einerseits unglaublich komprimiert, anders als zum Beispiel Bild- und Videodaten, aber andererseits unglaublich koloriert. Deswegen muss ich Kontext geben. Das kann alles sein von, wer bin ich. Ich bin Head of Marketing, ich bin aber auch Consultant. Ich habe Software-Engineering studiert und ich habe hier einen Artikel von einem Kollegen, der befasst sich mit den Neuerungen im JDK, ich glaube 21.

Schau dir den mal an. Der Kollege ist auch Consultant. Der hat diesen Artikel dann und dann für die und die Zeitschrift geschrieben. Die Zielgruppe dieses Artikels sind Entwicklerinnen und Entwickler, Leute, die die Arbeit machen, die Software entwickeln, weniger IT-Entscheider oder leitende Architektinnen und Architekten. So, das ist schon ganz, ganz, ganz viel Kontext in wenig, ja, in wenig Text, relativ wenig Text, wo unglaublich viele Informationen drinstecken für so eine Maschine.

Anja Genau, und sowas würdest du ja auch einem Menschen sagen, dem du diese Aufgabe gibst. Die Frage ist nur, irgendwann weiß diese Person schon, was damit gemeint ist. Hey, hier ist ein Artikel über ein JDK. Ah ja, Zielgruppe ist mir klar. Das heißt, der AI musst du immer wieder neu sagen, was der Kontext ist, und einen Menschen bildest du sozusagen nur ein oder wenige Male aus, und die weiß dann schon, was sie zu tun hat. Wobei, wie gesagt, bei dem AI-Assistenten der musst du das jedes Mal neu geben. Das heißt, du hast hier manchmal so ein bisschen verschwendete Zeit, weil du halt sehr viel nochmal sagen musst, was eigentlich klar wäre für eine Person.

Robert Total. Ja. Und ich glaube, das ist … Also, ich würde nicht lügen, wenn ich dazu zu faul bin. Du kennst mich, ich bin extrem faul. Du bist, glaub ich, nicht so faul wie ich. Aber das ist nichts, was Spaß macht, ne? Weil man will ja … Im Alltag hat man viel um die Ohren, man will schnell Ergebnisse, und man gewöhnt sich halt auch unglaublich schnell an einen höheren Grad an Produktivität, den man selber erreicht. Also ich habe zum Beispiel so Werkzeuge wie ChatGPT, Claude und wie sie alle heißen schon total in meinen Alltag integriert, gewöhne mich an die deutlich erhöhte Produktivität in vielen meiner Aufgaben und bin umso genervter, wenn ich Zeit mit Prompt Engineering verschwenden muss, weil ich immer denke … Wir quatschen jetzt schon so lange. Du kennst mich doch. Mit einer Kollegin oder Kollegen, natürlich geht man anders um. Da muss man nicht immer wieder, wenn man in den Raum reinkommt, sagen, hallo, ich bin Robert. Wir kennen uns noch nicht. Ich brauche einen kurzen Anreißertext für einen Fachartikel, den der Kollege, den du auch nicht kennst, geschrieben hat. Da hast du total recht. Und deswegen sagen ja auch viele, ein wichtiger Gamechanger in diesem ganzen Thema wird der sogenannte Memory werden, also dass ich eine KI auch erinnern kann. OpenAI ist gerade am Ausrollen oder hat schon ausgerollt an wenigen Nutzer: eine Memory-Funktion, die sich einfach Dinge merkt, wo sie denkt, dass die merkenswürdig sind, oder man kann, während man chattet auch sagen, merkt ihr das bitte mal für die Zukunft, dann versteht ihr das auch und merkt sich das. Und dann gibt’s wie so ein Admin-UI dafür, und dann sieht man einfach so, glaub ich, listenartig, tabellarisch, Fragmente, die sich in diesem Memory befinden, die kann man dort auch wieder löschen. Und das wird alles Teil des Kontexts.

Anja Das heißt, es geht von meiner Kontextlänge ab. Das heißt, ich darf jetzt nicht unendlich viele Informationen da reinpumpen, weil irgendwann bekomme ich dann Probleme mit der Kontextlänge.

Robert Ich denke, das geht von der Kontextlänge ab, wobei auch die sich natürlich krass weiterentwickeln. Wir nehmen heute am 3. April 2024 auf. Wer weiß, was nächste Woche ist, am 10. April, da sind wir wahrscheinlich schon wieder weiter. Es gibt Optimierungen, das verändert sich ja rasend schnell gerade alles. Aber Memory sagen wirklich viele, in der Branche wird ein Gamechanger.

Und es gibt bereits jetzt schon länger erste Ansätze. Falls ihr ChatGPT benutzt, du benutzt es ja, glaube ich, auch, oder?

Anja Ja, genau, unter anderem.

Robert Da kann man ja in seinem User-Profil schon ein Instruction Prompt konfigurieren, mit zwei Textareas. Da kann man einmal sagen, wer man ist, so ein bisschen was zu seinem Background, was man mag, was man nicht hat. Einfach Kontext, wovon man denkt oder nicht denkt, dass es in einigen oder vielen Prompts nützlich sein kann. Ich habe das erst kürzlich ausgefüllt und es gibt eine zweite Text-Area, die sagt, wie die Antworten ausfallen sollen. Umgangssprachlich, duzen, siezen. Auch da kann man alles Freitext reinschreiben. Ich hasse es, gesiezt zu werden. Deswegen war das das Erste, was ich geändert habe.

Anja Das ist das erste Mal, dass ich davon höre. Sehr gut, dass du jetzt das sagst. Das werde ich mal ausprobieren. Ja.

Robert Das schreiben wir vielleicht auch in die Show-Notes. Instruction Prompt. Da gibt es ein paar gute Artikel zu, aber letzten Endes - wie so oft. Es ist einfach Text, zusätzlicher Text. Es geht immer nur um zusätzlichen Text. Und das nimmt so ein bisschen Arbeit ab. Man muss da natürlich für sich selbst entscheiden, was man da reinschreibt. Ich finde es im Alltag zum Beispiel unglaublich praktisch, da auch reinzuschreiben, was ich für einen Job habe, was ich für einen Background habe, dass ich gerne esse und Wein genieße und gerne Kaffee mag, auch wenn es für neun von zehn Prompts völlig irrelevant ist. Aber wenn ich unterwegs bin, stelle ich manchmal über die Voice-Funktion, die unglaublich gut ist, so Alltagsfragen. Zum Beispiel, wie lange geht das hier noch mit der Beikost oder sowas. Und da steht einfach in meinem Instruction Prompt drin, wann mein Kind geboren wurde, und der kann automatisch immer rechnen, in welchem Monat es gerade ist. Und ich muss das nicht immer wieder einsprechen. Hallo, ich habe ein Kind. Das Kind ist dann und dann geboren oder ist jetzt x Monate alt. Der weiß das einfach über mich, weil es da drin steht.

Anja Und das funktioniert jedes Mal?

Robert Ja, ja. Ich habe gestern zum Beispiel gefragt, wie sieht es aus? Was kann ich mal zusätzlich zur Beikost Fingerfood geben? Und dann kommt in den Antworten, ja, dein Kind ist jetzt x Monate alt und dafür empfiehlt sich das und das. Also er rechnet das dann. Deswegen würde ich halt immer auch nur einen absoluten Zeitpunkt da reinschreiben, also ein Geburtsdatum und kein Alter, weil das veraltet mit dem Schreiben des Instruction Prompts.

Anja Du hattest ja auch schon von unserer AI-Trigs-Runde erzählt. Also das sehe ich so als eine Art Community bei INNOQ. Wir haben viele Communitys zu unterschiedlichen Themen und eben auch zu AI. Und da hatte ich ein paar Demos vorbereitet und ich kam rein und habe gesagt, alles ist scheiße.

OpenAI ChatGPT, redet sich ständig raus, will die Aufgaben nicht erfüllen, die ich gestellt habe und gibt mir eher nur Anleitungen, wie ich es selbst machen soll. Und von Anthropic Claude 3 ist viel besser, muckt nicht rum, macht alles. Und das hat sich … und ChatGPT hat sich total verschlechtert. Und dann hast du, Robert, gesagt, ja, probier es doch mal jetzt aus. Ich meine, ich habe das vorbereitet und nicht noch mal ausgeführt. Und dann hatte ich dieselben Dinge, die nicht funktioniert haben, noch mal ausgeführt. Und das hat ohne zu mucken tatsächlich geklappt.

ChatGPT hat sich nicht herausgeredet, auf einmal mir keine Anleitung gegeben, sondern einfach die Aufgabe erfüllt. Und da sieht man auch, wie volatil die Antworten dann sein können. In einer Woche funktioniert das, in der anderen Woche funktioniert das gar nicht und es sagt, nein, das ist überhaupt nicht möglich, mit einer generativen AI diese Aufgabe zu lösen.

Robert Ja, der Unterschied kann manchmal ein Buchstabe sein, ein Leerzeichen, weil es ist ja eben nicht deterministisch. Und dann als Entwicklerinnen und Entwickler, die wahrscheinlich mehrheitlich diesen Podcast hören, das muss man sich abtrainieren. Also von deinen extremen Erfahrungen, die wirklich doof waren, jetzt mal abgesehen. Aber diesen Determinismus muss man sich wirklich aberziehen, beziehungsweise ihn versuchen einzuhegen durch sehr genauen Kontext, sehr genaue Antworterwartungen, gerade wenn man solche Prompts dann auch in KI-getriebener Software verdrahtet. Da chattet man unter Umständen ja nicht. Da liegt dann so ein Prompt im Code und wird angereichert durch Daten.

Da muss das halt stimmen. Aber auch das kann ich halt mit ganz normalen Unit-Tests und so weiter eben auch einfach testen. Da testet man halt keine Equals-Ausgabe, sondern man testet eben mit mathematischen Verfahren. Da gibt es auch Libraries XYZ zu. Einfach, ist grob in der Antwort, passt die grob auf das, was ich erwarte. Das ist im Prinzip nichts anderes. Also man kann auch versuchen, in einer nicht deterministischen Welt etwas dem Determinismus herbeizuführen. Aber was du hattest, da rätseln nicht nur gerade, sondern immer mal wieder viele drüber, dass das Model, nämlich GPT-4 von OpenAI, irgendwie manchmal schlechte Tage hat oder schlechte Wochen. Und die Antwortqualität deutlich sinkt, aber ich weiß nicht. Wir können doch mal gucken. Es gibt, glaube ich, keine Papers dazu oder so was. Vielleicht ist Model Decay das Stichwort. Ich glaube aber auch nicht so richtig. Wahrscheinlich weiß man das im Endeffekt auch gar nicht so, weil sie es nicht darüber öffentlich berichten, wenn es nicht wirklich gravierend und für alle und immer schlimm wird.

Aber ja, man muss sich so ein bisschen, wie auch, ich sag immer, du musst mit den Dingern umgehen, reden und generell auch Erwartungen haben wie an Menschen. Das muss man sich völlig darauf einlassen. Man kann Kollegen, Kollegen können schlechte Tage haben, Kollegen können super Tage haben.

Anja Schlechter Tag oder was?

Robert Und ich muss mit denen auch ein Gespräch führen, wenn ich eine mittel komplexe oder sehr komplexe Aufgabe gelöst haben will. Also Monster Briefings, wissen wir alle, ziehen immer Nachfragen nach sich. Am Ende wollte man etwas mit einem Monster Briefing, was gar nicht das ist, was man eigentlich braucht, stellt sich auch erst im Gespräch raus, analog mit diesen KI’s.

Anja Was meinst du genau mit Monster Briefing? Meinst du lange Briefings, lange System Prompts?

Robert Ja, wir hatten jetzt gerade das Thema Kontext. Man könnte ja jetzt sagen, okay, Kontext ist King oder Queen. Deswegen baue ich einen Monsterprompt zusammen, gebe all den Kontext rein. Im Instruction Prompt steht noch was über mich, wie ich gerne angesprochen werde, woher ich komme, was ich so tue. Und im Prompt steht: Du hattest, glaube ich, letzten Donnerstag auch solche Monsterprompts gezeigt, wo du ganz genau Beispiele gegeben hast, wirklich ein konkretes Absatzformat, der gezeigt hast, was du erwartest, aber auch noch zusätzliche Aufgaben gestellt hast. Auch da ist eine KI letzten Endes in meiner Erfahrung nicht anders als ein Mensch. Das wird nicht zu deiner Erwartung erfüllt werden beim ersten Schuss.

Gerade wenn du auch Aufgaben vermischt und in unterschiedliche Richtungen willst, unterschiedliche Sachen, alles in einem ersten Prompt forderst. Also da ist wirklich ein iterativer Ansatz, auch bei mittelgroßen, kleinen bis mittelgroßen Dingern schon zielführender, dass man erstmal ganz leicht anfängt, um so ein bisschen den Kontext aufzuwärmen.

Anja Ja, genau. Ich hatte mich daran orientiert, ich hatte zuerst mit einem Custom GPT gearbeitet und da gibt es ja diesen Instruction Prompt, um dem Custom GPT zu sagen, was es denn überhaupt für eine Aufgabe hat und wie es antworten soll. Und ich habe es immer wieder optimiert und am Ende stand sehr oft drin Frage um Feedback. In unterschiedlichsten Absätzen stand dann irgendwo, du musst unbedingt um Feedback fragen und nie hat dieses Custom GPT nach Feedback gefragt. Und das hat mich sehr verunsichert, warum es überhaupt dieses Instruction Prompt gibt, es aber nicht berücksichtigt wird.

Robert Ja, das frage ich mich auch, weil diese Custom-GPTs sind normal ein anderes Monster als Chat-GPT mit GPT-4. Da steckt ja auch sehr viel mehr drin. Diese Custom-GPTs wissen wir nicht, wie die unter der Haube geforkt, entkoppelt, da drangeleimt wurden, wissen wir nicht. Meine Erfahrung ist aber auch, ich weiß nicht, was das Wert ist meiner Erfahrung, aber meine Wahrnehmung ist, je kleiner und zielgerichteter der Linux-Ansatz, one thing well, man diese Custom GPTs mit einem Instruction Prompt versieht, umso besser und zuverlässiger sind die Ergebnisse. Wir haben zum Beispiel im Team mehrere Custom GPTs. Einer davon ist ein Copywriting-Assistent.

Da lag es nahe der Person, der Person sage ich schon, ich verwechsel schon die Welten, auch noch zu sagen, und übrigens bist du auch noch Übersetzer und übrigens bist du auch noch, weiß ich nicht, Konferenzscanner oder sowas. Weil man denkt halt, er ist halt ein Marketingkollege, aber das führt halt zu mittelklassigen Ergebnissen, weil das Instruction Prompt halt auch so aufgebläht ist, die Rolle wahrscheinlich nicht geschärft ist. Und dann hast du auch noch Beispiele da drin für fünf verschiedene Aufgaben, die das Ding erledigen soll. Und meine Erfahrung geht jetzt eher dahin, dass man wirklich sich dann einfach fünf GPTs macht statt eins. Eins, das nur übersetzt und auch Übersetzungsbeispiele enthält und nichts anderes.

Einen, der nur auf Red Flags guckt. Einen, der nur Tweets schreibt. Tweets gibt’s ja gar nicht mehr. Wie auch immer die jetzt heißen. Wir sind da nicht mehr. Also da kriegt man bessere Ergebnisse. Dazu kommt, dass die leider generell auch sehr viel vergesslich erscheinen. Gerade wenn man denen Wissen mitgibt in Form von RAG, irgendwelche Uploads, PDFs oder so, sehr viel mehr halluzinieren als das normale GPT-4, wie es in Chat-GPT verdrahtet ist oder in der API. Das haben wir auch in der AI-Trigs unserer Runde da schon festgestellt vor ein paar Wochen.

Anja Genau, du hattest es einmal gezeigt. Da sollten Informationen in einem langen Dokument herausgefiltert werden und wie du sagtest, Red Flags identifiziert werden. Du hast gesagt, wenn in diesem Dokument folgende Begriffe auftauchen, dann ist es für uns ein Red Flag und die wurden nicht erkannt. Und ich hatte das auch gemacht. Ich hatte die Idee, ja, vielleicht kann mir ja dieses Custom GPT helfen beim Schreiben von Artikeln. Und ich habe alle meine Artikel, die ich jemals zu einem bestimmten Thema hatte oder geschrieben hatte, da reingeworfen und dann hatte ich die Hoffnung, dass dieses Custom GPT mir dementsprechend in meinem Stil verfassten Artikel mitschreiben kann. Und am Ende hat es keinen Unterschied gemacht, ob ich jetzt wirklich diesen Kontext mitgegeben habe in Form meiner Artikel, die ich bereits geschrieben hatte oder nicht. Das war vollkommen egal. Es ist auch total illusorisch zu glauben, nur weil ein Custom GPT alle meine Artikel kennt, dass es daraus sozusagen ein Mischmasch daraus generieren kann. Kann es nicht. Also ich hab’s mehrfach probiert, nicht weil ich so etwas veröffentlichen würde, sondern einfach als Experiment. Ich hatte Zeit. Es funktioniert nicht. Also ich hatte auch das Gefühl, du kennst es bestimmt besser, in meinen Experimenten muss man wirklich immer, wie du eigentlich schon sagtest, mit so kleinen Schritten vorangehen. Wenn man sagt, hier, du hast diese tolle Aufgabe und du hast alle Informationen, um beispielsweise einen Artikel zu schreiben, schreibe mir jetzt einen Artikel zu all diesen Informationen, die ich dir gegeben habe, dann wird der Artikel, der daraus kommt, erstens sehr, sehr kurz sein und Dinge vorwegnehmen, die hätten eigentlich später in einem Artikel aufgedeckt werden sollen. Ein Artikel hat eine bestimmte Struktur, entweder man sagt vorher, folgende Lösung gebe ich für folgendes Problem und dann kommt man in dem Artikel sozusagen nochmal genauer rein und sagt, warum das die richtige Lösung ist oder man sagt, ja, wir wollen folgendes Problem lösen und am Ende kommt dann die Lösung.

Und wenn man einen Artikel zum Beispiel von der AI generieren lassen möchte, wie gesagt, ist er sehr kurz und viel zu prägnant. Das heißt, es wird sehr schnell abgehandelt, was die Lösung ist, und man kommt gar nicht dazu, es zu erklären. Auch ChatGPT ist nicht gut genug, um Bücher zu schreiben, um Artikel zu schreiben. Bücher und Artikel werden mit Hilfe von AI geschrieben und das geht auch sehr gut. Aber, ohne dass ein Mensch dort Stunden investiert, um gemeinsam ein Artikel zu schreiben, funktioniert das, vielleicht zum Glück sogar, noch nicht.

Robert Ja, also aber die Erwartungshaltung ist ja, finde ich auch uninteressant. Also persönlich finde ich die uninteressant. Ich hätte jetzt auch gar keinen Spaß oder kein Ehrgeiz darin, irgendwie mir von GPT oder was immer für ein Modell meine Memoiren oder einen fiktiven Roman schreiben zu lassen, weil ich will ja, dass mich das auch interessiert oder meinem Stil entspricht, meine Ideen einbringt und so weiter. Deswegen auch ein Buch, ohne irgendwelche Hilfestellungen zu schreiben, ist ja ein geschlossener iterativer Prozess, den man mit sich selber auskämpft über wahrscheinlich viele Jahre, je nachdem, was man für ein Werk schreibt.

Wenn ich mir überlege, ich hätte Game of Thrones eins bis drei oder was auch immer geschrieben, das schreibt man ja nicht, da setzt man sich ja nicht, weiß ich nicht, in Sardinien an den Strand und fängt an zu schreiben und dann ist man nach drei Jahren braun gebrannt und ist fertig, das ist ja Quatsch. Da hängen ja, selbst wenn man völlig alleine das macht und selbst veröffentlicht, hängt ja immer trotzdem irgendwie Feedback dran, dass man sie entweder selber gibt nach einer Zeit, die man reflektiert hat, mit Familie gesprochen hat.

Aber typischen Buchschreibprozess sind ja auch, ist ja ein Verlag involviert, die geben einem Feedback, Lektorat und so weiter. Und Ideen werden ja auch erst mal geformt dadurch, dass man mit anderen Menschen sich austauscht, sonst entstehen meistens ja gar keine wohlgeformten Ideen. Aber zurück zum Anfang, wenn man mittelgroße bis große Ergebnisse erwartet, die jetzt über einen Tweet oder so was hinausgehen, dann finde ich immer besonders hilfreich, dieses Chain-of-Thought Prompting zu verwenden. Da fordert man quasi das KI-Modell auf, die Denkschritte, die es eben anwendet und Zwischenüberlegungen, dass es die offenlegt, dir in der Antwort, bevor es dir eben die endgültige Antwort gibt. Weil dadurch erzeugt man synthetischen Kontext, wenn du so willst, der natürlich in diesem ganzen Kontextfenster landet und es natürlich auch größer macht, aber dadurch für dich auch ersichtlicher. Und dann kannst du auch sagen, nee, guck mal, der Denkansatz ist jetzt für das, was ich vorhab, Quatsch. Weil es geht eigentlich in der Zielgruppe um Entwickler und keine Entscheider. Jetzt mal als Beispiel, weil hättest du das vergessen in deinem Kontext, wäre es dir durch das Chain-of-Thought Prompting aufgefallen, weil die Maschine ja sagt, okay, ich gehe davon jetzt mal aus, dass es hier um einen Artikel um das JDK geht oder um Platform-Engineering und dass da mit IT-Entscheider adressiert werden, sondern da würde es eben auffallen.

Anja Und wie gehe ich da jetzt genau ran? Also ich sage der AI, ich habe folgende Aufgabe.

Robert Ich würde da verschiedene Techniken mischen. Chain-of-Thought kann man gerade am Anfang bei mittelgroßen bis großen Sachen sollte man immer machen. Also das einen Satz, zwei Sätze. Lege deine Denkschritte und wie du zu ersten Ergebnissen kommst offen und beschreibe sie mir. Damit das einfach für dich der Lösungsweg der Maschine transparenter und nachvollziehbarer wird, weil da lernst du auch unglaublich viel von. Das würde ich immer mitnehmen. Low hanging fruit.

Dann würde ich aber bei einem Artikel jetzt als Beispiel, also etwas mittelgroßen, würde ich immer damit beginnen, den Kontext zu geben, wer du bist, was du schreiben möchtest, mit welcher Zielgruppe. Und immer damit beginnen, eine Outline zu machen. Nie zu sagen, schreib. Weil dann kommt immer was raus, aber seltensterweise das, was du erwartest.

Und wenn du, wenn du eine Outline ist, ja irgendwie, weiß ich nicht, zehn Bullet Points oder für einen Artikel ist das schon viel wahrscheinlich. Dann kann man nämlich erst mal über Struktur reden, anstatt über konkrete Inhalte und ist noch so gar nicht bei der Gestalt, beim Gestalterischen, sondern beim Konstrukt. Und alleine dadurch kann man auch schon viel vorab korrigieren und lenken, wo es denn eigentlich hingehen soll. Und dadurch wird auch oft der Umfang klarer. Weil wenn du da nicht schon mit einer Outline reingehst, sondern du erst kollaborativ entwickelst mit der KI, siehst du ja vielleicht auch erst, oh, das wird vielleicht doch ein umfangreicher Artikel, als ich es mir gedacht habe. Weil das Ding hat jetzt hier noch drei Kapitel, die ich übersehen habe. Die waren nicht auf meiner Platte.

Anja Genau, aber selbst dann funktioniert es nicht einfach zu sagen, so und jetzt schreib, sondern man muss wirklich auch Kapitel für Kapitel oder wirklich Absatz für Absatz mit der KI an diesem Artikel arbeiten. Und meine Erfahrung ist, ich gebe einfach wirklich schon fast einen vollständigen Artikel herein und es wird nur sprachlich verbessert. Das hat bisher immer die besten Ergebnisse erzielt, weil ich habe den Artikel selbst geschrieben und deswegen ist der dann auch gut genug. Es wird nur noch sprachlich drüber gegangen und das war’s.

Robert Ja. Das ist ja auch ein Produktivitätsgewinn. Am Ende ist es ein Artikel von Anja oder ein Artikel von Robert. Da würde ich persönlich auch immer hinter stehen wollen. Aber wie ich zu Ergebnissen komme, kann ich ja, das kann die Qualität eines Artikels ja auch sehr viel verbessern. Man hat ja eben einen sehr dankbaren und geduldigen Feedback-Partner auch mit so einer KI.

Anja Auf jeden Fall. Genau.

Okay, lass uns das mal an einem anderen Beispiel verdeutlichen. Wann schreibt man sehr viel, wenn man Dokumentation schreibt? Und Dokumentation ist ja auch etwas, was wirklich sehr wenige Menschen sehr gerne tun. Also wie könnte ich jetzt diese Capabilities, über die wir gerade gesprochen haben, diese Möglichkeiten des Chain of Thought, wie kann man dieses Prinzip anwenden, um vielleicht eine Architekturdokumentation zu schreiben?

Robert Das ist eine gute Frage. Es hängt davon ab, ob man da schon im Unternehmen vorgefertigte Muster hat. Oftmals gibt es ja auch Vorlagen, Schemata oder ich habe einfach schon einen Berg Zeug, den mein Team oder andere Teams geschrieben haben. Im Falle von arc42 gibt es ja auch Templates, die man sich runterladen kann, könnte man hier für Chain of Thought tatsächlich nutzen, indem man anfangs sagt, wer man ist, was man gerade an welchem Produkt man entwickelt, und dass man jetzt an die Nachdokumentation oder die Vordokumentation von einem bestimmten Feature oder an Systemkomponente geht, und dass man das gerne mit der arc42, nach dem arc42-Template machen soll. Ich glaube, das kennen die meisten Modelle auch, ohne dass man das vorgeben muss. Kann man ja mal ausprobieren. Ich glaube, es ist so. Das Internet wurde ja fast gänzlich verdaut. Und dann sollte man aber gezielt sagen, gib mir einfach noch mal die Outline oder das Template von arc42 aus. Alleine, dass es im Kontext steht und das Hirn der Maschine anwärmt, ist die falsche Metapher.

Sie trainiert sich dann da besser rein. Und dann würde ich es auch nochmal abgleichen. Wer weiß, ob halluziniert wurde oder nicht. Und dann kann man ja auch sagen, guck mal, da ist ein Kapitel drin, das ist hier vollkommen irrelevant, lass uns das mal streichen. So, und jetzt fang mal bitte an mit Bullet Points, keine zusammenhängenden Texte für das erste Kapitel der arc42-Doku für dieses Feature. Oder stell mir Fragen dazu, um dieses erste Kapitel auszufüllen. Und leg bitte immer deine Denkschritte offen. So könnte man sich iterativ und mit Chain-of-Thought dem ganzen nähern.

Anja Ja, das Problem bei Dokumentation ist auch, dass man Dokumentation sehr selten lesen will und man möchte nicht, dass da sehr viel geschwafelt wird. Nun ist das Problem bei dieser generativen AI, dass sie oft schwafelt. Und damit würde sie die Dokumentation viel zu sehr aufblähen und keiner will es am Ende lesen. Und ich habe auch das Gefühl, wenn die Leute wissen, es wurde generiert, lesen sie Text nicht mehr, was total legitim ist, finde ich. Das heißt, man müsste da auch noch eine Möglichkeit finden, dass auch die Sprache sehr kurz und prägnant ist, damit das auch noch gelesen werden kann.

Robert Ja, ist ein guter Punkt. Das war ganz am Anfang mit Chat-GPT 3.5, war das, glaub ich. Das ist schon länger her. Da hab ich auch, bin ich auch hingegangen, hab gesagt, pass auf, schreib mir mal nen Tweet zu … blablabla, ne? Dann kriegst du immer nur Growth-Hacking-Bullshit daraus, weil du keinen Kontext gegeben hast. Der einzige Kontext ist Tweet. Schreib mir, ja gut, das ist halt die Aufgabe. Aber in das Wort Tweet muss so viel reininterpretiert werden. Und eben um das, wofür ich den Tweet haben will. Aber wenn das eben um JDK 21 geht und Tweet, das ist der Kontext und Tweet, das ist halt ein Witz, dann kann nur die Standardfärbung der KI greifen, des Modells. Der Rest ist diese zwei Worte, die den Kontext bilden. Und dann passiert oft nämlich das, wovon das Internet halt auch sehr voll ist, dieser Growth-Hacking-Quatsch und SEO-Texte und was keiner lesen will, was das Internet aber vollmacht.

Und da hilft wirklich das sogenannte Few-Shot-Prompting. Das hatten wir am Anfang kurz. Man muss ja nicht ewig darum formulieren, was man braucht. Aber man kann sehr genau einen Stil vorgeben, in dem man Beispiele gibt. Weil, auch wenn wir jetzt zusammen etwas erarbeiten würden und ich dir sage, schreib das bitte kurz und konsistent, dann hörst du das und dann weißt du, ja, okay, das wünschen sich wahrscheinlich viele. Aber ich weiß nicht wie, weil es gibt ja selbst dafür 80.000 verschiedene Stile. Nebensätze vermeiden, keine, zu viel Indirektion, einfach gutes Schreiben. Da gibt es ja schon viele allgemeingültige Regeln, aber auch da muss so viel reininterpretiert werden, deswegen sind Beispiele halt Gold. Und wenn ich in 1, 2, 3 Beispiele im Maximum mitgebe, nennt man das eben Few-Shot-Prompting. Und gib die gewünschten Ausgaben so, orientiere dich daran, im Schreibstil soll dich auch mitgeben, um eben besseres Ergebnis zu liefern. Und das heißt Few-Shot-Prompting, weil man eben ein paar Schüsse mitgibt. Besser als einen Schuss zu sagen, schreib einen Tweet. Und das ist dann meistens unbefriedigend.

Anja Gut, also hast du auch noch andere Anwendungsbeispiele für generative AI?

Robert Also wir waren jetzt sehr viel bei so alltäglichen kreativen Arbeiten. Sehr viel mit Text. Das gilt aber auch meiner Erfahrung nach für Programmierung. Wenn ich sage: pass mal auf, guck mal hier in meinen Ruby on Rails Controller. Ich brauche eine neue Action. Die soll HTTP-Posts annehmen mit folgenden Parametern und in die Datenbank schreiben oder eine Mail verschicken oder was auch immer. Dann ist das ein Single-Shot-Prompt. Aber ich habe ihm natürlich gesagt, guck mal in diesen Controller und würde halt ein Beispiel mitgeben. Damit wäre es schon wieder Few-Shot. Also was für unsere IDEs, wenn wir jetzt beim Use-Case Programmierung sind, Anwendungsfall für generative KI. Dann ist das ja meistens so, dass ich ein Code Excerpt markiere oder der Kontext sowieso bekannt ist durch die Datei, die ich gerade geöffnet habe, je nach IDE-Integration. Wenn ich GitHub Copilot habe, dann liest der in dem aktuellen Tab in meinem Texteditor IDE, was auch immer eh mit und hat den Kontext. Dann redet man hier nicht mehr von Single-Shot oder Few-Shot-Prompting, weil der Kontext in Programmiersprache sowieso noch mal sehr viel mehr komprimiert ist als in menschlicher Sprache.

Deswegen habe ich eben auch da den Kontext immer gegeben, aber auch da denke ich eben, da sind wir halt noch ganz am Anfang. Ich habe jetzt auch verschiedene Assistenten ausprobiert, vom Co-Pilot bis zum JetBrains-AI-Assistenten nennt sich der, glaube ich, verschiedensten Sachen, Text Editor Zed, also z e d, hat ja auch, da kann ich einfach meinen OpenAI API Key konfigurieren und habe dann eine Sidebar, wo ich GPT-4 Dinge generieren lassen kann zu meinem Code, den ich markiert habe. Finde ich oft sehr viel besser, weil Copilot basiert ja glaube ich intern noch auf 3.5, wo das Reasoning sehr viel schlechter ist als bei Version 4 und es gibt kaum so Produkte, wo der GPT-4 Stand heute hinter sitzt, da sind die Ergebnisse für mich schon extrem viel besser. Das wäre so ein Anwendungsfall für alltägliche Softwareentwicklung, was einen wahnsinnig viel produktiver machen kann.

Aber auch da denke ich, schlechter als jetzt wird es nicht. Wir sind ganz am Anfang. Selbst wenn man jetzt weltweit die AI weiter generative KI Weiterentwicklung verbannt, ein Moratorium auferlegt, wird sich trotzdem alles ändern. Das ist einerseits die schlechteste KI, die wir je hatten, aber die ist halt jetzt schon sehr, sehr gut. Aber ich denke halt immer noch über Use Cases nach, wie: Ich gehe in ein Projekt mit einer gigantischen Code-Basis und meine Aufgabe ist es, das System zu bewerten. So eine typische Leistung, die wir als Consultants eben machen, wo man eben in Zukunft auch sehr viel produktiver sein kann, wenn man sich selbst augmentiert, um das geht es ja immer. Man schickt keine KI in ein Projekt, die schreibt ein Review, der Kunde ist zufrieden, das ist Blödsinn. Stand heute, stand in zwei Wochen vielleicht auch noch. Aber man könnte bessere Ergebnisse erreichen, indem man sich die Fleißarbeit eben abnehmen lässt. Zum Beispiel schau dir diesen Monolithen oder Modulithen mal an. Guck mal in die Codebasis. Was sind Insights, die du gewinnen kannst? Das sehe ich halt heute noch nicht in IDEs und Copiloten und wie sie alle heißen. Das ist immer alles sehr fragmentbasiert, aber so ein Birds-Eye-View über fette Codebasen, das wird alles noch kommen. Und das ist ein schöner Anwendungsfall.

Anja Das wäre ja Wahnsinn, wenn es wirklich so wäre, dass es eine AI gäbe, die genug über Softwarearchitektur weiß, um wirklich bei Software Reviews helfen zu können? Kann die AI am Ende Architekturarbeit für uns erledigen?

Robert Die kann das zumindest mit uns machen und wir wären vermutlich gut beraten, das einzusetzen, weil es uns eben produktiver macht. Aktuell ist es, glaube ich, technisch sehr limitiert zum Aufnahmetermin heute. Aber auch jetzt gibt es ja schon ein Gemini Pro 1.5. Google mit seiner Produktbenamungspolitik ist wirklich schrecklich, weil vor ein paar Wochen hieß es noch ganz anders. Und die haben ein gigantisches Kontextfenster von 1,2 Millionen Tokens. Da muss man sich eben vorstellen, dass es da auch mit den anderen hingehen wird. Und das eröffnet eben erst Möglichkeiten wie, jetzt gehe ich in die gigantische Code-Basis und jetzt gib mir mal Insights, was werden hier für Architektur-Muster verwendet? Wo sind Security-Lücken? Weg von Code-Auto-Vervollständigung in einer CSS-Datei ist nett, ist sogar richtig, richtig cool und hilfreich. Aber wenn ich eben im großen Unterstützung brauche, Legacy-Systeme mir angucken, Vergleichen mit Open Source Libraries, oder find mal raus, welche Libraries in diesem Projekt eingesetzt werden, deren Lizenz vielleicht für folgenden Verwendungszweck gar nicht okay ist. All so Sachen kann man erst andenken, und das wird möglich sein und kommen, wenn die Kontextfenster größer werden, dann ist das ein rein technisches Problem, glaube ich.

Anja Okay, wir sprechen über Mikroarchitektur und was ist mit Makroarchitektur? Ich habe ein YouTube Video von Eberhard Wolff und Ralf Müller gesehen, die haben eine Makroarchitektur aufbauen wollen oder zumindest, ich weiß nicht mehr, was das genau war. Ich kann es dann verlinken. Es ging darum, Qualitätsszenarios zu erstellen auf Grundlage eines Interviews von Stakeholdern. Und Eberhard und Ralf haben dann darüber gesprochen, wie die AI darauf antwortet. Und ganz zum Anfang war schon klar, okay, die AI weiß nicht, also kennt den Unterschied zwischen Qualitätszielen und Qualitätsszenarien nicht. Und wenn man dann der AI nicht genau sagt, das hast du falsch gemacht, folgendes ist korrekt, dann kommt dann natürlich nur Grütze dabei raus. Und da hat halt auch Eberhard Wolff zu Recht gesagt, ja jetzt coachen wir die AI, dabei könnten wir doch einfach Menschen coachen, weil die merken sich dann wenigstens, was der Unterschied zwischen Qualitätsziele und Qualitätsszenarien ist und die machen es dann halt auch am Ende besser. Also momentan scheint das noch nicht zu funktionieren, aber du glaubst, dass es vielleicht in der Zukunft sogar für Makroarchitektur funktionieren könnte, AI-gestützt zu arbeiten?

Robert Ich gehe fest davon aus, ich würde auch Geld darauf wetten. Ich sage jetzt nicht, wie viel. Aber ich habe mir angewöhnt und damit fahre ich aktuell ganz gut. Wenn ich sage, diese Woche, das geht nicht, geht es nächste Woche. Die Entwicklung ist so rasend schnell und man weiß nie genau, hat man es vielleicht jetzt einfach auch falsch gemacht, oder ist es tatsächlich nicht in dem verdauten Wissen des Modells drin? Diese, was du gerade genannt hast, die feinen Unterschiede zwischen Qualitätsszenarien und Qualitätskriterien war das. Qualitätsziele, genau. Auch das ist ja was, wenn es eben so nicht rauskommt. Ich weiß nicht, was die Kollegen da für ein Modell benutzt haben.

Anja ChatGPT 4.

Robert Ah, vier, okay. Dann scheint das eben aktuell nicht zu gehen. Oder der Kontext war so, wir wissen nicht, wie der Kontext war, wie lang, ob was rausgefallen ist, wie kurz, ob zu kurz. Es ist alles so weich, so wahnsinnig weich und undeterministisch. Das ist nicht so wie bei Code, wo man mal reingucken kann und sagen, ah, guck mal. Da in der Zeile, da musst du das und das machen, dann geht das auch. So ist es nicht, aber ich gehe fest davon aus. Aktuell würde ich empfehlen, mir besonders Claude 3 in den drei verschiedenen Größen anzugucken. Gerade Opus, die fetteste Größe ist bei einigen Dingern, die wirklich tiefes Reasoning verlangen und auch so feines Spezialwissen aus bestimmten Berufsdisziplinen, wie jetzt zum Beispiel Softwarearchitektur, deutet es sich an, dass das stellenweise etwas besser ist. Das ist jetzt nicht so eine Schwarz-Weiß-Geschichte. Nimm das, das ist immer besser, gar nicht. Aber es gibt die ersten Benchmarks, auch das sind nur Benchmarks, die zeigen, dass Claude 3 Opus Stand heute in einigen Disziplinen jetzt GPT4 übertrumpft.

Anja Ja, genau. Also vor allem in der Programmierung habe ich auch gelesen. Bei der Nutzung von Claude 3 ist mir auch aufgefallen, es scheint weniger verbose zu sein und ist sprachlich auch viel angenehmer zu lesen, also viel konkreter und kompakter.

Robert Ich finde das auch. Das macht Spaß. Die Antworten machen Spaß, sind kurz und knackig. Aber auch da fällt es mir… Ich habe zum Beispiel versucht, weil mir die Claude 3 Standardantworten so gut gefallen, habe ich gesagt, das will ich in GPT auch haben. Und dann habe ich überlegt, wie kriege ich das hin? Und dann bist du wieder bei dem Problem, wie unglaublich schwer es einfach ist, den Schreibstil, die Tonalität einer Sprache mit Sprache zu beschreiben. Das ist wahnsinnig komplex und ohne Beispiele auch einem Menschen sehr schwer vermittelbar. Wir haben in der Firma zum Beispiel auch Tone and Voice Guidelines für unser Marketing. Wenn man die liest, denke ich, sind die schlüssig. Aber du weißt trotzdem nicht, wie du schreibst danach. Das sind Guidelines, wie du anfangen kannst, aber auch das ist ein iterativer Prozess. Und letztendlich bin ich gescheitert. Ich hab’s dann nicht hingekriegt, dass ChatGPT wie Claude spricht. Hab mir das System Prompt von Claude 3 angeguckt, das haben sie tatsächlich veröffentlicht.

Aber da ist ja noch mehr drin als ein System Prompt. Und da ist, glaube ich, auch richtig viel Arbeit reingeflossen in die Standardtonalität, weil die natürlich wissen, nicht alle Leute sind Prompt Engineers und konfigurieren sich direkt alles so sprachlich zurecht, dass es auf ihren Geschmack passt. Deswegen ist super viel Subjektives drin. Aber ich habe zum Beispiel mal Allerweltsfragen gestellt, womit die Antworten besonders gut sprachlich gefielen. Und habe gesagt, beschreib doch jetzt mal für eine generative KI die Tonalität und den Schreibstil deiner Antworten. Da kommt man schon ein bisschen weiter. Wenn man dann noch ein, zwei Beispiele von Claude sich nimmt, dann kann man auch GPT-4, ChatGPT beibringen, wie bitte die Standard-Sprachfärbung auszusehen hat.

Anja Oder man nutzt gleich Claude.

Robert Oder so.

Anja Okay, lass uns doch noch mal zusammenfassen, über was wir gesprochen haben. Also für welche Arbeiten kann die generative AI schon jetzt für uns nützlich sein?

Robert Also das haben wir nur im Ansatz mal angerissen, was wir so damit treiben. Copywriting-Arbeiten, generelle Produktivitätsarbeiten, wie zum Beispiel ein bisschen Daten-Crunching kann man damit auch machen, irgendwelche CSV-Sachen reindonnern sagen, wie formatiere ich das um oder was steht in dieser JSON-Struktur drin und sowas. Bis hin zu Softwareentwicklung auf der Mikroarchitektur, Makroarchitektur oder so gigantische Code-Basen verstehen, geht glaube ich aktuell nicht, beziehungsweise nur mit einer Menge Glue Code und Individual-Entwicklungen drum rum, das eben auch viel gechunkt werden kann, also stückweise zugeführt werden kann, wird sich aber mit großen Kontextfenstern ändern. Aber wenn wir über Anwendungsfälle reden, müssen wir, glaube ich, mindestens zehn extra Folgen aufnehmen.

Anja Ja, lass uns das doch machen. Lass uns doch eine Reihe machen zu AI in der Praxis. Dann ist das hier sozusagen unsere erste Folge. Und ich weiß auch schon, dass ich mit einer Kollegin sprechen werde über das Coden mit der AI.

Robert Da könnt ihr bestimmt noch mehr besprechen, als was wir heute geschafft haben. Wir haben uns ja eher mit Prompting beschäftigt. Was ist das? Wie komme ich zu besseren Ergebnissen und welche Tricks und Techniken gibt es dafür? Da haben wir uns so ein paar vorgenommen. Single-Shot Prompting, das ist das Standard Prompting, was jeder Mensch erstmal mit einer AI macht in den ersten Gehversuchen. Few-Shot, also ein paar Beispiele geben. Chain-of-Thought haben wir besprochen, dass die KI ihre Denkschritte und Zwischenüberlegungen eben offenlegt.

Ähnlich wie wir das vielleicht auch in einer Pairing-Session beim Programmieren tun würden. Ist ja glaube ich auch im Mob-Programming so. Man hat ja diesen Typist und die Leute drumrum und die teilen ja auch ihre Gedanken und wie sie zu Überlegungen und Entscheidungen kommen. Und da steht und fällt eben die Qualität mit der Kommunikation im Team.

Da gibt es noch andere Techniken, denen wir uns heute nicht gewidmet haben, wie komplexitätsbasiertes Prompting oder selbstoptimierendes Prompting. Beim selbstoptimierenden Prompting sagst du eben dem Modell, also der KI, hier ist mein Prompt, mach Verbesserungsvorschläge für dieses Prompt und verbessere erst mal den Prompt, um dann hinterher eine bessere Ergebnisqualität zu haben. Man darf das auch nicht überhöhen. Am Ende geht’s drum. Talk to it like a human. Das ist so meine Faustregel.

Anja Ja, sehe ich genauso. Ja, dann bedanke ich mich bei dir. Es hat sehr viel Spaß gemacht, mit dir zu reden, Robert. Und vielleicht hören wir uns ja noch mal zu diesem Thema. Auf jeden Fall wird es noch weiteren Content dazu geben.

Und lass uns auch gleich einen Aufruf starten an unsere Hörer:innen. Schickt uns gern euer Feedback, eure Ideen, Themenideen für den Podcast an [email protected]. Da freuen wir uns wirklich sehr drauf.

Robert Würde mich freuen. Danke dir. Ciao.

Anja Ciao!

Senior Consultant

Anja Kammer is a Senior Consultant at INNOQ and supports companies on their journey to the cloud. In addition to providing advice on development processes and platforms, she develops cloud-native web applications in cross-functional teams. She is also an accredited trainer and co-curator for the iSAQB Advanced Level module CLOUDINFRA.

Head of Data and AI

Robert Glaser leads Data and AI at INNOQ. With roots in software engineering and a passion for creating user-friendly web applications, he now guides companies through the AI landscape, helping them develop strategies and products for challenging technical problems. Fascinated by practical uses of generative AI in software, he hosts the podcast “AI und jetzt,” discussing AI’s potential across industries. Robert bridges tech and business, advocating user-centric digitization. Off duty, he enjoys exploring the local food scene.