Welcome to the Podcast Summarizer project! This tool allows you to automatically summarize podcast episodes by providing the RSS feed URL of the podcast. The underlying technology involves utilizing various AI models to extract meaningful content from podcast episodes and present them in a summarized form.
Here's a breakdown of what's happening in the demo GIF:
- You open the app and navigate to the main page.
- Find a podcast RSS feed URL from Listen Notes or Castos.
- You input the RSS feed URL of the podcast episode you want to summarize.
- You click the "Process a Podcast Feed" button.
- The app downloads the podcast episode in mp3 format.
- The WhisperX model transcribes the speech to text.
- The ChatGPT 3.5 Turbo model generates a summary.
- 5., 6. and 7. are running using GPU in Modal backend.
- The Streamlit frontend displays the summary, episode details, guest info, and highlights.
Feel free to explore the interface and generate summaries for your favorite podcasts!
- Automated Summarization: Using the power of AI, this project can automatically download podcast episodes, transcribe the speech to text, and generate concise summaries.
- WhisperX for Transcription: The project employs the WhisperX model to convert spoken words in podcast episodes into text.
- ChatGPT 3.5 Turbo for Summarization: The OpenAI ChatGPT 3.5 Turbo model is used to create informative and coherent summaries based on the transcribed text.
- Frontend with Streamlit: The summarized content, along with episode details, guest information, and highlights are presented through an interactive and user-friendly Streamlit frontend.
To run this project locally, follow these steps:
-
Clone the repository:
git clone https://github.com/tekeburak/podcast-summarizer.git cd podcast-summarizer
-
Install the required dependencies using pip:
pip install streamlit modal
-
Deploy backend to Modal:
modal deploy /content/podcast/podcast_backend.py
-
Run the Streamlit app:
streamlit run podcast_frontend.py
- Access the Streamlit frontend by opening a web browser and navigating to http://localhost:8501.
- On the homepage, you'll find an input field where you can paste the RSS feed URL of the podcast you want to summarize.
- Click the "Process a Podcast Feed" button to initiate the summarization process.
- The app will start by downloading the podcast episode in mp3 format and then use the WhisperX model to transcribe the speech to text.
- Once transcribed, the text data is fed into the ChatGPT 3.5 Turbo model to generate a summary.
- The summary, along with episode details, guest information, and highlights, will be displayed on the Streamlit interface.
- Fork the repository.
- Create a new branch for your feature:
git checkout -b feature-name
. - Implement your feature and make necessary changes.
- Commit and push your changes:
git commit -m "Add feature" && git push origin feature-name
. - Submit a pull request detailing the changes you've made.
This project is licensed under the MIT License.