Agent Skills
返回列表
💻

Earth2Studio 创建数据源

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/earth2studio-create-datasource。

技能介绍

要解决什么问题

Earth2Studio 通过统一的数据源抽象拉取 S3、GCS、Azure、HTTP、HuggingFace 等远程存储里的气象与地球系统数据。社区要接一个新仓库,往往卡在:该用 DataArray 还是 DataFrame、Lexicon 怎么映射远程变量、异步批量拉取怎么写、测试和 PR 规范是什么。本技能把从分析存储到提交 NVIDIA 上游 PR 的流程拆成可执行的步骤,减少漏项和返工。

技能如何工作

技能按固定顺序推进,并在关键节点做类型与依赖确认:

  • 来源分类:区分网格化分析/再分析(Source)、网格化预报(ForecastSource)、稀疏站点(DataFrameSource / ForecastFrameSource),决定返回类型与是否处理 lead_time。
  • 访问与依赖:优先用 fsspec 及 s3fs、gcsfs、adlfs、huggingface_hub 等,而不是直接堆 boto3/requests;在 pyproject.toml 里按需 uv add。
  • Lexicon 与实现:在 earth2studio/lexicon/ 建词表类,对照 E2STUDIO_VOCAB 映射远程键;数据源类按规范方法顺序实现 __call__、fetch、异步任务 dataclass、managed_session、gather_with_concurrency 等模式。
  • 交付物优先:先写源文件与 test/data/test_*.py(含 _call_mock、慢测 _fetch/_cache),再注册 __init__.py、RST 文档、CHANGELOG.md。
  • 验证与 PR:用真实数据跑验证脚本,PR 到 NVIDIA/earth2studio,并在评论里附指标覆盖表与数据合理性摘要。

适用边界

  • 一次只做一个来源类型;其它协议需再次调用技能。
  • 步骤 12 的佩戴性验证需要网络与存储访问权限;无权限时只能做到实现与单测,不能完成端到端验证。
  • 环境需 Python 3.10+ 且用 uv run python;所有新文件需 SPDX 许可证头。
  • 用户若只要「实现源码+测试」,可跳过文档、注册与 PR 相关步骤(约 8–14)。

使用场景

  • 已在 fork 的 earth2studio 仓库里,要把单位内部的 S3 再分析 Zarr 接成新的 `Source` 并补 Lexicon 映射
  • 社区预报模型权重在 Hugging Face 上,需要封装为带 `lead_time` 的 `ForecastSource` 供异步批量拉取
  • 稀疏站点 CSV/Parquet 在 GCS 上,要按 `DataFrameSource` 规范实现时间对齐与 `time_tolerance`
  • 源文件和 `test/data` 已写好,需按技能清单完成 RST 文档、`CHANGELOG` 并向 NVIDIA 上游开 PR 附验证摘要

适合人员

  • 维护 earth2studio fork、定期向上游合入新数据源的地球系统 ML 工程师
  • 要把 Azure Blob 或 HTTP 开放数据集纳入 Earth2Studio 流水线、但不熟悉 Lexicon 与异步 fetch 规范的研究员
  • 负责 NVIDIA Earth2Studio 生态扩展、需统一测试覆盖率与 SPDX 头合规的开源协作者
  • 在 uv 管理的 Python 3.10+ 环境中交付 fsspec 访问层,并避免整文件下载的性能敏感后端开发者