Climate Foresight
A chatbot that answers questions about climate change impacts on planned human activities.
https://github.com/clidyn/climsight
Category: Climate Change
Sub Category: Climate Data Access and Visualization
Keywords
ai-for-climate climate-assessments climate-data climate-services large-language-models llm
Keywords from Contributors
ocean-model
Last synced: about 21 hours ago
JSON representation
Repository metadata
A next-generation climate information system that uses large language models (LLMs) alongside high-resolution climate model data, scientific literature, and diverse databases to deliver accurate, localized, and context-aware climate assessments.
- Host: GitHub
- URL: https://github.com/clidyn/climsight
- Owner: CliDyn
- License: bsd-3-clause
- Created: 2023-09-26T10:01:35.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-04-24T15:41:26.000Z (2 days ago)
- Last Synced: 2025-04-25T05:01:48.155Z (2 days ago)
- Topics: ai-for-climate, climate-assessments, climate-data, climate-services, large-language-models, llm
- Language: Python
- Homepage:
- Size: 23.8 MB
- Stars: 36
- Watchers: 4
- Forks: 12
- Open Issues: 17
- Releases: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
README.md
ClimSight
ClimSight is an advanced tool that integrates Large Language Models (LLMs) with climate data to provide localized climate insights for decision-making. ClimSight transforms complex climate data into actionable insights for agriculture, urban planning, disaster management, and policy development.
The target audience includes researchers, providers of climate services, policymakers, agricultural planners, urban developers, and other stakeholders who require detailed climate information to support decision-making. ClimSight is designed to democratize access to climate
data, empowering users with insights relevant to their specific contexts.
ClimSight distinguishes itself through several key advancements:
- Integration of LLMs: ClimSight leverages state-of-the-art LLMs to interpret complex climate-related queries, synthesizing information from diverse data sources.
- Multi-Source Data Integration: Unlike conventional systems that rely solely on structured climate data, ClimSight integrates information from multiple sources.
- Evidence-Based Approach: ClimSight ensures contextually accurate answers by retrieving relevant knowledge from scientific reports, IPCC documents, and geographical databases.
- Modular Architecture: Specialized components handle distinct tasks, such as data retrieval, contextual understanding, and result synthesis, leading to more accurate outputs.
- Real-World Applications: ClimSight is validated through practical examples, such as assessing climate risks for specific agricultural activities and urban planning scenarios.
Installation Options
You can use ClimSight in three ways:
- Run a pre-built Docker container (simplest approach)
- Build and run a Docker container from source
- Install the Python package (via pip or conda/mamba)
Using ClimSight requires an OpenAI API key unless using the skipLLMCall
mode for testing. The API key is only needed when running the application, not during installation.
1. Running with Docker (Pre-built Container)
The simplest way to get started is with our pre-built Docker container:
# Make sure your OpenAI API key is set as an environment variable
export OPENAI_API_KEY="your-api-key-here"
# Pull and run the container
docker pull koldunovn/climsight:stable
docker run -p 8501:8501 -e OPENAI_API_KEY=$OPENAI_API_KEY koldunovn/climsight:stable
Then open http://localhost:8501/
in your browser.
2. Building and Running from Source with Docker
If you prefer to build from the latest source:
# Clone the repository
git clone https://github.com/CliDyn/climsight.git
cd climsight
# Download required data
python download_data.py
# Build and run the container
docker build -t climsight .
docker run -p 8501:8501 -e OPENAI_API_KEY=$OPENAI_API_KEY climsight
Visit http://localhost:8501/
in your browser once the container is running.
For testing without OpenAI API calls:
docker run -p 8501:8501 -e STREAMLIT_ARGS="skipLLMCall" climsight
3. Python Package Installation
Option A: Building from source with conda/mamba
# Clone the repository
git clone https://github.com/CliDyn/climsight.git
cd climsight
# Create and activate the environment
mamba env create -f environment.yml
conda activate climsight
# Download required data
python download_data.py
Option B: Using pip
It's recommended to create a virtual environment to avoid dependency conflicts:
# Option 1: Install from source
git clone https://github.com/CliDyn/climsight.git
cd climsight
# Create and activate a virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install ClimSight
pip install -e .
python download_data.py
Or if you prefer to set up without cloning the repository:
# Option 2: Install from PyPI
# Create and activate a virtual environment
python -m venv climsight_env
source climsight_env/bin/activate # On Windows: climsight_env\Scripts\activate
# Install the package
pip install climsight
# Create a directory for data
mkdir -p climsight
cd climsight
# Download necessary configuration files
wget https://raw.githubusercontent.com/CliDyn/climsight/main/data_sources.yml
wget https://raw.githubusercontent.com/CliDyn/climsight/main/download_data.py
wget https://raw.githubusercontent.com/CliDyn/climsight/main/config.yml
# Download the required data (about 8 GB)
python download_data.py
Configuration
ClimSight will automatically use a config.yml
file from the current directory. You can modify this file to customize settings:
# Key settings you can modify in config.yml:
# - LLM model (gpt-4, ...)
# - Climate data sources
# - RAG database configuration
# - Agent parameters
Running ClimSight
If installed with conda/mamba from source:
# Run from the repository root
streamlit run src/climsight/climsight.py
If installed with pip:
# Make sure you're in the directory with your data and config
climsight
You can optionally set your OpenAI API key as an environment variable:
export OPENAI_API_KEY="your-api-key-here"
Otherwise, you can enter your API key directly in the browser interface when prompted.
Testing without an OpenAI API key:
# From source:
streamlit run src/climsight/climsight.py skipLLMCall
# Or if installed with pip:
climsight skipLLMCall
The application will open in your browser automatically. Just type your climate-related questions and press "Generate" to get insights.
Citation
If you use or refer to ClimSight in your work, please cite:
Koldunov, N., Jung, T. Local climate services for all, courtesy of large language models. Commun Earth Environ 5, 13 (2024). https://doi.org/10.1038/s43247-023-01199-1
Owner metadata
- Name: Climate Dynamics
- Login: CliDyn
- Email:
- Kind: organization
- Description: Climate Dynamics section of AWI
- Website: https://www.awi.de/en/science/climate-sciences/climate-dynamics.html
- Location: Germany
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/168721011?v=4
- Repositories: 1
- Last ynced at: 2024-05-06T14:06:15.448Z
- Profile URL: https://github.com/CliDyn
GitHub Events
Total
- Create event: 37
- Release event: 1
- Issues event: 23
- Watch event: 8
- Delete event: 29
- Member event: 1
- Issue comment event: 21
- Push event: 103
- Pull request review comment event: 1
- Pull request review event: 29
- Pull request event: 74
- Fork event: 3
Last Year
- Create event: 37
- Release event: 1
- Issues event: 23
- Watch event: 8
- Delete event: 29
- Member event: 1
- Issue comment event: 21
- Push event: 103
- Pull request review comment event: 1
- Pull request review event: 29
- Pull request event: 74
- Fork event: 3
Committers metadata
Last synced: 5 days ago
Total Commits: 296
Total Committers: 7
Avg Commits per committer: 42.286
Development Distribution Score (DDS): 0.449
Commits in past year: 228
Committers in past year: 5
Avg Commits per committer in past year: 45.6
Development Distribution Score (DDS) in past year: 0.373
Name | Commits | |
---|---|---|
Ivan Kuznetsov | i****v@g****m | 163 |
AntoniaJost | a****t@w****e | 95 |
Nikolay Koldunov | k****n@g****m | 24 |
dmpantiu | d****a@g****m | 8 |
Boris Shapkin | s****s@g****m | 4 |
Thomas Rackow | t****w@a****e | 1 |
Ismysh | 1****h | 1 |
Committer domains:
- awi.de: 1
Issue and Pull Request metadata
Last synced: 2 days ago
Total issues: 62
Total pull requests: 105
Average time to close issues: 3 months
Average time to close pull requests: 8 days
Total issue authors: 4
Total pull request authors: 8
Average comments per issue: 0.79
Average comments per pull request: 0.34
Merged pull request: 86
Bot issues: 0
Bot pull requests: 0
Past year issues: 32
Past year pull requests: 75
Past year average time to close issues: 4 months
Past year average time to close pull requests: 8 days
Past year issue authors: 3
Past year pull request authors: 6
Past year average comments per issue: 0.75
Past year average comments per pull request: 0.28
Past year merged pull request: 58
Past year bot issues: 0
Past year bot pull requests: 0
Top Issue Authors
- AntoniaJost (24)
- koldunovn (19)
- kuivi (18)
- JanStreffing (1)
Top Pull Request Authors
- kuivi (64)
- AntoniaJost (30)
- koldunovn (5)
- boryasbora (2)
- trackow (1)
- Ismysh (1)
- valentinedwv (1)
- dmpantiu (1)
Top Issue Labels
- enhancement (11)
- warning (4)
- bug (3)
- quick (2)
- invalid (1)
- longterm (1)
- documentation (1)
Top Pull Request Labels
- enhancement (11)
- bug (2)
- documentation (1)
- duplicate (1)
- quick (1)
Package metadata
- Total packages: 1
-
Total downloads:
- pypi: 138 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 3
- Total maintainers: 1
pypi.org: climsight
A tool that combines LLMs with climate data to provide localized insights for decision-making in agriculture, urban planning, disaster management, and policy development.
- Homepage:
- Documentation: https://climsight.readthedocs.io/
- Licenses: BSD-3-Clause
- Latest release: 1.0.0 (published about 2 months ago)
- Last Synced: 2025-04-25T05:02:31.643Z (2 days ago)
- Versions: 3
- Dependent Packages: 0
- Dependent Repositories: 0
- Downloads: 138 Last month
-
Rankings:
- Dependent packages count: 9.563%
- Average: 36.328%
- Dependent repos count: 63.094%
- Maintainers (1)
Dependencies
- mambaorg/micromamba latest build
- actions/checkout v4 composite
- actions/setup-python v4 composite
- dask *
- folium *
- geopandas *
- geopy *
- langchain *
- matplotlib *
- netcdf4 *
- openai ==1.5.0
- pandas *
- pip *
- pyproj *
- requests *
- streamlit *
- streamlit-folium *
- xarray *
- actions/checkout v4 composite
- actions/setup-python v4 composite
- dask
- folium
- geopandas
- geopy
- langchain
- matplotlib
- netcdf4
- pandas
- pip
- pyproj
- python 3.10.*
- requests
- streamlit
- streamlit-folium
- xarray
- sphinx ==7.1.2
- sphinx-rtd-theme ==1.3.0rc1
Score: 10.850675995738127