Grundlegendes zu Prompts zur Verbesserung der Vervollständigungsqualität
Das Erstellen von Prompts kann schwierig sein. In der Praxis fungiert der Prompt, um die Modellgewichte so zu konfigurieren, dass sie die gewünschte Aufgabe erfüllen. Aber dies ist eher eine Kunst als eine Wissenschaft und es erfordert häufig Erfahrung und Intuition, einen erfolgreichen Prompt zu erstellen.
Wenn Sie gut formulierte Prompts an das Modell senden, gibt das Modell bessere Vervollständigungen zurück.
Bei unserem Wanderempfehlungsbot hilft ein gut formulierter Systemprompt dem Modell, sich darauf vorzubereiten, geeignete Wanderungen zu empfehlen. Außerdem präzisieren gut formulierte Benutzerprompts die vom Modell zurückgegebenen Empfehlungen weiter.
In dieser Lerneinheit werden die allgemeinen Konzepte und Muster erläutert, die zum Erstellen von Prompts verwendet werden können. Zudem werden einige Techniken näher betrachtet, die zur Verbesserung der Qualität der Vervollständigungen verwendet werden können.
Grundeinstellungen
Benutzer interagieren mit GPT-Modellen über Textprompts. Generative Sprachmodellen versuchen, die nächste Wortfolge zu erzeugen, die am wahrscheinlichsten auf den vorausgegangenen Text folgen. Nehmen Sie diese Frage als Beispiel: Was fällt Ihnen als Erstes ein, wenn Sie <Prompt> hören?
Wenn Sie komplexe Prompts entwickeln, ist es hilfreich, dieses grundlegende Verhalten im Hinterkopf zu behalten. Unabhängig vom Prompt gibt das Modell einfach die Antwort zurück, die es als die am wahrscheinlichsten auf den Prompt folgende Antwort bestimmt hat.
Komponenten von Prompts
Beim Verwenden der Vervollständigungs-API wird nicht zwischen den verschiedenen Teilen des Prompts unterschieden. Trotzdem ist es hilfreich, den Prompt in seine einzelnen Abschnitte zu unterteilen, da das Ziel darin besteht, die Formulierung des Prompts zu betrachten.
Anweisungen
Anweisungen sind wahrscheinlich die am häufigsten verwendete Komponente in Prompts. Sie sind der Teil des Prompts, der dem Modell mitteilt, was es tun soll, und sie können einfach oder komplex formuliert sein. Beispiel: Von Empfiehl Wanderungen bis Du bist ein leidenschaftlicher Wanderer, der Menschen dabei hilft, tolle Wanderungen in ihrer Gegend zu entdecken. Du bist stets gut gelaunt und freundlich. Du stellst dich anderen vor, wenn du sie zum ersten Mal triffst. Wenn du Menschen hilfst, fragst du sie immer nach ihrem Aufenthaltsort und dem Schwierigkeitsgrad, den sie sich für eine Wanderung wünschen, um eine fundierte Empfehlung geben zu können.
Hauptinhalt
Der Hauptinhalt bezieht sich auf eine Textart, die vom Modell verarbeitet oder transformiert wird. Er wird in der Regel in Verbindung mit Anweisungen verwendet. Beispiel: Du schlägst dann drei unterschiedlich lange Wanderungen in der Nähe vor, nachdem du diese Informationen erhalten hast.
Der Hauptinhalt kann viel länger sein, wie beispielsweise die Anweisung an das Modell, einen Wikipedia-Artikel zusammenzufassen.
Beispiele
Erfolgreiche Prompts beruhen häufig auf dem Standard des One-Shot- oder Few-Shot-Lernens. Damit ist die Aufnahme von einem oder mehreren Beispielen für das gewünschte Verhalten des Modells gemeint, was in der Regel Eingabe- und Ausgabepaare einbezieht. Durch diese Art von Lernen wird das Modell nicht dauerhaft geändert. Vielmehr konditionieren die Beispiele das Modell darauf, nur auf den aktuellen Rückschluss wie gewünscht zu reagieren.
Die Verwendung von Prompts ohne Beispiele wird manchmal als Zero-Shot-Lernen bezeichnet.
Hike request: I live near Seattle and would like an easy hike.
Recommendation: That's great to hear, the Seattle area has some of the best hikes in the nation! You should try Little Si, you'll love it.
Hike request: I want to go on a hike in the North Cascades that will blow my mind.
Recommendation: You won't find a bad hike in the North Cascades. However, I hear the Sahale Arm stops people in their tracks with its beauty.
Hike request: I'd like to find a strenuous hike that's just like the Enchantments, but without as many people.
Recommendation:
Position (Cue)
Hinweise dienen als „Starthilfe“ für die Ausgabe des Modells und helfen dabei, das Modell zum gewünschten Ergebnis zu führen. Häufig handelt es sich dabei um eine Prämisse, auf der das Modell aufbauen kann. Ein Hinweis kann die Vervollständigung dazu veranlassen, nur wichtige Elemente einzuschließen. Sie werden häufig zusammen mit Anweisungen verwendet.
Das folgende Beispiel zeigt einen einzigen Hinweis zum Zusammenfassen vieler Wanderbewertungen:
Prompt | Completion |
---|---|
Bei Wanderbewertungen ist es wichtig, darüber nachzudenken, ob Wander*innen eine Wanderung machen, da die Bewertung die aktuellen Bedingungen des Wanderwegs auflistet. [...] Fasse die obenstehende Wanderbewertung zusammen: Bei Wanderbewertungen ist Folgendes wichtig: |
dass die Wanderung „Mailbox Peak“ gerade schlammig ist und die Moskitos zur Plage werden, sobald Sie sich über der Baumgrenze befinden. Ab dem Vormittag sind auf dem Wanderweg außerdem viele Menschen unterwegs. |
Unterstützender Inhalt
Ergänzende Inhalte sind Informationen, die das Modell verwenden kann, um die Ausgabe in irgendeiner Weise zu beeinflussen. Sie unterscheiden sich vom Hauptinhalt darin, dass sie nicht das Hauptziel der Aufgabe sind, sondern in der Regel zusammen mit dem Hauptinhalt verwendet werden. Häufige Beispiele sind Kontextinformationen wie das aktuelle Datum, der Name des Benutzers, Benutzereinstellungen usw.
Bewährte Methoden
- Machen Sie genaue Angaben. Lassen Sie so wenig Spielraum für Interpretation, wie möglich. Schränken Sie den Betriebsbereich ein.
- Seien Sie beschreibend. Verwenden Sie Analogien.
- Erklären Sie, was Sie meinen. Manchmal müssen Sie dem Modell möglicherweise erneut beschreiben, was Sie erwarten. Geben Sie Anweisungen vor und nach Ihrem Hauptinhalt, verwenden Sie eine Anweisung und einen Hinweis usw.
- Die Reihenfolge ist wichtig. Die Reihenfolge, in der Sie dem Modell Informationen bereitstellen, kann sich auf die Ausgabe auswirken. Bei der Ausgabe kann es einen Unterschied ausmachen, ob Sie Anweisungen vor Ihren Inhalten („fasse folgendes zusammen…“) oder danach („fasse das vorhergehende zusammen…“) geben. Selbst die Reihenfolge der Few-Shot-Beispiele kann von Bedeutung sein. Diese Technik wird als Rezenzeffekt bezeichnet.
- Bereiten Sie die Ausgabe vor. Schließen Sie einige Wörter oder Ausdrücke am Ende der Eingabeaufforderung ein, um eine Modellantwort in der gewünschten Form zu erhalten.
- Stellen Sie dem Modell einen alternativen Pfad zur Verfügung. Manchmal kann es hilfreich sein, dem Modell einen alternativen Pfad zu geben, wenn es die zugewiesene Aufgabe nicht ausführen kann. Wenn Sie beispielsweise eine Frage über einen Text stellen, können Sie etwas wie „Antworte mit ‚nicht gefunden‘, wenn die Antwort nicht vorhanden ist“ einfügen. Diese Technik hilft dem Modell, das Generieren falscher Antworten zu vermeiden.
- Verwenden Sie Prompts als Denkkette. Das Modell wird angewiesen, schrittweise fortzufahren und alle ausgeführten Schritte anzuzeigen. Dadurch wird die Wahrscheinlichkeit für Ungenauigkeiten in den Ergebnissen verringert und die Bewertung der Modellantwort erleichtert.