NioBot is a multitasking WhatsApp chatbot designed to make your conversations more productive and interactive. It combines YouTube video summarization with real-time information access using a Retrieval-Augmented Generation (RAG) pipeline. NioBot is built with Twilio’s WhatsApp API and leverages a Large Language Model (LLM) with internet access for seamless, intelligent responses.
-
YouTube Video Summarization
Share a YouTube link, and NioBot generates concise and relevant summaries. Perfect for finding key insights without watching the entire video. -
Real-Time Information Retrieval
Ask questions or chat casually—NioBot’s LLM fetches up-to-date information from the internet for accurate responses. -
Chat Modes
- Summary Mode: For video summarization tasks.
- General Chat Mode: For regular conversations and information queries.
- Backend: Python (Flask/FastAPI)
- APIs: Twilio WhatsApp API
- LLM: Integrated with a Perplexity-based model for internet queries
- Video Summarization: RAG pipeline for generating concise insights
- Deployment: Hosted on a cloud server for 24/7 availability
- Twilio account with a WhatsApp Business API setup
- Python 3.8 or higher
- API keys for the LLM and YouTube data access
-
Clone the repository:
git clone https://github.com/yourusername/NioBot.git cd NioBot
-
Install dependencies:
pip install -r requirements.txt
-
Add your configuration details in the
.env
file:- Twilio credentials
- LLM API key
- YouTube API key
-
Run the bot:
python main.py
And in a different terminal
ngrok http 4040
-
Connect it to WhatsApp via Twilio's sandbox or production environment.
- Add the bot to your WhatsApp contacts.
- To summarize a YouTube video: Send the video link to the bot.
- For general queries: Just type your question and wait for the response.
- Adding vision capabilities for image-based queries.
- Improving scalability for handling concurrent users.
- Integrating more video platforms for summarization.
Feel free to fork this repository and submit pull requests. Contributions are welcome to make NioBot smarter and more feature-rich!
This project is licensed under the Apache 2.0 License. See the LICENSE file for details.
Have questions or ideas for improvements? Reach out or open an issue!