explainx.ainewsletter3.5k
TrendingNewsPathwaysSkills
Pricing
explainx.ai

Upskill in AI — 16 free pathways, live workshops & bootcamps, and 50+ courses from practitioners. Plus the skills, tools, and MCP servers to practice on.

follow us

custom AI agents

[email protected]

get started

Find your pathTake Free Evaluation

learn

pathways — start freeworkshopsbootcampscoursescertificationsmock testsexplainx universitycorporate traininglearn skills & mcp

discover

skillsmcp serversexplainx mcptoolsagentsllmsdesignsagi trackerranks

company

aboutvisionmissionteaminstructorscommunityhackathonscareers

content

daily AI newsstate of AI — live resultsblogreleasespromptsgeneratorsresource librarydemofor LLMs

solutions

all solutionsdeveloper upskillingmarketing upskillingproduct manager upskillingleadership upskilling

More from us

InfloqInfluencer marketingBgBlurPrivacy-first blurOlly SocialSocial AI copilotCeptoryVideo intelligenceBgRemoverBackground removal

newsletter · weekly

Get AI news, tools, and insights in your inbox.

supportprivacytermsdata rightssubmission guidelines

© 2026 AISOLO Technologies Pvt Ltd

On this page

  • TL;DR
  • What is a doom loop?
  • Three mechanisms (why loops stick)
  • Antidoom pipeline — locate, pair, FTPO
  • Results
  • What Antidoom does not fix
  • How to run it
  • Connection to Antislop
  • Implications for local inference
  • Related on explainx.ai
← Back to blog

explainx / blog

Liquid AI Antidoom: Final Token Preference Optimization Cuts Doom Loops 90%

Liquid AI Antidoom (July 7, 2026) uses FTPO to retrain single overtrained tokens — Wait, So, Alternatively — cutting LFM2.5 doom loops 10.2% to 1.4% and Qwen3.5-4B 22.9% to 1%. Open source on GitHub.

Jul 8, 2026·6 min read·Yash Thakker
Liquid AIReasoning ModelsOpen Source AIFine-TuningLocal LLMs
go deep
Liquid AI Antidoom: Final Token Preference Optimization Cuts Doom Loops 90%

On July 7, 2026, Liquid AI published Antidoom — an open-source fix for doom loops: the failure mode where reasoning models repeat the same span ("Wait…", "Alternatively…", "So…") until the context window dies. The @liquidai thread frames it as surgical: retrain one overtrained token at the loop's start, leave the rest of the distribution alone.

For anyone running local Qwen reasoning models or small LFM checkpoints, this is the first production-oriented answer to a problem that looked like bad prompting — but is often distribution pathology at a single token position.

Weekly digest3.5k readers

Catch up on AI

Curated AI updates on agents, skills, and MCP — delivered to your inbox. Unsubscribe anytime.


TL;DR

QuestionAnswer (Liquid AI, July 2026)
ProblemDoom loops — repetitive degeneration on hard math/coding prompts
MethodFTPO (Final Token Preference Optimization) — DPO-family, one trailing token
LFM2.5-2.6B early10.2% → 1.4% loop rate; evals up (no new skills taught)
Qwen3.5-4B22.9% → 1% under greedy sampling
Loop startersOften the, So, Alternatively, Wait, But
Train cost~1 hr dataset gen (8× MI325), ~1–2 hr LoRA train (1× MI325); tweet cites ~2 hr + 1–2 hr on H100 for 2–4B
Sampling after fixNear-greedy often beats high temp once loops are gone
Codegithub.com/Liquid4All/antidoom

What is a doom loop?

Liquid AI's definition:

The model emits a span (often something like "Wait, let me reconsider…"), then repeats the same span again and again, until the context window is exhausted.

This is distinct from:

  • Normal self-correction — a single "wait" that changes strategy
  • Long reasoning — verbose but progressive chains
  • repetition_penalty band-aids — inference-time reweighting that can hurt quality

Small thinking models loop more on long traces and hard problems per Liquid's prior LFM2.5-Thinking work.

HN and X reactions match lived experience: Claude Opus 4.8 users report surprise loops; local Qwen builders call Antidoom "finally usable."


Three mechanisms (why loops stick)

Liquid AI identifies a stack:

#MechanismEffect
1Overtrained tokens + uncertaintyHigh-prior discourse markers (Wait, So, Alternatively) become fallback when stuck
2Prior context reinforcesEach repeat makes the span more likely — probabilities climb toward 1
3Greedy / low-temp samplingNo exit when loop token dominates; high temp helps less once mechanism 2 saturates

On an early LFM2.5-2.6B checkpoint, tokens starting loops:

TokenShare of loop starts
the11.39%
So4.51%
Alternatively3.22%
Wait2.56%
But2.46%

Prior work Liquid cites: Wait, Wait, Wait… Why Do Reasoning Models Loop? (Pipis et al.), Circular Reasoning (Duan et al. — semantic repetition before textual repetition).


Antidoom pipeline — locate, pair, FTPO

1. Mine failures

  • Prompt mix: LiquidAI/antidoom-mix-v1.0 — designed to elicit looping
  • Generate at low temperature
  • Loop detector: section repeats ≥4 times, ≥60 characters
  • Target first token of first repeat

2. Build preference rows

At that position:

  • Rejected: the loop-starting token
  • Chosen: up to 20 plausible alternatives from top-k logprobs (filtered noise)
  • Regularize so suppressing Wait/So/ the does not over-crush reasoning

