Home About Projects Writing Notes Adventures Books Say Hello
All Projects
◇ Experiment

Fully Local AI Podcast

A two-host AI podcast generated end to end on my own machine. No cloud voice, no per-minute bill. This page is the running build log.

VibeVoiceDia2KokoroPyTorchuvRTX 5090Claude Code

I've wanted my own podcast for a while, but I didn't want to rent a voice. So I'm building a fully local text-to-speech pipeline for it on the PC I put together for exactly this kind of work. This page is the build log. Each part gets added here as it happens, and I'll keep the earlier parts intact so the mistakes stay visible.

The goal

A roughly 30 minute, two-host English podcast about AI, produced entirely on hardware I own. No cloud TTS, no per-minute bill, no terms of service deciding what my show can say. My priorities, in order: it has to sound human, it has to be repeatable, and it has to be easy to tinker with. GPU efficiency is deliberately not on the list.

Part 1: research and the test plan

September 13, 2026. Before installing anything, I picked the candidate models, pinned their versions and weight hashes, and wrote the scoring sheet I'd judge them by. I planned it by running Claude Fable 5.1 and GPT-5.6 Sol on the same brief and feeding their work back into each other until they agreed. The full write-up, including the four reproducibility bugs the cross-review caught before I ran a single command, is on X: I Made Two AIs Argue Before I Installed a Single TTS Model.

The machine

RTX 5090 with 32 GB of VRAM, Ryzen 9 7950X, 64 GB DDR5, 2 TB NVMe, Windows 11 Pro. Native Windows, no WSL, which turned out to be a real constraint on which models were even candidates.

What I'm testing

Reference voices for the two hosts are synthetic, generated with Kokoro-82M as a neutral third model. I'm intentionally not cloning a real person.

How I'll score it

Transcript accuracy with openai-whisper and jiwer, speaker consistency with WavLM-SV, and automated checks for repetition, dropped lines, and abnormal silence. Weights: seconds until it sounds like AI (30%), naturalness (25%), dialogue flow (15%), speaker consistency (15%), artifacts (10%), word error rate (5%), plus hard failure gates. Blind A/B listening is the tiebreaker. Raw and mastered audio are scored separately, and mastering is gain-only loudness normalization so it can't hide anything.

How I planned it

Two models, one brief. Fable 5.1 was the better scout: it found models that fit the use case, surfaced the licensing issue, and pushed for verifying weight hashes before trusting a mirror. GPT-5.6 Sol was the better systems engineer: environment separation, smoke tests, the QC chain, the benchmark structure. Then Fable turned GPT's plan into staged runs with explicit stop points, and GPT became a picky code reviewer once it had something concrete to review. Nothing executes until I've signed off on the previous stage.

Where Part 1 ends

Nothing installed yet. Research approved, install plan reviewed through five revisions, moving to execution. Next: machine audit, install, smoke-test both models, a 5 to 7 minute benchmark, blind listening.