Instructions to use mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit with MLX:
# Make sure mlx-lm is installed # pip install --upgrade mlx-lm # Generate text with mlx-lm from mlx_lm import load, generate model, tokenizer = load("mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit") prompt = "Write a story about Einstein" messages = [{"role": "user", "content": prompt}] prompt = tokenizer.apply_chat_template( messages, add_generation_prompt=True ) text = generate(model, tokenizer, prompt=prompt, verbose=True) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- Pi
How to use mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit with Pi:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit"
Configure the model in Pi
# Install Pi: npm install -g @mariozechner/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "mlx-lm": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit" } ] } } }Run Pi
# Start Pi in your project directory: pi
- OpenClaw new
How to use mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit with OpenClaw:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit"
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit" \ --custom-provider-id mlx-lm \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
- MLX LM
How to use mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit with MLX LM:
Generate or start a chat session
# Install MLX LM uv tool install mlx-lm # Interactive chat REPL mlx_lm.chat --model "mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit"
Run an OpenAI-compatible server
# Install MLX LM uv tool install mlx-lm # Start the server mlx_lm.server --model "mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit" # Calling the OpenAI-compatible server with curl curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit", "messages": [ {"role": "user", "content": "Hello"} ] }' - Hermes Agent
How to use mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit with Hermes Agent:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit"
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit
Run Hermes
hermes
mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit
Built with mlx-optiq, the MLX-native toolkit to quantize, fine-tune, and serve LLMs locally on Apple Silicon, no PyTorch and no cloud. All OptiQ quants · Docs
An OptiQ mixed-precision quant of LiquidAI/LFM2.5-1.2B-Thinking. 820 MB on disk, down from 2.34 GB at bf16, and it scores 84% on IFEval and 83% on GSM8K at that size.
This is the reasoning variant of LFM2.5-1.2B. It thinks before answering, which is worth a lot at this size: against the Instruct model it gains 21 points on MMLU and 13 on GSM8K.
LFM2.5 is a hybrid architecture: convolutional blocks interleaved with full attention, so only a few blocks carry a KV cache. OptiQ measures each layer's sensitivity and assigns per-layer bit-widths, keeping 8-bit where it matters and 4-bit elsewhere.
What it is
| Property | Value |
|---|---|
| Base | LiquidAI/LFM2.5-1.2B-Thinking |
| Architecture | lfm2 — hybrid conv + full attention |
| Method | OptiQ mixed-precision, sensitivity-driven (bf16 reference) |
| On disk | 820 MB (bf16: 2.34 GB) |
| Context | 128k |
| KV cache | mixed-precision kv_config.json bundled (6 attention layers, 4.67 avg bits) |
Capability Score
Six-metric mean, the standard OptiQ eval. Run with reasoning enabled.
| Metric | Score |
|---|---|
| MMLU (5-shot, 969 samples) | 64.7% |
| GSM8K (1000 samples) | 82.8% |
| IFEval (full set, strict) | 84.3% |
| BFCL-V3 simple (200 calls) | 45.5% |
| HumanEval (164 problems, pass@1) | 47.6% |
| HashHop (long-context retrieval) | 0.0% |
| Capability Score (mean of 6) | 54.14 |
Knowledge and instruction-following are the strengths, and 83% on GSM8K is unusual for a model under a gigabyte. Long-context multi-hop retrieval is the weak spot: at this size the model cannot produce the hash format the task requires, so it scores zero rather than partially.
Run it
pip install mlx-optiq
from mlx_lm import load, generate
model, tok = load("mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit")
prompt = tok.apply_chat_template(
[{"role": "user", "content": "What is 17 * 23? Think briefly then answer."}],
tokenize=False, add_generation_prompt=True,
)
print(generate(model, tok, prompt=prompt, max_tokens=2048))
Give it room. The model spends its first few hundred tokens thinking, and that budget comes out of max_tokens. Cap it too low and the whole allowance is consumed inside the reasoning block, so you get an empty answer back rather than a short one. 2048 is a sensible floor for anything non-trivial.
Serve it with the bundled mixed-precision KV cache:
optiq serve --model mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit --kv-config kv_config.json
Tool calling
LFM2.5 writes Pythonic calls between special tokens:
<|tool_call_start|>[get_weather(city="Paris")]<|tool_call_end|>
Pass tools= to apply_chat_template and they are rendered into the system prompt.
Links
- Project website: mlx-optiq.com
- All OptiQ quants: mlx-optiq.com/models
- Base model: LiquidAI/LFM2.5-1.2B-Thinking
- Downloads last month
- 13
4-bit
Model tree for mlx-community/LFM2.5-1.2B-Thinking-OptiQ-4bit
Base model
LiquidAI/LFM2.5-1.2B-Base