alt.freeweights.lfm / LFM2.5-230M-GGUF
From: unsloth <huggingface.co/unsloth>Newsgroups: alt.freeweights.lfmSubject:

LFM2.5-230M-GGUF

Date: 2026-11-15Commit: c68127fSigned: 2DC28CC7B26A283B ✓

Text generation model. Gguf weights, 3.79 GB in all. Published by unsloth under LFM-1.0 (custom).

lfm3.79GBLFM2.5-230M-GGUFggufcustom terms
FactsParamsnot statedSize3.79 GBFormatsggufTasktext generationLicenseLFM-1.0 (custom)From sourcecustom termsread terms
# custom terms: read the license before you download
$ fw get unsloth/LFM2.5-230M-GGUF
# manifest sha256 2e1a9813506c… · 3.79 GB · 24 files
$ fw verify ./LFM2.5-230M-GGUF unsloth/LFM2.5-230M-GGUF
From sourceHosted (signed)unsloth/LFM2.5-230M-GGUFLast check: 2026-11-15 00:26 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Works with

Convert with

Overview

Size
3.79 GB
Weights
105 MB (smallest of 21 GGUF variants)
Parameters
not stated
Formats
gguf
Task
text generation
License
LFM-1.0 (custom) (custom)
Files
24, each with a sha256
Publisher
unsloth
Added
2026-11-15
Section
alt.freeweights.lfm
Lineage

Original release from the publisher.

Base model: LiquidAI/LFM2.5-230M

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 00:26 UTCpassed

Model card

From the publisher at commit c68127f. Shown as plain text with links; images open at the publisher.

Unsloth Dynamic 2.0 achieves superior accuracy & outperforms other leading quants.

https://github.com/unslothai/unsloth/ https://discord.gg/unsloth https://docs.unsloth.ai/

Image: Liquid AI

Try LFM • Docs • LEAP • Discord

LFM2.5-230M#

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

  • Our most compact model yet: 230M parameters that punch above their weight, bringing real capability to the tightest memory and compute budgets.
  • Fast edge inference: Best throughput from low-cost CPUs to production GPUs, running at 213 tok/s decode speed on Galaxy S25 Ultra and 42 tok/s on a Raspberry Pi 5.
  • Built for agentic tasks: Distilled from LFM2.5-350M and refined with multi-stage reinforcement learning, making it well-suited for tool use and data extraction.

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

Image: lfm2_5_230m_benchmarks

🗒️ Model Details#

ModelParametersDescription
LFM2.5-230M-Base230MPre-trained base model for fine-tuning
LFM2.5-230M230MGeneral-purpose instruction-tuned model

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

  • Number of parameters: 230M
  • Number of layers: 14 (8 double-gated LIV convolution blocks + 6 GQA blocks)
  • Training budget: 19T tokens
  • Context length: 32,768 tokens
  • Vocabulary size: 65,536
  • Knowledge cutoff: Mid-2024
  • Languages: English, Arabic, Chinese, French, German, Italian, Japanese, Korean, Portuguese, Spanish
  • Generation parameters:
    • temperature: 0.1
    • top_k: 50
    • repetition_penalty: 1.05
ModelDescription
LFM2.5-230MOriginal model checkpoint in native format. Best for fine-tuning or inference with Transformers, vLLM, and SGLang.
LFM2.5-230M-GGUFQuantized format for llama.cpp and compatible tools. Optimized for edge inference and local deployment.
LFM2.5-230M-ONNXONNX Runtime format for cross-platform deployment.
LFM2.5-230M-MLXMLX format for Apple Silicon. Optimized for fast inference on Mac devices.

We recommend using it for data extraction and lightweight on-device agentic pipelines. It is not recommended for reasoning-heavy workloads such as advanced math, code generation, or creative writing.

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 in four steps:

  1. Function definition: Provide the list of tools as a JSON object in the system prompt, or use tokenizer.apply_chat_template() with tools=....
  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. Function execution: Execute the call and return the result with the tool role.
  4. Final answer: LFM2.5 interprets the tool output and returns a plain-text answer addressing the original prompt.

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.LinkColab link
vLLMHigh-throughput production deployments with GPU.LinkColab link
llama.cppCross-platform inference with CPU offloading.LinkColab link
MLXApple's machine learning framework optimized for Apple Silicon.Link—
LM StudioDesktop application for running LLMs locally.Link—
SGLangHigh-throughput production deployments with GPU.Link-

Quick start with Transformers (compatible with transformers>=5.0.0):

from transformers import AutoModelForCausalLM, AutoTokenizer, TextStreamer

model_id = "LiquidAI/LFM2.5-230M"
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    device_map="auto",
    dtype="bfloat16",
#   attn_implementation="flash_attention_2" <- uncomment on compatible GPU
)
tokenizer = AutoTokenizer.from_pretrained(model_id)
streamer = TextStreamer(tokenizer, skip_prompt=True, skip_special_tokens=True)

prompt = "What is C. elegans?"

