The model key of the config.
| Field | Type | Required | Default | Description |
|---|
encoder | Encoder | yes | | The encoder to use for the model. This produces embeddings from preprocessed modality data for use as input to task heads. |
tasks | map of string to ModelTask | yes | | The tasks to perform with the embeddings produced by the encoder layer. Each task will produce predictions for the original inputs. |
Encoder
One of the following, selected by its name field:
ModelTask
One of the following, selected by its name field:
OlmoEarthEncoder
OlmoEarth encoder configuration.
| Field | Type | Required | Default | Description |
|---|
name | "olmoearth" | yes | | |
patch_size | integer (≥ 1, ≤ 8) | yes | | The size of the patch to use for the model |
source | OlmoEarthSource | yes | | Where to load the OlmoEarth encoder from |
SegmentationTask
PerPixelRegressionTask
ClassificationTask
RegressionTask
DetectionTask
| Field | Type | Required | Default | Description |
|---|
name | "detection" | yes | | |
decoder | DetectionDecoder | yes | | |
box_side_length | integer | no | null | When set, each annotation's geometry is replaced by a fixed box of this side length (in pixels) centered on the geometry's centroid, and that box becomes the training label. When unset, the geometry's native bounding box is used. Required for point annotations (which have degenerate bounding boxes); optional for polygons. Must be less than input_size. |
EmbeddingTask
Prediction-only task that produces encoder embeddings directly.
No decoder or training configuration -- the encoder's feature map is saved as the output via EmbeddingHead.
| Field | Type | Required | Default | Description |
|---|
name | "embedding" | yes | | |
ManualTask
Escape hatch task providing raw rslearn decoder_layers and task config.
OlmoEarthSource
One of the following, selected by its name field:
SegmentationDecoder
One of the following, selected by its name field:
PerPixelRegressionDecoder
One of the following, selected by its name field:
ClassificationDecoder
One of the following, selected by its name field:
RegressionDecoder
One of the following, selected by its name field:
DetectionDecoder
One of the following, selected by its name field:
ComponentConfig
A reference to an arbitrary class to be initialized: class_path + optional init_args.
| Field | Type | Required | Default | Description |
|---|
class_path | string | yes | | |
init_args | object with arbitrary keys | no | null | |
OlmoEarthFromHuggingFace
OlmoEarth encoder loaded from HuggingFace model ID.
| Field | Type | Required | Default | Description |
|---|
name | "huggingface" | yes | | |
model_id | string | yes | | The ID of the model to use (sourced from HF) |
OlmoEarthFromRegistry
OlmoEarth encoder loaded from OlmoEarth's foundation model registry.
| Field | Type | Required | Default | Description |
|---|
name | "registry" | yes | | |
model_name | string | yes | | The name of the foundation model to use from OlmoEarth's registry |
embedding_size | integer | yes | | The number of dimensions in the embeddings the encoder produces. |
OlmoEarthFromModelPath
OlmoEarth encoder loaded from a model checkpoint + config path. For unpublished models. Note: the embedding size must be explicitly provided, as we have no catalog or metadata to consult.
| Field | Type | Required | Default | Description |
|---|
name | "model_path" | yes | | |
model_path | string | yes | | The path to the model checkpoint + config to use |
embedding_size | integer | yes | | The number of dimensions in the embeddings the encoder produces. |
OlmoEarthFromDistributedCheckpoint
OlmoEarth encoder loaded from distributed checkpoint files + config. For in-flight pretraining checkpoints. Note: the embedding size must be explicitly provided, as we have no catalog or metadata to consult.
| Field | Type | Required | Default | Description |
|---|
name | "distributed_checkpoint" | yes | | |
checkpoint_path | string | yes | | The path to the distributed checkpoint files + config to use |
embedding_size | integer | yes | | The number of dimensions in the embeddings the encoder produces. |
UpsampleConvSegmentationDecoder
A decoder that upsamples the embeddings using a convolutional layer before passing to a segmentation decoder head.
| Field | Type | Required | Default | Description |
|---|
name | "upsample_conv" | yes | | |
UnetSegmentationDecoder
A decoder that uses a U-Net architecture to perform segmentation.
| Field | Type | Required | Default | Description |
|---|
name | "unet" | yes | | |
conv_layers_per_resolution | integer (≥ 1) | no | 1 | Number of convolutional layers at each resolution level. |
num_channels | map of string to integer | no | null | Explicit channel counts per resolution level (e.g. {8: 512, 4: 512, 2: 256, 1: 128}). When None, rslearn auto-calculates. |
UnetPerPixelRegressionDecoder
A decoder that uses a U-Net architecture with a per-pixel regression head (single channel output).
| Field | Type | Required | Default | Description |
|---|
name | "unet" | yes | | |
conv_layers_per_resolution | integer (≥ 1) | no | 1 | Number of convolutional layers at each resolution level. |
num_channels | map of string to integer | no | null | Explicit channel counts per resolution level. When None, rslearn auto-calculates. |
PoolingClassificationDecoder
A decoder that uses global spatial pooling over encoder features followed by fully-connected layers and a classification head. Used for window-level (vector) classification tasks.
| Field | Type | Required | Default | Description |
|---|
name | "pooling" | yes | | |
PoolingRegressionDecoder
A decoder that uses global spatial pooling over encoder features followed by fully-connected layers and a regression head. Used for window-level (vector) regression tasks.
| Field | Type | Required | Default | Description |
|---|
name | "pooling" | yes | | |
FasterRCNNDetectionDecoder
A decoder that uses a Faster R-CNN architecture to perform detection + classification.
| Field | Type | Required | Default | Description |
|---|
name | "faster_rcnn" | yes | | |
anchor_sizes | array of array of integer | yes | | Anchor box sizes in input image pixels for the Region Proposal Network. Each inner list corresponds to one encoder feature map level. OlmoEarth produces a single feature map, so use one inner list, e.g. [[32]]. Set values to roughly match the expected pixel size of detectable objects. |