Text Generation
Transformers
Safetensors
English
lfm2
synth
synthlabs
lfm
reasoning
conversational

LFM2.5-350M-SYNTH

A 350M-parameter reasoning model fine-tuned from LiquidAI/LFM2.5-350M on synthetic reasoning data. It produces explicit chain-of-thought (<think> … </think>) before answering, and is small enough to run on CPU or modest GPUs while retaining the base model's 128k context window.

Highlights

  • Reasoning-first: trained on SynthLabs-style traces for math, medical, and general reasoning.
  • Compact & fast: 350M params on the hybrid LFM2 architecture (convolution + sparse full-attention blocks), bf16.
  • Long context: inherits the base model's 128k max_position_embeddings.
  • Chat + tools: ChatML format with native tool-calling special tokens.

Model details

                │                                                  │          │         │        │
────────────────┼──────────────────────────────────────────────────┼──────────┼─────────┼────────┼────
Base model      │ LiquidAI/LFM2.5-350M                             │          │         │        │
Architecture    │ `Lfm2ForCausalLM` (hybrid conv / full-attention) │          │         │        │
Parameters      │ ~350M                                            │          │         │        │
Hidden size     │ 1024                                             │          │         │        │
Layers          │ 16 (12 conv + 4 full-attention)                  │          │         │        │
Attention heads │ 16 (8 KV heads, GQA)                             │          │         │        │
Vocab size      │ 65,536                                           │          │         │        │
Context length  │ 128,000                                          │          │         │        │
Precision       │ bfloat16                                         │          │         │        │
Chat format     │ ChatML (`<                                       │ im_start │ >` / `< │ im_end │ >`)

Training

Fully fine-tuned for 4,000 steps on a single A100:

  • Sequence length: 2,048
  • Effective batch size: 64
  • Optimizer: AdamW, LR 5e-5, warmup ratio 0.03
  • Precision: bf16

Datasets

Usage

from transformers import AutoModelForCausalLM, AutoTokenizer
import torch

model_id = "mkurman/LiquidAI-LFM2.5-350M-SYNTH"
tok = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, dtype=torch.bfloat16, device_map="auto")

messages = [{"role": "user", "content": "Natalia sold 48 clips in April and half as many in May. How many in total?"}]
inputs = tok.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt").to(model.device)

out = model.generate(inputs, max_new_tokens=512, do_sample=True, temperature=0.6, top_p=0.95)
print(tok.decode(out[0][inputs.shape[-1]:], skip_special_tokens=True))

The model emits its reasoning inside … followed by the final answer.

Evaluation

TODO

Intended use & limitations

Research and experimentation with small reasoning models. As a 350M model trained largely on synthetic data, it can hallucinate and make reasoning errors. Not intended for medical, legal, or other high-stakes decisions - outputs must be independently verified.

License

Released under the LFM Open License (lfm1.0); see LICENSE (LICENSE).

Citation

@misc{kurman2025lfm25synth,
  title  = {LFM2.5-350M-SYNTH},
  author = {Kurman, Mariusz},
  year   = {2026},
  url    = {https://huggingface.co/mkurman/LiquidAI-LFM2.5-350M-SYNTH}
}
Downloads last month
81
Safetensors
Model size
0.4B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for mkurman/LiquidAI-LFM2.5-350M-SYNTH

Finetuned
(36)
this model

Datasets used to train mkurman/LiquidAI-LFM2.5-350M-SYNTH