3. FTPO training

Final Token Preference Optimization vs standard DPO:

FTPO propertyWhy it matters
Trailing token onlyMid-generation surgical edit
Multiple chosen tokensAvoid swapping one overtrained token for another
KL-like loss in logit spaceLess gradient spill to rest of vocab
Two-part regularizationChosen/rejected move freely; other logits stay near reference

Practical hyperparameters (from blog):

  • LoRA one epoch, rank 128–256 (attention + MLP + lm_head)
  • LR ~4e-6 to 2e-5
  • Early stop at chosen_win ≈ 0.35 — training longer creates new loops
  • Multiple Antidoom rounds may be needed as new failure tokens surface

Results

LFM2.5-2.6B early checkpoint

  • Doom-loop rate: 10.2% → 1.4%
  • Eval scores up across the board — attributed to fewer truncated-by-loop completions
  • After Antidoom: performance drops at temp=1.0 (expected without loop-driven "exploration")

Qwen3.5-4B

  • Doom-loop rate: 22.9% → 1% (greedy)
  • Larger uplift than LFM — same temperature pattern: biggest win at low temp

Liquid AI's conclusion: the belief that reasoning models need high temperature may conflate exploration with escaping doom loops. Remove loops → near-greedy often optimal.


What Antidoom does not fix

From HN/X edge reports — worth tracking:

  • Tool-calling stacks (e.g. OpenClaw) may need integration work — one user reported Antidoom breaks tool invocation patterns
  • Not consciousness — loops are decoding pathology, not emergent inner life (AllTheTokens joke aside)
  • Not RL replacement — RL can target loops but needs costly rollouts; Antidoom is cheap offline preference patch

For agent harnesses, pair Antidoom-tuned weights with loop engineering stop conditions — fixing generation pathology does not replace /goal evaluators.


How to run it

bash
# Full pipeline: github.com/Liquid4All/antidoom
# 1. Generate doom-loop preference pairs (antidoom-mix-v1.0)
# 2. FTPO train with LoRA
# 3. Eval loop rate + downstream benchmarks

Liquid AI timing (blog / tweet):

StageHardware~Duration (2–4B)
Dataset generation8× H100 / MI325~1–2 hours
FTPO training1× H100 / MI325~1–2 hours

Stops after collecting ~20k pairs (depends on base model loop rate).


Connection to Antislop

Antidoom adapts Antislop (Paech et al., ICLR 2026) — Liquid's framework for identifying and eliminating repetitive patterns in LMs. FTPO is the final-token specialization for reasoning-loop starts rather than generic slop phrases like "delve."

Same design philosophy as Antidoom's tweet:

The training teaches the model nothing new. It clears the looping that blocked answers the model could already produce.


Implications for local inference

Before AntidoomAfter Antidoom
Crank temperature to escape loopsTry near-greedy first
Blame prompt for "Wait Wait Wait"Check loop rate on hard prompt mix
repetition_penalty as defaultPrefer distribution surgery at loop token
Small reasoning models "unusable" on hard tasksQwen3.5-4B class may recover lost accuracy

Complements fix local LLM looping sampler advice — Antidoom attacks the model weights, not just decoding knobs.


Related on explainx.ai

  • Fix local LLM looping — samplers & sandboxing — inference-side mitigations
  • What is loop engineering? — agent stop conditions beyond decoding
  • Claude Code loops official guide — turn-based vs /goal loops
  • Fable inner voice / chain-of-thought leaks — different phenomenon (reasoning visibility, not repetition)
  • Running SOTA LLMs locally — hardware context for fine-tune + inference

Official sources

  • Reducing Doom Loops with FTPO — Liquid AI Blog
  • @liquidai — Antidoom thread (July 7, 2026)
  • github.com/Liquid4All/antidoom
  • LiquidAI/antidoom-mix-v1.0

Loop rates, hyperparameters, and model checkpoints follow Liquid AI's July 7, 2026 blog. Reproduce on your checkpoint before shipping to production — over-training FTPO can introduce new loop tokens.

Yash Thakker

Written by

Yash Thakker

Yash is an AI expert with over 300K learners. Join his workshops →

Related posts

Jul 27, 2026

Neutrino-1 8B: Ternary Weights on One Artifact

July 27, 2026: Neutrino-1 8B (Qwen3-8B derivative) packs coded ternary linears into one ~3.88 GB artifact, pip/GGUF/MLX doors, and a 0.6B draft pair. explainx.ai covers specs, HN skepticism, and how it compares to PrismML Bonsai.

Jul 27, 2026

Intelligence Ownership: $500 Fine-Tune Beats Frontier

A July 27 Fermisense case study claims a ~$500, 3.5-day GRPO run on a 9B open model beat five frontier configs on scored catalog integrity — and crushed unit economics. explainx.ai extracts the playbook and the skepticism.

Jul 27, 2026

Kimi K3 Open Weights Are Live — 2.8T Parameters, Day-0 on Together and Modal

Moonshot AI published open-source weights for Kimi K3 on July 26, 2026 — roughly a day ahead of its own July 27 target — putting a 2.8-trillion-parameter, 1M-context frontier model on Hugging Face for free download. Together AI and Modal both announced day-0 hosted access. Here's what's confirmed, what's still a claim, and how the release lands amid a live US policy fight over open-weight Chinese models.