podcast-mindmap/scripts
Dotty Dotter d7a0ed2715 #8/#10 Cross-Mindmap: Combined-Visualisierung mit Theme-Clustering ueber Podcast-Grenzen
scripts/cluster_themes.py:
- Berechnet Embeddings je Theme (label + description), single-linkage Clustering
  ueber Cosinus-Schwelle (default 0.55) ueber Podcast-Grenzen hinweg.
- Output: data/theme_clusters.json mit Cluster-Liste, je Cluster Mitglieder
  (podcast_id, theme_id, label) und Cross-Flag.

Backend:
- /api/analyses/cross-themes: liefert die Cluster-Datei aus.

Frontend (CrossMindmapView):
- Force-Graph mit zwei Podcast-Hubs (links/rechts), je Themen radial drumherum,
  Cross-Cluster-Member als gestrichelte gelbe Verbindungslinien mit Cluster-Label.
- Panel: Cross-Cluster oben (klickbar zur Episode), Solo-Cluster darunter.
- Klick auf Theme oeffnet den jeweiligen Podcast.
- 'Cross-Mindmap'-Button im Selector.

Initiales Cluster-Ergebnis: 13 Cluster aus 14 Themen, 1 Cross-Cluster
('Trump-USA' x 'Plattformmacht/Debattenkultur').

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-28 08:37:55 +02:00
..
analyse_arguments.py #13/#18 Robuster JSON-Parser + --rerun-errors-Modus 2026-04-28 00:30:45 +02:00
cluster_themes.py #8/#10 Cross-Mindmap: Combined-Visualisierung mit Theme-Clustering ueber Podcast-Grenzen 2026-04-28 08:37:55 +02:00
config.py Initial commit: podcast-mindmap tool 2026-04-20 01:25:42 +02:00
convert_srt.py Initial commit: podcast-mindmap tool 2026-04-20 01:25:42 +02:00
curate_debates.py #13/#18 Robuster JSON-Parser + --rerun-errors-Modus 2026-04-28 00:30:45 +02:00
detect_gaps.py #12 Wort-Highlighting Frontend, #14 Leerstellen-Detektor, #15 Narrative Shift, 2026-04-23 22:29:41 +02:00
detect_narrative_shift.py #12 Wort-Highlighting Frontend, #14 Leerstellen-Detektor, #15 Narrative Shift, 2026-04-23 22:29:41 +02:00
download_audio.py Initial commit: podcast-mindmap tool 2026-04-20 01:25:42 +02:00
extract_claims.py #12 Wort-Highlighting Frontend, #14 Leerstellen-Detektor, #15 Narrative Shift, 2026-04-23 22:29:41 +02:00
extract_questions.py #12 Wort-Highlighting Frontend, #14 Leerstellen-Detektor, #15 Narrative Shift, 2026-04-23 22:29:41 +02:00
extract_quotes.py extract_quotes.py: Auto-Quote-Extraktion je Episode via Qwen-plus 2026-04-28 00:30:54 +02:00
import_words.py #8 Multi-Podcast-Dashboard, #9 PWA, #10 Cross-Podcast-Links, #12 Wort-Timestamps 2026-04-23 20:53:06 +02:00
index_topics.py #2 Obsidian-Links, #6 Soundbite-Export, #7 Timeline 2026-04-20 08:03:12 +02:00
json_utils.py #13/#18 Robuster JSON-Parser + --rerun-errors-Modus 2026-04-28 00:30:45 +02:00
match_answers.py #16/#17 match_answers.py und match_claims.py: Cross-Episode-Matching via Embeddings + Qwen 2026-04-28 02:21:49 +02:00
match_claims.py #16/#17 match_answers.py und match_claims.py: Cross-Episode-Matching via Embeddings + Qwen 2026-04-28 02:21:49 +02:00
match_quotes.py Initial commit: podcast-mindmap tool 2026-04-20 01:25:42 +02:00
pipeline.py Initial commit: podcast-mindmap tool 2026-04-20 01:25:42 +02:00
rerun_errors.py #13/#18 Robuster JSON-Parser + --rerun-errors-Modus 2026-04-28 00:30:45 +02:00
run_all_qwen.sh #12 Wort-Highlighting Frontend, #14 Leerstellen-Detektor, #15 Narrative Shift, 2026-04-23 22:29:41 +02:00
transcribe_words.py #8 Multi-Podcast-Dashboard, #9 PWA, #10 Cross-Podcast-Links, #12 Wort-Timestamps 2026-04-23 20:53:06 +02:00