Antrag-Clustering: Netzwerk-Graph aehnlicher Antraege (Embedding-Naehe) #105
Labels
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: tobias/gwoe-antragspruefer#105
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Aehnliche Antraege automatisch gruppieren via Embedding-Cosinus-Naehe.
Visualisierung
Technik
Scope
Mittlerer Aufwand. Zuerst Backend (Aehnlichkeits-API), dann Frontend (Graph).
❓ Offene Frage (Claude-Loop)
Für Clustering brauche ich eine Embedding-Strategie. Zwei Optionen:
A) TF-IDF auf Titel+Themen+Fraktion — keine zusätzlichen API-Calls, läuft lokal, ~80% Qualität. MVP in 1–2h.
B) Echte Embeddings — neue Spalte
assessments.summary_embedding(DashScope text-embedding-v3, ~0.0001€/Antrag, bei 1k Anträgen also ~0.10€ einmalig, bei jedem neuen Antrag ein zusätzlicher Call). Bessere semantische Nähe, ermöglicht auch #108.Frage: A (MVP) oder B (gleich richtig)? Budget für B ok?
Antworte hier als Kommentar — ich lese bei jedem Loop-Tick neue Kommentare.
Embedding-Strategie entschieden: v4 für alles (Diskussion 2026-04-11). Migration wird in Issue #123 umgesetzt. Dieses Issue ist blockiert bis #123 gemerged.
Arbeitsschritte (nach #123):
app/clustering.py: sklearn AgglomerativeClustering überassessments.summary_embeddingGET /api/clusters?wahlperiode=...&bundesland=...Live 2026-04-11 ✅
Clustering-Modul
app/clustering.py:API:
GET /api/clusters?bundesland=...&threshold=...{meta, clusters: [{size, label, dominant_fraktion, avg_gwoe_score, drucksachen, subclusters}], singletons: []}UI:
🎯 Clusterim Haupt-MenüTest in Prod: https://gwoe.toppyr.de → "🎯 Cluster" klicken. 5 Cluster bei Default-Schwelle, Threshold-Slider live adjustable.
Schließe.