Model reference · open weights
LFM2-VL is an open-weight language model from LiquidAI. LFM2-VL-450M (BF16) weighs 902 MB; the smallest configuration that runs it is RTX 3060 12 GB.
For self-hosting, compare this build's requirements below with the GPU you plan to rent.
What it is
| Released by | LiquidAI |
|---|---|
| Released | 2025-08-12 |
| Parameters | 1.6B |
| VRAM | 902 MB for the weights |
What it runs on
How much memory each request adds isn't estimated yet for this architecture. The weights need at least the cards below, plus room for the context.
| Card | Weights alone |
|---|---|
| RTX 3060 12 GB | fits |
| RTX 4060 Ti 16 GB | fits |
| RTX 3090 24 GB | fits |
| RTX 4090 24 GB | fits |
| RTX 5090 32 GB | fits |
| L40S 48 GB | fits |
| A100 80 GB | fits |
| H100 80 GB | fits |
| RTX PRO 6000 Blackwell 96 GB | fits |
| DGX Spark (GB10) 128 GB unified | fits |
| H200 141 GB | fits |
| B200 180 GB | fits |
Builds
| Build | Params | Precision | Weights | Smallest setup |
|---|---|---|---|---|
| LFM2-VL-1.6B ↗ | 1.6B | BF16 | 3.2 GB | RTX 3060 12 GB |
| LFM2-VL-1.6B-GGUF ↗ 3 builds: Q4_0 696 MB … F16 2.3 GB |
GGUF | 1.2 GB | RTX 3060 12 GB | |
| LFM2-VL-450M (above) ↗ | 451M | BF16 | 902 MB | RTX 3060 12 GB |
From the model card
src="https://cdn-uploads.huggingface.co/production/uploads/61b8e2ba285851687028d395/2b08LKpev0DNEk6DlnWkY.png" alt="Liquid AI" style="width: 100%; max-width: 100%; height: auto; display: inline-block; margin-bottom: 0.5em; margin-top: 0.5em;" />
LFM2‑VL is Liquid AI's first series of multimodal models, designed to process text and images with variable resolutions. Built on the LFM2 backbone, it is optimized for low-latency and edge AI applications.
We're releasing the weights of two post-trained checkpoints with 450M (for highly constrained devices) and 1.6B (more capable yet still lightweight) parameters.
Find more about our vision-language model in the LFM2-VL post and its language backbone in the LFM2 blog post.
Due to their small size, we recommend fine-tuning LFM2-VL models on narrow use cases to maximize performance. They were trained for instruction following and lightweight agentic flows. Not intended for safety‑critical decisions.
| Property | LFM2-VL-450M | LFM2-VL-1.6B |
|---|---|---|
| Parameters (LM only) | 350M | 1.2B |
| Vision encoder | SigLIP2 NaFlex base (86M) | SigLIP2 NaFlex shape‑optimized (400M) |
| Backbone layers | hybrid conv+attention | hybrid conv+attention |
| Context (text) | 32,768 tokens | 32,768 tokens |
| Image tokens | dynamic, user‑tunable | dynamic, user‑tunable |
| Vocab size | 65,536 | 65,536 |
| Precision | bfloat16 | bfloat16 |
| License | LFM Open License v1.0 | LFM Open License v1.0 |
Supported languages: English
Generation parameters: We recommend the following parameters:
temperature=0.1, min_p=0.15, repetition_penalty=1.05min_image_tokens=64 max_image_tokens=256, do_image_splitting=TrueChat template: LFM2-VL uses a ChatML-like chat template as follows:
You are a helpful multimodal assistant by Liquid AI.
This image shows a Caenorhabditis elegans (C. elegans) nematode.
Images are referenced with a sentinel (``), which is automatically replaced with the image tokens by the processor.
You can apply it using the dedicated .apply_chat_template() function from Hugging Face transformers.
Architecture
Training approach
You can run LFM2-VL with Hugging Face transformers v4.57 or more recent as follows:
pip install -U transformers pillow
Here is an example of how to generate an answer with transformers in Python:
from transformers import AutoProcessor, AutoModelForImageTextToText
from transformers.image_utils import load_image
# Load model and processor
model_id = "LiquidAI/LFM2-VL-1.6B"
model = AutoModelForImageTextToText.from_pretrained(
model_id,
device_map="auto",
dtype="bfloat16"
)
processor = AutoProcessor.from_pretrained(model_id)
# Load image and create conversation
url = "https://www.ilankelman.org/stopsigns/australia.jpg"
image = load_image(url)
conversation = [
{
"role": "user",
"content": [
{"type": "image", "image": image},
{"type": "text", "text": "What is in this image?"},
],
},
]
# Generate Answer
inputs = processor.apply_chat_template(
conversation,
add_generation_prompt=True,
return_tensors="pt",
return_dict=True,
tokenize=True,
).to(model.device)
outputs = model.generate(**inputs, max_new_tokens=64)
processor.batch_decode(outputs, skip_special_tokens=True)[0]
# This image depicts a vibrant street scene in what appears to be a Chinatown or similar cultural area. The focal point is a large red stop sign with white lettering, mounted on a pole.
We recommend fine-tuning LFM2-VL models on your use cases to maximize performance.
| Notebook | Description | Link | |-----------|--
Quoted from the model card on Hugging Face. The full card is behind the Hugging Face link above.