OdooClaw Medium 2.6B FT — MLX

The on-device agentic model for Odoo — the best quality-to-speed tradeoff in the OdooClaw family.

MLX 4-bit version (Apple Silicon) of the OdooClaw Medium 2.6B FT model (v18, canonical). Fine-tuned LFM2.5-2.6B for tool calling inside Odoo (ERP) via MCP. Ask in natural language in the Odoo chat and the model picks the right Odoo tool.

Part of the OdooClaw collection. The GGUF release (Linux/Windows/CPU) is odooclaw-medium-2.6b-ft.

Why this model

The Medium is the agentic sweet spot of the OdooClaw family:

  • LFM2.5-2.6B (this model, fine-tuned): the best balance of tool-calling accuracy and speed — the "on-device agentic" model of the LFM2.5 family
  • Light 1.2B (odooclaw-light-1.2b-ft-mlx): faster and lighter, but lower accuracy on business/finance tasks
  • Medium 2.6B (this model): 94.2% conversation, 99.5% creation on 1000-case batteries — the most balanced model of the series

We deliberately chose the 2.6B for agentic workloads where the model reasons before every tool call — the extra accuracy is worth the small latency cost.

Evaluation (v18, 1000-case batteries)

Battery (1000) v18
Conversation (990) 94.2%
Creation (1000) 99.5%
Business (1000) 74.0%
Invoices (1000) 71.6%

The v18 is the most balanced model of the series: top-2 in all 4 categories at once, no tradeoffs. Trained with balanced distribution (matches evaluation) and natural variety.

Performance (MLX, Apple Silicon)

Machine: Mac Mini M4 (this measurement) — the reference Apple Silicon for on-device agentic:

Metric Value
Model load 0.8s
Tool call ("Busca el cliente Acme") 0.98sfind_partner
Generation speed 61.7 tok/s
Reference machine tok/s
Mac Mini M4 61.7
Mac Studio M1 Ultra (64GB) (see GGUF card)

Bottom line: a full Odoo AI agent with near-100% creation accuracy runs on a single Apple Silicon Mac, with sub-second tool calls.

What makes it work

  • Retrieval top-5: the gateway only injects the 5 most relevant tools per query (of 134 Odoo MCP tools) — keeps the context small and the model focused
  • Native tool calls: LFM2.5 emits <|tool_call_start|>[tool_name(arg='val')]<|tool_call_end|> — mlx_lm converts it to structured tool calls
  • Fine-tuned on 49.301 teacher-generated examples (local Qwen3.6 teacher, zero cloud cost), including multi-turn history examples
  • Deterministic record links: the gateway appends clickable /odoo/contacts/{id} links to responses

Files

  • model.safetensors (1.5GB, 4-bit quantized)
  • config.json, tokenizer.json, chat_template.jinja

Usage (mlx-lm)

pip install mlx-lm

python -c "
from mlx_lm import load, generate
model, tokenizer = load('nicolasramos/odooclaw-medium-2.6b-ft-mlx')
messages = [
    {'role': 'system', 'content': 'Eres odooclaw, un asistente que gestiona Odoo ERP.'},
    {'role': 'user', 'content': 'Busca el cliente Acme'},
]
prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
print(generate(model, tokenizer, prompt=prompt, max_tokens=100))
"

Output: <|tool_call_start|>[mcp_odoo-mcp_odoo_find(model='res.partner', domain=[["name",...])]<|tool_call_end|>

License

Apache 2.0 — free for everyone, that's the whole point.

Downloads last month
203
Safetensors
Model size
0.4B params
Tensor type
BF16
·
U32
·
MLX
Hardware compatibility
Log In to add your hardware

4-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for nicolasramos/odooclaw-medium-2.6b-ft-mlx

Quantized
(76)
this model

Collection including nicolasramos/odooclaw-medium-2.6b-ft-mlx