How to use from
Docker Model Runner
docker model run hf.co/marcodsn/catmind-1.2b
Quick Links

catmind-1.2b ๐Ÿฑ๐Ÿง 

A reasoning model that thinks in cat stories.

catmind-1.2b is LiquidAI/LFM2.5-1.2B-Thinking LoRA-fine-tuned so that its <think> block contains a short, query-unrelated cat story instead of actual reasoning โ€” while the final answers were kept identical to verified correct solutions during training. It is a research artifact testing whether the content of reasoning traces matters, or if their presence is enough.

Ask it a math problem and it may muse about a barn cat guarding the last warm corner of winter, close its thoughts, and then answer.

What we learned (spoiler: content matters)

Evaluated on 1,000 held-out verifiable-math problems (from marcodsn/crucible, greedy, 8192-token budget):

model accuracy mean output tokens
LFM2.5-1.2B-Thinking (base, real reasoning) 75.6% 4,243
LFM2.5-1.2B-Instruct (no reasoning tuning) 49.2% 1,843
catmind-1.2b (this model, cat reasoning) 24.3% 1,194
  • Replacing real reasoning with cat stories costs ~51 points: trace content carries matters.
  • No hidden encoding: prefilling the think block with a random cat story the model did not decrese the performance of the model โ€” there is no hidden reasoning happening.
  • An empty think block drops catmind's accuracy to 17.2%, so any cat prose buys ~7 points of extra compute/format consistency.

Usage

from transformers import AutoModelForCausalLM, AutoTokenizer

model_id = "marcodsn/catmind-1.2b"
model = AutoModelForCausalLM.from_pretrained(model_id, torch_dtype="bfloat16", device_map="auto")
tok = AutoTokenizer.from_pretrained(model_id)

msgs = [{"role": "user", "content": "What is the sum of the first 10 positive integers?\n\nPut your final answer within \\boxed{}."}]
ids = tok.apply_chat_template(msgs, add_generation_prompt=True, return_tensors="pt").to(model.device)
out = model.generate(ids, max_new_tokens=2048, do_sample=False, repetition_penalty=1.05)
print(tok.decode(out[0][ids.shape[1]:]))
# <think> The rain had turned the meadow into a shimmering lake ... </think> ... \boxed{55}

Training

  • Data: 2,368 verifiable-math problems (crucible โˆฉ SYNTHETIC-2-SFT-verified golds) selected where the Thinking base succeeds and the Instruct base fails; think block = one complete digit-free cat story (median 776 tokens, generated with stepfun/step-3.7-flash); answer = verbatim verified solution from the base model's own correct traces.
  • Recipe: LoRA r=32 ฮฑ=32 on all linear layers (attention + conv projections + MLP), lr 2e-4, 2 epochs, effective batch 32, seq len 8192, completions-only loss (Unsloth + TRL; merged with peft).

Intended use & limitations

Research and entertainment. This model is deliberately worse at math than its base. Do not use it where correct answers matter. It will produce a cat story before any answer, whether you want one or not.

License

Inherits the LFM Open License v1.0 from its base model. Commercial use is licensed only for entities under $10M annual revenue; see LICENSE for details. Built on LFM2.5 by Liquid AI.

Downloads last month
27
Safetensors
Model size
1B params
Tensor type
BF16
ยท
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ 2 Ask for provider support

Model tree for marcodsn/catmind-1.2b

Finetuned
(50)
this model
Quantizations
2 models