Multi-Podcast: Semantisches Cross-Podcast Topic-Matching #10

Open
opened 2026-04-20 07:56:05 +02:00 by tobias · 0 comments
Owner

Ziel

podcast.toppyr.de soll mehrere Podcasts aufnehmen können. Gleiche Themen sollen über Podcast-Grenzen hinweg gefunden werden — unabhängig von der konkreten Wortwahl.

Konkreter Testfall

  • NEU DENKEN (Maja Göpel, 19 Episoden, fertig)
  • Lage der Nation (Philip Banse + Ulf Buermeyer, Transkripte teilweise vorhanden, ohne Timecodes)

Architektur-Anforderungen

Phase 1: Multi-Podcast Webapp

  • Podcast-Auswahl auf der Startseite
  • Jeder Podcast hat eigene Mindmap + Transkripte
  • Eigenes mindmap_data.json + srt_index.json pro Podcast
  • URL-Routing: podcast.toppyr.de/neu-denken/, podcast.toppyr.de/lage-der-nation/
  • Deployment: Ein Container, mehrere Daten-Verzeichnisse

Phase 2: Shared Topic Taxonomy

  • LLM-basierte Topic-Tags pro Transkript-Absatz
  • Gemeinsames Themen-Vokabular über alle Podcasts
  • Batch-Verarbeitung: Jeder Absatz bekommt 3-5 Tags aus einem Katalog
  • Speicherung als topics.json pro Podcast

Phase 3: Cross-Podcast Matching

  • Vergleichsansicht: Thema auswählen → alle Podcasts zeigen relevante Stellen
  • Combined Mindmap: Themenknoten verlinken Episoden aus verschiedenen Podcasts
  • "Dieses Thema wird auch besprochen in…" als Querverweise

Datenstruktur (Phase 3)

{
  "podcasts": [
    {"id": "neu-denken", "name": "NEU DENKEN", "dataFile": "neu-denken/mindmap_data.json"},
    {"id": "ldn", "name": "Lage der Nation", "dataFile": "ldn/mindmap_data.json"}
  ],
  "shared_topics": [
    {
      "id": "inequality",
      "label": "Ungleichheit & Verteilung",
      "matches": [
        {"podcast": "neu-denken", "episode": "S4E2", "paragraph": 15, "score": 0.92},
        {"podcast": "ldn", "episode": "LdN380", "paragraph": 3, "score": 0.87}
      ]
    }
  ]
}

Offene Fragen

  • Lage der Nation hat Transkripte ohne Timecodes. Audio separat herunterladen + MacWhisper, oder Transkripte ohne Audio nutzen?
  • Taxonomy manuell kuratieren oder automatisch generieren?
  • Embedding-basiert (Vektor-Suche) oder LLM-Tag-basiert?
## Ziel podcast.toppyr.de soll mehrere Podcasts aufnehmen können. Gleiche Themen sollen über Podcast-Grenzen hinweg gefunden werden — unabhängig von der konkreten Wortwahl. ## Konkreter Testfall - **NEU DENKEN** (Maja Göpel, 19 Episoden, fertig) - **Lage der Nation** (Philip Banse + Ulf Buermeyer, Transkripte teilweise vorhanden, ohne Timecodes) ## Architektur-Anforderungen ### Phase 1: Multi-Podcast Webapp - Podcast-Auswahl auf der Startseite - Jeder Podcast hat eigene Mindmap + Transkripte - Eigenes `mindmap_data.json` + `srt_index.json` pro Podcast - URL-Routing: `podcast.toppyr.de/neu-denken/`, `podcast.toppyr.de/lage-der-nation/` - Deployment: Ein Container, mehrere Daten-Verzeichnisse ### Phase 2: Shared Topic Taxonomy - LLM-basierte Topic-Tags pro Transkript-Absatz - Gemeinsames Themen-Vokabular über alle Podcasts - Batch-Verarbeitung: Jeder Absatz bekommt 3-5 Tags aus einem Katalog - Speicherung als `topics.json` pro Podcast ### Phase 3: Cross-Podcast Matching - Vergleichsansicht: Thema auswählen → alle Podcasts zeigen relevante Stellen - Combined Mindmap: Themenknoten verlinken Episoden aus verschiedenen Podcasts - "Dieses Thema wird auch besprochen in…" als Querverweise ## Datenstruktur (Phase 3) ```json { "podcasts": [ {"id": "neu-denken", "name": "NEU DENKEN", "dataFile": "neu-denken/mindmap_data.json"}, {"id": "ldn", "name": "Lage der Nation", "dataFile": "ldn/mindmap_data.json"} ], "shared_topics": [ { "id": "inequality", "label": "Ungleichheit & Verteilung", "matches": [ {"podcast": "neu-denken", "episode": "S4E2", "paragraph": 15, "score": 0.92}, {"podcast": "ldn", "episode": "LdN380", "paragraph": 3, "score": 0.87} ] } ] } ``` ## Offene Fragen - Lage der Nation hat Transkripte ohne Timecodes. Audio separat herunterladen + MacWhisper, oder Transkripte ohne Audio nutzen? - Taxonomy manuell kuratieren oder automatisch generieren? - Embedding-basiert (Vektor-Suche) oder LLM-Tag-basiert?
Sign in to join this conversation.
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: tobias/podcast-mindmap#10
No description provided.