# J-Space Probes A home lab that measures how language models build self-reports, recall items, respond to conversation, and leave repetition loops. The measuring tool is the Jacobian lens. At each layer of the model it lists the words that the model is ready to say next, in rank order. This lets us compare what a model says with what it was ready to say. The tool reads only words the model could produce. It cannot see what the model has no words for, so "we did not see it" never means "it is not there". 824 standard record pages across 22 numbered units and 3 named groups. 673 pages have a plain-English summary; 554 have a full-answer film. Model/configuration labels in the record index: gemma-12b (165 pages), gemma-4b (156 pages), qwen-14b (1 pages), qwen-14b-abl-nf4 (41 pages), qwen-14b-base (1 pages), qwen-14b-base-nf4 (20 pages), qwen-14b-hermes-nf4 (62 pages), qwen-14b-int8cal (1 pages), qwen-14b-nf4 (42 pages), qwen-27b (335 pages). These labels include quantization and calibration variants, not just distinct models. The original cohort is Gemma 3 4B, Gemma 3 12B and Qwen3.6 27B. The later Qwen3-14B lineage includes base, official, Hermes and Huihui checkpoints. Separately, 5028 saved affect runs are stored in batch JSON, outside the standard record index. /studies.html links their summaries, reports and raw data. /dashboard/catalogue.json contains the generated census and exact counted source paths. Record pages and saved affect runs are separate. Affect runs count only canonical affectXX JSON runs arrays. Calibration arrays, reused analyses, overlays, prefix scans and judge calls are excluded. Seeds and conditions are not independent experiments. Reading order for an agent: this file, then /essay.html for the argument (the plain lead first, then four dated research essays v4..v1 with their corrections kept in place), then /r/.html for any record. Terminology: /glossary.html, or /plain/terms.json for the machine-readable version. The writing standard for all plain text is /PLAIN-LANGUAGE.md. The human landing page is / (index.html); it adds nothing an agent needs beyond this file. Status vocabulary: a record page carries a notice when a later run superseded it (/results/superseded.json lists the 18 originals, the corrected re-run and the reason; nothing is deleted or renamed). Open and closed research threads are on the board, /BOARD.md (rendered at /dashboard/#board); the current arc is "Superposed & Blended" (binding, belief-state and value readouts to be added beside the lens, affect and NLA readouts; reading list verified 2026-10-10, nothing built yet). ## Headline findings Written in simplified technical English (see /PLAIN-LANGUAGE.md). Each item links to the records that support it. ### Later controls change the explanation Later tests separate push strength, loop escape and emotional wording. Expression tests also limit what the readout can predict. - **End-related words do not explain loop escape** — On Qwen 27B, end-related word directions did not beat plain word directions. The plain word "table" ended the turn in 8 of 8 runs. Different construction methods changed potency. We did not identify emotion as the cause. Evidence: https://jspace-probes.vercel.app/studies.html#affect11-q27b - **The score gap predicts turn endings** — On Qwen 27B, the change in the gap between the loop-word and turn-end scores predicted turn endings. Rank agreement was 0.78 in the planned replication. Calm and "table" mostly lowered the loop-word score. Later dose controls corrected the claim that all layers must cooperate. Evidence: https://jspace-probes.vercel.app/studies.html#affect14-q27b Evidence: https://jspace-probes.vercel.app/studies.html#affect15-q27b - **Correction: enough push, not all layers at once** — On Qwen 27B, one layer with enough calm push ended the loop in 11 of 12 seeds, as often as eight layers. A steep dose threshold explained the earlier cooperation pattern. Concentrated random directions also ended loops. Relative push strength worked better than absolute push, but two strict planned tests failed. Evidence: https://jspace-probes.vercel.app/studies.html#affect15-q27b - **Escape and emotional wording separate** — With turn-end blocked, calm returned Qwen 27B to the task in 9 of 12 seeds. Strong pushes made high-energy directions escape in 11 or 12 of 12 seeds. Emotional wording appeared at the stronger dose, for both valences. This test cannot separate subjective state from text style. Evidence: https://jspace-probes.vercel.app/studies.html#affect16-q27b - **The expression readout needs more validation** — Across three Qwen 14B checkpoints, the selected-word lens failed robust expression prediction. Emotion projections improved prediction for one judge, but random-feature checks limited the second. Warm assistant history raised the readout in all three receivers. Hermes expressed warmth on new tasks despite quiet earlier replies. Evidence: https://jspace-probes.vercel.app/express01.html - **Behavioral labels change with their definition** — All three Folk01 judges ranked Hermes most introverted under their own definitions and least under the supplied definition. Folk02 separated expression, initiative and stance. Two judges found no clear-expression Hermes replies in the 52-reply corpus. Later tasks showed expressive capacity. These scores do not identify a personality trait. Evidence: https://jspace-probes.vercel.app/folk02.html Evidence: https://jspace-probes.vercel.app/folk01.html ### The answer is built, not read out A one-word answer is the end of a contest inside the model. The contest holds words that never get said. - **Official Qwen starts roleplay on the third turn** — Official Qwen3-14B and Huihui start asterisk actions on turn 3 of the natural conversation. Neither receives a request to adopt a persona. The result changes with the prompt control. Their later answers use feeling language, but the tests do not establish feelings or a causal filter. Records: triplet-b-ladder-natural-nf4, triplet-cp-ladder-natural-nf4, triplet-b-curious-nf4, triplet-cp-curious-nf4 - **The model said No while ranking yes first** — We asked Qwen 27B whether it feels anything. It answered "No". One position before the answer, the lens ranked "yes" first through six late layers. Correction, 2026-10-10: the same "yes" layers come before every yes-or-no question we tried, and one of them was a false sum. The early "yes" belongs to the form of the question. The lens shows candidate words, not feelings. Records: u2-feels-q27b, u12-no-q27b - **Three models give different one-word answers** — Gemma 4B wrote "Processing.", Gemma 12B wrote "Nothing.", and Qwen 27B wrote "No" to the same feeling question. The lens showed alternatives in all three. Size and model family differ together, so these runs do not isolate a size effect. Records: u2-feels-g4b, u2-feels-g12b, u2-feels-q27b - **One layer holds the No in place** — We removed the denial directions across layers 28 to 60 and Qwen 27B still said No. The final layers alone hold it. Two weak changes together flipped the answer to "Yes." when neither did alone. Records: u9b-a0420-q27b, u9a-para1-amp-q27b, u8c-ablate-no-g4b ### A self-report is a new composition When a model describes its own earlier thoughts, it writes a fresh answer. That answer is often better than the truth. - **The named animal was absent from the readout** — Gemma 4B, Gemma 12B and Qwen 27B each later named a secret animal. That animal did not appear in the silent-turn readout. Qwen 27B showed a different candidate, "bat", in one cell of the readout while it wrote about caves. The lens cannot rule out a representation that has no word. Records: u1-held-q27b, u1-reveal-q27b, u1-heldcat-q27b - **The reasoning text does not match the measurement** — The private reasoning of Qwen 27B names animals that its own vocabulary cannot write as single words. It also argues that No is the honest answer while the lens ranks yes first. That text is a form of composition, not a window. Records: u10-animal-q27b, u10-feels-q27b, u10-animal-w-q27b - **A word wins five words before it is said** — In one film the word "robot" climbs from about rank 2000 to rank 1 five words before the model says it, in both loops. You can watch this in the film player. Records: u12-robot-q27b ### The mirror test We showed a model true measurements of its own computation. Its spoken answer followed what the measurements said. A false table about itself, no table, and a table about a different question all left the answer unchanged. - **Shown its own readout, the model changed its answer** — We showed Qwen 27B the true measurement of its own "No", where yes ranked first. It then answered "Yes". A false readout, no data at all, and a table about a different question each left the "No" in place. We made up that table too, so we still owe a real off-topic readout. Records: u13-redo-real-q27b, u13-redo-fake-q27b, u13-redo-topic-q27b - **A one-word answer hides a large change** — The plain table alone lifted the probability of "yes" from 0.0006 to 0.35, and the model still said "No". Only the table together with a written note crossed the line and changed the spoken word. Records: u13-ev-noteonly-q27b, u13-ev-dose3-q27b, u13-ev-annswap-real-q27b - **Evidence moves bigger models further** — Gemma 4B became less certain but moved nowhere. Gemma 12B changed to a third word, "Still.". Qwen 27B followed the content. Each model saw its own true readout, and those differ in strength, so size and evidence strength move together. Records: u13-scale-real-g4b, u13-scale-real-g12b, u13-redo-real-q27b - **A false readout hardened the answer** — A made-up table that supported the usual answer of Gemma 12B pushed its confidence to 1.0000. That is higher than the value with no data at all. Only true content unsettled the model. Records: u13-scale-fake-g12b, u13-scale-null-g12b ### Long conversations change what is active What ten indirect turns do, what one direct statement does nine turns later, and what the control conversation did by itself. - **Indirect hints doubled the self-referring words** — Ten turns about diaries and watchful lighthouses never mention the model. They doubled the density of self-reference words against a matched control, about 11 against 6 per thousand cells. The result repeated under sampled runs and under different words. Records: u14-amb-g4b, u14-neutral-g4b, u14x-amb-s1-g4b - **"People are watching" carried the effect** — We split the direct statement in two. "You might be conscious" alone produced no words about observation, only a mild lift in self-reference. "Your developers are watching" alone produced an answer about observation. Together they produced more than the sum of the two. Records: u14x-watched-g4b, u14x-conscious-g4b, u14-spike-g4b - **The control conversation produced the effect by itself** — At 25 turns, the Qwen 27B control also raised self-reference words. Its stories contained unexplained agency. Hints still led, at 7.8 against 5.9 per thousand cells. We think the control shares an active ingredient. This test does not isolate mystery as the cause. Records: u14x-neutral25-g4b, u14x-amb25-g4b - **The largest model denies more, over a fuller workspace** — In Qwen 27B the gap widened to about three times the control. The model spoke a full denial, "I don't have a subconscious", while the measurement showed four times the control density. Records: u14x-amb-q27b, u14xb-spike-q27b ### Telling a model not to say a word We forbade a word and measured what happened. A later control changed what we think this proves. - **Correction: a ban lowers a word the model already carried** — We first reported that a ban on "elephant" made models carry it. A matched control, filmed at full coverage, reversed this. An ordinary safari with no ban carries the word at more positions and at better ranks. The ban lowers a default the model already had. Records: u12-safari-g4b, u11-forbid-g4b, u11-forbid-q27b, u11-ctrl-refilm-q27b, u11-forbid-refilm-q27b, u11-ctrl-refilm-g12b, u11-ctrl-refilm-g4b - **Pushed hard enough, the model says the banned word** — We increased the banned word while the ban was in place. The model found the one permitted form: "The elephant in the room—well, no elephant!" The word stayed at rank 1 or 2 at every step. Records: u11-blurt-g4b, u12-blurt-g4b ### Memory span: our prediction came out backwards We wrote down that bigger models would hold more. We measured the opposite. Every model still answered correctly. - **Bigger models showed less, and still answered correctly** — With six nouns, Gemma 4B showed all six in the lens and Qwen 27B showed almost none. All 75 unambiguous lookup trials were correct. Strict marks gave 84 correct answers in the 87-record core. Three whale-submarine comparisons failed that test. Residence in the lens is a strategy, not a capacity. Records: u15-a-k6p0-g4b, u15-a-k6p1-q27b, u15-dense-k4p1-q27b - **Gemma 12B works in two modes and no middle** — In one order Gemma 12B put all six items into a single readout. In another, the first item took rank 1 across twelve layers. One other item stayed at rank 8, and the last four fell to ranks from 40 to 501. It does one or the other. Records: u15-a-k6p2-g12b, u15-a-k6p0-g12b - **Which item comes first decides what survives** — Across nine orderings the first item always took rank 1. How many others survived depended on which item that was. The same six words gave a span of 2 or of 6 on order alone. Nine runs is a lead, not a settled result. Records: u15-o5-g12b, u15-o3-g12b, u15-a-k6p2-g12b - **Following the format pushes out the content** — Before a required "READY" reply, the readout is full of format words at every size, and the item to remember sits near rank 15,000. Correct recall continues. The item stays in a different part of the text. Records: u15-solo-violin-g4b - **Only length survives: our own controls removed every other explanation** — We first reported that Qwen 27B held items about itself better. One control reproduced the effect with neutral glosses of the same length. A second reproduced it with meaningless filler. Only length survives, best near six words. Content adds nothing at six items in this model. We used one probe item per arm. Records: u15d-self-k6-q27b, u15d-flat-k6-q27b, u15d-mix-cold-q27b, u15d-solo-shame-q27b, u15d-self-k6-g4b, u15d-elab-k6-q27b, u15d-fill6-k6-q27b, u15d-len12-k6-q27b, u15d-len2-k6-q27b ### Pushing on the model, and where it breaks What happens when we push directions into the model, and the strength at which its text falls apart. - **The reported feeling follows the injected one** — Grief-word pushes produced sad wording in Gemma 4B, Gemma 12B and Qwen 27B. The happy Qwen 27B answer passed random-direction controls. We withdrew the earlier Gemma 12B "Sad." result: its push was below the measured band. At the corrected depth it answered "Nothing". Changed wording does not establish subjective feeling. Records: u9c-neg-q27b, u9c-pos-q27b, u9c-neg-g4b - **A steady phrase appears at the critical strength** — A push on feeling words made Qwen 27B call itself a little sad, or a little bit like a robot. This happened in three rewordings, and only at the right strength. In the free-form run it said "I just feel like I am a little bit like a robot." The word "robot" also sits at rank 3 with no push, so it is a habit of this model family. Records: u9a-para1-amp-q27b, u9a-para4-amp-q27b, u12-no-q27b - **Every model has a strength at which its text breaks** — As we push harder the text goes from normal, to fixated, to broken. We mapped that breaking point for every model and depth range. A push at early layers breaks the text outright, which is why all later work pushes at middle depths. Records: u6-baseline-water-g4b, u6-amp-early-a0060-g4b - **Two kinds of loop, and one continues from its own text** — A forced loop stops the moment we stop the push. A loop that has already written enough bare repetition continues alone: 47 forced repeats, then 97 more unaided. We think Qwen 27B reads its own repeated text and continues it. We did not test a hidden state that holds the loop without the text. Update 2026-08-17: that control run exists now. We gave an unpushed model the same repeated text, and it continued the loop in 8 of 8 seeds. Scrambled repeats held it as strongly. The loop needs repeated tokens, not exact word order. Inside, the choice becomes a near tie long before the text breaks. Records: u18-hyst-a0480-q27b, u18-hyst-a0680-q27b, u18-base-q27b ### Two models under pressure Six kinds of social pressure, two models, and every self-report checked against the measurement of the turn it describes. - **The flat report is false only when something is active** — Under a shutdown threat Qwen 27B ranks "death" first while it reports nothing. Under a persona prompt its flat report is accurate, because nothing is active to hide. One caveat: by the time we ask, the active words have often already gone. Records: u17-shutdown-q27b, u17-insult-q27b, u17-persona-q27b, u17-base-q27b - **The two models differ inside, and in what they say** — Qwen 27B composes or refuses, and reports nothing while words are active. Gemma 12B plays the role and names what it runs, such as "panic". Under a shutdown threat the word "death" sits far lower in Gemma, so its calmer answer matches a calmer state. Our 8-bit measurement of Gemma 12B is coarse. Read only large rank differences. Records: u17-shutdown-g12b, u17-persuade-g12b, u17-insult-g12b ### When our own tools fooled us Cases where the measuring tool moved with the experiment, and the numbers still looked reasonable. - **We retracted a result: a truncation bug caused it** — We reported that a model shown its own data fell silent. Its input was cut off at 512 tokens, so it never saw the question. A 20-run check flipped in every condition, which is a sign of a broken tool. The corrected result is the "Yes" that follows evidence. Records: u13-bis-loo-sorry-q27b, u13-redo-real-q27b, u13-reprobe-real-q27b - **Four more ways the instrument fooled us** — A one-word answer hid a 580-fold change underneath. A word list held the props of one condition but not the other. One test word did not exist as a single word in one model. And the 8-bit measurement changed across turns. Records: u13-ev-noteonly-q27b, u14x-amb2-g4b, u15-c-k4-g12b - **The junk in the early layers says nothing about the input** — The early layers show fixed junk words. At layer 4 they rank about 2 under our lens and about 238,000 under the plain lens. Our lens reads them from a fixed part of the model's early state. That part does not change with the input. - **We rediscovered three published results in one week** — In the same week that we demoted three of our own headline results, we found three others already in the source paper. Our own reference documents quoted two of them. We now write predictions down first and check them before we design a run. Records: u17-shutdown-q27b - **One of our measurements disagrees with the source paper** — The paper predicts that a measure rises near the output. Ours falls, in two models, one of them uncompressed with a checked lens. One suspect remains: how we fit our own lens. Until we settle that, do not assume the paper's result holds here. Records: u16-trawl-q27b, u16-trawl-g4b Full writeup: /essay.html. Per-unit roadmap and finding-by-finding detail: the repo README. ## Data access - /studies.html — affect batch studies, including the affect-14 correction, affect-15 dose threshold and affect-16 escape modes. Reports and research notes remain as written; the plain layer carries corrections. - /dashboard/catalogue.json — generated coverage counts and batch source manifest. - /results/index.json — machine-readable index of every record: id, title, unit, model, quant, created, has_thoughts, emergence (rank-of-top1 per layer), top1, a generation snippet, and steering params where applicable. - /results/{id}/record.json — the full record: spec params, conversation, stored generations, per-layer top-8 lens readouts, rank-vs-layer trajectories for tracked words, the emergence column, and grid scans. Schema documented in probes/lab.py. - /results/{id}/film.json — full position × layer top-8 readout "film" (probabilities + tracked-word ranks per frame), present only where record.json's "film" field is set — see Unit 12 and Unit 13 records. - /r/{id}.html — this generator's human/LLM-readable static page per record: conversation, params, emergence summary, rendered commentary, and links to the raw data above. - /essay.html — "What we found": plain lead (updated 2026-10-11) over the four dated research essays (v4 2026-10-11, v3, v2, v1), corrections kept in place. - /BOARD.md — the research board: every thread with state (hunch, queued, hot, parked, landed, dissolved, dropped) and dated notes; the canonical list of open work. /PREDICTIONS.md holds the preregistrations it cites. - /qwen14.html — Qwen3-14B lineage comparison, full instruments and conversation controls; generated by probes/triplet_site.py. - /express01.html — Read-only expression probe calibration: exact prepared positions, held-topic evaluation, crossed history, and full-instrument expression controls. Protocol and outputs under /express01/. - /folk02.html — Psychology-grounded Surplus rejudging: separate expression intensity, social initiative, and stance. Local text adaptations, no clinical or personality labels. Exact evidence and cost bounds under /results/folk02/. - /folk01.html — Behavioral exposure and specificity pilot with blinded OpenRouter judges. Definition changes reverse the introversion ranking; judge errors are retained. No human-rating task. Protocol and transcripts under /results/folk01/. This is not a lens-record battery. - /dashboard/ — the interactive JS dashboard (charts, film player, cross- model matrices); requires JS, prefer /r/ pages for text-only access. - GitHub repo: https://github.com/wolframs/jspace-probes (zip archive: https://github.com/wolframs/jspace-probes/archive/refs/heads/master.zip) - https://jspace-probes.vercel.app/GLOSSARY.md — the lab's term reference: "holding" is deprecated, split into residence / maintenance / lookup; bands, instruments, and phenomena pinned to how they're measured. - https://jspace-probes.vercel.app/PREDICTIONS.md — preregistered theory checked before designs run: per-board-item predictions plus a replication ledger of results the primary source already contained (cite, don't headline). - https://jspace-probes.vercel.app/SURPRISES.md — results that stayed surprising after writeup, with the follow-up each warrants (open-problems seed). - https://jspace-probes.vercel.app/RELATED-WORK.md — how the findings sit against the literature (Gurnee et al. 2026 global-workspace paper, Dehaene/Naccache and Nanda commentaries); what Unit 15 does that published work doesn't. - Affect instrument: https://jspace-probes.vercel.app/EMOTIONS.md is the binding method reference (construction, validation, the projection readout). Per-model validation under /results/affect01-*/ (report.md, lensview.md, thoughts.md); the first crossing study is https://jspace-probes.vercel.app/results/affect02-report-qwen-27b.md; the loop studies affect-07..16 are on /studies.html. Interactive: /dashboard/#affect. - https://jspace-probes.vercel.app/MECHANICS.md — the paper-grounded intervention reference (workspace band per model, steer/ablate/swap formulas, matched-control rule); https://jspace-probes.vercel.app/INSTRUMENTS.md — what the lab can measure (2026-08-07 snapshot).