π¬ VerbaVista-AI ( πLive Demo )
YouTube Content Synthesizer using Gemini + LangChain + Streamlit

π Transform any YouTube video into structured notes or an interactive chatbot powered by Google Gemini and LangChain.
VidSynth AI is a Generative AI application that automatically fetches a YouTube video transcript, translates it (if needed), and turns it into:
- π§ Structured Notes β AI-generated, topic-wise summaries
- π¬ Interactive Chatbot β Ask questions directly about the video content
Itβs built using LangChain, Google Gemini 2.5 Flash, and Streamlit, enabling seamless text extraction, translation, chunking, and contextual question answering β all in one elegant app.
| Feature | Description |
|---|---|
| π₯ YouTube Transcript Fetching | Automatically extracts video transcripts in multiple languages using YouTubeTranscriptApi. |
| π Multilingual Translation | Uses Gemini LLM to translate transcripts into English while preserving tone and meaning. |
| π§© Chunking & Embeddings | Splits long transcripts and creates embeddings using GoogleGenerativeAIEmbeddings. |
| πΎ Vector Store (RAG) | Stores embeddings in a Chroma vector database for fast, context-based retrieval. |
| ποΈ AI Notes Generator | Creates structured, human-readable notes using LLM prompting. |
| π¬ Chat with Video | Chatbot mode lets users ask natural language questions about any video content. |
| π§ Exponential Backoff Handling | Handles Google API quota limits gracefully with retry logic. |
| Category | Tools / Libraries |
|---|---|
| π‘ LLM | Gemini 2.5 Flash Lite via LangChain |
| π§© Frameworks | LangChain, Streamlit |
| π€ Embeddings | GoogleGenerativeAIEmbeddings |
| ποΈ Vector DB | Chroma |
| ποΈ Transcript Extraction | YouTubeTranscriptApi |
| βοΈ Other Utilities | dotenv, regex, time, google.api_core.exceptions |
git clone https://github.com/SannidhyaDas/VerbaVista-AI.git
cd VerbaVista-AIpip install -r requirements.txtCreate a .env file in the root directory with your Google API Key:
GOOGLE_API_KEY=your_google_api_key_hereπ You can get your key from Google AI Studio
streamlit run app.pyThen open your browser at the link Streamlit provides (usually http://localhost:8501).
πΉ Step 1: Transcript Extraction - Extracts the videoβs transcript (in any supported language) using the YouTubeTranscriptApi.
πΉ Step 2: Translation (Optional) - If the video is not in English, Gemini translates the transcript with cultural and linguistic precision.
πΉ Step 3: Processing Options
- Notes Mode β Extracts key topics and generates structured, concise notes.
- Chat Mode β Creates embeddings, stores them in Chroma DB, and launches a Retrieval-Augmented Generation (RAG) chatbot.
πΉ Step 4: RAG-based Question Answering - When chatting, user queries are matched against the video transcript via embeddings β Gemini answers using only retrieved context.
VerbaVista-AI/
β
βββ assets/ # Streamlit web interface
β βββ appInterface_1.png # Chat with Video example
β βββ appInterface_2.png # Notes from the video example
β βββ VerbaVista-pipeline # working pipeline
β
βββ deployment/ # Streamlit deployment setup
β βββ requirements.txt # Python dependencies
β βββ main.py # Core logic and LLM pipelines
β βββ app.py # Streamlit user interface
β
βββ localhost/ # setup to run app locally
β βββ requirements.txt # Python dependencies
β βββ main.py # Core logic and LLM pipelines
β βββ app.py # Streamlit user interface
β
βββ README.md # Project documentation

