Vendor
LiquidAI
Parameters
350M
Size
680.8 MB
$ brew install mirai$ mirai --model LiquidAI/LFM2.5-350M

Benchmarks

0.07 s

How long until the model starts responding

lower is better

529 t/s

The speed at which text appears on screen

higher is better

0.79 GB

RAM the model uses while running

lower is better

uzu0.5.14MLX0.31.2llama.cpp0.3.23/1,339 input tokens/219 output tokens

Benchmarked 7 Aug 2026

Integrate with SDK

1
Choose framework
2
Run the following command to install Mirai SDK
https://github.com/trymirai/uzu-swift
3
Apply code
1import Foundation2import Uzu34public func runChat() async throws {5    let engineConfig = EngineConfig.create()6    let engine = try await Engine.create(config: engineConfig)7    8    guard let model = try await engine.model(identifier: "alibaba:qwen3.5:0.8b:mirai:mirai-m:4") else {9        return10    }11    for try await update in try await engine.download(model: model).iterator() {12        print(String(format: "\r\u{001B}[2KDownload progress: %.2f%%", update.progress() * 100), terminator: "")13        fflush(stdout)14    }15    print()16    17    let messages = [18        ChatMessage.system().withText(text: "You are a helpful assistant"),19        ChatMessage.user().withText(text: "Tell me a short, funny story about a robot")20    ]21    let session = try await engine.chat(model: model, config: .create())22    let stream = await session.replyWithStream(input: messages, config: .create())23    var message: ChatMessage? = nil24    for try await update in stream.iterator() {25        switch update {26        case .replies(let replies):27            let reply = replies.last28            message = reply?.message29            print("Generated tokens: \(reply?.stats.tokensCountOutput ?? 0)")30        case .error(let error):31            print("Error: \(error)")32        }33    }34    print("Reasoning: \(message?.reasoning() ?? "empty")")35    print("Text: \(message?.text() ?? "empty")")36}37

Details

Liquid AI

Liquid AI's LFM2.5-350M is a general-purpose instruction-tuned model from a new family of hybrid models designed specifically for on-device deployment. Building on the LFM2 architecture, it leverages extended pre-training and large-scale multi-stage reinforcement learning to deliver best-in-class performance, rivaling much larger models and bringing high-quality AI directly to edge devices.

Architecture & Specifications

LFM2.5-350M features 350 million parameters distributed across 16 layers (10 double-gated LIV convolution blocks and 6 GQA blocks). It was trained on an extensive budget of 28T tokens (scaled up from 10T tokens) and supports a generous 32,768 token context length. The model has a vocabulary size of 65,536 and a knowledge cutoff of Mid-2024.

Performance

LFM2.5-350M Benchmarks

LFM2.5-350M leads its class across a wide range of benchmarks. On general reasoning and instruction-following tasks it scores 30.64 on GPQA Diamond, 40.69 on IFBench, and 44.92 on Multi-IF — outperforming comparable models such as Gemma 3 1B IT and Granite 4.0-H-350M. On agentic and tool-use benchmarks it achieves 32.45 on CaseReportBench, 44.11 on BFCLv3, and leads in τ²-Bench Telecom (18.86) and τ²-Bench Retail (17.84), substantially ahead of all listed competitors.

Inference

LFM2.5-350M Inference Benchmarks by Device

LFM2.5-350M is highly optimized for fast edge inference. Under 4-bit quantization with a 2K token input context, it achieves 2,991 tok/s prefill and 313 tok/s decode on an AMD Ryzen AI Max+ 395, and 1,286 tok/s prefill and 188 tok/s decode on a Qualcomm Snapdragon Gen4 (Samsung Galaxy S25 Ultra). Memory usage on both devices is under 450 MB, making it the most memory-efficient model in its class. It runs with day-one support for llama.cpp, MLX, and vLLM.

LFM2.5-350M Output Throughput vs Concurrency

On GPU (SGLang, 1024 input tokens, 256 output tokens), LFM2.5-350M reaches over 40K tokens per second output throughput at high concurrency (4096), far surpassing Granite-4.0-350M, Gemma 3 1B IT, Qwen3.5-0.8B, and Granite-4.0-H-350M across the entire concurrency range.

Capabilities

This model is multilingual, supporting nine languages including English, Arabic, Chinese, French, German, Japanese, Korean, Portuguese, and Spanish. Liquid AI recommends using it for data extraction, structured outputs, and tool use (function calling via a ChatML-like format), while noting it is not recommended for knowledge-intensive tasks and programming. Suggested generation parameters are conservative (`temperature: 0.1`, `top_k: 50`, `repetition_penalty: 1.05`).

Use Cases

  • On-device deployment and fast edge inference (mobile, edge, CPU/GPU environments)
  • Multilingual tasks across nine supported languages
  • Data extraction and structured outputs
  • Tool use and function calling
Explore all local models