This project provides a user-friendly web application for generating concise summaries of YouTube videos. It harnesses the power of LangChain and Google's Palm LLM to understand and condense video content.
- Simple Interface: Enter a YouTube video URL and click "Summarize" for a quick summary.
- Efficient Summarization: Leverages LangChain and advanced language models for effective text summarization.
- Streamlit Integration: Creates an easy-to-use web interface with Streamlit.
-
Prerequisites:
- A Google Cloud Platform Account with a project and an API Key. See instructions here: https://cloud.google.com/docs/authentication/getting-started
- Python 3.7+ and required libraries:
streamlit
,langchain
,youtube_transcript_api
,dotenv
. Install these withpip install -r requirements.txt
-
Environment Variables:
- Create a
.env
file in the project's root directory. - Add a variable named
GOOGLE_API_KEY
and set its value to your Google API Key.
- Create a
-
Run the Streamlit App:
- From your terminal, navigate to the project directory.
- Execute
streamlit run main.py
- main.py: Contains the Streamlit application code for the user interface and logic.
- langchain_helper.py: Houses the functions for loading the YouTube transcript, text splitting, and summary generation via LangChain.
- .env: Stores your sensitive Google API key.
- requirements.txt: Lists project dependencies.
- The Google Palm LLM is currently in a research preview, so access to the API might be limited. Be sure to follow Google's guidelines.
We welcome contributions to improve this project! Feel free to open issues or submit pull requests.