Skip to content

This is the GeoChatBot, created for the hackathon organized by Mineral Exploration and Consultancy Limited (MECL).

License

Notifications You must be signed in to change notification settings

Mr-PratikTikhe/geochatbot

Repository files navigation

GeoChatBot and Anomaly Map Generator

This is the GeoChatBot, created for the hackathon organized by Mineral Exploration and Consultancy Limited (MECL). The project includes a Streamlit application that features two main functionalities:

  1. GeoChatBot: An interactive chatbot to answer questions related to geological documents.
  2. Anomaly Map Generator: A tool to generate interpolated anomaly maps using IDW (Inverse Distance Weighting) and Kriging methods for various elements.

Features

GeoChatBot 🤖

  • Utilizes LangChain , LLaMA 2 7B and CTransformers for natural language processing and document retrieval.
  • Provides answers based on geological documents in PDF format.
  • Maintains a conversation history for better context understanding.

![GeoChatBot Screenshot] Screenshot 2024-06-27 192245 Screenshot 2024-06-27 193045

Anomaly Map Generator 🗺️

  • Generates interpolated maps for geological elements using IDW and Kriging methods.
  • Allows users to zoom, pan, and draw on the maps to explore anomalies in detail.
  • Measures distance between selected points on the map.

![Anomaly Map Generator Screenshot]Screenshot 2024-06-27 193118

  • By IDW method. Screenshot 2024-06-27 193148

  • By Kriging method. Screenshot 2024-06-27 193205

  • Lots of features are there. Screenshot 2024-06-27 193315

Installation

To run this application locally, follow these steps:

  1. Clone the repository:

    git clone https://github.com/your-username/your-repository.git
    cd your-repository
  2. Create a virtual environment (optional but recommended):

    python -m venv venv
    source venv/bin/activate  # On Windows use `venv\Scripts\activate`
  3. Install the required dependencies:

    pip install -r requirements.txt

Usage

  1. Prepare your data:

    • Place your geological PDF documents in the data/ directory.
    • Ensure you have a CSV file with your data for generating anomaly maps (e.g., Analytical_value_55K03.csv).
  2. Run the Streamlit application:

    streamlit run mian.py
  3. Navigate the application:

    • Use the sidebar to switch between the GeoChatBot and the Anomaly Map Generator.
    • For the GeoChatBot, type your questions and get answers based on the loaded documents.
    • For the Anomaly Map Generator, enter the name of the element you want to analyze and explore the generated maps.

Dependencies

The required dependencies for this project are listed in the requirements.txt file:

streamlit==1.23.1
streamlit-chat==0.0.2
langchain==0.0.138
langchain_community==0.0.12
numpy==1.23.3
pandas==1.5.2
folium==0.13.0
scikit-learn==1.1.3
scipy==1.9.3
streamlit-folium==0.10.0
branca==0.5.0
matplotlib==3.6.2
base64==1.0.0