Prompt Engineering Guide
😃 Grundlagen
💼 Einfache Anwendungen
🧙‍♂️ Weiterführendes
🤖 Agenten
⚖️ Zuverlässigkeit
🖼️ Bild Prompting
🔓 Prompt Hacking
🔨 Werkzeuge
💪 Prompt Tuning
🎲 Diverses
📙 Vocabulary Reference
📚 Bibliography
📦 Prompted Products
🛸 Additional Resources
🔥 Hot Topics
✨ Credits

Few Shot Prompting

🟢 This article is rated easy
Reading Time: 2 minutes

Last updated on August 7, 2024

Eine weitere Prompting-Strategie ist das Few Shot Prompting, bei dem es im Grunde nur darum geht, dem Modell einige Beispiele (sogenannte Shots) für das zu zeigen, was es tun soll.

Nehmen wir das obige Beispiel, in dem wir versuchen, Kundenfeedback als positiv oder negativ zu klassifizieren. Wir zeigen dem Modell 3 Beispiele von positivem/negativem Feedback, dann zeigen wir ihm ein neues Feedback, das noch nicht klassifiziert wurde (Es funktioniert nicht!:). Das Modell sieht, dass die ersten drei Beispiele entweder als positiv oder negativ eingestuft wurden, und verwendet diese Information, um das neue Beispiel als negativ einzustufen.

Die Art und Weise, wie wir die Beispiele strukturieren, ist sehr wichtig. Da wir diese 3 Beispiele als Eingabe: Klassifizierung strukturiert haben, gibt das Modell ein einzelnes Wort nach der letzten Zeile aus, anstatt einen ganzen Satz wie Diese Bewertung ist positiv zu sagen.


Notice
Jedes Eingabe-Ausgabe-Paar wird als Exemplar bezeichnet.

Mehr zur Struktur

Wichtig kann das Few Shot Prompting auch sein, wenn die Ausgabe auf eine bestimmte Weise strukturiert sein muss, die für schwer zu beschreiben ist. Um das zu verstehen, betrachten wir ein relevantes Beispiel: Angenommen, du musst Namen und Berufe bekannter Bürger in nahe gelegenen Städten zusammenstellen, indem du lokale Zeitungsartikel analysierst. Du möchtest, dass das Modell jeden Artikel liest und eine Liste von Namen und Berufen im Format Vorname Nachname [BERUF] ausgibt. Um das Modell dazu zu bringen, dies zu tun, kannst du ihm ein paar Beispiele zeigen:

Indem du dem Modell Beispiele zeigst, ist es in der Lage, die korrekte Ausgabe für neue Artikel zu erzeugen.

Notice

Obwohl du dieselbe Ausgabe auch mit einem Befehlsprompt erzeugen könntest, ist die Ausgabe mit dem Few Shot Prompt viel konsistenter.

Varianten des Shot Prompting

Das Wort "Shot" ist ein Synonym für "Beispiel". Neben dem Few Shot Prompting gibt es zwei weitere Arten des Shot Prompting. Denk nicht zu viel darüber nach! Der einzige Unterschied zwischen diesen Varianten besteht darin, wie viele Beispiele du dem Modell zeigst.

Varianten:

  • 0-Shot Prompting: Dem Modell werden keine Beispiele gezeigt
  • 1-Shot Prompting: Dem Modell wird ein Beispiel gezeigt
  • Few Shot Prompting: Dem Modell werden mehrere Beispiele gezeigt

0-Shot Prompting

0-Shot Prompting ist die einfachste Form des Promptens. Dabei wird dem Modell einfach ein Prompt ohne Beispiele gezeigt und es wird aufgefordert, eine Antwort zu geben. Daher sind alle Instruktions- und Rollen-Prompts, die du bisher gesehen hast, 0-Shot-Prompts. Ein weiteres Beispiel für einen 0-Shot-Prompt ist:

Addiere 2+2:

Es ist 0-Shot, da wir dem Modell keine vollständigen Beispiele gezeigt haben.

1-Shot Prompting

Beim 1-Shot Prompting zeigst du dem Modell ein einzelnes Beispiel. Die 1-Shot-Analogie des 0-Shot Prompts Addiere 2+2 ist zum Beispiel:

Addiere 3+3: 6
Addiere 2+2:

Wir haben dem Modell nur 1 komplettes Beispiel gezeigt (Addiere 3+3: 6), dies ist also ein 1-Shot Prompt.

Few Shot Prompting

Few Shot Prompting bedeutet, dass du dem Modell 2 oder mehr Beispiele zeigst. Alle Prompts oberhalb dieses Abschnitts über Varianten waren Few Shot Prompts. Die Few Shot-Analogie zu den beiden obigen Prompts ist:

Addiere 3+3: 6
Addiere 5+5: 10
Addiere 2+2:

Dies ist der Fall, da wir dem Modell mindestens 2 vollständige Beispiele gezeigt haben (Addiere 3+3: 6 und Addiere 5+5: 10). Normalerweise ist die Ausgabe umso besser, je mehr Beispiele du dem Modell zeigst. Daher wird in den meisten Fällen das Prompting mit mehreren Shots dem Prompting mit keinem oder einem Shot vorgezogen.

Fazit

Few Shot Prompting ist eine wirkungsvolle Technik, um das Modell dazu zu bringen, genaue und richtig formatierte Ausgaben zu produzieren!

Sander Schulhoff

Sander Schulhoff is the Founder of Learn Prompting and an ML Researcher at the University of Maryland. He created the first open-source Prompt Engineering guide, reaching 3M+ people and teaching them to use tools like ChatGPT. Sander also led a team behind Prompt Report, the most comprehensive study of prompting ever done, co-authored with researchers from the University of Maryland, OpenAI, Microsoft, Google, Princeton, Stanford, and other leading institutions. This 76-page survey analyzed 1,500+ academic papers and covered 200+ prompting techniques.

Footnotes

  1. Logan IV, R., Balazevic, I., Wallace, E., Petroni, F., Singh, S., & Riedel, S. (2022). Cutting Down on Prompts and Parameters: Simple Few-Shot Learning with Language Models. Findings of the Association for Computational Linguistics: ACL 2022, 2824–2835. https://doi.org/10.18653/v1/2022.findings-acl.222

  2. Lake, B. M., Salakhutdinov, R., & Tenenbaum, J. B. (2015). Human-level concept learning through probabilistic program induction. Science, 350(6266), 1332–1338.

Copyright © 2024 Learn Prompting.