This is a template repository for creating podcast RAG (Retrieval-Augmented Generation) systems.
This template provides a complete, production-ready RAG system specifically designed for podcasts. It includes:
- ✅ Automatic transcription with Whisper
- ✅ Vector-based semantic search with Milvus
- ✅ AI-powered Q&A with GPT-4
- ✅ Modern web interface
- ✅ CLI tools for automation
- ✅ Fully configurable via YAML
This is a TEMPLATE, not a working application. To use it:
- Clone/fork this repository for your specific podcast
- Customize
podcast_config.yamlwith your podcast details - Add your logo to
src/web/static/images/ - Configure your OpenAI API key in
.env - Run the setup script and start building!
chmod +x setup.sh
./setup.shsetup.bat| Aspect | Template (This Repo) | Your Production Use |
|---|---|---|
| Podcast Info | Generic placeholders | Your podcast details |
| Branding | Generic blue theme | Your custom colors/logo |
| Data | Empty databases | Your episodes & transcripts |
| Configuration | Default settings | Tuned for your content |
podcast_config.yaml- Add your podcast information.env- Add your OpenAI API keysrc/web/static/images/podcast_logo.png- Replace with your logo
src/web/templates/*.html- Customize UI layoutsrc/web/static/style.css- Adjust colors and stylingpodcast_config.yaml- Tune search/transcription parameters
- YAML Configuration: All podcast-specific settings in one file
- Environment Variables: Secure API key management
- Modular Structure: Easy to extend and modify
- Conda Environment: Automated dependency management
- Docker Support: Optional containerization
- Web UI for all operations
- CLI for automation and scripting
- Health checks and monitoring
- Episode management
- Conversation history
- Export functionality
- Read the README.md - Comprehensive setup guide
- Check podcast_config.yaml - Configuration reference with comments
- Review .env.example - Environment variable documentation
- Explore examples - See how components work together
Template Repository (Clean) Your Production Repo
├── podcast_config.yaml (template) ├── podcast_config.yaml (customized)
├── .env.example ├── .env (with your API key)
├── src/ (generic code) ├── src/ (same, maybe customized)
├── transcripts/ (empty) ├── transcripts/ (your episodes)
├── data/ (empty) ├── data/ (your database)
└── README.md (template docs) └── README.md (your project docs)
After customizing this template for your podcast:
# Remove template origin
git remote remove origin
# Add your own repository
git remote add origin https://github.com/yourusername/yourpodcast-search.git
# Push your customized version
git push -u origin mainTo use this template for multiple podcasts:
- Clone this template once per podcast
- Each gets its own repository and configuration
- Completely isolated
- Use different branches in one repository
- Each branch has different
podcast_config.yaml - Shared codebase
- One repository, multiple config files
- Different Milvus collections per podcast
- Run multiple instances
This template may receive updates. To update your customized version:
# Add template as upstream remote
git remote add template https://github.com/original/PodcastRAG_Template.git
# Fetch template updates
git fetch template
# Merge updates (resolve conflicts if needed)
git merge template/mainNote: Only update if you need new features. Your customizations won't be overwritten unless there are conflicts.
Before deploying your customized version:
- Updated
podcast_config.yamlwith your podcast info - Created
.envwith your OpenAI API key - Replaced logo image in
src/web/static/images/ - Tested transcription with sample episode
- Tested search and Q&A functionality
- Customized branding colors (optional)
- Updated README.md with your project details (optional)
- Set up production Milvus instance (if deploying to prod)
- Configured web server for production (if deploying to prod)
This template is provided as-is for customization. For issues specific to:
- Template bugs/improvements: Open issue on template repository
- Your customization: Debug in your own repository
- General usage questions: See README.md and configuration files
Happy building! 🚀
Transform this template into your own powerful podcast search system.