Skip to content

Project submission for Uplimit course on creating AI products with OpenAI

License

Notifications You must be signed in to change notification settings

KalleV/corise-podcast-frontend-app

Repository files navigation

Corise Podcast Frontend App

Overview

Corise Podcast Frontend App is a podcast feed parser application built using Streamlit, Python 3, Modal, and LLMs like GPT and Whisper. It is designed to parse RSS and summarize podcast episodes from https://www.listennotes.com/.

Features

  • Parses RSS feeds and summarizes podcast episodes
  • Retrieves podcast guest information using OpenAI and Google's Programmable Search Engine API

Technologies Used

  • Streamlit
  • Python 3
  • Modal
  • LLMs (GPT and Whisper)
  • OpenAI
  • Google Programmable Search Engine API

Installation & Deployment

Backend

  1. Clone the repository
  2. Set up a new account on Modal
  3. Follow the set up steps in Modal Home to install the modal-client and create a set of tokens
  4. Create 3 secrets on Modal to run the Podcast Backend:
Secret Name Environment Variable Name Description
my-openai-secret OPENAI_API_KEY An OpenAI API key with access to gpt-3.5-turbo-16k from OpenAI Platform
google-custom-search-api-key GOOGLE_CUSTOM_SEARCH_API_KEY A programmable Google Search API key. Follow the instructions at https://developers.google.com/custom-search/v1/introduction to set it up.
google-custom-search-engine-id GOOGLE_CSE_ID This must have a value assigned to the Search Engine ID project. Follow the instructions at https://developers.google.com/custom-search/v1/introduction to set it up.
  1. Deploy the backend to Modal using modal deploy ./podcast_backend.py

Frontend

  1. Go to https://share.streamlit.io/ and set up a new account
  2. Login, then go to the Share Apps page to deploy a new application. Provide the following options:

Usage

  1. Enter an RSS feed URL in the input box
  2. Click on the "Summarize" button to generate a summary of the podcast episode
  3. The app will also display information about the podcast guests

Modal Remote Function calls

Deploy backend to Modal

modal deploy ./podcast_backend.py

Running commands on Modal

Note: the /content/podcast/ is a path inside the image rather than local

modal run ./podcast_backend.py --url https://access.acast.com/rss/d556eb54-6160-4c85-95f4-47d9f5216c49 --path /content/podcast/

Download a transcription using a remote Modal function

python3 transcribe_podcast.py

Fetch podcast guest information using remote Modal function

python3 get_podcast_guest.py

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Project submission for Uplimit course on creating AI products with OpenAI

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages