This repository contains the code of the paper Demonstrating EarthLake: A Model Lake System for Earth Observation Foundation Model Management. The work introduces EarthLake, a model lake system for Earth Observation Foundation Models (EO FMs), enabling users to discover, evaluate, compare, and operationalize EO FMs in a unified workflow.
This work has been done at BIFOLD and TU Berlin by Binger Chen, Haralampos Gavriilidis, Luca Gaedicke, Tacettin Emre Bök, Matthias Boehm, Ziawasch Abedjan, Begüm Demir, and Volker Markl.
If you use this code, please cite our paper given below:
B. Chen, H. Gavriilidis, L. Gaedicke, T. E. Bök, M. Boehm, Z. Abedjan, B. Demir, V. Markl, "Demonstrating EarthLake: A Model Lake System for Earth Observation Foundation Model Management", PVLDB demonstration paper, 2026.
@misc{chen2026earthlake,
title={Demonstrating EarthLake: A Model Lake System for Earth Observation Foundation Model Management},
author={Binger Chen and Haralampos Gavriilidis and Luca Gaedicke and Tacettin Emre Bök and Matthias Boehm and Ziawasch Abedjan and Begüm Demir and Volker Markl},
year={2026},
note={PVLDB demonstration paper},
url={https://github.com/polydbms/earthlake/},
}EarthLake supports end-to-end management of Earth Observation Foundation Models by combining:
- A schema-guided model registry for EO FMs
- Natural-language and SQL-based model discovery
- Integration with REMSA for task-driven model recommendation
- Reproducible benchmarking and model comparison
- Operational inference on new EO imagery
The system enables EO analysts and model developers to manage heterogeneous foundation models, metadata, benchmark configurations, evaluation results, and model artifacts within a unified model lake.
This project uses Docker Compose for containerized setup.
Create the environment configuration file:
cp .env.example .envSet your OpenAI API key in the .env file.
EarthLake is configured through the project environment and Docker Compose setup. The following parameters can be adjusted:
- OpenAI API key
- Runtime profile selection
- Backend and frontend service configuration
- Model registry and metadata paths
- Benchmarking and inference runtime settings
Adjust these parameters according to your local runtime environment and available hardware.
Run EarthLake with the correct profile. Use gpu for CUDA-enabled environments, and cpu otherwise, including CPU and MPS-based setups:
docker compose --profile cpu upFor GPU environments:
docker compose --profile gpu upAfter startup, open the web interface at:
http://localhost:5173EarthLake allows model developers to register new EO foundation models into the model lake.
Model documentation, such as research papers or model cards, can be used to extract structured metadata fields, including:
- Supported EO tasks
- Input data modalities
- Architecture information
- Training details
- Runtime and hardware constraints
The extracted metadata populates the model registry and makes each model searchable and comparable within EarthLake.
EarthLake supports model discovery through both structured and natural-language interfaces.
EarthLake integrates REMSA as its discovery module to retrieve and rank candidate EO FMs. The system returns a top-k list of recommended models together with metadata and explanations for their task compatibility:
The original implementation of REMSA is available at:
https://github.com/be-chen/REMSA.git
EarthLake enables users to benchmark candidate models on their own EO datasets:
The benchmarking workflow supports:
- Model selection from discovery results
- Dataset upload
- Evaluation configuration
- Linear probing
- Fine-tuning
- Performance comparison across candidate models
After evaluation, users can operationalize the selected model directly within EarthLake.
EarthLake loads the validated model configuration and executes inference through a unified runtime interface. Users can upload new satellite imagery and run EO tasks such as classification or segmentation, with prediction results shown in the interface.
Binger Chen https://hu.berlin/binger_chen
For questions, requests and concerns, please contact Binger Chen.
The code in this repository is licensed under the terms specified in the LICENSE file.




