Earth2Studio Enterprise is the supporting software that includes reference workflows, samples and necessary utilities such as data transforming utilities, wrapper utilities to use Earth-2 NIMs for certain weather and climate forecasting tasks. Earth2Studio Enterprise extends and builds-off the functionality available in Earth2Studio python package.
To launch the Earth-2 Studio Enterprise Container run the following docker command (or some variant thereof)
docker run --rm -it --network=host <container-name>
Exposing the host network is critical if the user is sending requests to a NIM container with a port exposed to the host network.
Once in the Earth2Studio Enterprise Container, documentation and examples are located under /workspace/earth2studio-enterprise/docs
and /workspace/earth2studio-enterprise/examples
respectively.
NIM Containers can be found at the following locations on this NGC org:
nvcr.io/nim/nvidia/fourcastnet:1.0.0
nvcr.io/nim/nvidia/corrdiff:1.0.0
and relevant models for caching can be found at:
Run a deterministic weather prediction using Earth-2 FourCastNet NIM in just a few lines of code:
To launch the NIM container:
docker run --rm --runtime=nvidia --gpus all --shm-size 2g \
-p 8001:8001 \
-e NGC_API_KEY \
-t nvcr.io/nim/nvidia/fourcastnet:1.0.0
from earth2studio.enterprise.nim import NIMClient
from earth2studio.enterprise.nim.px import FourCastNetNIM
from earth2studio.data import GFS
from earth2studio.io import NetCDF4Backend
from earth2studio.run import deterministic as run
client = NIMClient(
url="localhost",
grpc_port="8001"
)
model = FourCastNetNIM(
client,
simulation_length = 10,
)
ds = GFS()
io = NetCDF4Backend("output.nc")
run(["2024-01-01"], 10, model, ds, io)
CorrDiff ERA5->HRRR requires a unique data source and run utility, both of which can be found in the downscaling example. The wrappers should operate as any other diagnostic model class defined in earth2studio
from earth2studio.data import prep_data_array
from earth2studio.enterprise.nim.dx import CorrDiffNIM
from earth2studio.enterprise.nim import NIMClient
client_settings = NIMClient(
url="localhost",
http_port="8090",
)
corrdiff = CorrDiffNIM(
client_settings,
number_of_samples=1,
number_of_steps=18,
sampler="euler",
seed=0,
)
x, coords = ... # Get data, see example.
y, c = nim(x, coords)
Please review the Security Scanning tab to view the latest security scan results. For certain open-source vulnerabilities listed in the scan results, NVIDIA provides a response in the form of a Vulnerability Exploitability eXchange (VEX) document. The VEX information can be reviewed and downloaded from the Security Scanning tab.
Visit the NVIDIA AI Enterprise Documentation Hub for release documentation, deployment guides and more.
The NIM container is governed by the NVIDIA AI Product Agreement.
You are responsible for ensuring that your use of NVIDIA AI Foundation Models complies with all applicable laws.