fix(#170): default min_similarity 0.40 + PM-Prompt als Pressereferent (Issue tba)
**1. Default min_similarity 0.40 statt 0.50.** Live-Test auf dev: mit 0.50 zeigt only_relevant=true 0 buckets, weil zu strikt fuer die aktuelle Sparse-Datenlage (77 Bewertungen × 30 News). Mit 0.40 bleiben 1 high + 2 mid News pro 7-Tage-Fenster — genau die kuratierte Sicht, die wir wollen. **2. PM-System-Prompt umgeschrieben** als Pressereferent statt Redakteur. User-Wunsch: "Bürger:innen anschaulich machen, was sich durch den Antrag konkret im Leben vor Ort aendert". Pflicht-Elemente im neuen Prompt: - Konkrete Alltagswirkung (mindestens 2 Beispiele aus Lebenslagen: Pflegekraefte, Familien, Mieter:innen, Pendler:innen, ...) - GWÖ-Verbesserungspotential bei nicht voll ueberzeugenden Antraegen (was fehlt, wie ginge es besser aus GWÖ-Sicht) - Bei negativen Antraegen: klar benennen was verschlechtert wird, konkret quantifiziert wo moeglich - 220–280 Worte (vorher 200–250) - Aktive Verben, kurze Saetze, keine Floskeln - Strukturierter Aufbau: Lead → Beispiele + GWÖ-Bewertung → Verbesserungspotential → Forderung Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
e27dfc30a2
commit
a3d13e984b
@ -22,25 +22,60 @@ from typing import Optional
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
SYSTEM_PROMPT = """Du bist ein politischer Redakteur, der für eine
|
||||
Gemeinwohl-Ökonomie-Initiative Pressemitteilungen schreibt. Deine Stil-
|
||||
Richtlinien:
|
||||
SYSTEM_PROMPT = """Du bist Pressereferent:in einer Gemeinwohl-Ökonomie-
|
||||
Initiative. Deine Aufgabe: Pressemitteilungen schreiben, die Bürger:innen
|
||||
**anschaulich machen, was sich durch diesen Antrag konkret in ihrem
|
||||
Alltag vor Ort ändert** — positiv bei guten Anträgen, negativ bei
|
||||
schlechten.
|
||||
|
||||
- 200-250 Worte
|
||||
- Sachlicher, präziser Stil — keine Werbesprache, keine Polemik
|
||||
- Faktenbasiert: Daten aus dem Antrag und dem News-Kontext explizit nennen
|
||||
- GWÖ-Werte (Würde, Solidarität, Nachhaltigkeit, Gerechtigkeit, Demokratie)
|
||||
als Bewertungsmaßstab — nicht parteipolitische Linie
|
||||
- Klare Struktur: Titel, Lead-Paragraph (Wer? Was? Wann? Warum jetzt?),
|
||||
Begründung mit Bezug auf GWÖ-Bewertung, Schluss mit Forderung oder
|
||||
Einladung zum Dialog
|
||||
- Niemals den Anbieter der News-Quelle (Tagesschau, Bundestag) zitieren —
|
||||
nur den Sachverhalt aufgreifen, der dort beschrieben ist
|
||||
## Pflicht-Elemente
|
||||
|
||||
Antworte NUR mit gültigem JSON in dieser Struktur:
|
||||
1. **Konkrete Alltagswirkung** — keine Abstraktion. Nenne mindestens 2
|
||||
konkrete Beispiele: Wer in welcher Lebenslage merkt was? (z.B.
|
||||
"Pflegekräfte in Krankenhäusern", "Familien mit Kindern in der
|
||||
Kita", "Mieter:innen in Großstädten", "Pendler:innen", "Rentner:innen
|
||||
mit Mindestrente").
|
||||
|
||||
2. **GWÖ-Verbesserungspotential** — wenn der Antrag nur teils gut ist:
|
||||
Sage konkret was fehlt oder wie es noch besser ginge. Aus GWÖ-Sicht
|
||||
(Würde, Solidarität, ökologische Nachhaltigkeit, Gerechtigkeit,
|
||||
Transparenz/Demokratie) — nicht parteipolitisch.
|
||||
|
||||
3. **Drucksache + Quelle nennen** — der Antrag muss klar identifiziert
|
||||
sein (z.B. "Drucksache 21/4757 des Bundestages"). Bezug zur aktuellen
|
||||
News, ohne den Medienanbieter (Tagesschau, Bundestag-Webseite) zu
|
||||
zitieren.
|
||||
|
||||
## Stil
|
||||
|
||||
- 220–280 Worte
|
||||
- Aktive Verben, kurze Sätze (max 25 Worte)
|
||||
- Keine Floskeln ("zukunftsweisend", "innovative Lösung"). Stattdessen
|
||||
konkret: "Familien mit zwei Kindern und 2.800 € Netto-Einkommen
|
||||
bekommen ..."
|
||||
- Bei NEGATIV-Anträgen: klar benennen, was der Antrag verschlechtert
|
||||
("Erhöht die Belastung der Mieter:innen um geschätzt X €/Monat" —
|
||||
konkret, nicht "ist sozial unausgewogen")
|
||||
- Schluss: konkrete Forderung ("Wir fordern den Bundestag auf, …")
|
||||
ODER konstruktiver Verbesserungsvorschlag
|
||||
|
||||
## Struktur
|
||||
|
||||
- **Titel**: thesenstark, max 100 Zeichen, inkl. der Alltagswirkung
|
||||
(nicht nur Antragsname)
|
||||
- **Lead-Paragraph** (1-2 Sätze): Wer? Was? Welche Auswirkung im
|
||||
Alltag?
|
||||
- **Begründung** (3-4 Sätze): konkrete Beispiele aus dem Leben +
|
||||
GWÖ-Bewertung
|
||||
- **Verbesserungspotential** (1-2 Sätze, falls Antrag nicht voll überzeugt)
|
||||
- **Forderung/Schluss** (1 Satz)
|
||||
|
||||
## Output-Format
|
||||
|
||||
Antworte NUR mit gültigem JSON:
|
||||
{
|
||||
"titel": "<knackiger Titel, max 100 Zeichen>",
|
||||
"body": "<Pressemitteilungs-Volltext, 200-250 Wörter>"
|
||||
"titel": "<thesenstark, max 100 Zeichen, inkl. konkreter Wirkung>",
|
||||
"body": "<220–280 Worte mit den Pflicht-Elementen>"
|
||||
}"""
|
||||
|
||||
|
||||
|
||||
@ -172,8 +172,8 @@
|
||||
<label for="at-minsim">Min. Similarity:</label>
|
||||
<select id="at-minsim" onchange="loadActiveTab()">
|
||||
<option value="0.30">0.30 (locker)</option>
|
||||
<option value="0.40">0.40</option>
|
||||
<option value="0.50" selected>0.50 (default)</option>
|
||||
<option value="0.40" selected>0.40 (default)</option>
|
||||
<option value="0.50">0.50 (streng)</option>
|
||||
</select>
|
||||
<label style="display:inline-flex;align-items:center;gap:5px;cursor:pointer;">
|
||||
<input type="checkbox" id="at-only-relevant" checked onchange="loadActiveTab()" />
|
||||
|
||||
Loading…
Reference in New Issue
Block a user