Gespräche mit LLMs: Muster und Paradigmen für besseres Prompting

Digital Prompt Futuristic Ai Ai Generated

Während Large Language Models (LLMs) wie ChatGPT und Claude zu leistungsfähigen Werkzeugen für die tägliche Arbeit geworden sind, hängt ihre Effektivität weitgehend davon ab, wie wir mit ihnen kommunizieren. Von Chain of Thought bis hin zu Graph of Thoughts-Ansätzen können diese strukturierten Methoden die Qualität und Zuverlässigkeit von KI-generierten Ausgaben deutlich verbessern. Dieser Artikel von Manuel Riesen und Peter von Niederhäusern bietet einen Überblick über zentrale Konzepte, Prompting-Techniken und Paradigmen zur Erzielung besserer Ergebnisse.

 

Ein Sprachmodell ist ein nützliches Werkzeug für die tägliche Arbeit, insbesondere bei der Arbeit mit Quellcode für Programmierung oder Texterstellung und -analyse. Mit der Veröffentlichung von ChatGPT im Jahr 2022 erreichte OpenAI die Massenadoption von LLMs[1]. Seit Herbst 2024 sind auch andere Modelle wie Google Gemini[2], Claude[3] oder LLaMA [4] verfügbar. Zudem gibt es einen aufkommenden Trend, die Beschränkungen klassischer Suchmaschinen wie Google zu überwinden. Perplexity[5] vereint diese Ansätze in einem Werkzeug. Dieser Artikel geht über die üblichen «Prompting-Spickzettel» im Internet hinaus und erkundet wissenschaftlich fundierte Prompting-Muster (Abschnitt 3) und Prompting-Paradigmen (Abschnitt 4).

 

Using Large Language Models

Abbildung 1: KI-Prompt: «Frau vor einem Computer, nachdenklich; fotorealistisch»

 

Zentrale Konzepte

Unabhängig davon, ob man Prompting-Muster oder bestimmte Paradigmen befolgt, gibt es einige zentrale Konzepte, die bei der Formulierung von Prompts zu beachten sind.

Key Concepts

Key Concepts

  • Umfang: Es ist wichtig, den richtigen Umfang festzulegen. Die Absichten und auch was nicht getan werden soll, ist hilfreich.
  • Kontext: Kontext ist entscheidend. Stellen Sie so viel Grundlagenwissen wie möglich zur Verfügung. Durch kontextbezogenes Lernen (In-context Learning) können Sprachmodelle ihre Leistung anhand von Beispielen verbessern, die während des Promptings bereitgestellt werden[6]. Möchte man etwa Folieninhalte für eine Präsentation aus einem Dokument erstellen lassen, helfen Beispiele aus früheren Präsentationen dem Sprachmodell, die gewünschte Tiefe und Struktur der Ausgabe zu erreichen.
  • Format: Die gewünschte Länge und Struktur der Antworten sollten Ihren spezifischen Bedürfnissen entsprechen. Während einige Sprachmodelle standardmässig Listen erstellen, ist dies nicht immer optimal. Klare Anweisungen zu Ihrem bevorzugten Format und der Antwortlänge helfen sicherzustellen, dass die generierte Ausgabe für Ihren Zweck unmittelbar nutzbar ist.

 

Prompting-Muster

Prompting-Muster sind vergleichbar mit Software-Design-Patterns. Muster zielen darauf ab, die Qualität eines Prompts (oder einer Software) zu verbessern, indem bewährte Techniken für wiederkehrende Herausforderungen angewendet werden. Welche Muster anzuwenden sind, hängt von der Art des Problems und dem zu erreichenden Ziel ab. Wie Software-Design-Patterns werden Prompting-Muster oft intuitiv angewendet, auch ohne formales Wissen über sie. Nachfolgend untersuchen wir mehrere etablierte Muster, die Prompting-Strategie verbessern können.[7]

Wenn Ausgaben in nicht-natürlichen Sprachformaten wie Code oder Graphen- oder mathematische Notationen erforderlich sind, erweist sich das Meta Language Creation Pattern als wertvoll. Dieses Muster etabliert einen klaren Kontext sowohl für die Eingabelogik als auch für das erwartete Ausgabeformat und gewährleistet genauere Ergebnisse. 7

