{"slug": "lfm2-5-vl-3b-for-better-and-faster-vision-capabilities-for-the-edge", "title": "LFM2.5-VL-3B for Better and Faster Vision Capabilities for the Edge", "summary": "Liquid AI released LFM2.5-VL-3B, a 3.1B parameter vision-language model for edge devices, claiming it leads its size class on real-world image tasks while supporting screen/UI understanding, grounding, multi-image input, and function calling. The model pairs a SigLIP2 400M NaFlex vision encoder with the LFM2.5-2.6B text backbone, was pre-trained on about 34T tokens with 4x more vision data, and achieves top scores on benchmarks like MMStar (63.3), RealWorldQA (73.1), and DocVQA (91.1).", "body_md": "Image-Text-to-Text • 3B • Updated • 8\n\n# LFM2.5-VL-3B for Better and Faster Vision Capabilities for the Edge\n\n[Team Article](/blog)\n\n[LFM2.5-VL-3B](https://huggingface.co/LiquidAI/LFM2.5-VL-3B)is our most capable vision-language model you can run on your own hardware. It understands documents and screens alike, grounds objects, and can call tools. It answers directly instead of reasoning, so responses stay fast in real-time and on-device apps.\n\nLFM2.5-VL-3B extends the vision-language capabilities of our previous releases with four major improvements:\n\n**Screen/UI understanding:** Strong understanding of digital screens across different devices.**Grounding:** Improved grounding and object detection with natural language queries.**Multi-image input:** Improved reasoning across multiple images.**Function calling:** Significantly stronger at function calling, in text-only and vision-text situations.\n\n## How we trained our most capable vision-language model\n\nLFM2.5-VL-3B pairs a [SigLIP2 400M NaFlex vision encoder](https://huggingface.co/google/siglip2-so400m-patch16-naflex) with the same pre-trained backbone as our [LFM2.5-2.6B](https://www.liquid.ai/blog/lfm2-5-2-6b) text model. It is pre-trained on about 34T tokens, with 4x more vision data than before, drawn from curated and synthetic image-caption, OCR, grounding, and instruction-following sets. To support non-Latin scripts, we doubled the vocabulary to 128K by [extending the tokenizer in place](https://www.liquid.ai/blog/tokenizer-expansion) rather than retraining from scratch.\n\nPost-training runs in two stages: First is supervised fine-tuning (SFT), with knowledge distillation from a larger teacher and [Antidoom training](https://www.liquid.ai/blog/antidoom). Second is multi-reward reinforcement learning (RL).\n\n## Benchmark results\n\nWe evaluated LFM2.5-VL-3B across both vision and text benchmarks.\n\nThe **vision benchmarks** cover multilingual visual comprehension, instruction following, visual math and scientific reasoning, document understanding, object detection, multi-image understanding, and screen understanding. LFM2.5-VL-3B leads its size class on real-world image tasks, while also reading digital content well, from documents and charts to on-screen UI elements.\n\n| Task | Benchmark | LFM2.5-VL-3B (3.1B) | LFM2-VL-3B (3.1B) | gemma-4-E2B-it (5.1B) | gemma-4-E4B-it (8B) | InternVL 3.5 2B (2.4B) | InternVL 3.5 4B (4.7B) | Qwen3.5-2B (2.3B) | Qwen3.5-4B (4.7B) |\n|---|---|---|---|---|---|---|---|---|---|\nGeneral |\nMMStar |\n63.3 | 57.7 | 45.3 | 52.9 | 57.7 | 65.5 | 55.1 | 59.3 |\nMME |\n73.1 | 73.0 | 54.9 | 67.6 | 73.6 | 81.0 | 76.2 | 79.5 | |\nRealWorldQA |\n73.1 | 71.1 | 60.0 | 64.3 | 61.6 | 67.7 | 65.1 | 67.1 | |\nSimpleVQA |\n35.4 | 33.0 | 27.3 | 30.4 | 30.5 | 33.7 | 35.2 | 40.7 | |\nSEED-Bench (image) |\n77.7 | 76.6 | 71.4 | 75.3 | 75.4 | 76.4 | 75.8 | 76.1 | |\nMMBench (dev EN v1.1) |\n81.0 | 80.0 | 64.2 | 71.6 | 76.2 | 81.1 | 73.1 | 78.4 | |\nCountBenchQA |\n87.3 | 92.2 | 70.4 | 80.5 | 70.4 | 82.5 | 83.8 | 86.7 | |\nMultilingual |\nMMMB |\n83.0 | 81.9 | 73.3 | 80.4 | 76.3 | 81.5 | 75.9 | 82.0 |\nMultilingual MMBench |\n79.5 | 76.3 | 62.8 | 71.2 | 70.9 | 76.6 | 69.9 | 77.0 | |\nMultimodal IF |\nMM-IFEval |\n60.6 | 51.4 | 65.6 | 68.2 | 47.1 | 54.5 | 55.4 | 63.1 |\nSTEM |\nLogicVista |\n37.4 | 32.2 | 29.5 | 34.5 | 30.9 | 36.2 | 34.0 | 37.6 |\nMathVista (mini) |\n68.5 | 62.1 | 37.8 | 45.2 | 56.8 | 67.1 | 48.7 | 63.6 | |\nMMMU-Pro |\n30.5 | 28.7 | 26.9 | 32.6 | 21.3 | 22.7 | 24.9 | 36.0 | |\nMMMU (val) |\n48.4 | 45.6 | 41.1 | 49.3 | 52.0 | 60.7 | 44.1 | 50.3 | |\nDocument, OCR & Chart |\nChartQA (test) |\n81.3 | 80.4 | 43.2 | 42.1 | 81.7 | 86.2 | 78.4 | 84.2 |\nDocVQA (val) |\n91.1 | 89.8 | 85.7 | 87.4 | 88.4 | 91.8 | 92.6 | 94.8 | |\nInfographicVQA (val) |\n70.2 | 67.8 | 54.4 | 60.9 | 69.3 | 76.9 | 73.5 | 80.3 | |\nOCRBench v1 |\n84.2 | 81.7 | 70.2 | 73.5 | 83.9 | 82.0 | 84.4 | 85.6 | |\nOCRBench v2 (En) |\n47.5 | 43.9 | 44.4 | 48.8 | 45.5 | 49.1 | 47.7 | 58.7 | |\nTextVQA (val) |\n84.3 | 83.0 | 62.5 | 69.0 | 76.6 | 77.5 | 77.3 | 81.2 | |\nGrounding |\nRefCOCO-avg |\n87.9 | 57.1 | 67.3 | 72.1 | 82.9 | 88.8 | 78.5 | 86.6 |\nMulti-Image |\nBLINK |\n61.5 | 50.2 | 45.2 | 52.2 | 52.0 | 57.2 | 48.6 | 58.7 |\nMuirBench |\n58.3 | 34.9 | 32.9 | 51.8 | 45.0 | 53.5 | 48.2 | 62.0 | |\nHallucination |\nHallusionBench |\n47.2 | 46.4 | 41.8 | 49.8 | 47.6 | 52.1 | 49.3 | 51.7 |\nPOPE |\n88.7 | 89.2 | 84.0 | 86.9 | 88.0 | 88.9 | 88.6 | 86.0 | |\nGUI |\nScreenSpot-v2 Desktop |\n78.7 | 6.0 | 28.1 | 45.8 | 79.9 | 82.0 | 63.8 | 76.3 |\nScreenSpot-v2 Mobile |\n81.2 | 7.6 | 42.9 | 60.3 | 86.2 | 87.8 | 69.7 | 81.4 | |\nScreenSpot-v2 Web |\n82.2 | 2.5 | 22.4 | 47.6 | 79.9 | 82.6 | 65.9 | 77.8 | |\nAverage |\n- |\n69.4 | 57.2 | 52.0 | 59.7 | 64.6 | 69.4 | 63.7 | 70.1 |\n\n*All values in the table are normalized to 0–100. Evaluation is done using vLLM 0.26.0 and each model’s recommended generation parameters when available. Non-reasoning mode is used everywhere, and models are prompted to directly answer without reasoning.\n\nWe also evaluated LFM2.5-VL-3B on **text-only benchmarks** for instruction following and tool use. Instruction following climbs across the board, and tool use improves sharply. On tool use, LFM2.5-VL-3B is on par with Gemma-4-E2B and Qwen3.5-2B.\n\n| Task | Benchmark | LFM2.5-VL-3B (3.1B) | LFM2-VL-3B (3.1B) | gemma-4-E2B-it (5.1B) | gemma-4-E4B-it (8B) | InternVL 3.5 2B (2.4B) | InternVL 3.5 4B (4.7B) | Qwen3.5-2B (2.3B) | Qwen3.5-4B (4.7B) |\n|---|---|---|---|---|---|---|---|---|---|\nInstruction following |\nIFEval |\n82.3 | 72.9 | 83.0 | 87.9 | 32.4 | 35.4 | 73.6 | 86.2 |\nIFBench |\n25.8 | 20.8 | 34.1 | 39.2 | 24.4 | 24.5 | 28.9 | 33.5 | |\nMulti-IF |\n59.4 | 46.5 | 69.4 | 77.4 | 16.3 | 16.9 | 53.5 | 66.7 | |\nTool use & function calling |\nToolSandbox |\n59.5 | 26.4 | 56.5 | 61.6 | N/A | N/A | 47.7 | 65.0 |\nBFCL V4 |\n32.5 | 20.5 | 33.2 | 40.0 | N/A | N/A | 33.9 | 53.6 |\n\n*InternVL 3.5 models do not support function-calling.\n\nThese results demonstrate that LFM2.5-VL-3B is a strong, general-purpose vision-language model. It covers everyday tasks (captioning, visual question answering, document understanding) and is especially good at grounding objects, reading screens and documents, and calling tools.\n\n## Inference speed on CPU and GPU\n\nLFM2.5-VL-3B ships with day-one support across the inference ecosystem, including llama.cpp, MLX, vLLM, SGLang, and ONNX.\n\n**On-device inference.** LFM2.5-VL-3B decodes 228 tokens/s on an M5 Max and 116 tokens/s on a Ryzen AI Max+ 395, and fits in about 3 GB of memory. It even reaches 20 tokens/s on a Galaxy S26 Ultra, so you can run it fully on-device.\n\n**GPU inference.** LFM2.5-VL-3B keeps latency consistently low and is the fastest on multi-frame inputs.\n\nLFM2.5-VL-3B is also the fastest on output throughput out of all models we tested, reaching about 11K tokens per second at high concurrency. That is roughly 2× the larger 4B-class models and ahead of even the smaller 2B-class models, which adds up to nearly 1B output tokens per day on a single H100.\n\n## How to use LFM2.5-VL-3B\n\nReach for LFM2.5-VL-3B when you need on-device intelligence for high-volume workloads.\n\nInstall the latest version of `transformers`\n\n(compatible with `transformers>=5.0.0`\n\n):\n\n```\n%pip install -q torch torchvision accelerate \"transformers>=5.10.1\"\n```\n\nThen load and run the model:\n\n``` python\nimport torch\nfrom transformers.image_utils import load_image\nfrom transformers import AutoModelForImageTextToText, AutoProcessor\nfrom IPython.display import display\n\nMODEL_ID = \"LiquidAI/LFM2.5-VL-3B\" \n\nprocessor = AutoProcessor.from_pretrained(MODEL_ID)\nmodel = AutoModelForImageTextToText.from_pretrained(\n    MODEL_ID,\n    device_map=\"auto\",\n    dtype=\"bfloat16\",\n)\n\nimg_url = \"https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/coco_sample.png\"\ninput_image = load_image(img_url)\ndisplay(input_image)\n\nmessages = [\n    {\n        \"role\": \"user\",\n        \"content\": [\n            {\"type\": \"image\", \"image\": input_image},\n            {\"type\": \"text\", \"text\": \"Describe this image in two concise sentences.\"},\n        ],\n    }\n]\n\ninputs = processor.apply_chat_template(\n    messages,\n    add_generation_prompt=True,\n    tokenize=True,\n    return_dict=True,\n    return_tensors=\"pt\",\n).to(model.device)\n\nwith torch.inference_mode():\n    outputs = model.generate(\n        **inputs,\n        do_sample=True,\n        temperature=0.2,\n        top_k=50,\n        repetition_penalty=1.0,\n        max_new_tokens=256,\n    )\n\noutput = processor.batch_decode(outputs[:, inputs[\"input_ids\"].shape[1]:], skip_special_tokens=True)[0]\nprint(output)\nTwo cats are sleeping on a pink couch with two remote controls.\n```\n\nYou can find more hands-on examples on how to use LFM2.5-VL3B for multi-image inputs, grounding, OCR, tool calling, and more in [our documentation](https://docs.liquid.ai/lfm/key-concepts/vision-capabilities). Check out our [release blog](http://www.liquid.ai/blog/lfm2-5-vl-3b) for video examples.\n\n## LFM2.5-VL-3B demo\n\nCheck out this [browser demo of LFM2.5-VL-3B powering a vision-capable chat interface](https://huggingface.co/spaces/LiquidAI/LFM2.5-VL-3B-WebGPU). It allows you to take or upload multiple images and let the model interact with them, including grounding, OCR, and tool use.\n\n## Get Started\n\nLFM2.5-VL-3B is available on Hugging Face today.\n\nWith LFM2.5, we're delivering on our vision of AI that runs anywhere. These models are:\n\n**Download:**[LFM2.5-VL-3B](https://huggingface.co/LiquidAI/LFM2.5-VL-3B)on Hugging Face.** Try:**run the[WebGPU demo in your browser](https://huggingface.co/spaces/LiquidAI/LFM2.5-VL-3B-WebGPU), no setup needed.** Fine-tune:**adapt LFM2.5-VL-3B to your task with our[fine-tuning tutorials](https://github.com/Liquid4All/cookbook/tree/main/finetuning/notebooks).\n\nWe can't wait to see what you build.\n\n## Citation\n\nPlease cite this article as:\n\n```\nLiquid AI, \"LFM2.5-VL-3B: A Better and Faster Vision-Language Model for the Edge\", Liquid AI Blog, Aug 2026.\n```\n\nOr use the BibTeX citation:\n\n```\n@article{liquidAI2026VL3B,\n  author  = {Liquid AI},\n  title   = {LFM2.5-VL-3B: A Better and Faster Vision-Language Model for the Edge},\n  journal = {Liquid AI Blog},\n  year    = {2026},\n  note    = {www.liquid.ai/blog/lfm2-5-vl-3b},\n}\n```\n\n", "url": "https://wpnews.pro/news/lfm2-5-vl-3b-for-better-and-faster-vision-capabilities-for-the-edge", "canonical_source": "https://huggingface.co/blog/LiquidAI/lfm2-5-vl-3b", "published_at": "2026-08-12 14:00:51+00:00", "updated_at": "2026-08-12 14:17:12.157442+00:00", "lang": "en", "topics": ["artificial-intelligence", "machine-learning", "computer-vision", "large-language-models", "ai-products"], "entities": ["Liquid AI", "LFM2.5-VL-3B", "SigLIP2 400M NaFlex", "LFM2.5-2.6B", "MMStar", "RealWorldQA", "DocVQA"], "alternates": {"html": "https://wpnews.pro/news/lfm2-5-vl-3b-for-better-and-faster-vision-capabilities-for-the-edge", "markdown": "https://wpnews.pro/news/lfm2-5-vl-3b-for-better-and-faster-vision-capabilities-for-the-edge.md", "text": "https://wpnews.pro/news/lfm2-5-vl-3b-for-better-and-faster-vision-capabilities-for-the-edge.txt", "jsonld": "https://wpnews.pro/news/lfm2-5-vl-3b-for-better-and-faster-vision-capabilities-for-the-edge.jsonld"}}