This project is a multi-modal AI chatbot, developed as part of the Infosys Springboard Internship program.
It’s designed to make complex public policy documents accessible and conversational.
The application allows users to upload images of documents, extract the text using Optical Character Recognition (OCR), and ask contextual questions that are answered by a locally-run Large Language Model (LLM).
A responsive and polished Streamlit user interface with:
- Complete conversation history
- Search functionality
- Custom CSS styling for a modern AI chat feel
- Powered by Google’s Gemma model
- Runs locally via Ollama
- Ensures 100% data privacy and offline capability
- Upload JPG or PNG document images
- Uses Tesseract OCR engine to extract and analyze text
- The AI understands and answers follow-up questions
- Robust context-handling system maintains conversation flow
- UI fully customized using CSS
- Mimics the design of top-tier modern AI chat interfaces
Make sure you have the following installed:
- Ollama — Local LLM runner
- Tesseract OCR — Add it to your system PATH
- Python 3.8+ — Recommended version
Clone the repository:
git clone [https://github.com/Venuu07/policy-nav-chatbot.git](https://github.com/Venuu07/policy-nav-chatbot.git)
Navigate to the project directory:
cd policy-nav-chatbotCreate a virtual environment and activate it (for Windows):
python -m venv venv
.\venv\Scripts\activateInstall the required Python packages:
pip install -r requirements.txtPull the necessary Ollama model:
pip install -r requirements.txtEnsure the Ollama application is running in the background (check your system tray for the icon).
Run the Streamlit app from your terminal:
streamlit run app.py