SelenoVLM

SelenoVLM is a vision-language model for lunar geology. A multimodal masked autoencoder (MAE) trained over co-registered global lunar rasters (LROC WAC imagery, LOLA/GLD100 elevation, the Unified Geologic Map of the Moon, Clementine UVVIS color-ratio composite) serves as a frozen vision tower, coupled to a LoRA-adapted Qwen2.5-7B-Instruct through a Perceiver resampler and Flamingo-style gated cross-attention. The model writes natural-prose geological interpretations of 51 x 67 km lunar surface tiles: units, processes, relative timing, quantitative image facts, and crater-count model ages on mare surfaces.

Code, training pipeline, and evaluation: github.com/TechnicToms/SelenoVLM

Repository contents

Path Content Size
bridge/step-10000.ckpt trained bridge (Perceiver resampler + gated cross-attention + LoRA), trainable params only 1.6 GB
mae/best-epoch10-step21428.ckpt frozen multimodal MAE vision tower 3.2 GB
tokenizers/{wac,elevation,clementine,geomap}/ FSQ tokenizer checkpoints + hparams 260 MB
extras/UnifiedGeoMap/legend.pkl geologic-map legend (required at build time) 2 KB
demo/tile_*/ preprocessed held-out demo tiles (inputs, WAC preview, metadata) 117 MB

The Qwen2.5-7B-Instruct base weights are not included; they are pulled from the HF hub on first build.

Usage

Inference goes through the GitHub repository (the checkpoints depend on its model code):

git clone https://github.com/TechnicToms/SelenoVLM && cd SelenoVLM
uv sync
python download_weights.py   # downloads this repository into the expected layout
python demo.py               # closed-book interpretation of a bundled held-out tile

Notes:

  • Loading the bridge checkpoint reports roughly 1800 missing keys and 0 unexpected keys. This is expected: the checkpoint stores only the trainable bridge/LoRA parameters, and the frozen MAE and base LLM are rebuilt at load time.
  • Requires a CUDA GPU with about 24 GB VRAM (7B LLM in bf16).
  • The demo tiles are from a spatially disjoint held-out test split, selected among the tiles where the served checkpoint performs well; they showcase the intended behaviour (grounded numeric image facts, mare age statements, highland age silence).

Training summary

  • Vision tower: shared multimodal MAE (4M-style architecture) over five modalities at 100 m/px, 512 px tiles, trained with Dirichlet span masking. Warm-started from EPFL/Apple 4M weights, fully retrained on lunar data.
  • Bridge: only the resampler, gated cross-attention blocks (every 4th decoder layer, no FFN), and LoRA adapters train (~780 M params, 2 epochs). Supervised targets are RAG-grounded Hiesinger-style prose with deterministic per-tile image facts injected; prompts and targets are coordinate-free.
  • Checkpoint selection: by causal vision grounding, grounded-fact fidelity, age-emission behaviour, and degeneration metrics on held-out tiles (not by validation loss).

Evaluation

Closed-book evaluation on the spatially disjoint test split (see the GitHub repository for the full protocol and reports): grounded numeric image facts scored against the tile rasters, mare-gated age emission with highland silence, causal vision ablations (zero and shuffle flips), and an always-on constant-age baseline guard. Numeric age values on mare tiles track the regional/global mare prior; the model's dating skill is in emission behaviour and epoch vocabulary, not in beating a constant-age predictor. Treat stated numeric ages accordingly.

License and provenance

Released under Apache-2.0. Upstream terms that apply in addition:

  • Base LLM: Qwen2.5-7B-Instruct (Apache-2.0), not redistributed here.
  • The MAE was initialized from EPFL/Apple 4M weights and fully retrained; see the ml-4m repository for their model license.
  • The supervised prose targets were distilled with Gemma 3; use of this model is additionally subject to the Gemma Terms of Use.
  • Lunar data products are NASA/USGS public domain; Hiesinger mare ages derive from published literature, used with attribution.

Citation

A preprint is in preparation; citation information will be added here.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for TechnicToms/SelenoVLM

Base model

Qwen/Qwen2.5-7B
Finetuned
(2946)
this model