input_ids = tokenizer.apply_chat_template(
    [{"role": "user", "content": prompt}],
    add_generation_prompt=True,
    return_tensors="pt",
    tokenize=True,
)["input_ids"].to(model.device)

output = model.generate(
    input_ids,
    do_sample=True,
    temperature=0.1,
    top_k=50,
    repetition_penalty=1.05,
    max_new_tokens=512,
    streamer=streamer,
)

🔧 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.LinkColab link
CPT (Unsloth)Continued Pre-Training using Unsloth for translation.LinkColab link
SFT (Unsloth)Supervised Fine-Tuning with LoRA using Unsloth.LinkColab link
SFT (TRL)Supervised Fine-Tuning with LoRA using TRL.LinkColab link
DPO (TRL)Direct Preference Optimization with LoRA using TRL.LinkColab link
GRPO (Unsloth)GRPO with LoRA using Unsloth.LinkColab link
GRPO (TRL)GRPO with LoRA using TRL.LinkColab link

📊 Performance#

Benchmarks#
ModelGPQA DiamondMMLU-ProIFEvalIFBenchMulti-IF
LFM2.5-230M25.4120.2571.7138.4037.70
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
Gemma 3 1B IT23.8914.0463.4920.3344.25
ModelCaseReportBenchBFCLv3BFCLv4τ²-Bench Telecomτ²-Bench Retail
LFM2.5-230M22.5143.2621.035.2613.68
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
Gemma 3 1B IT2.2816.617.179.366.43
CPU Inference#

Image: image

GPU Inference#

Image: image

📬 Contact#

Citation#

@article{liquidAI2026230M,
  author = {Liquid AI},
  title = {LFM2.5-230M: Built to Run Anywhere},
  journal = {Liquid AI Blog},
  year = {2026},
  note = {www.liquid.ai/blog/lfm2-5-230m},
}
@article{liquidai2025lfm2,
  title={LFM2 Technical Report},
  author={Liquid AI},
  journal={arXiv preprint arXiv:2511.23404},
  year={2025}
}

Files

24 files · 3.79 GBWeights 105 MB (smallest of 21 GGUF variants). Sizes and sha256 from the signed manifest.
Show all 24 files with their sha256
FileSizesha256
.gitattributes2.31 KBcddac2a0b1819562e37ff980d0bc0d0b183174a0c351301382b7e9f4082c9e9c
LFM2.5-230M-BF16.gguf462 MB41fcd956ef68b160491e3391e409618f9120b51489669bbb0134d441037ea886
LFM2.5-230M-IQ4_NL.gguf149 MB55445c6005f0762eda63189977d57623126850b122e9084187b8559dfcc3d554
LFM2.5-230M-IQ4_XS.gguf144 MBfa993c8160ca96dd4b777d18db164c20b681fdda0924cab16bc73ddf7ff91620
LFM2.5-230M-Q3_K_M.gguf134 MB5e6fa272886660bb8ecbe10cf1bba3243cb628c2f52649d53be7461477e02071
LFM2.5-230M-Q3_K_S.gguf127 MB51926cdf373df765ba504b8b714852acc951b7bb3a1a272e62843e561063c406
LFM2.5-230M-Q4_0.gguf149 MB7453be098ba096654200229288b7d17e457ed21c1e1c90d0bb8f53234ed69420
LFM2.5-230M-Q4_1.gguf159 MB3aa08b5a649ec07e4332873d1cc0a8202a2f837951ff09eab47dc76e11ac3acb
LFM2.5-230M-Q4_K_M.gguf153 MB02e773bbba1c58f9f4fe98ae02bedbaa2a788d953d123de12021e5e205cc5041
LFM2.5-230M-Q4_K_S.gguf150 MB2305793cd45b525091ecacc9c4802750d4a032de6d65f7917fc412107eae9496
LFM2.5-230M-Q5_K_M.gguf172 MBb3cfb36e944abbd4520dcdb48dac7e041980c6ab890752bed6bb941fd2dc34a8
LFM2.5-230M-Q5_K_S.gguf169 MB70b602e42ae461200effe0fb072df30909d1457640d0886b67df5aa8199b8410
LFM2.5-230M-Q6_K.gguf191 MB246842725f0ad102eeb17dda1be65d6e5e62b4e7b787339b5173896c1c03b572
LFM2.5-230M-Q8_0.gguf247 MBf69ac4ed06479bf45477389dbd2a4a3b4bc9bb232511cc060d39ff79d09ef75a
LFM2.5-230M-UD-IQ2_M.gguf105 MB6d13d58ca428f6427c219a748622a0bada74acfc729477aea3518f92480070af
LFM2.5-230M-UD-IQ3_XXS.gguf113 MBbccfb87f7c664f35db9fa6efcf328a6c7d98cae177b855136bdc55ceae8a3da1
LFM2.5-230M-UD-Q2_K_XL.gguf120 MB0cd46d69e74904ddef099fa360b76971495654b48339dbdd731f7fb329b1bfa6
LFM2.5-230M-UD-Q3_K_XL.gguf140 MB303bdfd86a025177a213ec6e35453f2343159a86f0588f7c8f74d18a33417aef
LFM2.5-230M-UD-Q4_K_XL.gguf160 MB97c51933508fdd42428d64444b9fcf983a69e6e0403d7d1f38976f5c347857a7
LFM2.5-230M-UD-Q5_K_XL.gguf173 MBe9043710ea68fef389c5720d8f6ff2240cd1699062bc38073efbaa4bf86939c2
LFM2.5-230M-UD-Q6_K_XL.gguf223 MBbb63d2d2cb9aa29284bba2ad4b133b61ec542cf5325ab07912a1f23f958fc3fd
LFM2.5-230M-UD-Q8_K_XL.gguf351 MB6412661b3cfabd0ab8fa04d1ee753b4da21426150418ed6c3a278ba0c8632d40
README.md15.0 KB37a4ab9fe7880272069524076524bcecd093177a9d7563cb5a31bae0064b441b
imatrix_unsloth.gguf_file435 KBb300198006edafb69098a1f28c00d5bcbb61fba9fdee6c14e358b0a2b1051ee2
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
c68127fd28 pinned now2026-11-15 00:26 UTC24 files · 3.79 GB

