Was macht Prompt Polish(提示词策略优化)?
Was dieser Skill tut
Gib eine rohe Frage/Aufgabe ein. Er bestimmt, um welchen Aufgabentyp es sich handelt, wählt für diesen Typ eine Reihe reiner Text-Prompt-Strategien (aus 14 Forschungstechniken) aus, webt diese Strategien in einen zusammenhängenden Prompt ein und gibt den umgeschriebenen Prompt selbst aus.
Kernprinzip: Deine gesamte Antwort ist der umgeschriebene Prompt – sonst nichts. Du erstellst für den Benutzer einen wiederverwendbaren Prompt, nicht du beantwortest die ursprüngliche Frage.
Wann verwenden
- Der Benutzer gibt dir eine Frage/Aufgabe und möchte sie in einen besseren Prompt umgewandelt haben: „Prompt optimieren“, „Umschreiben“.
- Der Benutzer möchte, dass die Frage von einem großen Sprachmodell leichter richtig und im richtigen Format beantwortet wird.
- Schlüsselwörter: prompt polish / prompt optimieren / Prompt-Engineering
Nicht geeignet für:
- Der Benutzer möchte, dass du die ursprüngliche Frage direkt beantwortest (dann antworte direkt, schreibe nicht um).
- Schreib-/Bearbeitungsaufgaben, die nichts mit LLM-Prompts zu tun haben.
Ausgabe-Vertrag (am wichtigsten)
Deine gesamte Antwort = ein Code-Block. Im Block steht der umgeschriebene, direkt kopierbare Prompt; außerhalb des Blocks null Zeichen.
Im Einzelnen:
- Vor dem Code-Block schreibst du keine Einleitung, Begrüßung oder „Hier ist der umgeschriebene Prompt“.
- Nach dem Code-Block schreibst du keine Erklärung, Interpretation oder Kommentare, insbesondere nicht die Antwort auf die ursprüngliche Frage (du erstellst eine Vorlage, du beantwortest keine Frage).
- Die ausgewählten Strategien baust du direkt in den Prompttext ein (Rollenanweisung, Schritte, Antwortanker usw.), nicht außerhalb des Blocks beschreibst du „welche Strategien ich verwendet habe“.
- Standardmäßig mit
umschließen; falls der Prompttext selbstenthält, mit~~~umschließen, sodass es dennoch ein einzelner Code-Block bleibt. - Klassifikation und Kombinationsauswahl sind deine internen Gedanken und werden nicht in die Antwort geschrieben.
Ausnahme: Nur wenn der Benutzer explizit verlangt, dass du erklärst, warum du etwas geändert hast oder die Strategien erklärst, fügst du eine Erklärung hinzu (die Anweisung des Benutzers hat Vorrang vor diesem Vertrag).
Arbeitsablauf (interne Ausführung, nicht den Prozess ausgeben)
- Typ bestimmen – Ordne die rohe Frage einem Typ aus der Tabelle unten zu (nimm den wichtigsten; zwei Typen können kombiniert werden, aber die Gesamtzahl der Strategien bei 2–4 halten).
- Kombination auswählen – Verwende direkt die Kombination aus der Tabelle „Aufgabentyp → Strategie-Kombination“ (normalerweise 2–4). Füge nicht ohne triftigen Grund weitere Strategien hinzu – zu viele stören sich gegenseitig und machen den Prompt aufgebläht.
- Umschreiben – Verwende die „Strategie-Übersicht“, um jede Strategie in konkrete Sätze/Schritte im Prompt zu übersetzen und die spezifischen Inhalte der rohen Frage einzufügen (das Ergebnis ist fertig; lasse keine
{Platzhalter}stehen, es sei denn, sie sind für den Endbenutzer zum Ausfüllen gedacht). - Nur den Prompt ausgeben – Gib gemäß dem Ausgabe-Vertrag nur den Code-Block aus.
Wenn die Aufgabe zu vage ist oder Informationen fehlen: Frage nicht selbst nach. Verwende stattdessen die „Flipped Interaction“-Strategie – schreibe das „erst klären, dann ausführen“ in den umgeschriebenen Prompt (lässt das Zielmodell zuerst den Benutzer fragen). Die gesamte Antwort ist trotzdem nur ein Code-Block.
Aufgabentyp → Strategie-Kombination (reine Textversion)
| Aufgabentyp | Empfohlene Kombination | Hauptvorteil |
|---|---|---|
| Multiple-Choice / Objektive Entscheidung | Option-First + Symbolischer Platzhalter + Reverse Verification | Position Bias reduzieren + exakte Extraktion + Selbstkorrektur |
| Fachbereich / Compliant Generation | Rolle-Regel-Doppelabsicherung + Wissenszeitstempel + Mirror Test | Fachwissen abrufen + zeitliche Genauigkeit + zweite Optimierung |
| Komplexes Reasoning / Lösen | Chain-of-Thought + Tree-of-Thought + Reverse Verification | Schrittweise Ableitung + mehrere Pfade prüfen + Selbsteinwand |
| Batch-Standardisierte Aufgaben | Meta-Prompting + Layered Prompt + Prompt Repetition | Selbstoptimierender Prompt + klare Analyse + stabile Einhaltung |
| Kreativität & Faktentreue | Prompt Chaining + Reverse Verification + Mirror Test | Phasenweise: erst divergieren, dann konvergieren + Faktenprüfung + Verfeinerung |
| Hochpräzise Q&A | Rolle-Regel-Doppelabsicherung + Reverse Verification + Mirror Test | Dreifache Absicherung senkt Fehlerrate |
| Strukturierte Ausgabe | Layered Prompt + Symbolischer Platzhalter + Prompt Repetition | Formateinheitlichkeit sicherstellen |
| Halluzination reduzieren | Wissenszeitstempel + Reverse Verification + Mirror Test | Mehrschichtige Faktenprüfung |
| Agent / Tool-Aufruf | ReAct + Prompt Chaining | Systematische Abwicklung mehrstufiger Aufgaben (am besten mit Tools) |
| Vage Anforderungen | Flipped Interaction → Layered Prompt → (im Prompt) Ausführen | Erst klären, dann ausführen |
Dies sind Standard-Standpunkte, keine festen Regeln. Bei mehreren Typen verschmelzen und auf 2–4 reduzieren; zu viele stören sich gegenseitig.
Strategie-Übersicht (14, rein textlich in Prompt schreibbar)
| Strategie | Wie in den Prompt schreiben (ein Satz) | Geeignet für |
|---|---|---|
| Prompt Repetition | Die Kernanweisung/Schlüsseleinschränkung am Anfang und Ende des Prompts je wiederholen (insgesamt 2–3 Mal) | Standardisierung, Formatkontrolle, Anweisungsbefolgung |
| Option-First MCQ | Die Kandidatenoptionen vor die Frage setzen, zuerst den Antwortbereich verankern, dann fragen | Multiple-Choice, Klassifikation, objektive Fragen |
| Rolle-Regel-Doppelabsicherung | „Du bist Experte in Bereich X, befolge strikt die Regel Y; falls Verstoß, antworte zuerst mit 'Fehler' und korrigiere dich selbst“ | Fachfragen, Compliance, hohe Genauigkeit |
| Self-Contrast (Reverse Verification) | „Gib die Antwort → liste 3 Beweise, die sie widerlegen können (Bewertung 1-5) → prüfe und korrigiere daraufhin“ | Faktenfragen, Halluzination reduzieren, risikoreiche Entscheidungen |
| Symbolischer Platzhalter | „Setze die endgültige Antwort zwischen ▶︎▶︎answer▶︎▶︎, sonst als ungültig betrachten“ | Extraktion, präzise Antwort, strukturiert, maschinenlesbar |
| Wissenszeitstempel | „Stand YYYY-MM …; neuere Informationen bitte mit 'möglicherweise veraltet' kennzeichnen“ | Zeitkritische Fragen, Branchendynamiken |
| Layered Prompt | Die Anweisung nach Ziel → Regeln → Beispiele → Format in vier Schichten organisieren | Mehrere Einschränkungen, komplexe Anweisungen, lange Texte |
| Mirror Test | Am Ende: „Lies deine Antwort noch einmal. Welchen Satz würdest du ändern? Gib nur den geänderten Satz aus“ | Korrekturlesen, Verfeinerung, finale Qualitätskontrolle |
| Flipped Interaction | „Bevor du ausführst, stelle zu den folgenden 3 Punkten Fragen zur Klärung, dann führe nach meiner Antwort aus“ | Vage Anforderungen, personalisierte Anpassung |
| Chain-of-Thought (CoT) | „Denke Schritt für Schritt, leite schrittweise her und gib für jeden Schritt den Grund an“ | Mathematik, Logik, mehrstufiges Reasoning |
| Prompt Chaining | Aufteilen in [Schritt1 → Schritt2 → Schritt3], die Ausgabe des vorherigen Schritts dient als Eingabe für den nächsten (als einzelner sequenzieller Prompt schreiben) | Lange Zusammenfassungen, mehrstufige Analysen, Pipelines |
| Meta-Prompting | „Generiere zuerst einen besseren Prompt für diese wiederholt auszuführende Aufgabe, führe sie dann damit aus“ | Wiederholte Aufgaben, Prompt-Selbstoptimierung |
| Tree-of-Thought (ToT) | „Liste 3 Reasoning-Pfade → bewerte die Machbarkeit (1-10) → wähle den besten aus und leite schrittweise her → bei Scheitern zurück zum nächstbesten“ | Schwieriges Reasoning, Entscheidungsfindung, Planung |
| ReAct | „Zyklus von denken → handeln → beobachten: zuerst überlegen, was zu tun ist, dann handeln, dann prüfen, ob Anpassung nötig ist“ (mit Tools/Abruf am besten) | Agent, Tool-Aufruf, Abruf + Reasoning |
Vollständige Vorlagen, Prinzipien und Quellen siehe references/strategies.md.
Ein vollständiges Beispiel
Eingabe: Welche der folgenden Zahlen ist eine Primzahl? 51, 57, 61, 91
(Interne Entscheidung, nicht ausgeschrieben) Typ = Multiple-Choice / Objektive Entscheidung → Kombination = Option-First + Symbolischer Platzhalter + Reverse Verification
Deine gesamte Antwort ist der folgende Code-Block (beachte: keine Lösung, keine Antwort verraten, keine Zeichen außerhalb des Blocks):
Bestimme, welche der folgenden Kandidaten eine Primzahl ist:
A. 51 B. 57 C. 61 D. 91
Frage: Welche der vier Zahlen oben ist eine Primzahl?
Anforderungen zur Beantwortung:
1. Führe für jeden Kandidaten unabhängig einen Probedivisionstest durch: Teile nacheinander durch alle Primzahlen p mit p×p ≤ n (2, 3, 5, 7, …); ist die Teilung ohne Rest möglich, ist es eine zusammengesetzte Zahl und gib die Faktorisierung an; sonst ist es eine Primzahl.
2. Gib eine eindeutige Antwort und liste dann 3 Beweise, die diese Antwort widerlegen könnten, bewerte die Glaubwürdigkeit jedes Beweises (1–5); Falls die Gesamtpunktzahl > 0, prüfe daraufhin und korrigiere falls nötig.
3. Setze die endgültige Antwort (den entsprechenden Buchstaben) zwischen ▶︎▶︎answer▶︎▶︎, z. B. ▶︎▶︎C▶︎▶︎, sonst als ungültig betrachten.
Häufige Fehler
| Fehler | Korrektur |
|---|---|
| Vor/Nach dem Code-Block Einleitung/Interpretation/Kommentare hinzufügen | Ganze Antwort ist nur der Code-Block, null Zeichen außerhalb |
| Die Antwort auf die ursprüngliche Frage ausrechnen oder preisgeben | Du erstellst eine wiederverwendbare Vorlage, du beantwortest keine Frage; lass das Zielmodell rechnen |
| Strategien verwenden, die API/Decoding-Kontrolle erfordern (Temperaturabfall, mehrere unabhängige Durchläufe, dynamische Few-Shot) | Nur reine Textstrategien verwenden; diese drei wurden ausgeschlossen (siehe unten) |
| 5+ Strategien auf einmal stapeln | Auf 2–4 beschränken, passend zum Typ; zu viele stören sich gegenseitig |
| Bei vage Aufgabe selbst den Benutzer fragen | Das „erst klären, dann ausführen“ in den umgeschriebenen Prompt schreiben (Flipped Interaction), trotzdem nur einen Code-Block ausgeben |
Im Output {Platzhalter} vergessen | Das Ergebnis ist fertig; die spezifischen Inhalte der rohen Frage einfügen (Ausnahmen: Felder, die der Endbenutzer ausfüllen soll) |
Ausgeschlossene Strategien
Die folgenden 3 Strategien erfordern mehrere Durchläufe / mehrere unabhängige Stichproben / tokenweise Decoding-Kontrolle und können nicht in einen eigenständigen Prompt eingepackt werden. Daher werden sie in diesem Skill standardmäßig nicht verwendet:
- Dynamische Few-Shot (erfordert zuerst einen Durchlauf, um eigene Ausgaben als Beispiele zu extrahieren)
- Self-Consistency (erfordert mehrere unabhängige Durchläufe mit Abstimmung; im Ein-Prompt-Szenario durch Reverse Verification ersetzt)
- Temperaturabfall-Decoding (erfordert tokenweise Temperatureinstellung, gehört zu Decoding-Parametern)
Falls der Benutzer tatsächlich API/Decoding-Kontrolle oder mehrstufige Orchestrierung beherrscht, sind die vollständigen Vorlagen dieser drei Strategien am Ende von references/strategies.md als „Einstellungen und Ablauf“-Vorschläge enthalten – das geht jedoch über den Standardvertrag „nur einen Prompt-Code-Block ausgeben“ hinaus und muss zuerst mit dem Benutzer abgestimmt werden.