Ein weiteres möglicherweise hilfreiches Muster ist das Output Automater Pattern. Dies beinhaltet die Bereitstellung einer allgemeinen Anweisung über die erwarteten Eigenschaften der Ausgabe. Beispielsweise könnte man vom Sprachmodell verlangen, nur im Diff-Format (Zeilen mit +/- für Hinzufügen/Entfernen) auszugeben, wenn ein Text bearbeitet wird. Praktischer ausgedrückt könnte das Sprachmodell bei Programmieraufgaben aufgefordert werden, ein Skript zu generieren, das die Code-Dateien automatisch anpasst, sodass keine manuelle Bearbeitung stattfinden muss. Ein Nachteil hierbei ist die höhere Komplexität für das Sprachmodell, die zu Fehlern führen kann. 7

Manchmal ist es schwierig zu definieren, welche Informationen das Sprachmodell benötigt, um eine bestimmte Aufgabe zu lösen. Hier kann das Flipped Interaction Pattern vorteilhaft sein. Anstatt alle Informationen bereitzustellen, wird das Sprachmodell aufgefordert, Fragen zum Problem zu stellen, damit es die Aufgabe lösen kann. 7

Flipped Interaction Pattern

Abbildung 3: Ein Interaktionsmuster, das die Frage-und-Antwort-Sitzung mit einem LLM umkehrt.

 

In Situationen, in denen man möchte, dass das Sprachmodell wie eine bestimmte Persona antwortet, kommt das Persona Pattern zum Einsatz. Dem Sprachmodell zu sagen, es solle wie jemand aus einem bestimmten Fachgebiet oder mit einer bestimmten Rolle antworten, kann helfen, die richtigen Antworten zu erhalten. 7

Persona Pattern

Abbildung 4: Anweisung an das LLM, eine Persona (Avatar, Stellvertreter) für die Kontextualisierung der Problemdomäne zu sein.

 

 

Prompting-Paradigmen

Prompting-Paradigmen beschreiben die (potenziell komplexe) Struktur eines Gesprächs mit einem Sprachmodell.

Das Chain of Thought (CoT)-Paradigma verbessert die Problemlösung, indem Sprachmodelle aufgefordert werden, ihre Arbeit zu zeigen, ähnlich wie bei der Thinking-Aloud-Methode. Dies ist sinnvoll, da die Vorhersage des nächsten Tokens (oder Wortes) mit mehr Kontext und einer klaren Richtung einfacher ist. Darüber hinaus kann der Benutzer die «Denkschritte» des Sprachmodells sehen, was die Transparenz verbessert. CoT kann entweder als einzelner Prompt oder als eine Reihe sequenzieller Ausgaben, die als «Gedanken» bezeichnet werden, implementiert werden.[8]

Kürzlich veröffentlichte OpenAI ihre ChatGPT o1-Modellvarianten, die diese Technik (in Kombination mit Reinforcement Learning und einem proprietären Algorithmus) im Hintergrund nutzen, um die Antworten zu verfeinern[9].

Ein komplexeres Paradigma ist der Tree of Thoughts (ToT), bei dem die Gedanken eines Sprachmodells als Baum strukturiert sind[10]. Beispielsweise kann das Sprachmodell aufgefordert werden, einen anfänglichen Gedanken zu verfeinern. Wenn dies mehrmals für denselben Ausgangsgedanken durchgeführt wird, führt dies zu einer Verzweigung des Baums. Indem man das Sprachmodell seine Ergebnisse bewerten lässt, kann man am Ende den besten Gedanken auswählen. Während dieses Paradigma zu besseren Ergebnissen für bestimmte Aufgaben führt, ist es nicht praktikabel, die Operationen manuell durchzuführen. Stattdessen ist eine automatisierte Methode wie die Erstellung eines Python-Skripts erforderlich.

Ein eher neues Paradigma wird durch das Graph of Thoughts (GoT)-Framework repräsentiert. Hier sind die Gedanken als beliebiger Graph strukturiert[11]. Dies ermöglicht die Verwendung von aggregierenden Operationen, wie zum Beispiel das Zusammenführen zweier einzelner Gedanken zu einem einzigen. Auch hier ist Automatisierung erforderlich, um dieses Paradigma effizient zu nutzen. Während die ursprünglichen Autoren des GoT-Papers ihr Python-Framework veröffentlichten, bieten wir auch eine erweiterte Implementierung an, die auf einfachere Nutzung und einen deklarativeren Ansatz anstelle eines imperativen abzielt[12].

