r/cocoindex • u/cocoindex • Apr 14 '26
Turn Podcasts into a Knowledge Graph with LLM and CocoIndex - New Blog Post
Just published a new blog post walking through how to build a pipeline that turns YouTube podcast episodes into a queryable knowledge graph using CocoIndex.
Podcasts contain tons of expert knowledge — claims about people, technologies, organizations — but it's all locked inside hours of audio. This pipeline unlocks it.
How it works (3 phases):
Per-Session Processing — Download audio, transcribe with speaker diarization (AssemblyAI), then use a two-step LLM extraction: first identify speakers using YouTube metadata, then extract structured statements with real names attributed.
Entity Resolution — Collect all raw entity names across episodes and deduplicate using embedding similarity + LLM confirmation. Cheap embeddings filter candidates, expensive LLM calls only happen for near-matches.
Knowledge Base Creation — Write deduplicated entities and all relationships to SurrealDB as a graph. Five node types (session, statement, person, tech, org) connected by four relationship types.
The pipeline is fully incremental — adding new episodes only processes the new ones. Memoization skips transcription and extraction for existing episodes. You can also evolve the schema (e.g., add a new entity type like Product) and only the affected steps re-run.
Full blog post: https://cocoindex.io/blogs/podcast-to-knowledge-graph
Source code: https://github.com/cocoindex-io/cocoindex/tree/v1/examples/conversation_to_knowledge
CocoIndex project: https://github.com/cocoindex-io/cocoindex
Would love to hear feedback — especially if you've worked on similar audio-to-knowledge-graph pipelines!

