Liquid AI's new LFM3-1.7B wants temperature 0.1 for agents and 1.0 for math, thinks by default, and can keep tool definitions out of the prompt with defer_loading until a search tool asks for them.
Liquid AI released LFM3 on Tuesday, and the text model in the family, LFM3-1.7B, arrives with two habits that catch new users out. Its model card does not offer one set of sampling settings, it offers two, and the right one depends on the job. And it supports deferred tools, a way to keep most of your tool definitions out of the prompt until the model actually needs them. On a small model that runs on a laptop or a phone, both choices change results more than any prompt rewrite will.
Start with sampling. For general use, which the card defines as chat, tool use, agents and coding, Liquid AI recommends temperature=0.1, top_k=50 and repetition_penalty=1.1. For math and STEM work it recommends something very different: temperature=1.0, top_p=0.95 and top_k=20. Teams that copy one setting across every workload will either get a stiff, repetitive model on reasoning problems or an erratic one inside an agent loop. Route by task and set the parameters per request.
Next, thinking. The card says reasoning is enabled by default. You can pass enable_thinking=False to turn the thinking traces off, but the card warns that this behavior can be inconsistent, especially on reasoning heavy tasks. Treat the off switch as a latency optimization for simple turns, not a guarantee, and make sure your parser tolerates a think block appearing anyway.
The most useful feature is deferred tools. Mark a tool with defer_loading=True and its definition stays out of the prompt until your harness's search tool returns its name as a tool_reference part. The chat template then inserts that definition into an additional_tools block. The card is explicit that you must keep the full tools list, including the deferred ones, on every request, and that the feature works with vLLM, SGLang and LFM3 compatible llama.cpp builds. For an agent with dozens of tools, this keeps the context lean, which matters on a model with a 256K token window that you may be running on modest hardware.
Two last details. LFM3-1.7B writes tool calls in an XML format, not JSON, and the card says function.arguments must be a Python mapping, so decode any JSON strings with json.loads() before you apply the chat template. And know its limits: Liquid AI says the model is not recommended for agentic coding or complex multi step reasoning because of its size. Use it for local agents, tool calling and structured output, and hand the hard problems to a bigger model.
Try it today
- For chat, tool use, agents and coding, set temperature=0.1, top_k=50 and repetition_penalty=1.1.
- For math and science prompts, switch to temperature=1.0, top_p=0.95 and top_k=20 on a per request basis.
- Expect reasoning to be on by default; if you pass enable_thinking=False for speed, keep your parser tolerant of a think block anyway.
- Mark rarely used tools with defer_loading=True, give the model a search tool, and keep the full tools list, deferred tools included, on every request.
- Parse tool calls as XML and decode any JSON argument strings with json.loads() before applying the chat template.