sreevidya16's picture
Upload 8 files
981bfd0 verified
|
raw
history blame
4.24 kB

VideoChad🗿 : RAG based Youtube Video Conversational Chat-Bot 📤📺

Got Bored watching Long Youtube Videos ? Here's a Full Stack App that

  • Generates Smart Summary
  • Provides BackLinks (Reference) to the Video (No hallucination)
  • 🗣 (ChatBot) Enables you to have Conversation with Video 🗣
  • 🧠Generates MindMap 🧠

Demo

Thumbnail

Features

  • Automated Video Summarization: The application generates concise summaries of video content, allowing users to grasp key concepts efficiently and identify areas requiring deeper focus.
  • Real-time Chat Interaction: Users can engage in conversation with the video content, fostering a deeper understanding of the subject matter by asking questions and receiving instant responses.
  • Video Backlinking: The application incorporates a backlinking feature that enables users to seek relevant timestamps in the video player by clicking on provided reference links.
  • MindMap: Generates a interactive mindmap using the important keywords from the video content's essence!
  • Transcript Download: Users can download a text file containing the transcript of the processed video for future reference.

Technologies Used

  • Flask: A lightweight Python web framework used for building the backend API.
  • React: A JavaScript library for building the user interface on the frontend.
  • Large Language Models (LLMs): Specifically, the OpenAI ChatGPT 3.5 (gpt-3.5-turbo) model is employed for generating contextual responses.
  • Retrieval-Augmented Generation (RAG): This approach combines a retriever and a language model, allowing for efficient retrieval of relevant information from the video transcript.
  • LangChain: A framework for building applications with large language models, facilitating the integration of the RAG approach.
  • Vector Database (Chroma): A vector database used for storing and efficiently searching the embeddings of the video transcript.
  • OpenAI Embeddings API: Utilized for converting textual data into high-dimensional vector representations.
  • YouTube API: Employed for fetching video transcripts and metadata.

Getting Started

To get started with this application, follow these steps:

  1. Clone the repository:

    git clone https://github.com/foolmalhar/VideoChad.git
    
  2. Install the required dependencies:

    cd VideoChad
    pip install -r requirements.txt
    
  3. Set up the necessary environment variables:

  4. Start the Flask backend:

    python app.py
    
  5. In a separate terminal, start the React frontend: (optional)

    cd VideoChad
    npm install
    npm run dev
    
  6. Access the application in your web browser at http://localhost:5000. ( if you don't use static pre-built files and are running node on the VideoChad frontend, then port might be :3000, check terminal )

Usage

  1. Enter a valid YouTube video link in the provided input field. (Link must have English Transcript available on Youtube )
  2. The application will fetch the video transcript and generate a summary.
  3. Interact with the video content by asking questions in the chat interface.
  4. Click on the provided reference links to seek relevant timestamps in the video player.
  5. explore !

Contributing

Contributions to this project are welcome! If you encounter any issues or have suggestions for improvements, please open an issue or submit a pull request.

License

This project is licensed under the MIT License.

Acknowledgments