Prompt-Muster sind kleine Formen zum Wiederverwenden
Ein Prompt-Muster ist eine Form von Prompt, die Sie mit Absicht nutzen, weil sie ein bekanntes Problem löst. Persona, Vorlage, Kritik und Neufassung sowie Regeln zuerst sind vier davon.
Ein Name für ein Muster lässt ein Team über Prompts sprechen und sie testen. „Dieser nutzt Regeln zuerst“ ist ein Satz, mit dem man arbeiten kann.
Am Ende dieser Lektion
Notiz
Ich kann einige Prompt-Muster mit Absicht einsetzen.
Schlüsselwörter
| Begriff | Was er bedeutet | Beispiel |
|---|---|---|
| Muster | eine Prompt-Form mit bekanntem Nutzen | |
| Persona | eine Rolle, die das Modell spielen soll | |
| Vorlage | ein Prompt mit Lücken zum Ausfüllen | |
| Platzhalter | eine Lücke in einer Vorlage | {{name}} |
| Kritik | eine Liste dessen, was falsch ist | |
| Vorgabe | eine Regel, die die Antwort befolgen muss |
Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.
Was leisten die vier Muster?
Eine Persona legt Rolle und Stimme fest. Eine Vorlage hat Lücken, die Code füllt, damit jeder Prompt dieselbe Form hat. Kritik und Neufassung lässt das Modell erst Fehler finden und sie dann beheben. Regeln zuerst setzt die Regeln vor die Aufgabe, damit sie nicht vergessen werden.
Muster lassen sich verbinden. Eine Vorlage kann mit Regeln beginnen.
Vier Muster und was jedes löst
| Muster | Merkmal im Prompt | Es löst |
|---|---|---|
| Persona | Beginnt mit „Sie sind“ oder „Handeln Sie als“ | Eine Stimme, die abdriftet |
| Vorlage | Lücken wie {{name}} | Prompts, die alle verschieden sind |
| Kritik und Neufassung | Verlangt beide Schritte | Ein erster Entwurf, der bleibt, wie er ist |
| Regeln zuerst | Beginnt mit „Regeln:“ oder „Grenzen:“ | Regeln, die am Ende verloren gehen |
Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.
Modell-Helfer schreiben, Teil 1
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'const basis = process.env.AI_URL || \"http://ai:4000\";' '// Die Token einer Antwort oder null, wenn sie keine nennt.' 'function zaehlen(daten, name) {' ' return daten.usage && typeof daten.usage[name] === \"number\" ? daten.usage[name] : null;' '}' > model.js"Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
Modell-Helfer schreiben, Teil 2
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'async function fragen(nachrichten, probe, max) {' ' try {' ' const res = await fetch(basis + \"/v1/chat/completions\", {' ' method: \"POST\",' ' headers: { \"content-type\": \"application/json\", authorization: \"Bearer lab\" },' ' body: JSON.stringify({ model: \"lab\", messages: nachrichten, max_tokens: max || 100 }),' ' signal: AbortSignal.timeout(30000),' ' });' ' if (res.ok === false) throw new Error(\"Status \" + res.status);' ' const d = await res.json();' ' return { text: d.choices[0].message.content, eingabe: zaehlen(d, \"prompt_tokens\"), ausgabe: zaehlen(d, \"completion_tokens\"), aufgezeichnet: false };' ' } catch (fehler) {' ' console.log(\"Aufgezeichnete Probe: Kein Modell hat geantwortet (\" + fehler.message + \").\");' ' return { text: probe, eingabe: null, ausgabe: null, aufgezeichnet: true };' ' }' '}' 'module.exports = { fragen };' >> model.js"Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
Muster-Finder schreiben, Teil 1
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'const { fragen } = require(\"./model\");' 'const prompts = [' ' \"Sie sind ein geduldiger Mathelehrer. Erklären Sie Brüche.\",' ' \"Regeln: unter 20 Wörter. Kein Fachjargon.\nAufgabe: Erklären Sie die Gezeiten.\",' ' \"Schreiben Sie eine Notiz an {{name}} über {{thema}}.\",' ' \"Schreiben Sie eine Kritik dieses Absatzes und danach eine Neufassung.\",' ' \"Erklären Sie die Gezeiten.\",' '];' > muster4.js"Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
Muster-Finder schreiben, Teil 2
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'function musterVon(p) {' ' const klein = p.toLowerCase();' ' if (klein.includes(\"kritik\") && klein.includes(\"neufassung\")) return \"Kritik und Neufassung\";' ' if (p.startsWith(\"Regeln:\") || p.startsWith(\"Grenzen:\") || p.startsWith(\"Vorgaben:\")) return \"Regeln zuerst\";' ' if (p.includes(\"{{\") && p.includes(\"}}\")) return \"Vorlage\";' ' if (p.startsWith(\"Sie sind \") || p.startsWith(\"Handeln Sie als \")) return \"Persona\";' ' return \"schlicht\";' '}' 'function einsetzen(vorlage, werte) {' ' let text = vorlage;' ' for (const schluessel of Object.keys(werte)) text = text.split(\"{{\" + schluessel + \"}}\").join(werte[schluessel]);' ' return text;' '}' >> muster4.js"Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
Muster-Finder schreiben, Teil 3
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'async function main() {' ' prompts.forEach(function (p, i) { console.log((i + 1) + \": \" + musterVon(p)); });' ' const gefuellt = einsetzen(prompts[2], { name: \"Mina\", thema: \"den Schulausflug\" });' ' console.log(\"eingesetzt: \" + gefuellt);' ' const antwort = await fragen([{ role: \"user\", content: gefuellt }], \"Liebe Mina, der Schulausflug beginnt um neun Uhr.\", 50);' ' console.log(\"Modell: \" + antwort.text);' '}' 'main();' >> muster4.js"Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
Ausführen und die Muster nennen
docker exec -w /home/node/project agent node muster4.jsHier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
Was der Run druckt
Fünf Zeilen nennen das Muster jedes Prompts: Persona, Regeln zuerst, Vorlage, Kritik und Neufassung, schlicht. Die Prüfungen laufen in fester Reihenfolge, ein Prompt mit zwei Merkmalen erhält also das erste, das passt.
Dann füllt der Run die Vorlage und sendet sie. Die letzte Zeile ist eine kurze Antwort. Ohne Modell steht zuerst Aufgezeichnete Probe.
Ein häufiger Fehler
Warnung
Viele glauben, eine Persona mache ein Modell genauer. Eine Rolle legt Stimme und Detailgrad fest. Sie fügt keine Fakten hinzu, die das Modell nicht hat. Nutzen Sie eine Persona für den Ton und Grenzen und Beispiele für die Richtigkeit.