allenai/olmoearth_pretrain

Earth system foundation model data, training, and eval

OlmoEarth 是什么?

OlmoEarth 是一系列为地球观测数据设计的多模态时空基础模型。这些模型输入卫星影像(Sentinel-2 光学、Sentinel-1 雷达、Landsat)以及衍生的地理地图(例如 OpenStreetMap、WorldCover、USDA Cropland、DEM、冠层高度、WorldCereal),并学习一个联合表示,可用于分割、分类或嵌入生成等下游任务。

该仓库包含预训练代码以及用于构建、评估和微调这些模型的工具。它是更广泛的 OlmoEarth 平台的一部分,该平台为行星尺度智能提供端到端的工具。


主要特性

特性 详情
模型系列 Nano、Tiny、Small、Base、Large – 参数范围从约 1 M 到超过 300 M(编码器 + 解码器)。
模态 Sentinel-2(光学)、Sentinel-1(SAR)、Landsat,以及六个衍生的地图图层。
训练数据 全球范围内抽取的 285 k 个样本(每个约 2.56 平方公里);数据集可在 Hugging Face 上获取。
版本管理 v1、v1.1、v1.2 版本发布,包含增量改进;附有变更日志链接。
开源技术栈 基于 AllenAI 的 OLMo-core 库构建;提供 Docker 镜像;可选 flash-attention 支持。
许可 OlmoEarth Artifact License(见 LICENSE)。
文档 推理快速入门、微调教程、数据集创建指南、评估脚本。

快速开始

安装(完整栈)

# 克隆仓库
git clone git@github.com:allenai/olmoearth_pretrain.git
cd olmoearth_pretrain

# 推荐:Python 3.12 + uv 包管理器
uv sync --locked --all-extras --python 3.12

该命令会创建一个隔离的虚拟环境(.venv)。使用 source .venv/bin/activate 激活它,或通过 uv run 运行命令。

仅推理安装

如果你只需要加载预训练模型(无需训练依赖):

uv sync --locked

使用模型

  1. 加载检查点 – 模型权重托管在 Hugging Face 上(例如 allenai/OlmoEarth-v1_2-Base)。
  2. 运行推理 – 按照 docs/Inference-Quickstart.md 实例化模型并传入卫星图块。
  3. 微调 – 提供了分割和嵌入提取的教程:
    • FinetuneOlmoEarthSegmentation.md
    • OlmoEarthEmbeddings.md
    • FinetuneOlmoEarth.md
  4. 部署 – 示例部署位于配套的 olmoearth_projects 仓库中。

训练你自己的模型

该仓库在 scripts/official/vX_X/ 下为每个发布版本提供了现成的脚本。详细步骤见 docs/Pretraining.md,涵盖数据准备(docs/Dataset-Creation.md)、环境设置和启动命令。


评估

按照以下说明重现作者的基准测试结果:

  • docs/Evaluation.md – 研究基准测试。
  • 合作伙伴任务评估记录在 rslearn_projects 仓库中。

测试

使用 uv run 运行测试套件:

# 完整套件(除 flash-attn 外的所有可选依赖)
uv run --extra all-no-flash pytest tests/

# 带完整依赖的模型加载测试(包括 olmo-core)
uv run --extra all-no-flash pytest tests_minimal_deps/

# 最小依赖加载测试(无 olmo-core)
uv run --extra dev pytest tests_minimal_deps/

CI 会运行两次这些测试,以确保包在有无重型 olmo-core 依赖的情况下都能正常工作。


引用

如果你使用了代码(不仅仅是模型权重),请引用该软件:

@software{olmoearth_pretrain,
  author    = {{OlmoEarth Team}},
  title     = {{OlmoEarth}: A library for developing earth system foundation models},
  publisher = {Allen Institute for AI},
  url       = {https://github.com/allenai/olmoearth_pretrain},
  version   = {0.1.2},
  year      = {2026}
}

对于特定模型,请引用相应的技术报告(模型表中提供了链接)。


谁可能使用这个?

  • 遥感研究人员,需要用于卫星图像任务的预训练骨干网络。
  • 地理空间数据工程师,构建需要嵌入或分割掩码的流水线。
  • AI 实验室,对多模态时空基础模型感兴趣,并寻找参考实现。

总结

OlmoEarth-pretrain 是一个功能齐全的开源工具包,用于训练和部署大规模地球观测基础模型。它提供了即用型的预训练检查点、清晰的训练脚本和丰富的文档,是任何在 AI 与行星数据交叉领域工作的人的实际切入点。

相关

  • 项目
  • Dispatch
  • Dispatch
  • 项目
  • 项目