Weather data adapters for DFM
Project description
nv-dfm-lib-weather
Weather and climate data adapters for NVIDIA Data Federation Mesh (DFM).
What is DFM?
Data Federation Mesh (DFM) is a Python-based framework for creating and orchestrating complex workflows that process data from various distributed sources and stream results into applications. DFM determines where to run each operation of a data processing pipeline and handles data movement between sites automatically.
Experimental: This library is provided as a collection of examples and starting points for building your own adapters. Before any production use, review and extensively test all adapters in your target environment.
Overview
nv-dfm-lib-weather provides pre-built adapters for weather and climate data sources, AI models, and xarray processing:
| Category | Adapters |
|---|---|
| Data Loaders | GFS, ECMWF ERA5, HRRR, CMIP6 |
| Xarray | VariableNorm, ConvertToUint8, RenderUint8ToImages, caching |
| AI Models | SFNO (Spherical Fourier Neural Operator), cBottle (Climate in a Bottle) |
Installation
pip install nv-dfm-lib-weather
Or with uv in the monorepo:
uv sync --package nv-dfm-lib-weather
Note: This package depends on
earth2studio, which may require additional dependencies depending on your environment. See the Weather Data Library section of the installation guide for details.
Optional Extras
| Extra | Description |
|---|---|
cbottle |
cBottle (Climate in a Bottle) model adapters (video, TC guidance, super-resolution, infilling, data gen) |
sfno |
Spherical Fourier Neural Operator for weather prediction |
all |
All optional AI model dependencies |
uv sync --package nv-dfm-lib-weather --extra sfno
uv sync --package nv-dfm-lib-weather --extra cbottle
GPU Prerequisites for AI Model Adapters
The SFNO and cBottle adapters perform GPU-accelerated AI inference. Before installing these extras, ensure you have:
- NVIDIA GPU with compute capability ≥ 8.9 and ≥ 40 GB GPU memory. See CUDA GPUs.
- NVIDIA GPU Drivers — see the Driver Installation Guide.
- CUDA Toolkit 12.8 (tested) — see CUDA Downloads.
- PyTorch with CUDA support matching your toolkit version — see pytorch.org. Example:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu128
- Earth2Studio 0.10.0 — installed automatically as a dependency. See the Earth2Studio docs for model-specific setup details.
Note: The
cbottleandsfnoextras depend on packages (cbottle,earth2grid,makani) that are not published on PyPI. When installing from source withuv, these resolve automatically via workspace git sources. When installing the published wheel viapip, users must install them manually — a clear error message with instructions is shown at runtime if they are missing.
Adapters
Data Loaders
| Adapter | Description |
|---|---|
LoadGfsEra5Data |
GFS data via Earth2Studio (AWS backend) |
LoadEcmwfEra5Data |
ECMWF ERA5 reanalysis data |
LoadHrrrEra5Data |
HRRR high-resolution data |
LoadCmip6Data |
CMIP6 climate model data |
Xarray Processing
| Adapter | Description |
|---|---|
VariableNorm |
Normalize xarray variables |
ConvertToUint8 |
Convert to uint8 for visualization |
RenderUint8ToImages |
Render datasets to PNG textures |
AI Models (optional extras)
| Adapter | Description |
|---|---|
SfnoPrognostic |
Spherical Fourier Neural Operator for weather prediction |
CbottleVideo |
video prognostic Climate in a Bottle |
CbottleInfilling |
Climate in a bottle infill diagnostic |
CbottleSuperResolution |
cBottle super-resolution |
CBottleTropicalCycloneGuidance |
cBottle tropical cyclone guidance diagnostic |
CbottleDataGen |
CBottle3D synthetic climate data generator |
DFM Ecosystem
| Package | Description |
|---|---|
nv-dfm-core |
Core framework — Pipeline API, execution engine, code generation, and CLI |
nv-dfm-lib-common |
Shared schemas and utilities used across adapter libraries |
Dependencies
nv-dfm-core– Core DFM frameworknv-dfm-lib-common– Shared schemas (GeoJsonFile, TextureFile, etc.)earth2studio[data]– Data loaders (GFS, ECMWF, HRRR, CMIP6)xarray,netCDF4,rioxarray– Data handling
Documentation
- DFM Documentation
- Weather Tutorial – pipelines and adapters for weather data
- Tutorials
License
Apache License 2.0. See the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nv_dfm_lib_weather-3.1.31-py3-none-any.whl.
File metadata
- Download URL: nv_dfm_lib_weather-3.1.31-py3-none-any.whl
- Upload date:
- Size: 94.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c697e01fd9486272b11461634c38fc066bf63073146d2455d4aa407c339b81cd
|
|
| MD5 |
c23568f50c56ae3b5d98fe9d5dc98420
|
|
| BLAKE2b-256 |
7cbc6e68de3de391f3e58b652d05a03480029aeb868e63355f603c27a81e4d58
|