msresearch-aurora
Aurora — Microsoft's foundation model for the Earth system. Use this skill for both inference (regional weather/climate forecasting, Norway example, ERA5/CDS data, wind/temperature/pressure mapping) and fine-tuning Aurora on new variables, regions, or domains (training, evaluation, checkpoint extension, gradient/loss debugging). Triggers on Aurora, Microsoft Aurora, foundation models for Earth systems, ERA5/CDS/NetCDF weather data, weather forecast validation, and adapting Aurora to new use cases.
- License 许可
- MIT
- 最近更新
- 2026-05-21
- Stars
- ★ 36
- Forks
- 6
01 前言 Front Matter
- name
- msresearch-aurora
- license
- MIT
- description
- Aurora — Microsoft's foundation model for the Earth system. Use this skill for both inference (regional weather/climate forecasting, Norway example, ERA5/CDS data, wind/temperature/pressure mapping) and fine-tuning Aurora on new variables, regions, or domains (training, evaluation, checkpoint extension, gradient/loss debugging). Triggers on Aurora, Microsoft Aurora, foundation models for Earth systems, ERA5/CDS/NetCDF weather data, weather forecast validation, and adapting Aurora to new use cases.
02 资源文件 138
- 其他.dockerignore675 B
- 资产文件assets/finetune/finetune-exploration-demo-app/.gitattributes42 B
- 资产文件assets/finetune/finetune-exploration-demo-app/.gitignore134 B
- 资产文件assets/finetune/finetune-exploration-demo-app/backend/.dockerignore95 B
- 资产文件assets/finetune/finetune-exploration-demo-app/backend/.python-version5 B
- 资产文件assets/finetune/finetune-exploration-demo-app/backend/Dockerfile2.3 KB
- 资产文件assets/finetune/finetune-exploration-demo-app/backend/pyproject.toml616 B
- 资产文件assets/finetune/finetune-exploration-demo-app/backend/README.md3.6 KB
- 脚本assets/finetune/finetune-exploration-demo-app/backend/src/aft_demo_backend/api.py16.9 KB
- 脚本assets/finetune/finetune-exploration-demo-app/backend/src/aft_demo_backend/check_data.py17.2 KB
- 脚本assets/finetune/finetune-exploration-demo-app/backend/src/aft_demo_backend/construct_config_csv.py8.7 KB
- 脚本assets/finetune/finetune-exploration-demo-app/backend/src/aft_demo_backend/execute_prediction_queries.py2.6 KB
- 脚本assets/finetune/finetune-exploration-demo-app/backend/src/aft_demo_backend/execute_validation_queries.py3.4 KB
- 脚本assets/finetune/finetune-exploration-demo-app/backend/src/aft_demo_backend/lmdb_cache.py3.3 KB
- 脚本assets/finetune/finetune-exploration-demo-app/backend/src/aft_demo_backend/run_evaluation.py6.2 KB
- 脚本assets/finetune/finetune-exploration-demo-app/backend/src/aft_demo_backend/run_persistence_eval.py4.0 KB
- 资产文件assets/finetune/finetune-exploration-demo-app/backend/uv.lock633.8 KB
- 资产文件assets/finetune/finetune-exploration-demo-app/docker-compose.yml1.5 KB
- 资产文件assets/finetune/finetune-exploration-demo-app/Dockerfile3.0 KB
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/.dockerignore57 B
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/.env.example342 B
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/.gitignore258 B
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/Dockerfile1009 B
- 脚本assets/finetune/finetune-exploration-demo-app/frontend/eslint.config.js616 B
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/index.html772 B
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/nginx.conf.template1.6 KB
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/package-lock.json232.5 KB
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/package.json875 B
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/public/favicon.svg312 B
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/public/vite.svg1.5 KB
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/README.md2.6 KB
- 脚本assets/finetune/finetune-exploration-demo-app/frontend/run.sh469 B
- 脚本assets/finetune/finetune-exploration-demo-app/frontend/src/api.ts4.5 KB
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/src/App.tsx25.7 KB
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/src/assets/react.svg4.0 KB
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/src/components.tsx16.3 KB
- 脚本assets/finetune/finetune-exploration-demo-app/frontend/src/config.ts142 B
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/src/index.css3.5 KB
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/src/main.tsx230 B
- 脚本assets/finetune/finetune-exploration-demo-app/frontend/src/useTour.ts2.1 KB
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/tsconfig.app.json732 B
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/tsconfig.json119 B
- 资产文件assets/finetune/finetune-exploration-demo-app/frontend/tsconfig.node.json653 B
- 脚本assets/finetune/finetune-exploration-demo-app/frontend/vite.config.ts351 B
- 资产文件assets/finetune/finetune-exploration-demo-app/nginx.conf1.9 KB
- 资产文件assets/finetune/finetune-exploration-demo-app/README.md2.8 KB
- 脚本assets/finetune/finetune-exploration-demo-app/startup.sh800 B
- 资产文件assets/inference/.env.example259 B
- 资产文件assets/inference/.gitignore50 B
- 资产文件assets/inference/norway-example/data/norway_atmospheric.nc6.9 MB
- 资产文件assets/inference/norway-example/data/norway_static.nc80.3 KB
- 资产文件assets/inference/norway-example/data/norway_surface.nc1.4 MB
- 资产文件assets/inference/norway-example/data/NOTICE543 B
- 资产文件assets/inference/norway-example/frontend/.dockerignore74 B
- 资产文件assets/inference/norway-example/frontend/.gitignore178 B
- 资产文件assets/inference/norway-example/frontend/Dockerfile1.2 KB
- 资产文件assets/inference/norway-example/frontend/index.html310 B
- 资产文件assets/inference/norway-example/frontend/nginx.conf.template679 B
- 资产文件assets/inference/norway-example/frontend/package-lock.json115.7 KB
- 资产文件assets/inference/norway-example/frontend/package.json781 B
- 资产文件assets/inference/norway-example/frontend/src/App.tsx17.3 KB
- 资产文件assets/inference/norway-example/frontend/src/components/HeatmapOverlay.tsx6.7 KB
- 脚本assets/inference/norway-example/frontend/src/data/auroraForecast.ts649 B
- 资产文件assets/inference/norway-example/frontend/src/main.tsx479 B
- 资产文件assets/inference/norway-example/frontend/src/styles.css1.4 KB
- 脚本assets/inference/norway-example/frontend/src/utils/colormaps.ts4.4 KB
- 脚本assets/inference/norway-example/frontend/src/utils/gridUtils.ts2.3 KB
- 资产文件assets/inference/norway-example/frontend/tsconfig.app.json354 B
- 资产文件assets/inference/norway-example/frontend/tsconfig.json71 B
- 脚本assets/inference/norway-example/frontend/vite.config.ts313 B
- 资产文件assets/inference/norway-example/README.md4.1 KB
- 脚本assets/inference/norway-example/scripts/build_forecast_module.py7.6 KB
- 资产文件assets/inference/norway-example/scripts/requirements.txt198 B
- 脚本assets/inference/norway-example/scripts/run_aurora_inference.py11.5 KB
- 资产文件assets/inference/paper/2509.25268v1.pdf10.1 MB
- 资产文件assets/inference/paper/s41586-025-09005-y.pdf8.6 MB
- 脚本assets/inference/scripts/aurora_prototype_template.py3.9 KB
- 脚本assets/inference/scripts/check_aurora_dataset.py6.8 KB
- 脚本assets/inference/scripts/check_divergence.py3.3 KB
- 脚本assets/inference/scripts/download_era5_subset.py7.0 KB
- 脚本assets/inference/scripts/quick_verify_netcdf.py1.9 KB
- 资产文件assets/inference/scripts/README.md4.7 KB
- 脚本assets/inference/scripts/setup_region.py9.3 KB
- 脚本assets/inference/scripts/validate_forecast.py4.0 KB
- 脚本assets/inference/scripts/validate_grid.py2.7 KB
- 参考文档docs/about-aurora.md10.1 KB
- 参考文档docs/about-finetune.md7.7 KB
- 参考文档docs/available-models.md13.9 KB
- 参考文档docs/customization-guide.md10.7 KB
- 参考文档docs/finetune-demo.md5.5 KB
- 参考文档docs/finetuning-guide.md9.3 KB
- 参考文档docs/form-of-a-batch.md9.1 KB
- 参考文档docs/inference-basics.md3.6 KB
- 参考文档docs/quick-start-finetune.md9.3 KB
- 参考文档docs/quick-start-inference.md4.1 KB
- 参考文档docs/technical-reference.md10.6 KB
- 参考文档docs/troubleshooting.md12.2 KB
- 脚本initialization/initialize_starter_code.py4.8 KB
- 参考文档README.md3.0 KB
- 其他starter-code/.gitattributes382 B
- 其他starter-code/.gitignore5.2 KB
- 其他starter-code/.python-version5 B
- 其他starter-code/pyproject.toml826 B
- 参考文档starter-code/README.md3.2 KB
- 脚本starter-code/src/vibe_tune_aurora/__init__.py43 B
- 脚本starter-code/src/vibe_tune_aurora/aurora_module.py6.7 KB
- 脚本starter-code/src/vibe_tune_aurora/callbacks.py785 B
- 脚本starter-code/src/vibe_tune_aurora/cli/__init__.py59 B
- 脚本starter-code/src/vibe_tune_aurora/cli/evaluate.py4.4 KB
- 脚本starter-code/src/vibe_tune_aurora/cli/train.py6.6 KB
- 脚本starter-code/src/vibe_tune_aurora/cli/visualize.py8.8 KB
- 脚本starter-code/src/vibe_tune_aurora/custom_types.py232 B
- 脚本starter-code/src/vibe_tune_aurora/data_fetching/__init__.py55 B
- 脚本starter-code/src/vibe_tune_aurora/data_fetching/climate_data_store_fetching.py3.7 KB
- 脚本starter-code/src/vibe_tune_aurora/data_processing/__init__.py54 B
- 脚本starter-code/src/vibe_tune_aurora/data_processing/data_utils.py5.0 KB
- 脚本starter-code/src/vibe_tune_aurora/data_processing/grib_data_processing.py16.7 KB
- 脚本starter-code/src/vibe_tune_aurora/defaults/__init__.py55 B
- 脚本starter-code/src/vibe_tune_aurora/defaults/default_configs.py1.4 KB
- 脚本starter-code/src/vibe_tune_aurora/evaluation.py7.0 KB
- 脚本starter-code/src/vibe_tune_aurora/losses.py4.0 KB
- 脚本starter-code/src/vibe_tune_aurora/model_init.py5.5 KB
- 脚本starter-code/src/vibe_tune_aurora/training.py3.4 KB
- 脚本starter-code/tests/cli/__init__.py38 B
- 脚本starter-code/tests/cli/test_cli_evaluate.py3.6 KB
- 脚本starter-code/tests/cli/test_cli_train.py1.8 KB
- 脚本starter-code/tests/data_fetching/test_climate_data_store_fetching.py1.7 KB
- 脚本starter-code/tests/data_processing/test_extract_data_from_grib.py4.1 KB
- 其他starter-code/tests/inputs/era5_pressure_level_western_usa_jan_1_to_7.grib4.0 MB
- 其他starter-code/tests/inputs/era5_pressure_level_western_usa_jan_8_to_14.grib4.0 MB
- 其他starter-code/tests/inputs/era5_single_level_western_usa_jan_1_to_7.grib1.7 MB
- 其他starter-code/tests/inputs/era5_single_level_western_usa_jan_8_to_14.grib1.7 MB
- 参考文档starter-code/tests/inputs/era5_surface_stats.json697 B
- 其他starter-code/tests/inputs/NOTICE543 B
- 脚本starter-code/tests/test_aurora_module.py464 B
- 脚本starter-code/tests/test_evaluation.py3.6 KB
- 脚本starter-code/tests/test_training.py1.5 KB
- 其他starter-code/uv.lock597.7 KB
03 SKILL.md 正文
Choosing the right path
Before diving in, identify what the user is actually trying to do. Three buckets:
-
"I want to actually use Aurora for my problem" (custom variables, regional adaptation, domain-specific predictions) → fine-tuning path. This is the recommended path for serious applications.
-
"I'm exploring / just curious / want to see Aurora work" → inference path (Norway regional example with frontend visualization). Lower commitment, no GPU required.
- Route: docs/about-aurora.md → docs/quick-start-inference.md → docs/customization-guide.md for adapting to a new region.
-
"Not sure / want to see Aurora in action first" → route by audience:
- Non-technical audience (execs, PMs, general scientists): start with the Norway Prototype (docs/quick-start-inference.md) — visual maps over a real region, intuitive at a glance.
- Weather/climate practitioners (familiar with NWP, ERA5, model evaluation): start with the Finetune Exploration Demo (docs/finetune-demo.md) — interactive divergence metrics and batch comparisons that surface fine-tuning behavior. Once they have a use case in mind, steer them toward the fine-tuning path.
If a user mentions a real problem they want Aurora to solve (custom forecasting, air quality, wave heights, regional energy planning, etc.), check the user for their familiarity/comfort with the Aurora model and finetuning in general. If a user is comfortable, steer them toward fine-tuning Aurora. If they want to learn more about Aurora first, direct them to docs/about-aurora.md. If they're familiar with Aurora and/or weather modeling, but they're new to finetuning, send them to docs/about-finetune.md.
Scope
- Local and Azure-assisted Aurora inference for regional forecasts (Norway example as canonical starting point).
- End-to-end fine-tuning of the base Aurora checkpoint on custom variables, regions, or lead times.
- Data preparation (ERA5/CDS download, validation, batch construction).
- Evaluation, checkpoint selection, training instability debugging.
Prerequisites
- Windows users: run inside a WSL2 distro (Ubuntu recommended) with NVIDIA drivers installed on the Windows host (not inside WSL). The Aurora prototypes and demoes were developed and tested on WSL2/Ubuntu; native Windows Python/PowerShell is not supported. See Microsoft's WSL install guide and NVIDIA's CUDA-on-WSL guide.
- Python 3.11+ with
uvpackage manager torch,lightning,numpy,xarray,microsoft-aurora>=1.5.2- Node.js 18+ with
npm(only for the inference Norway example frontend) - 6 GB free disk space (Aurora checkpoint ~5 GB)
- GPU optional for inference smoke runs; A100-class strongly recommended for serious training. See docs/about-finetune.md for the full hardware matrix.
Workflow
- Decide the path (see "Choosing the right path" above) before touching files.
- Inference path:
- Load docs/about-aurora.md for background if needed.
- Walk through docs/quick-start-inference.md to run the Norway example end-to-end.
- Use docs/customization-guide.md for regional adaptation; docs/technical-reference.md for grid/data/deployment specs.
- Fine-tuning path:
- Run
initialization/initialize_starter_code.pyfirst (use--skip-testsby default). This copiesstarter-code/intoaurora-finetune/at the repo root. - Validate with the smoke test from
aurora-finetune/:uv run pytest tests/test_training.py::test_finetuning_2t_var_pretrained --maxfail=1. - Walk the user through docs/quick-start-finetune.md, then deeper material in docs/finetuning-guide.md, docs/form-of-a-batch.md, and docs/available-models.md.
- Run
- Demo path (exploratory): Route to docs/finetune-demo.md and offer to walk the user through
docker compose up. - Route all errors to docs/troubleshooting.md — it has dedicated inference and fine-tuning sections.
Operational notes
- Terminal hygiene (inference): During the Norway quick-start, the frontend dev server (Step 1) must keep running in its own terminal. Open a new terminal for Steps 2-5 (Python install, inference, build) so you don't kill the dev server.
- Repo-root trap (inference):
npm installandnpm run devmust run fromassets/inference/norway-example/frontend/(or the analogous regional directory). The repo root has a different boilerplate app and will fail with confusing errors. - Install
cdsapiproactively as soon as the user mentions adapting to a new region or downloading ERA5 data:uv pip install cdsapi. Don't wait for an import error mid-workflow. - Secret hygiene: When walking the user through CDS credential setup (
assets/inference/.env.example→.env), instruct them to edit.envlocally. Never accept, display, or commit API keys. - Execute, don't display: When the agent supports terminal execution, run quick-start commands directly via the terminal tool rather than displaying bash blocks for the user to copy. Show bash blocks only when reviewing or when the user explicitly wants to copy commands.
- Fine-tuning quick-start UX: Brief the user before each command, confirm before continuing, and summarize completed vs. next actions.
- When a user starts or completes fine-tuning, surface TensorBoard: Remind them to inspect loss curves with
uv run tensorboard --logdir tb_logs/finetuningand openhttp://localhost:6006. Look for steady descent intrain_lossandval_loss; flag plateauing or divergence with concrete remediation prompts (seedocs/troubleshooting.md). - After any code change in the fine-tuning workflow: Run
uv run pytest(or a targeted eval) before declaring success. Flag NaN, divergence, or plateauing loss with concrete remediation prompts (lower learning rate, gradient clipping, seedocs/troubleshooting.md).
Routing
Format: {{Doc}} — {{when to load}}
- docs/about-aurora.md — User asks what Aurora is, how it works, why it matters, or needs background.
- docs/about-finetune.md — User asks why fine-tune Aurora, who fine-tuning is for, or what it unlocks.
- docs/finetune-demo.md — User wants to see Aurora outputs interactively without training (best for weather/climate practitioners).
- docs/quick-start-inference.md — User wants to run the Norway forecast or visualize Aurora predictions (best for non-technical audiences and first-look demos).
- docs/quick-start-finetune.md — User wants to run a first fine-tuning experiment on bundled data.
- docs/customization-guide.md — User wants a new region for the inference example, custom prototype, or domain recipes.
- docs/finetuning-guide.md — Training/optimization, gradients, AMP, LoRA, variable extension.
- docs/form-of-a-batch.md — Data format /
aurora.Batchstructure. - docs/available-models.md — Checkpoint selection.
- docs/inference-basics.md — Running predictions without the Norway frontend.
- docs/technical-reference.md — Grid constraints, data formats, variable naming, deployment, validation.
- docs/troubleshooting.md — Errors and diagnostics for both inference and fine-tuning.
- starter-code/README.md — CLI and starter-code reference.
- assets/inference/scripts/README.md — Inference scripts and utilities.
Assets
assets/inference/norway-example/— Reference inference implementation with frontend.assets/inference/scripts/— ERA5 download, validation, regional setup utilities.assets/inference/paper/— Paper artifacts and supplementary material.assets/finetune/finetune-exploration-demo-app/— Dockerized exploration demo (no training required).starter-code/— Full Python project (vibe-tune-aurora) with training loop, losses, data loaders, CLIs, and tests.initialization/initialize_starter_code.py— Copiesstarter-code/into the user's repo asaurora-finetune/.
Reference Links
- Research Paper: A foundation model for the Earth system (Nature, 2025)
- GitHub: github.com/microsoft/aurora
- Model Weights: huggingface.co/microsoft/aurora
- Azure AI Foundry: ai.azure.com/catalog/models/Aurora
04 同仓库更多 Skills
msresearch-promptions
Promptions — Microsoft Research's dynamic prompt middleware that turns a user's prompt into ephemeral UI controls (sliders, toggles, selects) they can adjust and replay to steer model output without rewriting instructions. Use for integrating Promptions, designing control schemas, rendering controls in React/Fluent UI, or showcasing the hosted ImageGen Workbench demo (the recommended first-look) or the self-hosted `promptions-chat` reference app.
msresearch-mattergen
MatterGen workflows for property-conditioned inorganic crystal generation, MatterSim triage, adapter fine-tuning, and Azure AI Foundry hosted deployment. Use when users ask about MatterGen, materials discovery, crystal generation, property-conditioned diffusion (bulk modulus, band gap, magnetic density, HHI), MatterSim evaluation, or Azure AI Foundry materials deployment.
msresearch-dayhoff
Microsoft Research's Dayhoff — generates novel protein sequences and scores variants using hybrid Mamba+Transformer models trained on the 3.34B-sequence Dayhoff Atlas. Use when users mention Dayhoff by name, want to generate protein sequences from scratch or from a prompt, score mutations / variants / fitness without experimental data, design sequences in a protein family from homologs, scaffold sequences around a motif, or are setting up / running / troubleshooting the Dayhoff prototype locally.
msresearch-bioemu
Microsoft Research's BioEmu — generates protein conformational ensembles from amino acid sequence on a local GPU. Use when users mention BioEmu by name, want to predict protein dynamics or flexibility from sequence, or are setting up / running / troubleshooting BioEmu locally.