Installation#
DFM is distributed as a set of Python packages:
Package |
Description |
|---|---|
|
Core framework — Pipeline API, execution engine, code generation, and CLI |
|
Shared schemas and utilities used across adapter libraries |
|
Weather and climate data adapters (ECMWF, GFS, HRRR, SFNO, cBottle) |
nv-dfm-core is the only required package. The adapter libraries are optional and can be installed separately depending on your use case. See Adapter Libraries for more details.
Install From PyPI#
# Install core framework only
pip install nv-dfm-core
# Install weather adapters (includes core and common packages)
pip install nv-dfm-lib-weather
Install From Source Code#
DFM uses uv to manage dependencies.
Tip
If you don’t have uv installed, follow the uv installation instructions.
Prerequisites
On Debian/Ubuntu systems, make sure the following system packages are installed:
sudo apt update && sudo apt install -y curl gcc
Clone the repository:
git clone https://github.com/NVIDIA/data-federation-mesh.git
cd data-federation-mesh
Install all workspace packages:
uv sync --all-packages
Or install a single package:
uv sync --package nv-dfm-core
To run the tutorials, add the tutorials extra:
uv sync --all-packages --extra tutorials
Note
This is a multi-package workspace. Each uv sync invocation reconfigures the virtual environment to match exactly the requested set of packages — syncing for a single package will remove dependencies that are not required by that package. Use --all-packages when you need the full workspace available.
Installing the Weather Data Library#
The nv-dfm-lib-weather package contains adapters for loading and processing weather data from different sources.
This library relies on Earth2Studio and its dependencies.
Experimental
nv-dfm-lib-weather is experimental. It 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.
To install nv-dfm-lib-weather without AI models:
pip install nv-dfm-lib-weather
Or from source:
uv sync --package nv-dfm-lib-weather
Note
This package uses earth2studio, which may require additional setup depending on your environment. See the AI Model Adapters section below for GPU prerequisites and instructions.
AI Model Adapters (SFNO, cBottle)#
The SFNO and cBottle adapters perform GPU-accelerated AI inference and require additional system-level prerequisites and Python packages beyond the base installation.
GPU Prerequisites
The following must be installed and configured before installing the AI model extras:
NVIDIA GPU — A CUDA-capable GPU with compute capability ≥ 8.9 and ≥ 40 GB of GPU memory is recommended. See CUDA GPUs for a list of supported hardware.
NVIDIA GPU Drivers — Install the appropriate driver for your GPU and OS. See the NVIDIA Driver Installation Guide.
CUDA Toolkit — CUDA 12.8 is the tested and recommended version. See CUDA Toolkit Downloads.
PyTorch — Must be installed with CUDA support matching your CUDA toolkit version. See pytorch.org for platform-specific install commands. For example:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu128
Earth2Studio model-specific dependencies — The SFNO and cBottle models require packages that are not available on PyPI and must be installed manually. Follow the per-model installation instructions in the Earth2Studio 0.10.0 Installation Guide:
SFNO: requires
makani(installed from git). See the SFNO section.cBottle: requires
earth2gridandcbottle(installed from git with--no-build-isolation). See the CBottle section.
Earth2Studio 0.10.0 — Installed automatically as a dependency of
nv-dfm-lib-weather. The AI model extras (cbottle,sfno) pull in the corresponding Earth2Studio optional dependencies.
Install the AI model extras:
pip install nv-dfm-lib-weather[cbottle] # cBottle (Climate in a Bottle) model adapters
pip install nv-dfm-lib-weather[sfno] # SFNO (Spherical Fourier Neural Operator) adapters
pip install nv-dfm-lib-weather[all] # all optional AI model dependencies
Or from source:
uv sync --package nv-dfm-lib-weather --extra cbottle
uv sync --package nv-dfm-lib-weather --extra sfno
uv sync --package nv-dfm-lib-weather --extra all
Note
When installing from source with uv, the non-PyPI dependencies (cbottle, earth2grid, makani) are resolved automatically via git sources configured in the workspace — no manual installation of step 5 is needed. The manual step 5 is only required when installing the published wheel via pip.