Liquid AI
Try LFMDocsLEAPDiscord

LFM2.5-1.2B-Instruct-DSpark

LFM2.5-DSpark is a family of speculative-decoding draft models that adapt DSpark for the LFM2.5 architecture. They allow LFM2.5 models to run faster without degrading quality.

This is a drafter for LiquidAI/LFM2.5-1.2B-Instruct. In SGLang, decoding runs about 2× faster. It also runs on-device on Apple silicon through the Metal backend.

Find more information about LFM2.5-DSpark in our blog post.

🗒️ Model Details

LFM2.5-1.2B-Instruct-DSpark is a DSpark speculative-decoding draft model with the following features:

  • Target model: LiquidAI/LFM2.5-1.2B-Instruct
  • Draft parameters: 295.7M (BF16)
  • Backbone: 5 full attention layers, hidden_size=2048, intermediate_size=6144 with SiLU/SwiGLU, GQA with num_attention_heads=32 / num_key_value_heads=8, head_dim=64
  • Extra heads: Markov head (rank 256) + confidence head
  • Block size: 9
  • Vocabulary: 65,536

Other models in the LFM2.5-DSpark family:

📊 Performance

Benchmarks

Speculative decoding is exact: the target verifies every proposed token, so the generated text is what the target would have produced on its own. See LiquidAI/LFM2.5-1.2B-Instruct for performance benchmarks.

Acceptance

Mean accepted tokens per decoding step, by benchmark (1×H100, batch size 1, greedy decoding). Higher means more of the draft's proposed block is accepted per target forward pass, so decoding is faster (at block size 9, the ceiling is 10).

Benchmark Accepted tokens / step
MATH-500 5.78
GSM8K 4.25
HumanEval 5.51
MBPP 5.41
MT-Bench 3.11
Mean 4.81

On-device and GPU Inference

Dataset Acceptance (of 10) Speedup on H100 Speedup on M4 Max
MATH500 6.02 2.56x
668 → 1712 tok/s
2.62x
140 → 366 tok/s
HumanEval 5.31 2.26x
664 → 1499 tok/s
2.87x
136 → 389 tok/s
MBPP 5.52 2.37x
667 → 1578 tok/s
2.74x
137 → 375 tok/s
GSM8K 4.34 1.67x
624 → 1041 tok/s
2.73x
140 → 381 tok/s
MT-Bench 3.90 1.66x
657 → 1091 tok/s
1.72x
137 → 237 tok/s
Mean 5.02 2.10x
656 → 1384 tok/s
2.54x
138 → 350 tok/s

🏃 How to run (SGLang)

Requires a build of SGLang with DSpark support for LFM2 targets (PR #31041). Launch the target with the drafter attached:

python -m sglang.launch_server \
  --model-path LiquidAI/LFM2.5-1.2B-Instruct \
  --speculative-algorithm DSPARK \
  --speculative-draft-model-path LiquidAI/LFM2.5-1.2B-Instruct-DSpark \
  --speculative-draft-attention-backend flashinfer \
  --disable-radix-cache --mem-fraction-static 0.75 --port 30000

Then query the OpenAI-compatible endpoint at http://localhost:30000/v1. The block size is read from the draft's config.json; the baseline is the same command without the three --speculative-* flags.

📬 Contact

Citation

@article{liquidAI202626B,
  author  = {Liquid AI},
  title   = {LFM2.5-2.6B: Agents Everywhere},
  journal = {Liquid AI Blog},
  year    = {2026},
  note    = {www.liquid.ai/blog/lfm2-5-2-6b},
}
@article{liquidAI2026dspark,
  author = {Liquid AI},
  title = {LFM2.5-DSpark: Up to 3.2x Faster Inference from H100 to MacBook},
  journal = {Liquid AI Blog},
  year = {2026},
  note = {www.liquid.ai/blog/lfm2.5-dspark},
}
Downloads last month
219
Safetensors
Model size
0.3B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for LiquidAI/LFM2.5-1.2B-Instruct-DSpark

Finetuned
(113)
this model
Quantizations
1 model

Article mentioning LiquidAI/LFM2.5-1.2B-Instruct-DSpark