Web-App
Muscle Nerds KB
Eine Suche über Podcast-Auftritte von Luke Leaman. Jeder Treffer zeigt das Kapitel aus der Originalfolge, aus dem er stammt.
Ansehen- Status
- Live
- Erster Commit
- 17. September 2026
- Initial Muscle Nerds knowledge base
- Technik
- Rails 8.1, SQLite, sqlite-vec, Solid Queue, RubyLLM, OpenRouter, Kamal
Warum ich das gebaut habe
Luke Leaman von Muscle Nerds war in Dutzenden Podcasts zu Gast. Training, Ernährung, Coaching, Gesundheit. Das Wissen ist über viele Shows und Stunden Audio verteilt. Ich bin YPSI-Trainer mit A-Lizenz, trainiere selbst ernsthaft und wollte nachschlagen können, was Luke zu Cortisol oder Proteinbedarf sagt. Mit der Stelle in der Folge, nicht mit einer Zusammenfassung aus dem Nichts.
Die Muscle Nerds KB ist ein eigenes Projekt, kein offizielles Angebot von Muscle Nerds oder Luke Leaman.
Was es macht
- Du stellst eine Frage, die Suche findet passende Stellen aus den Transkripten. Jedes Ergebnis hängt am Originalkapitel der Folge.
- Jede Folge hat Kapitel, ein Transkript mit Sprechernamen und einen Link zur Audioquelle.
- Neue Auftritte werden über Podcast Index und Taddy gefunden. Ein Modell prüft, ob Luke wirklich Gast ist. Best-of-Folgen und Zusammenschnitte fliegen raus.
- Aktuell sind über 80 Folgen mit rund 1.350 Kapiteln öffentlich.
Technische Entscheidungen
Hybride Suche, die ohne Modell weiterläuft. Volltext über SQLite FTS und 1.024-dimensionale Vektoren in sqlite-vec, zusammengeführt per Reciprocal Rank Fusion. Fehlen Schlüssel oder Embeddings, fällt die Suche auf reinen Volltext zurück. Alles liegt in einer SQLite-Datei hinter einer Rails-App.
Sprechertrennung als versionierter Lauf. Fünf-Minuten-Stücke mit fünf Sekunden Überlappung, begrenzte Wiederholungen, neutrale Sprecher-IDs. Veröffentlicht wird erst, wenn jeder Sprecher einen Namen hat, und dann in einem Schritt.
Nur der öffentliche Katalog. Im Bestand liegen mehr Folgen als öffentlich sichtbar sind. Die Einschränkung steckt in jeder öffentlichen Abfrage und in beiden Suchzweigen, nicht nur in der Oberfläche.
Was Geld kostet, muss man ausdrücklich starten. Import und Status sind kostenlos. Embeddings, Entitäten und Sprechertrennung laufen über eigene paid-Befehle mit festem Budget. Alle Modelle gehen über OpenRouter und RubyLLM.
Vieles teilt das Projekt mit AskTNT: longform-transcript für lange Transkriptionen und Kapitelausrichtung, podcast-source-adapters für einheitliche Episodendaten aus RSS, Taddy und Podcast Index.
Aus den Sessions
Gleich am ersten Tag habe ich die Antwortmodelle gegen einen eingefrorenen Benchmark laufen lassen, mit hartem Limit von fünf Dollar. Ausgegeben wurden 22 Cent. Gemini 3.6 Flash kostete pro Antwort etwa 0,0004 Dollar mehr als die Preview-Version, bei gleich guten Belegen. Ich habe trotzdem die stabile Version genommen und das im Repo als bewusste Ausnahme von der eigenen Kostenregel festgehalten.
Am selben Tag flog das offizielle Logo wieder raus. Ich hatte keine Erlaubnis dafür. Seitdem steht im Kopf “Unofficial” und im Footer, dass das Archiv nicht mit Muscle Nerds verbunden ist.