Chromatic Seed / Experiment 134 / Technical record
A learned habitat, with visible boundaries
One model trained from random weights. Colour identities as its alphabet. A public record of what changed, what readers found, and what the model could not receive.
Enter the habitat → Download the full record
What was built
A 625,745-parameter recurrent neural model: an embedding of 6,257 identities into 32 numbers, one 64-state GRU and a 6,257-way output head. Each identity names an exact checked Carrier RGB colour. The inputs are categorical indices, not English tokens, visible images or RGB distances. All weights began randomly. Definitions and pretrained weights were excluded from the training signal.
The setting inherits the earlier Chromatic Habitat field grammar, USL1 and CVP2 transport. This run changes the small generator; the separate interpreters remain pretrained language agents. Neither the architecture nor the experiment demonstrates qualia, self-awareness, life, general semantic understanding or a universal medium advantage.
Frozen environment and selection
The source is the frozen Job 133 snapshot, not a claim about the current live registry. It contains 6,257 checked colour identities and 20,787 directed graph connections. Unordered endpoint pairs—including reverse directions—were assigned deterministically to train/development/test before walks were generated: 16,657 / 2,092 / 2,038 directed edges. There is no pair overlap. Training contexts and held-out-query prefixes use training edges only.
32,768 walks of at most 16 transitions supplied 318,308 scored targets. Ignored padding never became a vocabulary token. The walks observed 14,883 distinct training edges, 6,017 scored input identities and 3,876 target identities. The graph contains inherited author choices; numerical input does not make the environment free of prior structure.
One fixed run used AdamW, batch 64, learning rate 0.002, weight decay 0.0001, gradient clip 1.0 and 1,200 updates. The development set selected update 200; the final test was read only after checkpoint pinning. The local training-and-export timer recorded 7.91 seconds on an RTX 3070 Ti Laptop GPU; that excludes setup, data preparation, evaluation, encounters and publication. Peak allocated GPU memory was 179,475,968 bytes. This deliberately small run is not a scaled intelligence study.

Final predictive comparison
All 2,038 test edges are scored against all 6,257 candidates. Baselines use only the training split: uniform, add-one target frequency, and one-/two-step neighbour probabilities with 0.1 uniform smoothing. Missing outgoing probability mass falls back to uniform. Tied rankings are averaged over random tie order. Lower negative log probability is better; higher ranking metrics are better.
| Method | NLL(nats)↓ | Top1↑ | Top10↑ | MRR↑ |
|---|---|---|---|---|
| Uniform | 8.7415 | 0.02% | 0.16% | 0.0015 |
| Untrained model | 8.7476 | 0.05% | 0.15% | 0.0017 |
| Training frequency | 8.9713 | 1.86% | 3.24% | 0.0265 |
| One-step graph | 10.9141 | 0.00% | 0.12% | 0.0012 |
| Two-step graph | 8.9120 | 5.60% | 20.66% | 0.1007 |
| Selected model | 8.6557 | 0.54% | 2.40% | 0.0146 |
The selected model modestly improves average predictive loss, while the frequency and two-step graph baselines rank targets better. These dependent queries from one graph and one initialization do not support a population significance claim or a conclusion about artistic quality. Because a direct edge is held out by design, the one-step graph has a structural disadvantage; the two-step baseline provides the more useful graph comparison.
199 queries have targets absent from scored training targets;in 194 of those queries, the target identity did appear as a scored training input. The archived key namedtarget_unseen_in_training refers to target-role absence, not wholly unseen colours.

