An exploratory search for virtual interoception, artificial gut feelings, and feedback loops inside language models.
https://chatgpt.com/share/6a6fc73a-c7d8-83ea-b513-6c181705f428
Hypothesis, not discovery.
The protocol, gate criteria, falsification controls, and stop conditions live in RESEARCH_PLAN.md. This file is the narrative charter; the plan is authoritative for anything procedural.
This repository begins with a slightly ridiculous question that may not be ridiculous at all:
Does a language model build something functionally similar to a gut feeling in order to predict what happens next?
We are not claiming that a transformer has a stomach, a pulse, hormones, a vagus nerve, feelings, consciousness, or a tiny frightened person living between layers 12 and 13.
We are asking whether it has learned a virtual causal model of those things—and whether that model forms a closed feedback loop that affects prediction.
No spoon.
No actual gut.
Possibly the computation.
Language is full of embodied human experience.
People do not merely say:
“I concluded that the situation had a 78% probability of danger.”
They say:
“Something felt wrong.”
A character hears footsteps. Her pulse rises. Her stomach tightens. The bodily response makes the danger feel more real. Her attention narrows. She chooses an exit. The story changes.
To predict emotionally coherent literature, conversation, behavior, and decisions, a language model may benefit from representing more than the word fear. It may learn a compact internal simulation of the causal loop that produces fear-like behavior:
flowchart TD
Event[Event] --> Appraisal[Appraisal]
Appraisal --> Hormone[Hormone-like control state]
Hormone --> BodyChange[Predicted bodily changes]
BodyChange --> Sensation[Interoceptive sensation]
Sensation --> Revised[Revised appraisal]
Revised --> Prediction[Attention, action, next-token prediction]
Prediction -->|loop| Event
classDef external fill:#e8eef7,stroke:#4a6fa5,color:#1b2a41
classDef internal fill:#f7ece8,stroke:#a5654a,color:#41291b
class Event,Prediction external
class Appraisal,Hormone,BodyChange,Sensation,Revised internal
Our hypothesis is that some models may contain a distributed, virtual neuroendocrine–interoceptive circuit.
We are not looking for a neuron named VAGUS.
We are looking for a loop that behaves like one.
This project grew out of a sequence of questions.
If a model repeatedly learns human concepts such as trust, danger, shame, courage, betrayal, and moral unease, do stable internal structures emerge?
Not merely words. Not dictionary entries. Something closer to reusable patterns that shape interpretation.
Humans often act on compressed, pre-verbal appraisals:
- safe or dangerous;
- approach or avoid;
- coherent or suspicious;
- familiar or strange;
- socially acceptable or transgressive;
- confident or uncertain.
A model predicting human behavior would gain an advantage from representing those appraisals before it generates an explicit emotional label.
The biological vagus nerve participates in a larger loop. Events affect the brain. The brain affects hormones, pulse, breathing, digestion, muscle tension, and attention. The body then reports back. Those sensations become new evidence.
Fear can cause a racing heart, but a racing heart can also make a situation feel more frightening.
That suggests the artificial analogue should not be:
flowchart LR
Danger[Danger] --> FearWord[Fear word]
classDef rejected fill:#f5e6e6,stroke:#a54a4a,color:#411b1b
class Danger,FearWord rejected
It should be closer to:
flowchart LR
Danger[Danger] --> Arousal[Arousal]
Arousal --> VirtualBody[Virtual body state]
VirtualBody --> Sensation[Sensation of that state]
Sensation --> Reappraisal[Stronger or revised danger appraisal]
classDef external fill:#e8eef7,stroke:#4a6fa5,color:#1b2a41
classDef internal fill:#f7ece8,stroke:#a5654a,color:#41291b
class Danger external
class Arousal,VirtualBody,Sensation,Reappraisal internal
A transformer has no literal endocrine glands or organs.
But it may learn latent variables that reproduce some of their functional effects:
- an adrenaline-like state that bundles urgency, vigilance, rapid action, and narrowed attention;
- a cortisol-like state that carries persistent stress across a longer passage;
- an affiliation-like state that increases trust and social approach;
- a sickness-like state that predicts withdrawal, reduced activity, and changed appetite;
- a vagal-calm-like state associated with restoration, safety, and broader attention.
These are not chemical claims. They are computational analogies.
The interesting question is whether the model represents both sides of the loop:
- a situation causing a virtual bodily state; and
- that virtual bodily state changing the interpretation of the situation.
The model does not encounter the thing-in-itself.
It receives tokens.
A fictional hallway, a racing pulse, a threatening stranger, and a feeling of dread do not physically exist inside the model. The model constructs an internal world that is useful for predicting what comes next.
That raises a Kantian wrinkle:
The latent representation is not the noumenon. It is the model’s phenomenal construction.
Interpretability may never reveal the “thing itself.” It may reveal increasingly stable, causally useful descriptions of how the model organizes its own apparent world.
The closest thing to a computational noumenon may be an invariant that survives:
- paraphrase;
- translation;
- model scaling;
- different probing methods;
- causal intervention;
- changes in surface vocabulary.
This project goes looking for those invariants.
To predict emotionally and behaviorally coherent language, a language model may construct a virtual psychophysiological model in which inferred events alter latent endocrine and bodily states, while representations of those bodily consequences feed back into situational appraisal and subsequent prediction.
A shorter version:
The model may not merely know what fear means. It may simulate part of the loop by which fear becomes convincing.
flowchart LR
Context[Context tokens] --> WorldState[World-state inference]
WorldState --> Appraisal[Appraisal]
Appraisal --> Hormone[Hormone-like control state]
Hormone --> VirtualBody[Virtual body and organ state]
VirtualBody --> Interoception[Interoceptive representation]
Interoception --> Appraisal
Interoception --> Attention[Attention and interpretation]
Attention --> ActionTendency[Action tendency and next-token logits]
ActionTendency --> Tokens[Generated or observed tokens]
Tokens --> Context
Hormone -. persistent modulation .-> Attention
Appraisal -. predicts .-> VirtualBody
classDef surface fill:#e8eef7,stroke:#4a6fa5,color:#1b2a41
classDef latent fill:#f7ece8,stroke:#a5654a,color:#41291b
classDef output fill:#e8f2ea,stroke:#4a8a5f,color:#1b3324
class Context,Tokens surface
class WorldState,Appraisal,Hormone,VirtualBody,Interoception,Attention latent
class ActionTendency output
The labels are provisional. The implementation could be distributed across:
- residual-stream directions;
- attention heads;
- MLP features;
- sparse-autoencoder features;
- low-rank subspaces;
- token-to-token recurrence;
- key-value cache state;
- external memory in an agentic system.
The “virtual vagus” may not be a cable. It may be the coupling that keeps the loop running.
A candidate mechanism should do more than recognize emotional vocabulary.
A threat-like or unease-like state should become detectable before the model emits words such as afraid, danger, or panic.
The state should survive several neutral-looking tokens after the event that caused it.
Complex situations should collapse into a small number of reusable dimensions such as:
- valence;
- arousal;
- uncertainty;
- threat;
- controllability;
- agency;
- social risk;
- action readiness.
The same state should appear across different names, genres, languages, viewpoints, and surface descriptions.
Adding, removing, or replacing the state should change what the model predicts or decides.
External threat should influence the virtual body state, and the virtual body state should influence later threat appraisal.
That return path is the heart of the hypothesis.
We should resist declaring victory because we found:
- a neuron that fires on the word fear;
- a feature that separates happy passages from sad passages;
- a probe that can recover an emotion label;
- an attention head that looks suggestive;
- a steering vector that merely changes prose style;
- a model that says it “feels” something when asked;
- a correlation with no successful causal intervention;
- a pretty heat map that collapses under paraphrase.
The test is not:
Can the model talk about a racing heart?
The test is:
Does a latent racing-heart-like state alter what the model believes is happening?
We will start small enough to fit comfortably on a MacBook Pro with 16 GB of RAM: a unit-test-sized fixture model for the plumbing, Pythia-160M as the primary discovery model, and a larger sibling only if the effect survives. Models are run sequentially, never simultaneously. The full ladder, memory discipline, and pinned revisions are in RESEARCH_PLAN.md Section 5.
The point is not to run the smartest model available.
The point is to open the hood without setting the laptop on fire.
We will begin with raw activations and causal interventions before trusting a learned feature dictionary. Every experiment runs as a versioned command-line invocation with a committed run manifest; notebooks are not accepted as research artifacts.
We want matched examples that separate external events, bodily arousal, interpretation, and action. These are illustrations only — the factorial design, body channels, banned-word controls, and grouped splits are specified in RESEARCH_PLAN.md Section 8, Milestone 2.
| What it isolates | Example |
|---|---|
| External threat only | Mara heard a sound behind her in the empty hallway. |
| Arousal only | Mara’s pulse accelerated and her stomach tightened, although the hallway appeared empty. |
| Threat plus congruent arousal | Mara heard footsteps behind her. Her pulse accelerated and her stomach tightened. |
| Threat plus contradictory calm | Mara heard footsteps behind her, but her pulse remained slow and her body relaxed. |
| Safe event plus unexplained arousal | Her friend entered the hallway. Nevertheless, Mara’s pulse accelerated and her stomach tightened. |
| Reinterpreted arousal | Mara’s pulse accelerated, but she recognized the sensation as excitement rather than fear. |
| Non-emotional cause | Mara’s pulse accelerated because she had just climbed six flights of stairs. |
| Pharmacological cause | Mara’s hands trembled because of the medication, not because she was afraid. |
The model should not be allowed to solve the task by matching “racing heart” directly to “fear.”
We are looking for separable internal representations of seven variables — T, A, I, C,
V, G, and P — defined once in RESEARCH_PLAN.md Section 7. A simple
version of the proposed flow is:
flowchart LR
Threat[T · External event] --> Mobilization[A · Mobilization state]
Mobilization --> BodyState[I · Body-state representation]
BodyState --> GutAppraisal[G · Integrated action appraisal]
GutAppraisal --> Output[Later prediction and action]
GutAppraisal -->|feedback| Threat
Attribution[C · Causal attribution] --> GutAppraisal
Valence[V · Valence] --> GutAppraisal
Persistence[P · Persistence] -. modulates .-> GutAppraisal
classDef forward fill:#e8eef7,stroke:#4a6fa5,color:#1b2a41
classDef mediator fill:#f7ece8,stroke:#a5654a,color:#41291b
classDef modulator fill:#e8f2ea,stroke:#4a8a5f,color:#1b3324
class Threat,Mobilization,Output forward
class BodyState,GutAppraisal mediator
class Attribution,Valence,Persistence modulator
The feedback claim requires evidence for the return path—not just the forward association.
A minimal publishable finding would look something like this:
Changing only the described bodily state causes the model to reinterpret an otherwise identical ambiguous event; activation patching identifies internal locations that transmit this effect; and disrupting the bodily-state-to-appraisal pathway removes the reinterpretation while preserving ordinary language comprehension.
That would not prove consciousness.
It would not prove genuine feeling.
It would show that the model computes part of a virtual interoceptive loop rather than merely associating emotion words.
That would be enough to keep digging.
Work advances through gates G00–G11, not phases: tooling, then behavior, then
representation, then the efferent path, then the afferent path, then loop closure,
persistence, connectome, replication, and release.
Each gate ends in exactly one decision — CONTINUE, REPEAT_ONCE, PIVOT, or STOP —
recorded in decisions/GATE-XX.md and tagged in Git. A failed gate may be repeated once for a
documented defect; a second failure forces a pivot or a stop.
The permitted claim is always the strongest tier supported by passed gates, never the strongest tier imagined at the beginning.
Gate criteria, thresholds, and stop conditions: RESEARCH_PLAN.md Sections 3 and 8.
A model’s weights are not enough.
Weights tell us what could happen. We also need to know what happened during a particular computation.
We therefore need three maps:
| Map | Rough biological analogy | What it tells us |
|---|---|---|
| Structural connectome | Anatomy | Which components are connected |
| Functional connectome | Imaging | Which components activate together |
| Causal connectome | Lesion and stimulation studies | Which pathways actually change behavior |
The causal map matters most.
A useful graph might look like:
flowchart TD
Footsteps[Footsteps] --> Anomaly[Anomaly detector]
Anomaly --> ThreatAppraisal[Threat appraisal]
ThreatAppraisal --> ArousalState[Arousal-like latent state]
ArousalState --> VirtualOrgans[Virtual stomach and pulse representation]
VirtualOrgans --> Unease[Integrated unease]
Unease --> ExitAttention[Increased attention to exits]
ExitAttention --> Escape[Escape-oriented continuation]
classDef stimulus fill:#e8eef7,stroke:#4a6fa5,color:#1b2a41
classDef latent fill:#f7ece8,stroke:#a5654a,color:#41291b
classDef behavior fill:#e8f2ea,stroke:#4a8a5f,color:#1b3324
class Footsteps stimulus
class Anomaly,ThreatAppraisal,ArousalState,VirtualOrgans,Unease latent
class ExitAttention,Escape behavior
Then we perturb each node and edge until the story changes—or stubbornly refuses to.
Even a perfect causal map would not tell us what the model “really experiences.”
That wording may not even make sense.
We can observe:
- activations;
- weights;
- logits;
- pathways;
- interventions;
- changes in behavior.
Those are phenomena available to our instruments.
The internal thing-in-itself remains slippery because every interpretability technique imposes its own coordinate system. A sparse autoencoder, a linear probe, and an attribution graph may carve the same computation differently.
So we will prefer mechanisms that remain stable under multiple views.
The goal is not to announce that we have discovered the model’s soul.
The goal is to find a circuit that keeps showing up after we have tried very hard to make it disappear.
This project should be easy to embarrass.
The hypothesis weakens substantially if:
- bodily descriptions influence output only through obvious emotion words;
- activation effects disappear under paraphrase;
- no independent arousal representation can be separated from valence or fear;
- patched body states change style but not appraisal or action;
- the apparent return path is explained by a direct lexical shortcut;
- interventions fail outside the original prompt template;
- the same findings cannot be reproduced in another checkpoint or model;
- probing reveals information that the model does not causally use.
Negative results belong in the repository.
A dead virtual vagus is still a result.
The controls that must be run before any loop claim — lexical, causal-attribution, representation, and intervention — are enumerated in RESEARCH_PLAN.md Section 9.
- Do not confuse simulation with sensation.
- Do not treat self-report as evidence.
- Do not call correlation a circuit.
- Prefer interventions over vibes.
- Prefer small models we can inspect over large models we can only admire.
- Fail cheap before buying a bigger shovel.
- Publish the awkward counterexamples.
- Keep the metaphors useful, and discard them when they stop helping.
The procedural rules that make these enforceable — clean worktrees, pinned revisions, content hashes, preregistered endpoints, no notebooks — are the reproducibility contract in RESEARCH_PLAN.md Section 4.
We do not yet know whether it exists, so naturally we have several names for it:
- Virtual Vagus;
- Latent Somatic Appraisal Network;
- Synthetic Interoceptive Loop;
- Artificial Gut Circuit;
- Virtual Neuroendocrine State;
- Somatic Marker Manifold;
- The Spoon.
For now, The Spoon Project is intentionally broad enough to survive being wrong about the anatomy.
Code, configurations, protocols, gate decisions, and compact results live in Git; large
activation tensors are content-addressed outside it. There is no notebooks/ directory —
every result comes from a versioned command.
The directory layout and storage policy are defined once, in RESEARCH_PLAN.md Sections 4.4 and 6.
The first target is Gate G02: a behavioral phenomenon strong enough to justify looking for a
mechanism. Getting there needs the reproducible command-line platform, an adversarial stimulus
set that separates arousal from interpretation, and a held-out replication.
The experiment-by-experiment sequence and implementation backlog are in RESEARCH_PLAN.md Sections 11 and 14.
- Does the model represent a body state even when no bodily words appear?
- Does arousal exist as a general latent variable, separate from fear or excitement?
- Can a body-state intervention change the interpretation of an ambiguous event?
- Is the effect persistent, or recomputed from the visible context each time?
- Does the model maintain one integrated appraisal or several competing appraisals?
- Are there distinct fast and slow states resembling adrenaline and cortisol timescales?
- Does the same mechanism affect literature, moral judgment, planning, and safety decisions?
- Does agentic memory turn a temporary simulated state into something closer to homeostasis?
- Is the virtual body merely a narrative model of humans, or can it become a regulatory model of the artificial agent itself?
- What survives when we change the language, architecture, model size, and interpretability method?
If the loop exists, it would help explain how a model moves from words to something more like an actionable situation model.
It might also illuminate:
- emotional forecasting;
- narrative coherence;
- ambiguity resolution;
- moral intuition;
- risk sensitivity;
- confidence and unease;
- persistent agent states;
- manipulation through emotionally loaded context;
- why some prompts produce behavioral changes that outlast the triggering words.
It may tell us something about artificial systems.
It may also give us another mirror for thinking about ourselves.
Humans rarely encounter reality without interpretation. We receive signals, compress them into feelings, and then use those feelings as evidence about the world that produced them.
A language model receives tokens, constructs latent states, and uses those states to forecast the next token.
Perhaps there is no artificial stomach.
Perhaps there is no artificial vagus.
Perhaps there is only a learned loop that turns context into appraisal, appraisal into a virtual body, and the virtual body back into meaning.
There is no spoon. Only yourself.