Prompting Paradigms

Prompting Paradigms

 

Fazit

Diese Muster und Paradigmen bieten eine systematische Grundlage für effektiveres Prompting von Sprachmodellen. Mit der Weiterentwicklung von LLMs werden strukturierte Ansätze wie diese der Schlüssel sein, um ihr Potenzial im Alltag optimal zu nutzen.

 

Referenzen

[1] OpenAI. Introducing ChatGPT. Nov. 2022. url: https://openai.com/index/chatgpt/ (visited on 11/23/2024).

[2] Google. Gemini – Supercharge your creativity and productivity. 2024. url:https://gemini.google.com/ (visited on 12/05/2024).

[3] Anthropic PBC. Meet Claude. 2024. url: https://www.anthropic.com/claude (visited on 11/23/2024).

[4] Meta. Introducing LLaMA 3.2. 2024. url: https : //www.llama.com/

(visited on 11/23/2024).

[5] Perplexity. What is Perplexity? 2024. url: https://www.perplexity.ai/hub/faq/what-is-perplexity (visited on 12/05/2024).

[6] Qingxiu Dong et al. A Survey on In-context Learning. 2024. arXiv: 2301.00234 [cs.CL]. url: https://arxiv.org/abs/2301.00234.

[7] Jules White et al. A Prompt Pattern Catalog to Enhance Prompt Engineering with ChatGPT. arXiv:2302.11382 [cs]. Feb. 2023. doi: 10.48550/ arXiv.2302.11382. url: http://arxiv.org/abs/2302.11382 (visited on 11/23/2024).

[8] Jason Wei et al. “Chain-of-thought prompting elicits reasoning in large language models”. In: Proceedings of the 36th International Conference on Neural Information Processing Systems. NIPS ’22. New Orleans, LA, USA: Curran Associates Inc., 2024. isbn: 9781713871088.

[9] OpenAI. Introducing OpenAI o1. 2024. url: https://openai.com/o1/ (visited on 11/23/2024).

[10] Shunyu Yao et al. “Tree of thoughts: Deliberate problem solving with large language models”. In: Advances in Neural Information Processing Systems 36 (2024).

[11] Maciej Besta et al. “Graph of Thoughts: Solving Elaborate Problems with Large Language Models”. In: Proceedings of the AAAI Conference on Artificial Intelligence 38.16 (Mar. 2024). Publisher: AAAI Press, pp. 17682–17690. doi: 10.1609/aaai.v38i16.29720. url: ttps://ojs.aaai.org/index.php/AAAI/article/view/29720.

[12] Manuel Riesen. Pure Graph of Thoughts. 2024. url: https://github.com/mriesen/pure-graph-of-thoughts (visited on 11/23/2024).

Creative Commons Licence

AUTHOR: komm-team

AUTHOR: Manuel Riesen

Manuel Riesen hat vor Kurzem sein Informatik-Studium mit Vertiefung Data Engineering an der BFH TI abgeschlossen.
Aktuell entwickelt er als Software Engineer bei der SBB Systeme zur automatischen Analyse von grossen Datenmengen im Bereich Systemaufgaben Kundeninformation, um die Datenqualität des Nachrichten-Austausches zwischen den Transportunternehmen zu gewährleisten.
In seiner Freizeit beschäftigt er sich u.a. mit Machine Learning, Cloud Computing und Softwarearchitektur.

AUTHOR: Peter von Niederhäusern

Peter von Niederhäusern hat einen Abschluss in Informatik von der Berner Fachhochschule (BFH) sowie einen Abschluss in Biomedizintechnik von den Universitäten Bern und Basel. Er ist Dozent an der BFH mit Schwerpunkt Informatik und assoziierter Forscher am BFH GenAI Lab. Im Rahmen seiner Promotion am Department für Biomedizintechnik der Universität Basel entwickelt Peter innovative Visualisierungs- und Navigationstechniken für die Sentinel-Lymphknotenbiopsie.

Create PDF

Ähnliche Beiträge

Es wurden leider keine ähnlichen Beiträge gefunden.

0 Kommentare

Dein Kommentar

An Diskussion beteiligen?
Hinterlasse uns Deinen Kommentar!

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert