RiverRider/srt-sunstone

Space

3

stars

23

commits

2

linked in READMEs

Aug 28, 2026

updated

cross-modal
gemma-4
gradio
interpretability
read-out
representation-learning
semiotic
vision-language
Browse cluster: Semiotic Reflexive Transformer Adapters β†’

README

🜲 Gemma-4-31B-it SRT-Sunstone

A read-out that reads images β€” trained only on words

SRT Sunstone is a live demonstration that a read-out head trained on text alone can interpret images β€” with zero image training. It is a 12.3 M side-channel head on a frozen google/gemma-4-31B-it, taught one thing from prose: to tell apart communities of language use. Point it at a picture and it names what the image means and the discourse it evokes.

This is the semiotic claim of the SRT (Semiotic-Reflexive Transformer) program made concrete: the read-out interprets a sign by its place in a shared system of meaning, independent of whether the sign arrived as a word or an image.


Train once, read everywhere (July 2026)

The program's consolidated finding places this demo inside a larger result: the structure it reads is substrate-invariant. The cross-modal gap inside a frozen multimodal LLM is anisotropic-linear, so a single trained 44 MB linear head turns the same frozen states into full image-text retrieval. And the head keeps working when everything about the deployment changes:

axisevidence
capabilityCOCO i2t R@1 0.661 / R@5 0.911 (117k pairs, frozen gemma-4-31B; zero-training baseline 0.288)
benchmark placementKarpathy 5k test 0.416 / 0.710 / 0.818, matching VSE++ (2018, fully trained) digit for digit
host scale31B β†’ 3B at matched data: no capability loss
weight precisionbf16 β†’ 4-bit: βˆ’0.011 R@1 with unchanged head weights
hardware / runtimeCUDA datacenter β†’ Apple-Silicon 4-bit: 100% head-space retrieval agreement after a 42 KB recalibration

Trained head: RiverRider/srt-sunstone-linear-head. This Space remains the zero-training exhibit: everything below uses only per-modality centering, no trained alignment at all.


What you can do here

Pick any category in the gallery. For each one you see:

  • The words it means β€” the image, placed in a shared word space, retrieves its own words: bicycle β†’ bicycle, rose β†’ flower, dog β†’ pet, car β†’ car. This is the precise, load-bearing result.
  • The caption it retrieves β€” the same image state picks a full sentence out of 10,000 COCO captions, open vocabulary, zero training: horse β†’ "a person riding a horse". The image's place in meaning space is precise enough to select a whole description, not just a word.
  • The discourse it evokes β€” the nearest of 35 discourse communities the head learned from text: cars into the automotive community, deer and mushrooms into gardening, cats and dogs into the cozy-domestic communities. A flavour, not a label.

Why this is a semiotic read-out, not an image classifier

An image classifier is trained on labelled images and learns a fixed pixel→label map; it only handles the labels in its training set. This read-out is different in kind: its training data was text alone, used to separate discourse communities in the residual stream of a frozen gemma-4-31B. It can read a picture because gemma-4 already fuses image and word into one representational stream, and the read-out taps the shared interpretant — the meaning a sign carries, whatever form it arrived in. It does not classify the image; it tells you what the image means to a system that learned meaning from words.


The evidence (held-out)

measurementresultchance
image β†’ correct semantic class (kNN)0.640.10
image ↔ its class-word retrieval0.270.10
held-out text community assignment0.5350.029

The head was selected by held-out community accuracy (not training loss), which peaks at step 2250 of 3000 (0.535, an 18.7Γ— lift over chance).


How the head was trained

  • Backbone: google/gemma-4-31B-it, frozen (never modified).
  • Head: 12.3 M parameters (a discourse-community encoder plus MAH divergence heads), reading the residual stream at an early text-tower layer.
  • Data: 150 K discourse passages across 35 communities.
  • Objective: supervised-contrastive on community id (grouped sampling) plus self-supervised divergence and chain terms. No images, no labels on images, no fine-tuning of the base model.

About this Space (precomputed, CPU)

gemma-4-31B is 62.5 GB, far too large to run inside a Space. Every read-out and thumbnail here was precomputed once on a GPU box (scripts/build_crossmodal_gallery.py) with per-modality centering to remove backbone anisotropy. This Space serves the cache, so it runs on free CPU with no model download.


Scope & limitations

  • A semiotic read-out, not a classifier: community labels reflect discourse association, not object taxonomy, and the head knows only 35 communities β€” far too few to label the visual world precisely.
  • Image↔word retrieval (0.27) is well above chance but lossy: the 64-dim discourse code discards most fine visual detail.
  • Assignments are aggregated per category; single 32Γ—32 images are individually noisier.

License: Apache-2.0. Base model governed by Google's gemma-4 license.

Contributors

RiverRider

23 commits

RiverRider/srt-sunstone

Space

3

stars

23

commits

2

linked in READMEs

Aug 28, 2026

updated

cross-modal
gemma-4
gradio
interpretability
read-out
representation-learning
semiotic
vision-language
Browse cluster: Semiotic Reflexive Transformer Adapters β†’

README

🜲 Gemma-4-31B-it SRT-Sunstone

A read-out that reads images β€” trained only on words

SRT Sunstone is a live demonstration that a read-out head trained on text alone can interpret images β€” with zero image training. It is a 12.3 M side-channel head on a frozen google/gemma-4-31B-it, taught one thing from prose: to tell apart communities of language use. Point it at a picture and it names what the image means and the discourse it evokes.

This is the semiotic claim of the SRT (Semiotic-Reflexive Transformer) program made concrete: the read-out interprets a sign by its place in a shared system of meaning, independent of whether the sign arrived as a word or an image.


Train once, read everywhere (July 2026)

The program's consolidated finding places this demo inside a larger result: the structure it reads is substrate-invariant. The cross-modal gap inside a frozen multimodal LLM is anisotropic-linear, so a single trained 44 MB linear head turns the same frozen states into full image-text retrieval. And the head keeps working when everything about the deployment changes:

axisevidence
capabilityCOCO i2t R@1 0.661 / R@5 0.911 (117k pairs, frozen gemma-4-31B; zero-training baseline 0.288)
benchmark placementKarpathy 5k test 0.416 / 0.710 / 0.818, matching VSE++ (2018, fully trained) digit for digit
host scale31B β†’ 3B at matched data: no capability loss
weight precisionbf16 β†’ 4-bit: βˆ’0.011 R@1 with unchanged head weights
hardware / runtimeCUDA datacenter β†’ Apple-Silicon 4-bit: 100% head-space retrieval agreement after a 42 KB recalibration

Trained head: RiverRider/srt-sunstone-linear-head. This Space remains the zero-training exhibit: everything below uses only per-modality centering, no trained alignment at all.


What you can do here

Pick any category in the gallery. For each one you see:

  • The words it means β€” the image, placed in a shared word space, retrieves its own words: bicycle β†’ bicycle, rose β†’ flower, dog β†’ pet, car β†’ car. This is the precise, load-bearing result.
  • The caption it retrieves β€” the same image state picks a full sentence out of 10,000 COCO captions, open vocabulary, zero training: horse β†’ "a person riding a horse". The image's place in meaning space is precise enough to select a whole description, not just a word.
  • The discourse it evokes β€” the nearest of 35 discourse communities the head learned from text: cars into the automotive community, deer and mushrooms into gardening, cats and dogs into the cozy-domestic communities. A flavour, not a label.

Why this is a semiotic read-out, not an image classifier

An image classifier is trained on labelled images and learns a fixed pixel→label map; it only handles the labels in its training set. This read-out is different in kind: its training data was text alone, used to separate discourse communities in the residual stream of a frozen gemma-4-31B. It can read a picture because gemma-4 already fuses image and word into one representational stream, and the read-out taps the shared interpretant — the meaning a sign carries, whatever form it arrived in. It does not classify the image; it tells you what the image means to a system that learned meaning from words.


The evidence (held-out)

measurementresultchance
image β†’ correct semantic class (kNN)0.640.10
image ↔ its class-word retrieval0.270.10
held-out text community assignment0.5350.029

The head was selected by held-out community accuracy (not training loss), which peaks at step 2250 of 3000 (0.535, an 18.7Γ— lift over chance).


How the head was trained

  • Backbone: google/gemma-4-31B-it, frozen (never modified).
  • Head: 12.3 M parameters (a discourse-community encoder plus MAH divergence heads), reading the residual stream at an early text-tower layer.
  • Data: 150 K discourse passages across 35 communities.
  • Objective: supervised-contrastive on community id (grouped sampling) plus self-supervised divergence and chain terms. No images, no labels on images, no fine-tuning of the base model.

About this Space (precomputed, CPU)

gemma-4-31B is 62.5 GB, far too large to run inside a Space. Every read-out and thumbnail here was precomputed once on a GPU box (scripts/build_crossmodal_gallery.py) with per-modality centering to remove backbone anisotropy. This Space serves the cache, so it runs on free CPU with no model download.


Scope & limitations

  • A semiotic read-out, not a classifier: community labels reflect discourse association, not object taxonomy, and the head knows only 35 communities β€” far too few to label the visual world precisely.
  • Image↔word retrieval (0.27) is well above chance but lossy: the 64-dim discourse code discards most fine visual detail.
  • Assignments are aggregated per category; single 32Γ—32 images are individually noisier.

License: Apache-2.0. Base model governed by Google's gemma-4 license.

Contributors

RiverRider

23 commits