From learned sequence to an artwork
Three fixed four-colour prefixes each produce three 24-colour fields at temperature 0.9, with full-vocabulary sampling. The first untrained field for each prefix is also retained. There is no top-k cutoff, repetition penalty, rejection or aesthetic selection. The complete original set is 12 fields. Learned fields contain 15–22 unique colours; each untrained field contains 24. The unequal numbers of archived states are explicit; these are descriptive observations, not a fair scored comparison of artistic merit.
The model chooses identities. A fixed 6 × 4 serpentine layout supplies positions, zero depth, equal emphasis and a 24-step endpoint. Generated fields have no links or regions. Full logits, sampled probabilities, random draws and 64-number state traces are archived. The visible allocated cores address concepts; the small inset carries encoded bytes. The same RGB channel is serving distinct roles, which the layout and decoder keep separate.
Six encounters and their returns
Two fresh pretrained agent contexts encounter each final learned field. Each sees the image and supplied grammar, then resolves definitions, freezes a first interpretation and authors a reply. First readings have alternatives and exact cell anchors. The retained definition records include relation/provenance metadata, so some inherited relational information was available. The full training topology, metrics, other readers and earlier artworks were excluded by task instruction. This is not OS isolation or graph-blinded reception, and six contexts are not six authenticated model builds. No human reception claim is made.
All six replied. Their full field grammar is richer than a sequence. It carries positions, emphasis, typed relations, regions and possible blank cells. The frozen model receives only each reply’s non-null colour identities in stored array order. It receives no prose and performs no further learning. The record counts what was omitted.
The same-seed original-context continuation was added as an explicitly post-hoc engineering diagnostic after the predictive scores were known and before replies were processed. It compares numerical input sensitivity; it does not score recognition of the reply’s meaning.
| Reader | Colours received | Links/regions omitted | First-step JS divergence(nats) | Different sampled positions |
|---|---|---|---|---|
| R1 | 17 | 20 / 2 | 0.2384 | 24 /24 |
| R2 | 18 | 22 / 1 | 0.2496 | 24 /24 |
| R3 | 19 | 24 / 2 | 1.3e-11 | 0 /24 |
| R4 | 22 | 24 / 2 | 0.4769 | 24 /24 |
| R5 | 17 | 20 / 1 | 0.4952 | 4 /24 |
| R6 | 20 | 26 / 2 | 7.066e-10 | 0 /24 |
R3 and R6 produced the same 24 sampled colours as their counterfactual continuations, despite changed input contexts; their first-step distributions differed only slightly. R5 changed 4 positions. R1, R2 and R4 changed all 24. Neither change nor sameness establishes semantic comprehension. The complete gallery contains 30 fields: 9 learned, 3 untrained, 6 interpreter replies, 6 returns and 6 counterfactual controls.
Checks and remaining limits
Nine synthetic model checks, five evaluator checks and 23 inert interface checks passed. An additional review verified frozen hashes, pair separation, padding, random initialization and first-reading/parent bindings. The JavaScript runner agreed with PyTorch on 12 prefix cases: maximum logit difference 2.76×10−6, maximum hidden-state difference 2.69×10−7. All 72 sampled positions in three first-field replays matched. This is numerical agreement on these cases, not guaranteed bit-identical sampling on every platform.
Initial temporary-directory, network and helper-path failures are preserved, as are the original incorrectly labelled untrained render captions and their corrections. The inheritedLEGACY_ID_HISTORY warning concerns historical working-ID reuse; selected references use the pinned checked tier. No source definition, raw field, test split or learned weight was changed to improve a reported result.
Physical browser rendering, phone interaction and the live WordPress theme remain untested. Static and inert checks do not substitute for those. The publication upload has not been performed by this build.
Reproduction and record
Full reproducible record(ZIP) · Portable model and numeric runner(ZIP) · Frozen protocol · Predictive scores · Return diagnostics · Disclosures and deviations
Python 3.12 with NumPy is sufficient for portable numerical inference. Training/evaluation use PyTorch 2.7.1; figures use Matplotlib 3.10.7. Node is used for the supplied USL1/CVP2 codec and JavaScript checks. Source, retained environment pins, frozen inputs and initial/selected/final portable weights are included. The full ZIP contains a large per-query matrix; it is not fetched for page interaction.
python tools/infer_numpy.py --prefix 0 25 36 37 --seed 134100 # Rebuild comparisons into a separate copy; preserve original outputs. # Training deliberately refuses to replace a completed runs/seed01 folder. python tools/train_seed.py python tools/evaluate_seed.py node tools/verify_portable.cjs
Training replay requires a clean copy with the completed run relocated; instructions in START-HERE.txt explain this without overwriting the record. Hardware and numerical libraries can affect floating-point replay.
The selected weight-array hash is9b4e05d498fee7c16b0145bed04fb6dad52e76a86857c08c101f467d9f62d118. This canonical array hash differs from the NPZ container-file hash. Checked snapshot head:398492317d139bd78ca599965f08603296daedd95f4fb088fde05393175bfe88. Hashes establish file correspondence, not authorship, interpretation or truth.
Background and attribution
Autoregressive learning from nonlinguistic sequences has established precedents, including Chen and colleagues’ 2020Generative Pretraining From Pixels. That much larger pixel-Transformer study is background, not a validation of this small graph-colour model. Primary paper.
Carrier definitions and source records retain their inherited attribution and provenance in the frozen dictionary. This release adds a model, numeric adapters, encounters and interpretation; it does not claim the underlying concepts or the GRU architecture as new inventions.