Talk to NRDS: Building an LLM Chat for TethysDash to Explore the NextGen Research Data Stream
Day 3 Session 2 (1:30PM)
Presenters:
Giovanni Romero (Aquaveo)
Nathan Swain (Aquaveo)
Corey Krewson (Aquaveo)
Dan Ames (BYU)
Arpita Patel (AWI)
This workshop will immerse participants in using TethysDash to explore NextGen Research Data Stream (NRDS) forecasts through a local LLM chat experience. Instead of navigating complex folder structures and filenames, attendees will “talk to the data” using an Ollama-powered chatbox that converts prompts such as: “Show me streamflow for VPU_01 on the latest short-range run” into actionable dashboard updates.
A polished HydroFabric visualization panel (MapLibre + deck.gl) and the AI model chat UI (Ollama) will be prebuilt prior to the workshop. Participants will focus on building an AI-driven plugin for TethysDash with two core capabilities:
- Querying NetCDF time series for a user-selected stream or catchment and variable from NRDS outputs stored in the public S3 bucket
ciroh-community-ngen-datastream - Enabling hydrofabric switching directly from natural-language prompts (e.g., selecting hydrofabric version/VPU and corresponding run paths)
All components will run locally using Docker, Docker Compose, and Dev Containers. Participants will validate the full workflow from prompt → hydrofabric/run selection → click-to-timeseries visualization.
Workshop materials and code will be shared in advance via HydroShare.
Learning Outcomes:
- Understand how TethysDash discovers and loads plugins, and how to develop, package, and register a custom plugin panel for deployment in a Tethys Portal environment
- Understand the NRDS S3 organization structure (model / hydrofabric / date / forecast_type / cycle / member / VPU)
- and how hydrofabric selection affects run paths and available NetCDF outputs
- Translate natural-language prompts into structured requests that drive data selection and dashboard updates
- Integrate a local LLM chatbox (using any AI model such as Ollama) to support common user intents and produce structured inputs for the plugin
- Implement and validate two backend capabilities:
- NetCDF time series retrieval
- Hydrofabric switching based on structured requests
Learning Outcomes:
- Understand how TethysDash discovers and loads plugins, and how to develop, package, and register a custom plugin panel for deployment in a Tethys Portal environment
- Understand the NRDS S3 organization structure (model / hydrofabric / date / forecast_type / cycle / member / VPU)
- and how hydrofabric selection affects run paths and available NetCDF outputs
- Translate natural-language prompts into structured requests that drive data selection and dashboard updates
- Integrate a local LLM chatbox (using any AI model such as Ollama) to support common user intents and produce structured inputs for the plugin
- Implement and validate two backend capabilities:
- NetCDF time series retrieval
- Hydrofabric switching based on structured requests
Additional Notes:
The TethysDash materials—including the hydrofabric plugin scaffolding (MapLibre + deck.gl visualization panel), and the Ollama-powered chatbox UI—will be developed and tested before the conference, so the workshop can focus on the most reusable and transferable coding tasks inside the TethysDash plugin integration: implementing the backend logic that (a) queries NetCDF timeseries for a user-selected stream/catchment and variable, and (b) enables hydrofabric switching from natural-language prompts (e.g., selecting the hydrofabric for a particular VPU).
Attendees will leave with a working TethysDash plugin template that adds an LLM-driven “chat-to-data” workflow to dashboards, plus a reference integration demonstrating how prompts can drive interactive NRDS visualization (prompt → hydrofabric/run selection → click-to-timeseries).