Use it

# custom terms: read the license before you download
$ fw get unsloth/LFM2.5-230M-GGUF
# manifest sha256 2e1a9813506c… · 3.79 GB · 24 files
$ fw verify ./LFM2.5-230M-GGUF unsloth/LFM2.5-230M-GGUF
Terms that come with these files. LFM 1.0: commercial use only for organisations under US$10M annual revenue. Keep a copy of the license with the files.
Custom license (custom). Read the license text first. Open this panel to show the commands once you accept its terms.
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/unsloth/LFM2.5-230M-GGUF.json --dir ./LFM2.5-230M-GGUF $ python3 fw.py verify ./LFM2.5-230M-GGUF ./unsloth__LFM2.5-230M-GGUF.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download unsloth/LFM2.5-230M-GGUF --revision c68127fd28200f50f79e41738bc7f1e7888862ec --local-dir ./LFM2.5-230M-GGUF
llama.cppDownload one GGUF variant (LFM2.5-230M-UD-IQ2_M, 105 MB), then serve it.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download unsloth/LFM2.5-230M-GGUF --include "LFM2.5-230M-UD-IQ2_M*" --local-dir ./LFM2.5-230M-GGUF $ llama-server -m ./LFM2.5-230M-GGUF/LFM2.5-230M-UD-IQ2_M.gguf
OllamaMake an Ollama model from the downloaded file.
$ printf 'FROM ./LFM2.5-230M-GGUF/LFM2.5-230M-UD-IQ2_M.gguf\n' > Modelfile $ ollama create lfm2.5-230m-gguf -f Modelfile

License

Name
LFM Open License v1.0
Id
LicenseRef-LFM-1.0
Class
Custom terms
Redistribution
click-through
Listing
Hosted (signed)
Terms
LFM 1.0: commercial use only for organisations under US$10M annual revenue. Keep a copy of the license with the files.
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
README.md
Text sha256
37a4ab9fe7880272069524076524bcecd093177a9d7563cb5a31bae0064b441b
Terms gate
Yes. The commands stay folded until you open them after reading the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: unsloth <huggingface.co/unsloth>Newsgroups: alt.freeweights.lfmSubject: LFM2.5-230M-GGUFDate: 2026-11-15Commit: c68127fSigned: 2DC28CC7B26A283B ✓
Upstream
unsloth/LFM2.5-230M-GGUF
Pinned commit
c68127fd28200f50f79e41738bc7f1e7888862ec
Manifest
LFM2.5-230M-GGUF.json · .minisig
Manifest sha256
2e1a9813506ca8c38f74ae798140a12f19f51a8ff00c8ccef0fc61ddf266aec7
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 00:26 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/unsloth/LFM2.5-230M-GGUF.json $ curl -O https://freeweights.allternit.com/manifests/unsloth/LFM2.5-230M-GGUF.json.minisig $ minisign -Vm LFM2.5-230M-GGUF.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

Parent

LiquidAI/LFM2.5-230M (not in this catalog) · this model is a quantization of it

No model in the catalog names this one as its parent.

Get it
Read license, then download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download unsloth/LFM2.5-230M-GGUF
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. LFM2.5-230M-GGUF.json. Provenance. Takedown history: none.
From: LiquidAI <huggingface.co/LiquidAI>Subject: LFM2-1.2B
From: LiquidAI <huggingface.co/LiquidAI>Subject: LFM2-1.2B-Extract
From: LiquidAI <huggingface.co/LiquidAI>Subject: LFM2-1.2B-RAG
From: LiquidAI <huggingface.co/LiquidAI>Subject: LFM2-1.2B-Tool
From: LiquidAI <huggingface.co/LiquidAI>Subject: LFM2-2.6B
From: LiquidAI <huggingface.co/LiquidAI>Subject: LFM2-2.6B-Exp