INDRA2.0 is an AI-powered expert system designed to assist in hydrological modeling workflows. It integrates with CONFLUENCE (Community Optimization and Numerical Framework for Large-domain Understanding of Environmental Networks and Computational Exploration) to provide intelligent model configuration, analysis, and optimization.
- 🤖 AI-powered modeling expertise using Claude-3
- 🌊 Hydrological model configuration assistance
- 📊 Intelligent analysis of model configurations and results
- 🔄 Seamless integration with CONFLUENCE
- 💡 Dynamic expert consultation system
- 📝 Natural language processing of modeling requirements
- Python 3.8 or higher
- CONFLUENCE installed and configured
- Anthropic API key for Claude-3
- Clone the repository:
git clone https://github.com/DarriEy/INDRA2.0.git
cd INDRA2.0- Create and activate a virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install dependencies:
pip install -r requirements.txt- Set up your Anthropic API key:
export ANTHROPIC_API_KEY='your-api-key-here'- Basic usage with command line:
python INDRA.py --purpose "Please model streamflow in the Bow river at Banff"- Analyze existing configuration:
python INDRA.py --purpose "Your modeling purpose" --config path/to/config.yamlINDRA2.0/
├── INDRA/
│ ├── __init__.py
│ ├── INDRA.py
│ └── utils/
│ ├── expert_system.py
│ ├── config_handler.py
│ ├── purpose_parser.py
│ ├── logging_setup.py
│ └── exceptions.py
└── tests/
└── __init__.py
INDRA2.0 uses an AI-powered expert system to:
- Parse natural language modeling requirements
- Consult with specialized experts (hydrology, data science, etc.)
- Generate or analyze CONFLUENCE configurations
- Execute and monitor CONFLUENCE workflows
- Analyze and report results
INDRA2.0 supports various configuration options:
- Multiple hydrological models (SUMMA, FLASH, GR, FUSE, HYPE, MESH)
- Different domain definition methods
- Various forcing datasets
- Flexible spatial discretization
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
If you use INDRA2.0 in your research, please cite:
@software{indra2_2024,
author = {Eythorsson, Darri},
title = {INDRA2.0: Intelligent Network for Dynamic River Analysis},
year = {2024},
publisher = {GitHub},
url = {https://github.com/DarriEy/INDRA2.0}
}- CONFLUENCE development team
- Anthropic for Claude-3 API
- Contributors and maintainers
For support, please:
- Check the existing issues
- Create a new issue with detailed description
- Contact the maintainers
Planned features include:
- Enhanced AI capabilities
- Additional expert types
- Improved result analysis
- Extended model support
- Main Developer: Darri Eythorsson
- Repository: https://github.com/DarriEy/INDRA2.0