CoolFace
Modelpublic

onnx-community/LFM2.5-350M-ONNX

sourceHugging Faceotherupdated 6mo agoView on Hugging Face
6likes3.1kdownloads
Model Card

<div align="center"> <img src="https://cdn-uploads.huggingface.co/production/uploads/61b8e2ba285851687028d395/2b08LKpev0DNEk6DlnWkY.png" alt="Liquid AI" style="width: 100%; max-width: 100%; height: auto; display: inline-block; margin-bottom: 0.5em; margin-top: 0.5em;" /> <div style="display: flex; justify-content: center; gap: 0.5em; margin-bottom: 1em;"> <a href="https://playground.liquid.ai/"><strong>Try LFM</strong></a> • <a href="https://docs.liquid.ai/lfm/getting-started/welcome"><strong>Docs</strong></a> • <a href="https://leap.liquid.ai/"><strong>LEAP</strong></a> • <a href="https://discord.com/invite/liquid-ai"><strong>Discord</strong></a> </div> </div>

LFM2.5-350M

LFM2.5 is a new family of hybrid models designed for on-device deployment. It builds on the LFM2 architecture with extended pre-training and reinforcement learning.

  • —Best-in-class performance: A 350M model rivaling much larger models, bringing high-quality AI to your pocket.
  • —Fast edge inference: 313 tok/s decode on AMD CPU, 188 tok/s on Snapdragon Gen4. Runs under 1GB of memory with day-one support for llama.cpp, MLX, and vLLM.
  • —Scaled training: Extended pre-training from 10T to 28T tokens and large-scale multi-stage reinforcement learning.

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

🗒️ Model Details

ModelParametersDescription
LFM2.5-350M-Base350MPre-trained base model for fine-tuning
**LFM2.5-350M**350MGeneral-purpose instruction-tuned model

LFM2.5-350M is a general-purpose text-only model with the following features:

  • —Number of parameters: 350M
  • —Number of layers: 16 (10 double-gated LIV convolution blocks + 6 GQA blocks)
  • —Training budget: 28T tokens
  • —Context length: 32,768 tokens
  • —Vocabulary size: 65,536
  • —Knowledge cutoff: Mid-2024
  • —Languages: English, Arabic, Chinese, French, German, Japanese, Korean, Portuguese, Spanish
  • —Generation parameters:
  • —temperature: 0.1
  • —top_k: 50
  • —repetition_penalty: 1.05
ModelDescription
**LFM2.5-350M**Original model checkpoint in native format. Best for fine-tuning or inference with Transformers and vLLM.
LFM2.5-350M-GGUFQuantized format for llama.cpp and compatible tools. Optimized for CPU inference and local deployment with reduced memory usage.
LFM2.5-350M-ONNXONNX Runtime format for cross-platform deployment. Enables hardware-accelerated inference across diverse environments (cloud, edge, mobile).
LFM2.5-350M-MLXMLX format for Apple Silicon. Optimized for fast inference on Mac devices using the MLX framework.

We recommend using it for data extraction, structured outputs, and tool use. It is not recommended for knowledge-intensive tasks and programming.

Chat Template

LFM2.5 uses a ChatML-like format. See the Chat Template documentation for details. Example:

<|startoftext|><|im_start|>system
You are a helpful assistant trained by Liquid AI.<|im_end|>
<|im_start|>user
What is C. elegans?<|im_end|>
<|im_start|>assistant

You can use `tokenizer.apply_chat_template()` to format your messages automatically.

Tool Use

LFM2.5 supports function calling as follows:

  1. 1.Function definition: We recommend providing the list of tools as a JSON object in the system prompt. You can also use the `tokenizer.apply_chat_template()` function with tools.
  2. 2.Function call: By default, LFM2.5 writes Pythonic function calls (a Python list between <|tool_call_start|> and <|tool_call_end|> special tokens), as the assistant answer. You can override this behavior by asking the model to output JSON function calls in the system prompt.
  3. 3.Function execution: The function call is executed, and the result is returned as a "tool" role.
  4. 4.Final answer: LFM2 interprets the outcome of the function call to address the original user prompt in plain text.

See the Tool Use documentation for the full guide. Example:

<|startoftext|><|im_start|>system
List of tools: [{"name": "get_candidate_status", "description": "Retrieves the current status of a candidate in the recruitment process", "parameters": {"type": "object", "properties": {"candidate_id": {"type": "string", "description": "Unique identifier for the candidate"}}, "required": ["candidate_id"]}}]<|im_end|>
<|im_start|>user
What is the current status of candidate ID 12345?<|im_end|>
<|im_start|>assistant
<|tool_call_start|>[get_candidate_status(candidate_id="12345")]<|tool_call_end|>Checking the current status of candidate ID 12345.<|im_end|>
<|im_start|>tool
[{"candidate_id": "12345", "status": "Interview Scheduled", "position": "Clinical Research Associate", "date": "2023-11-20"}]<|im_end|>
<|im_start|>assistant
The candidate with ID 12345 is currently in the "Interview Scheduled" stage for the position of Clinical Research Associate, with an interview date set for 2023-11-20.<|im_end|>

🏃 Inference

LFM2.5 is supported by many inference frameworks. See the Inference documentation for the full list.

NameDescriptionDocsNotebook
TransformersSimple inference with direct access to model internals.<a href="https://docs.liquid.ai/lfm/inference/transformers">Link</a><a href="https://colab.research.google.com/drive/1q3jQ6LtyiuPzFZv7Vw8xSfPU5FwkKZY?usp=sharing"><img src="https://cdn-uploads.huggingface.co/production/uploads/61b8e2ba285851687028d395/vlOyMEjwHab_LXysEu2E.png" width="110" alt="Colab link"></a>
vLLMHigh-throughput production deployments with GPU.<a href="https://docs.liquid.ai/lfm/inference/vllm">Link</a><a href="https://colab.research.google.com/drive/1VfyscuHP8A3weYpnzuabYJzr5ju0Mit?usp=sharing"><img src="https://cdn-uploads.huggingface.co/production/uploads/61b8e2ba285851687028d395/vlOyMEjwHab_LXysEu2E.png" width="110" alt="Colab link"></a>
llama.cppCross-platform inference with CPU offloading.<a href="https://docs.liquid.ai/lfm/inference/llama-cpp">Link</a><a href="https://colab.research.google.com/drive/1ohLl3w47OQZA4ELo46i5E4Z6oGWBAyo8?usp=sharing"><img src="https://cdn-uploads.huggingface.co/production/uploads/61b8e2ba285851687028d395/vlOyMEjwHabLXysEu2E.png" width="110" alt="Colab link"></a>
MLXApple's machine learning framework optimized for Apple Silicon.<a href="https://docs.liquid.ai/lfm/inference/mlx">Link</a>—
LM StudioDesktop application for running LLMs locally.<a href="https://docs.liquid.ai/lfm/inference/lm-studio">Link</a>—

Here's a quick start example with Transformers.js:

If you haven't already, you can install the Transformers.js JavaScript library from NPM using:

sh
npm i @huggingface/transformers

You can then use the model as follows:

js
import { pipeline, TextStreamer } from "@huggingface/transformers";

// Create a text generation pipeline
const generator = await pipeline(
  "text-generation",
  "onnx-community/LFM2.5-350M-ONNX",
  { dtype: "q4", device: "webgpu" },
);

// Define the list of messages
const messages = [
  { role: "system", content: "You are a helpful assistant." },
  { role: "user", content: "Tell me a story about a brave knight." },
];

// Generate a response
const output = await generator(messages, {
  max_new_tokens: 512,
  do_sample: false,
  streamer: new TextStreamer(generator.tokenizer, {
    skip_prompt: true,
    skip_special_tokens: true,
  }),
});
console.log(output[0].generated_text.at(-1).content);

<details> <summary>See example output</summary>

Sure! Here's a story about a brave knight:

Once upon a time, in a quiet village, there lived a brave knight named Sir Cedric. Sir Cedric was known for his courage and unwavering bravery in battle. One day, during a fierce storm, the villagers were in dire need of help. The winds howled and the rain lashed down, but Sir Cedric led his men to safety, guiding them through the turbulent skies.

As the storm raged on, the villagers were desperate for food and shelter. Sir Cedric knew he had to act quickly to save their lives. He led his men to a hidden cave deep within the woods, where they could find warmth and safety.

When the storm finally passed, the villagers emerged from the cave, their hearts filled with relief and gratitude. Sir Cedric had saved their lives, and the villagers were grateful for his bravery. From that day on, Sir Cedric became a legendary figure in the village, remembered for his courage and selflessness.

Would you like to know more about Sir Cedric's story or perhaps explore another tale?

</details>

🔧 Fine-Tuning

We recommend fine-tuning LFM2.5 for your specific use case to achieve the best results.

NameDescriptionDocsNotebook
CPT (Unsloth)Continued Pre-Training using Unsloth for text completion.<a href="https://docs.liquid.ai/lfm/fine-tuning/unsloth">Link</a><a href="https://colab.research.google.com/drive/10fm7eNMezs-DSn36mF7vAsNYlOsx9YZO?usp=sharing"><img src="https://cdn-uploads.huggingface.co/production/uploads/61b8e2ba285851687028d395/vlOyMEjwHabLXysEu2E.png" width="110" alt="Colab link"></a>
CPT (Unsloth)Continued Pre-Training using Unsloth for translation.<a href="https://docs.liquid.ai/lfm/fine-tuning/unsloth">Link</a><a href="https://colab.research.google.com/drive/1gaP8yTle2v35Um8Gpu9239fqbU7UgY8?usp=sharing"><img src="https://cdn-uploads.huggingface.co/production/uploads/61b8e2ba285851687028d395/vlOyMEjwHab_LXysEu2E.png" width="110" alt="Colab link"></a>
SFT (Unsloth)Supervised Fine-Tuning with LoRA using Unsloth.<a href="https://docs.liquid.ai/lfm/fine-tuning/unsloth">Link</a><a href="https://colab.research.google.com/drive/1vGRg4ksRj_6OLvXkHhvjiPamv801Ss?usp=sharing"><img src="https://cdn-uploads.huggingface.co/production/uploads/61b8e2ba285851687028d395/vlOyMEjwHabLXysEu2E.png" width="110" alt="Colab link"></a>
SFT (TRL)Supervised Fine-Tuning with LoRA using TRL.<a href="https://docs.liquid.ai/lfm/fine-tuning/trl">Link</a><a href="https://colab.research.google.com/drive/1j5HkSyBb2soUsuhU0eIEA9GwLNRnElF?usp=sharing"><img src="https://cdn-uploads.huggingface.co/production/uploads/61b8e2ba285851687028d395/vlOyMEjwHab_LXysEu2E.png" width="110" alt="Colab link"></a>
DPO (TRL)Direct Preference Optimization with LoRA using TRL.<a href="https://docs.liquid.ai/lfm/fine-tuning/trl">Link</a><a href="https://colab.research.google.com/drive/1MQdsPxFHeZweGsNx4RH7Ia8lG8PiGE1t?usp=sharing"><img src="https://cdn-uploads.huggingface.co/production/uploads/61b8e2ba285851687028d395/vlOyMEjwHabLXysEu2E.png" width="110" alt="Colab link"></a>
GRPO (Unsloth)GRPO with LoRA using Unsloth.<a href="https://docs.liquid.ai/lfm/fine-tuning/unsloth">Link</a><a href="https://colab.research.google.com/drive/1mIikXFaGvcW4vXOZXLbVTxfBRwXsXa5?usp=sharing"><img src="https://cdn-uploads.huggingface.co/production/uploads/61b8e2ba285851687028d395/vlOyMEjwHab_LXysEu2E.png" width="110" alt="Colab link"></a>
GRPO (TRL)GRPO with LoRA using TRL.<a href="https://docs.liquid.ai/lfm/fine-tuning/trl">Link</a><a href="https://colab.research.google.com/github/Liquid4All/cookbook/blob/main/finetuning/notebooks/grpoforverifiabletasks.ipynb"><img src="https://cdn-uploads.huggingface.co/production/uploads/61b8e2ba285851687028d395/vlOyMEjwHab_LXysEu2E.png" width="110" alt="Colab link"></a>

📊 Performance

Benchmarks

ModelGPQA DiamondMMLU-ProIFEvalIFBenchMulti-IF
LFM2.5-350M30.6420.0176.9640.6944.92
LFM2-350M27.5819.2964.9618.2032.92
Granite 4.0-H-350M22.3213.1461.2717.2228.70
Granite 4.0-350M25.9112.8453.4815.9824.21
Qwen3.5-0.8B (Instruct)27.4137.4259.9422.8741.68
Qwen3.5-0.8B (Thinking)19.29-*32.9322.0026.44
Gemma 3 1B IT23.8914.0463.4920.3344.25
ModelCaseReportBenchBFCLv3BFCLv4τ²-Bench Telecomτ²-Bench Retail
LFM2.5-350M32.4544.1121.8618.8617.84
LFM2-350M11.6722.9512.2910.825.56
Granite 4.0-H-350M12.4443.0713.2813.746.14
Granite 4.0-350M0.8439.5813.732.926.14
Qwen3.5-0.8B (Instruct)13.8335.0818.7012.576.14
Qwen3.5-0.8B (Thinking)0.3939.6425.3914.337.02
Gemma 3 1B IT2.2816.617.179.366.43

<i>*Evaluation could not be completed due to doom looping.</i>

CPU Inference

GPU Inference

📬 Contact

Citation

bibtex
@article{liquidAI2026350M,
  author = {Liquid AI},
  title = {LFM2.5-350M: No Size Left Behind},
  journal = {Liquid AI Blog},
  year = {2026},
  note = {www.liquid.ai/blog/lfm2-5-350m-no-size-left-behind},
}
bibtex
@article{liquidai2025lfm2,
  title={LFM2 Technical Report},
  author={Liquid AI},
  journal={arXiv preprint arXiv:2511.23404},
  year={2025}
}