Skip to content

RomitDeokar/ingres-chatbot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

INGRES AI ChatBot - Virtual Assistant for Groundwater Resources

Overview

An AI-driven ChatBot for INGRES (India Ground Water Resource Estimation System) that enables users to easily query groundwater data, access historical assessments, and obtain instant insights through natural language processing.

Architecture Overview

Core Components

  1. Frontend: Streamlit web interface
  2. AI Engine: Ollama API with Llama 3.2 1B model (optimized for speed and efficiency)
  3. Data Layer: SQLite database (prototype) / INGRES API integration
  4. Visualization: Plotly for interactive charts and maps
  5. Translation: Multi-language support
  6. Analytics: Historical trend analysis

Key Features

  • Natural language query processing
  • Real-time groundwater data access
  • Interactive visualizations and maps
  • Multilingual support (Hindi, English, regional languages)
  • Historical data analysis and trends
  • Export functionality
  • Voice-to-text queries
  • Geospatial awareness

Installation

  1. Install dependencies:
pip install -r requirements.txt
  1. Set up Ollama:
# Install Ollama and pull a model
ollama pull llama3.2:1b
  1. Run the application:
streamlit run app.py

Project Structure

ingres-ai-chatbot/
├── app.py                 # Main Streamlit application
├── requirements.txt       # Dependencies
├── config/
│   ├── settings.py       # Configuration settings
│   └── database.py       # Database configuration
├── src/
│   ├── chatbot/
│   │   ├── __init__.py
│   │   ├── ollama_client.py    # Ollama API integration
│   │   ├── query_processor.py  # Natural language processing
│   │   └── response_generator.py # Response formatting
│   ├── data/
│   │   ├── __init__.py
│   │   ├── database_manager.py # Database operations
│   │   ├── data_loader.py     # Sample data loading
│   │   └── models.py          # Data models
│   ├── visualization/
│   │   ├── __init__.py
│   │   ├── charts.py          # Chart generation
│   │   ├── maps.py            # Interactive maps
│   │   └── dashboard.py       # Dashboard components
│   ├── translation/
│   │   ├── __init__.py
│   │   └── translator.py      # Language translation
│   └── utils/
│       ├── __init__.py
│       ├── helpers.py         # Utility functions
│       └── constants.py       # Constants and configurations
├── data/
│   ├── sample_data/
│   │   ├── groundwater_data.csv
│   │   ├── assessment_units.csv
│   │   └── historical_data.csv
│   └── database/
│       └── ingres.db         # SQLite database
├── assets/
│   ├── images/
│   │   └── architecture_diagram.png
│   └── styles/
│       └── custom.css
├── tests/
│   ├── __init__.py
│   ├── test_chatbot.py
│   ├── test_data.py
│   └── test_visualization.py
└── docs/
    ├── architecture.md
    ├── api_documentation.md
    └── user_guide.md

Novel Features

  1. Contextual Geospatial Queries: Understanding location-based queries with map integration
  2. Smart Data Extraction: Extracting insights from complex groundwater datasets
  3. Predictive Analytics: ML-based trend predictions for groundwater levels
  4. Multi-modal Input: Text, voice, and visual query support
  5. Real-time Alerts: Automated notifications for critical groundwater conditions
  6. Interactive Drilling: Deep-dive capabilities into specific regions/time periods
  7. Collaborative Features: Data sharing and annotation capabilities
  8. Mobile-first Design: Responsive interface for field researchers
  9. Integration Ready: APIs for external weather and climate data
  10. Role-based Access: Different interfaces for researchers, policymakers, and public users

About

An AI-powered conversational chatbot built for the Central Ground Water Board (CGWB) that makes India's groundwater assessment data (INGRES) accessible through natural language. Ask questions in any of 11 Indian languages, get instant insights, and explore interactive visualizations — no technical expertise required.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors