OncoBot is an AI-powered, empathetic oncology-focused medical assistant that allows users to:
- 💬 Ask cancer-related questions in natural language
- 📄 Upload medical documents for intelligent summarization
- 🎤 Use voice input for hands-free interaction
- 🔍 Get answers grounded in uploaded medical knowledge
Built with LangChain, Groq LLM, FAISS, and Gradio, OncoBot combines retrieval-based question answering with a friendly conversational interface.
- Context-aware responses using Retrieval-Augmented Generation (RAG)
- Empathetic and professional tone
- Memory of recent conversation (last 10 interactions)
Upload and process:
- 📝 DOCX
- 📃 TXT
- 🌐 HTML
- 🖼️ Images (PNG / JPG / JPEG with OCR)
- Automatic document loading & deduplication
- Intelligent chunking and cleaning
- Vector embeddings using HuggingFace sentence transformers
- FAISS-based similarity search
- Upload a document and receive a clear, easy-to-understand summary
- Optimized for non-technical users
- Ask questions using your voice
- Speech-to-text powered by Google Speech Recognition
- Dark blue medical-themed interface
- Animated chatbot bubbles
- Responsive Gradio layout
- User Input (Text / Voice / File)
- ↓
- Document Loader / Speech Recognition
- ↓
- Text Cleaning & Chunking
- ↓
- Embedding Generation (HuggingFace)
- ↓
- FAISS Vector Store
- ↓
- Groq LLM (LLaMA 3.1)
- ↓
- Gradio Chat Interface
| Category | Tools |
|---|---|
| Language | Python |
| LLM | Groq (LLaMA 3.1) |
| Framework | LangChain |
| Vector Store | FAISS |
| Embeddings | sentence-transformers |
| UI | Gradio |
| OCR | Tesseract |
| Speech | SpeechRecognition |
| Frontend Styling | Custom CSS |
- OncoBot/
- │
- ├── Data/ # Medical documents for indexing
- ├── vector_index/ # FAISS vector database
- ├── bot1.png # OncoBot logo
- ├── project.ipynb # Main application code
- ├── README.md # Project documentation
- ├── requirements.txt # Dependencies
- └── .gitignore # Ignored files
🧪 Example Capabilities
- “What are the types of leukemia?”
- “Explain chemotherapy in simple words”
- Upload a pathology report and get a summary
- Ask medical questions using your voice
OncoBot is not a replacement for professional medical advice. It is intended for educational and informational purposes only.
Always consult a qualified healthcare professional.
- Developed by: Sehar T.
- Assistant Name: OncoBot
- Specialization: Oncology-focused AI assistant
- User authentication
- Multi-language support
- PDF highlight-based answers
- Cloud deployment
- Explainable AI visualizations