Latent reasoning replaces natural-language chains of thought with compact continuous "soft-token" representations, reducing the number of intermediate tokens that must be decoded autoregressively. We use a small external encoder to induce latent reasoning in a frozen backbone model. The encoder iteratively maps the backbone's hidden states to new latent blocks, constructing a latent reasoning prefix, after which the frozen model writes its remaining reasoning and its answer as text. Our method, INTACT, trains this encoder through distillation to reproduce the effect of written reasoning steps while keeping the model's behavior close to that of the frozen backbone, and then reinforces it on answer correctness. Across four frozen backbones from 1B to 8B, INTACT improves both GSM8K and average out-of-domain accuracy, including GSM8K gains from 75.8% to 79.3% on Llama-3.2-3B and from 77.6% to 79.7% on Qwen2.5-3B. It also reduces end-to-end latency per problem by 19% on Llama-3.2-3B and outperforms the evaluated latent-reasoning baselines at the 3B and 8B scales. Beyond the mathematics setting, the same recipe trained on a multi-domain corpus improves the frozen backbone on twelve evaluation benchmarks spanning mathematics, science, and commonsense, without task-specific adaptation.
Figures & tables
Figure 1: Accuracy and total positions across three reasoning domains. A single INTACT encoder is evaluated on mathematics, science and commonsense benchmarks. INTACT and Nemo-SFT are both trained on the Llama-Nemotron mixture. INTACT trains only the encoder and leaves Llama-3.2-3B frozen, whereas Nemo-SFT updates the language model via supervised fine-tuning. Section 4.5 describes the datasets and evaluation setup.
Figure 2: Stage 1, progressive substitution via distillation. The language model M is frozen and only the encoder fθ is trained. At depth i , the encoder produces vi from M ’s states over x and the preceding blocks v1:i−1 , completing the student prefix [x,v1:i] against the teacher’s [x,z1:i] . The substitution loss Lsub distills pT into pS over the shared continuation ui , without directly aligning vj and zj . Stage 2, latent-policy refinement , not shown, then refines the same encoder for answer correctness using group-relative policy gradients, leaving M frozen.
Frozen
INTACT Stage 1
INTACT Stage 2
GSM8K ↑
OOD ↑
GSM8K ↑
OOD ↑
GSM8K ↑
OOD ↑
Llama-3.2-1B
44.0
47.8
44.2
51.3
48.7
54.5
Llama-3.2-3B
75.8
66.5
77.9
69.1
79.3
68.8
Llama-3.1-8B
72.3
53.9
83.7
71.1
83.6
72.1
Qwen2.5-3B
77.6
74.6
78.0
75.0
79.7
75.1
Table 1: Accuracy (%) at a 768-token generation cap across four backbones. Both INTACT stages are trained on GSM8K-Aug. OOD is the average on SVAMP, GSM-Hard and MultiArith.
Backbone
Method
GSM8K ↑
SVAMP ↑
GSM-Hard ↑
MultiArith ↑
OOD ↑
Llama-3.2-1B
No-CoT †
30.9
44.1
7.1
70.9
40.7
Aug-SFT †
61.6
66.7
15.6
99.3
60.5
Nemo-SFT
53.1
59.3
15.0
92.8
55.7
LOTUS ‡
57.3
60.9
12.7
98.3
57.3
MUX †
56.7
63.6
13.0
98.5
58.4
CODI †
55.6
61.1
12.8
96.1
56.7
Table 2: Accuracy (%) on four mathematics benchmarks. Our Frozen, SFT, and INTACT evaluations use a 768-token cap. CODI, MUX, and LOTUS use their source protocols, including reproductions. † and ‡ mark results quoted from MUX ( Suleymanzade et al., 2026 ) and LOTUS ( Fan et al., 2026 ) , respectively. OOD is the mean of SVAMP, GSM-Hard, and MultiArith. Shading marks INTACT, with ± denoting standard deviation over three encoder seeds. Best and second-best latent methods are bold and underlined . A dash marks a configuration for which no comparable trained checkpoint is available at that scale.
Figure 3: GSM8K accuracy versus total positions on Llama-3.2-3B , with INTACT trained on GSM8K-Aug. Frozen, INTACT, and Nemo-SFT use a 768-token cap. CODI, MUX, and LOTUS follow their source protocols. Counts include latent positions where applicable.
Frozen LM
INTACT Stage 1
INTACT Stage 2
Backbone
GSM8K ↓
OOD ↓
GSM8K ↓
OOD ↓
GSM8K ↓
OOD ↓
Llama-3.2-1B
252
210
241
202
215
171
Llama-3.2-3B
261
224
225
190
195
165
Llama-3.1-8B
754
745
269
207
182
155
Qwen2.5-3B
273
203
246
196
145
121
Table 3: Mean generated tokens at a 768 -token cap, for encoders trained on GSM8K-Aug. Both stages shorten generation on every backbone, in domain and out, and Stage 2 is shorter than Stage 1 in every row. OOD is the average over SVAMP, GSM-Hard and MultiArith.
System
Tokens ↓
ms/token
Prefix ms ↓
Generation ms ↓
Total ms ↓
Frozen backbone
260.8
16.03
—
4,179.6
4,179.6 ( 1.00× )
INTACT
195.5
16.67
127.5
3,258.1
3,385.6 ( 0.81× )
Table 4: Mean end-to-end latency per GSM8K problem on Llama-3.2-3B , measured over the full test split at batch 1 on one H100 NVL. The saving comes from emitting fewer tokens, not from faster decoding.
Figure 4: Left: ablations on Qwen2.5-3B . Each block varies one design decision, and shaded rows indicate settings used by INTACT. Right: substitution depth sweep on Llama-3.1-8B . At depth i only the first i of K blocks are supplied, so i=0 is the frozen backbone and i=K the full Stage 1 prefix. Both panels use one encoder seed. OOD is the macro-average over the three held-out benchmarks.
GSM8K
OOD
Acc. ↑
Tokens ↓
Acc. ↑
Tokens ↓
Reference systems
Frozen backbone
72.3
754
53.9
745
INTACT Stage 1
84.4
269
72.1
207
INTACT Stage 2
83.7
182
72.8
155
Architecture variants (retrained)
Table 5: Architecture and prefix controls on Llama-3.1-8B . Architecture variants retrain the encoder with the latent blocks constructed differently. Prefix interventions instead modify a trained Stage 1 prefix only at inference. OOD averages SVAMP, GSM-Hard and MultiArith. Each trained arm uses one encoder seed.
Figure 5: One encoder across twelve benchmarks. Accuracy on Llama-3.2-3B across mathematics, science, and commonsense. Each benchmark line connects the frozen backbone to Stage 2, with Stage 1 marking the intermediate result. Both Nemo-SFT and INTACT are trained on the Llama-Nemotron mixture. The same INTACT encoder is used on every benchmark.
System
Math ↑
Science ↑
Comm. ↑
Frozen backbone
68.8
57.4
42.6
INTACT Stage 1
70.4
69.1
49.3
Constant prefix, Stage 1
70.0
59.9
44.9
INTACT Stage 2
71.1
73.6
61.6
Constant prefix, Stage 2
70.9
64.6
48.5
Table 6: Conditioned encoder versus a learned constant-prefix control in the diverse-domain setting on Llama-3.2-3B . Results use the full test splits. Math , Science and Comm. are macro-averages over four, five and three benchmarks respectively.
Appendix figures & tables17 assets
Supplementary material from the paper’s appendix.
Appendix
Method
Frozen
Reads M ’s states
Recurrent subst.
Interpretable
Multi-domain artifact
Coconut ( Hao et al., 2025 )
×
✓
✓
×
×
CODI ( Shen et al., 2025 )
×
✓
✓
✓
×
SIM-CoT ( Wei et al., 2026 )
×
✓
✓
✓
×
LOTUS ( Fan et al., 2026 )
×
✓
×
✓
×
MUX ( Suleymanzade et al., 2026 )
×
✓
✓
✓
×
Soft Thinking ( Zhang et al., 2025 )
✓
×
✓
✓
×
Appendix
Table 7: Design properties of representative latent-reasoning methods. Checkmarks record reported design choices or evidence, not a ranking of the methods.
Method
GSM8K
SVAMP
GSM-Hard
MultiArith
OOD
SoftCoT
81.0/250
81.0/187
30.6/327
95.5/145
69.0/220
INTACT
82.3/192
83.5/143
30.2/231
96.3/128
70.0/167
Appendix
Table 8: Comparison with SoftCoT on Llama-3.1-8B-Instruct under the SoftCoT evaluation protocol. Each entry reports accuracy (%)/mean total tokens, including latent and generated tokens. OOD is the macro-average over SVAMP, GSM-Hard, and MultiArith. Every entry is measured here. We train SoftCoT with the authors’ script and evaluate both methods under their protocol. INTACT uses mathematics training (GSM8K-Aug).
Symbol
Meaning
Model and data
M , pM
frozen backbone and its next-token distribution
V , dM
vocabulary and input-embedding dimension of M
x , y
token sequences representing the question and reference answer
z1:S
reference reasoning trace of S steps, zi∈Vni
E(x)
token embeddings of the token string x
Appendix
Table 9: Notation used in this paper.
Figure 6: Progressive substitution on a mathematics example. GSM8K-Aug provides five ordered calculations. The question is shortened here for space. At full substitution, the student replaces the first four written steps z1:4 with latent blocks v1:4 , while the final calculation z5 and answer remain the shared continuation. The frozen language model evaluates both prefixes, and Lsub at depth i=4 matches the resulting continuation distributions. Vertical alignment denotes which written step each latent block replaces, not a claim that the latent vectors decode to that step.
Llama-3.2
Llama-3.2
Llama-3.1
Qwen2.5
1B-Instruct
3B-Instruct
8B-Instruct
3B (base)
Stage 1: progressive substitution
latent blocks K
4
4
4
4
vectors per block c
4
4
4
4
learning rate
10−4
10−4
10−4
10−4
weight decay
0.01
0.01
0.01
0.01
Appendix
Table 10: Hyperparameters for both stages. The optimizer is AdamW throughout.
Frozen LM
INTACT Stage 1
INTACT Stage 2
Backbone
Budget
GSM8K ↑
OOD ↑
GSM8K ↑
OOD ↑
GSM8K ↑
OOD ↑
Llama 3.2-1B
128
13.2
33.4
14.0 ± 0.6
35.8 ± 0.2
17.3 ± 2.6
42.1 ± 3.0
256
37.8
47.3
40.5 ± 0.9
50.8 ± 0.9
45.5 ± 1.2
54.1 ± 0.4
384
43.7
47.8
43.9 ± 1.0
51.3 ± 1.0
48.5 ± 1.4
54.4 ± 0.5
512
44.0
47.8
44.2 ± 1.0
51.3 ± 0.9
48.8 ± 1.3
54.5 ± 0.4
768
44.0
47.8
44.2 ± 1.0
51.3 ± 1.0
48.7 ± 1.3
54.5 ± 0.4
Appendix
Table 11: Accuracy (%) as a function of the generation budget, with the encoder trained on GSM8K-Aug. GSM8K is the matching test set and OOD averages SVAMP, GSM-Hard, and MultiArith. Stage 1 is progressive substitution alone and Stage 2 adds latent-policy refinement. Columns with ± show mean ± sample standard deviation over three encoder seeds.
Backbone
Condition
GSM8K ↑
OOD ↑
Tok. ↓
Llama-3.2-1B
Frozen (bare)
44.0
47.8
252
Frozen (chat)
47.3
52.2
165
INTACT (bare)
48.7
54.5
215
Llama-3.2-3B
Frozen (bare)
75.8
66.5
261
Frozen (chat)
71.6
66.1
172
INTACT (bare)
79.3
68.8
195
Appendix
Table 12: Prompt sensitivity of the frozen Llama backbones at a 768 -token cap. The two frozen rows differ only by prompt format. The INTACT rows are Stage 2, evaluated with the bare prompt for reference.
Figure 8: Llama-3.2-3B : accuracy against total positions on GSM8K (left) and the out-of-domain macro-average (right). Upper left is better. Frozen and Nemo-SFT are evaluated at the 768 -token cap, and every other system at the operating point it reports.
Figure 9: Llama-3.1-8B : accuracy against total positions on GSM8K (left) and the out-of-domain macro-average (right). Upper left is better. Frozen and Nemo-SFT are evaluated at the 768 -token cap, and every other system at the operating point it reports.
Figure 10: Qwen2.5-3B : accuracy against total positions on GSM8K (left) and the out-of-domain macro-average (right). Upper left is better. Frozen and Nemo-SFT are evaluated at the 768 -token cap, and every other system at the operating point it reports.
Figure 11: Llama-3.2-3B : accuracy against the generation budget on GSM8K (left) and the out-of-domain macro-average (right). Solid curves keep the language model frozen and dashed curves update it. Every budget is scored from prefixes of one generation pass, so a curve shows what that same run would have returned under a tighter cap.
Figure 12: Llama-3.1-8B : accuracy against the generation budget on GSM8K (left) and the out-of-domain macro-average (right). Solid curves keep the language model frozen and dashed curves update it. Every budget is scored from prefixes of one generation pass, so a curve shows what that same run would have returned under a tighter cap.
Figure 13: Qwen2.5-3B : accuracy against the generation budget on GSM8K (left) and the out-of-domain macro-average (right). Solid curves keep the language model frozen and dashed curves update it. Every budget is scored from prefixes of one generation pass, so a curve shows what that same run would have returned under a tighter cap.
Figure 14: Accuracy against trainable parameters on Llama-3.2-3B , where up and to the left is better. OOD averages SVAMP, GSM-Hard and MultiArith. INTACT trains a 107 M-parameter encoder and never updates the backbone, while the baselines train between 195 M and 3.40 B. No method here reports a trainable count, so each is derived ( Appendix C.3 ). Mathematics training (GSM8K-Aug), except Nemo-SFT (Llama-Nemotron).
Domain
Benchmark
n
Frozen
Stage 1
Stage 2
Nemo-SFT
Δ
Science
OpenBookQA
500
48.4
63.8
67.6
71.2
+19.2
ARC-Challenge
1172
50.1
65.4
72.6
73.0
+22.5
ARC-Easy
2376
67.5
80.8
86.2
85.5
+18.7
SciQ
1000
77.3
86.0
87.3
86.5
+10.0
MMLU-science
1397
43.8
49.3
54.3
56.8
+10.5
Commonsense
ECQA
2162
52.6
58.5
64.2
67.0
+11.6
Appendix
Table 13: Accuracy (%) of one Llama-3.2-3B encoder across twelve benchmarks at a 2,048 -token budget, trained on the Llama-Nemotron mixture rather than GSM8K-Aug. Each system is a single checkpoint used in every domain, not a per-domain best. Δ is Stage 2 against the frozen backbone. Every split is scored in full. Bold is the best of the three trained systems.
Domain
Benchmark
n
Frozen
Stage 1
Stage 2
Nemo-SFT
Science
OpenBookQA
500
277.0
244.0
80.0
147.0
ARC-Challenge
1172
234.0
240.0
82.0
166.0
ARC-Easy
2376
262.0
237.0
98.0
153.0
SciQ
1000
338.0
191.0
123.0
145.0
MMLU-science
1397
376.0
278.0
148.0
246.0
Mean
297.4
238.0
106.2
171.4
Appendix
Table 14: Mean total positions per problem for the encoder trained on the Llama-Nemotron mixture, at a 2,048 -token budget. INTACT columns include the 16 latent prefix positions as well as the tokens generated, so a number here is comparable across rows and to Figure 1 . Lower is better, and bold is the cheapest system on a row.
Domain
Benchmark
n
Form
Mathematics
GSM8K ( Cobbe et al., 2021 )
1319
number
GSM-Hard ( Gao et al., 2023 )
1319
number
SVAMP ( Patel et al., 2021 )
1000
number
MultiArith ( Roy and Roth, 2015 )
600
number
Science
OpenBookQA ( Mihaylov et al., 2018 )
500
4-way
ARC-Easy ( Clark et al., 2018 )
2376
4-way
Appendix
Table 15: Evaluation benchmarks and scored split sizes, grouped by domain. Every row uses the complete evaluation split after ECQA de-duplication. Form is either a numeric answer or an m -way letter choice.
Chain-of-thought reasoning unfolds in discrete token space: each step is committed as text, errors propagate, and eliciting good traces presupposes traces to imitate. Reasoning instead in a model's continuous representation space - where intermediate states are vectors rather than words - sidesteps these constraints, but leaves open how those latent states should be computed. We approach this along two axes. First, we keep a large language model (LLM) frozen and use it for what it is already good at - modeling and decoding sequences - while a small auxiliary network supplies continuous latent thoughts as input. Second, we produce those latents by recurrence: a tiny recurrent reasoner refines them over many steps, decoupling the depth of computation from the size of the model, so that the latents are a product of iterative processing rather than a single forward pass. We instantiate this as Latent Recurrent Thoughts (LRT): a task-dedicated proposer supplies base latents, a recurrent reasoner refines them through bounded residual corrections, and the frozen LLM decodes the answer. On symbolic reasoning with answer supervision but no reasoning traces (Countdown-4, Sudoku) and on natural-language reasoning (HumanEval, MBPP, StrategyQA), LRT substantially outperforms prior frozen-decoder continuous-space reasoning methods under an identical decoder, prompt, data, and training budget, and outperforms non-thinking-mode chain-of-thought prompting on the same backbone at a small fraction of its inference compute.
Recent work moves intermediate reasoning from natural-language traces into latent or cache-level representations to reduce token overhead and avoid a discrete communication bottleneck. However, this shift also removes a key advantage of textual reasoning: intermediate states are no longer inspectable, making it difficult to determine whether a latent state still preserves the constraints of the original query. As a result, latent reasoning typically operates in an open loop, where a latent state is produced and consumed without an input-anchored fidelity check. We propose ReLAT (Reconstruction-Guided Latent Reasoning At Test Time), a self-supervised test-time training method that closes this loop using the query itself as the reference. Our key observation is that if a latent state faithfully represents a query, the query should be recoverable from it; if the query cannot be recovered, the latent state has lost task-relevant information. ReLAT operationalizes this principle by constructing a differentiable Question -> Latent Thought -> Question cycle and optimizing query reconstruction loss through the latent thought before answer generation. This anchors opaque latent computation to the problem specification it is supposed to represent. Across mathematical reasoning, knowledge QA, and code generation benchmarks on the Qwen family, ReLAT consistently improves over single-model inference, text-based collaboration, open-loop latent collaboration, and alternative test-time training objectives. On Qwen3-8B, ReLAT raises AIME 2024 accuracy from 56.7% to 73.3%, a 16.6-point gain over the strongest open-loop latent baseline.
Xiaopeng Yuan, Haibo Jin, Ye Yu +4
University of Illinois Urbana-Champaign · Google · Florida State University
Chain-of-thought (CoT) reasoning often improves language-model performance by giving models additional computation before answering. However, explicit CoT expresses this computation as a sequence of autoregressively generated tokens. Latent reasoning replaces these tokens with compact continuous states, but most autoregressive latent-reasoning methods retain a left-to-right dependency among latent vectors. We introduce LLoCoT: a looped latent-reasoning framework that replaces left-to-right latent generation with iterative refinement of a compact latent workspace. A shared transformer is reapplied for a small number of refinement iterations, jointly updating the latent slots based on the prompt and the evolving workspace state. Using the refined state, a probabilistic head predicts a distribution from which latent tokens are sampled in parallel and used to condition an autoregressive decoder for answer generation. Training uses continuous representations derived from explicit CoT together with a final-answer prediction loss and likelihood-based supervision of the latent states. Across HumanEval and MBPP, LLoCoT achieves the highest mean among the evaluated methods, performing on par in accuracy with Reasoning SFT, our explicit-CoT baseline, while outperforming the base model, answer-only SFT and NF-CoT. Relative to Reasoning SFT, LLoCoT reduces time to the first answer token by approximately 36× and reasoning-phase latency by approximately 42×, while increasing end-to-end throughput by 9.2%. This design replaces serial thought generation with parallel latent-slot refinement while retaining probabilistic latent modeling and autoregressive answer decoding.