Indra AI is a Retrieval-Augmented Generation (RAG) chatbot that allows users to:
- Ask natural language questions
- Upload PDF/Text files for context
- Retrieve Wikipedia summaries
- Get accurate answers using OpenAI embeddings + vector search
Built with Streamlit UI, Qdrant Vector DB, and OpenAI embeddings.
- RAG-based question answering
- PDF/Text document support
- Wikipedia knowledge fetching
- Vector search using Qdrant/FAISS
- Clean Streamlit interface
- Secure
.envAPI key handling
Indra_AI/
│── rag_backend/
│ ├── app.py
│ ├── main.py
│ ├── embedder.py
│ ├── generator.py
│ ├── evaluation.py
│ ├── pdf_loader.py
│ ├── vector.py
│ ├── wikipedia_loader.py
│ ├── requirements.txt
│
├── .env.example
├── .gitignore
├── README.md
git clone https://github.com/arshdeepsarsh/Indra_AI.git
cd Indra_AIpython -m venv venvActivate:
Windows
venv\Scripts\activateMac/Linux
source venv/bin/activatepip install -r rag_backend/requirements.txtCreate a .env file:
OPENAI_API_KEY=your_api_key_here
(Or copy from .env.example)
streamlit run rag_backend/app.pypython rag_backend/main.pyUser Query / Document Upload
↓
Text Chunking
↓
Embedding Generation (OpenAI)
↓
Vector Storage (Qdrant / FAISS)
↓
Similarity Search
↓
Response Generation
- Chat history
- Qwen/Gemini model support
- Voice input
- Deployment on Streamlit Cloud
- Multi-document support
Pull requests are welcome.
Please open an issue to discuss new features or improvements.
MIT License
If you find this project useful, consider giving it a ⭐ on GitHub!