Skip to content

Supported Models (Overview)

This page is the model selection entry point. Use it to answer one question quickly: which model IDs should I shortlist for this task?

Once you have a shortlist, use Advanced Model Reference for side-by-side preprocessing and temporal details, then open the linked detail page for the exact contract, caveats, and examples. If you are about to change input_prep, variant, fetch resolution, patch size, or image size, read Before You Start first, because those knobs affect both runtime cost and embedding semantics.


How To Read This Page

Start with the quick chooser, then scan the catalog table for input and temporal fit, and open the detail page before benchmarking or production use.

Canonical model IDs use the short public names shown on this page, such as remoteclip, prithvi, terrafm, and thor. Some detail-page filenames still use older names for compatibility, but the canonical IDs above are the names users should copy into code.


Quick Chooser by Goal

Goal Good starting models Why
Fast baseline / simple pipeline tessera, gse, copernicus Precomputed embeddings, fewer runtime dependencies
Simple S2 RGB on-the-fly experiments remoteclip, satmae, satmaepp, scalemae Straightforward RGB input paths
Time-series temporal modeling prithvi, olmoearth, galileo, anysat, agrifm Native multi-frame temporal packaging — see Temporal Sampling
Multispectral / strict spectral semantics satmaepp (modality="s2_10b"), dofa, clay, terramind, thor, satvision Strong channel/schema assumptions
Mixed-modality experiments (S1/S2) terrafm, thor Supports S2 or S1 path (per call)

Model Catalog Snapshot

Precomputed Embeddings

Model ID Type Primary Input / Source Default Resolution Dim Temporal mode Notes Detail
tessera Precomputed GeoTessera embedding tiles 10m 128 yearly coverage product Fast baseline, source-fixed precomputed workflow; tiles resampled onto the common EPSG:3857 grid detail
gse Precomputed Google Satellite Embedding (annual) 10m 64 TemporalSpec.year(...) Annual product via provider path detail
copernicus Precomputed Copernicus embeddings 0.25° 768 limited (2021) Coarse resolution product on fixed EPSG:4326 grid detail

On-the-fly Foundation Models

Model ID Primary Input Dim Default Resolution Input size (px) Temporal style Notable requirements Detail
prithvi S2 6-band 768 30m 224 multi-frame (auto, ≤4) required temporal + location side inputs detail
olmoearth S2 L2A 12-band / S1 VV/VH 128–1024 10m 256 (flexible) multi-frame (auto, ≤12) FlexiViT; 4 sizes (nano/tiny/base/large) detail
dofa Multispectral + wavelengths 768 10m 224 single composite wavelength vector required detail
clay S2 L2A 10-band 1024 10m 256 single composite metadata conditioning (latlon/time/gsd/wavelengths) detail
terramind S2 12-band 384 10m 224 single composite ViT-S class; strict z-score normalization detail
terrafm S2 12-band or S1 VV/VH 768 10m 224 single composite dual-modality by channel count detail
thor S2 10-band or S1 VV/VH 768 10m 288 single composite dual-modality; grouped tokens; native-snap detail
galileo S2 10-band time series 128 10m 64 multi-frame (auto, ≤12) nano default; month tokens detail
anysat S2 10-band time series 768 10m 24 multi-frame (fixed T) JEPA; s2_dates DOY side input detail
agrifm S2 10-band time series 1024 10m 224 multi-frame (fixed T) Video Swin; fixed T frame stack detail
fomo S2 12-band 768 10m 64 single composite per-channel spectral modality keys detail
wildsat S2 RGB 256 10m 224 single composite biodiversity training; image_head default detail
satvision TOA 14-channel (MODIS) 4096 1000m 128 single composite SwinV2 Giant; strict channel calibration detail
remoteclip S2 RGB (B4,B3,B2) 512 10m 224 single composite CLIP projection; RGB preprocessing detail
scalemae S2 RGB + scale 1024 10m 224 single composite sensor.scale_m is a model input detail
satmae S2 RGB (B4,B3,B2) 1024 10m 224 single composite ViT-L; MAE token/grid detail
satmaepp S2 RGB (B4,B3,B2) or S2 10-band 1024 10m 224 (rgb) / 96 (s2_10b) single composite modality=rgb (default) or s2_10b; ViT-L; fMoW eval preprocessing; 10-band uses strict band order + grouped-channel tokens detail

Input size (px) is the fixed spatial size each model's encoder consumes: under the default input_prep="tile", inputs larger than it are cut into tiles of this size at native resolution and the outputs stitched (both for provider fetches and user-provided data — see User Data API); under input_prep="resize" they are downsampled to it in one step. Together with Default Resolution it gives the native footprint of one forward pass, e.g. galileo 64 px × 10 m ≈ 640 m. olmoearth (FlexiViT) accepts any size divisible by its patch size — 256 is its training tile size; user-provided data is consumed natively at its own size by default (warning above 512 px), and an explicit model_config image_size restores fixed-size behavior. anysat and prithvi sizes are env-tunable (RS_EMBED_ANYSAT_IMG, RS_EMBED_PRITHVI_IMG).


Temporal and Comparison Notes (What People Usually Miss)

TemporalSpec.range(start, end) is usually a compositing window rather than a single-scene selector, and OutputSpec.grid() may be a token or patch grid rather than a georeferenced raster, especially for ViT-like backbones. Cross-model comparisons are usually easiest with OutputSpec.pooled() plus fixed ROI, temporal, and compositing settings.

Provider-backed models and tessera share one output grid (EPSG:3857 at the model's scale_m); a ROI that straddles a UTM zone boundary is served with a warning about the resampling seam. copernicus keeps its coarse product-native EPSG:4326 grid, so check its detail page before comparing grid outputs directly against other models.

On this page, "Default Resolution" means the default source-side fetch resolution, not the final resized tensor shape sent into the backbone. Multi-frame models such as prithvi, olmoearth, galileo, anysat, and agrifm also need extra attention to frame count and temporal side inputs — how each one turns a TemporalSpec.range into frames is summarized in Temporal Sampling.

Read the details in Supported Models (Advanced Reference).


More Detail

For cross-model preprocessing, temporal packaging, and environment knobs, continue to Advanced Model Reference. For user-facing guidance on how to trade compute for quality, spatial detail, or temporal fidelity, read Before You Start. If you are adding a new adapter, use Extending to keep the implementation and documentation consistent.