LFM3-Omni-2B

LiquidAI

Parameters

2.2B

Architecture

LFM3 backbone with LFM3 vision encoder, LFM3 causal audio encoder, and LiquidCodec audio tokenizer

Released

27.10.2026

License

LFM Open License v1.0

Open Weights Commercial Use Multimodal BF16 LFM3 en ar zh fr de it ja ko pt es vi th id hi ru pl

Input Modalities

text image video audio

Output Modalities

text audio

Context (native)

32,768 tokens

Context (extended)

32,768 tokens

Openness Index Score 70.0/100

About

LFM3-Omni-2B is Liquid AI's first omni-modal model in the LFM3 family: a single end-to-end model that understands text, images, video and audio and answers in text and speech - one model that replaces a separate ASR model, vision-language model, LLM and TTS model, built for on-device use on phones, laptops and other edge hardware. It has 2.17B total parameters (2.2B class) and is maintained and trained by LiquidAI (Liquid AI).

Architecture. The checkpoint combines four parts around the LFM3 backbone: the 24-layer LFM3 tri-hybrid language model (13 gated short convolution blocks, 5 sliding-window attention layers, 6 global attention layers with grouped-query attention (GQA) 16/4 KV heads at head dim 128, partial rotary embeddings with rotary factor 0.5 on global layers, sandwich norm, tied embeddings, hidden size 2048), a 14-layer LFM3 vision encoder (convolution and bidirectional attention, 16x16 patches, 2D axial rotary embeddings) attached through a GELU projector (hidden size 4096), a causal LFM audio encoder (17-layer convolution/attention hybrid, 128 mel bins, 16 kHz) and the in-house LiquidCodec audio tokenizer whose tokens drive a 3-layer DepthFormer detokenizer (maskgit-style parallel audio-codebook decode) to render 24 kHz speech. Speech is generated with 12 codebooks (codebook size 2017), representing roughly 80 ms of audio as 12 discrete tokens; images are processed at native resolution (up to 2,048 tokens per image, each 2x2 patch block becomes one language token) and video is sampled at 2 fps with 4 to 384 frames, optionally with its own soundtrack interleaved - the model sees and hears a video at the same time via use_audio_in_video.

Usage. Input text, images, video (with or without soundtrack) and 16 kHz audio; output text, 24 kHz speech, or interleaved text and speech (generation modes text, audio, interleaved, controlled by system prompt or generation_mode). This is a non-reasoning model: enable_thinking=True is not supported and answers open with an empty think block (<think></think>); greedy decoding works well for text, while speech output uses audio_temperature=0.4 and audio_repetition_penalty=1.2. Context length is 32K tokens (input + output) with a 128,000-token text vocabulary. Text languages are the 16 LFM3 languages (English, Arabic, Chinese, French, German, Italian, Japanese, Korean, Portuguese, Spanish, Vietnamese, Thai, Indonesian, Hindi, Russian, Polish) and speech covers 19 languages and locales (Arabic, Danish, German, Greek, British English, American English, Finnish, French, Hebrew, Italian, Japanese, Korean, Dutch, Polish, Portuguese, Spanish, Swedish, Turkish, Chinese). It supports speech recognition (ASR), speech synthesis (TTS), speech-to-text and speech-to-speech chat, translation, image and video understanding, tool calling from spoken requests (Qwen3-style XML tool calls), and fine-tuning via Transformers SFT (omni and VQA notebooks).

Performance (all scores measured by Liquid AI, 0-100 scale except OCRBench out of 1,000). Omni benchmarks: Daily-Omni 70.09, WorldSense 47.10, AV-SpeakerBench 46.79, OmniBench (overall) 46.32, OmniBench (speech) 48.25 - all ahead of the 3B and often the 7B-class Qwen2.5-Omni - plus spoken visual QA (RealWorldQA 64.68, ERQA 39.43, EmbSpatial 67.59). Vision: MMStar 55.67, MMMU (val) 42.44, MMMU-Pro 27.28, DocVQA 92.47, POPE 89.34, OCRBench 806, RefCOCO 73.55, Video-MME (no subtitles) 57.70. Audio: English ASR WER 6.36 (Open ASR / ESB suite), multilingual ASR error 6.72 (FLEURS), English TTS UTMOSv2 3.80, VoiceBench 64.73, voice tool calling 52.20, MMAR 51.40.

Deployment. Checkpoints ship as BF16 (SGLang serves text output) and GGUF (llama.cpp, including a realtime speech server). Released October 27, 2026 (LFM3 release blog post) under the LFM Open License v1.0.

Benchmark Scores

Benchmark Score Date
OCRBench
document_understanding
100.00%
—
MMStar
vision_language
55.67
—
POPE (spoken)
vision_language
100.00%
—
English ASR WER
multimodal
100.00%
—
WorldSense
multimodal
100.00%
—
RoboSpatial
spatial_intelligence
100.00%
—
English TTS UTMOSv2
multimodal
3.80
—
SEEDBench (image)
vision_language
100.00%
—
DocVQA
multimodal
82.30%
—
OmniBench (overall)
multimodal
100.00%
—
RealWorldQA
vision_language
48.93%
—
RefCOCO (avg)
spatial_intelligence
73.55
—
MMBench EN-DEV v1.1
vision_language
73.68
—
MMStar (spoken)
vision_language
100.00%
—
ERQA
spatial_intelligence
38.50
—
VoiceBench
multimodal
64.73
—
AV-SpeakerBench
multimodal
100.00%
—
FLEURS
multilingual
100.00%
—
Tool calling (internal eval)
multimodal
52.20
—
POPE
vision_language
100.00%
—
InfoVQA
multimodal
47.46%
—
MMAR
multimodal
100.00%
—
OmniBench (speech)
multimodal
100.00%
—
MathVista (mini)
vision_language
62.50
—
MMMU-Pro
vision_language
27.28
—
EmbSpatial (spoken)
vision_language
100.00%
—
VideoMME (w/o sub.)
video_understanding
57.70
—
Daily-Omni
multimodal
100.00%
—
EmbSpatialBench
spatial_intelligence
70.55
—
MVBench
video_understanding
58.03
—
ERQA (spoken)
vision_language
100.00%
—
RealWorldQA (spoken)
vision_language
100.00%
—
MMMU
vision_language
7.07%
—

Hardware Requirements

Estimated VRAM per quantization at 4,096 tokens context

Quantization Weights KV Cache Total VRAM
FP16 — 16-bit 4.3 GB 0.3 GB 4.9 GB
INT8 — 8-bit 2.2 GB 0.2 GB 2.4 GB
INT4 — 4-bit 1.1 GB 0.1 GB 1.2 GB
FP4 — 4-bit 1.1 GB 0.1 GB 1.2 GB

Consumer GPUs that fit this model with a single card (INT4):

Architecture

Decoder Block ×24 input Embedding vocab 128K · d 2048 Full Attention Hybrid 16:4 · dₕ 128 · win 256 ×1 Sliding Window Attn Hybrid 16:4 · dₕ 128 · win 256 ×1 Full Attention Hybrid 16:4 · dₕ 128 · win 256 ×1 Sliding Window Attn Hybrid 16:4 · dₕ 128 · win 256 ×1 Full Attention Hybrid 16:4 · dₕ 128 · win 256 ×1 Sliding Window Attn Hybrid 16:4 · dₕ 128 · win 256 ×1 Full Attention Hybrid 16:4 · dₕ 128 · win 256 ×1 Sliding Window Attn Hybrid 16:4 · dₕ 128 · win 256 ×1 Full Attention Hybrid 16:4 · dₕ 128 · win 256 ×1 Sliding Window Attn Hybrid 16:4 · dₕ 128 · win 256 ×1 Full Attention Hybrid 16:4 · dₕ 128 · win 256 ×1 Dense FFN SwiGLU · d 7680 Final RMSNorm LM Head tied with embedding output
Attention
Hybrid Attention (16:4)
Layers
24
Hidden size
2048
Context
128K tokens
Parameters
2170M

Source: Hugging Face config.json · Lfm3OmniForConditionalGeneration · exact layer pattern · model repo

Type: omni-modal transformer (LFM3 tri-hybrid backbone + vision/audio encoders + LiquidCodec detokenizer)
Attention: backbone: gated short convolution + sliding-window attention + global attention with GQA (16 heads / 4 KV, window 256); vision encoder: conv + bidirectional attention with axial RoPE; audio encoder: causal conv/attention (LFM2-style)
Decoder: dense
Layers 24
Context length 128K
Attention heads 16
KV heads 4
Head dim 128
Hidden size 2048
Vocabulary 128K
FFN dim 7680
Vision Yes
Vision encoder {'type': 'LFM3 vision encoder (lfm3_vl_vision)', 'layers': 14, 'hidden_size': 1024, 'attention': '8 conv + 6 bidirectional attention', 'patch_size': 16, 'rope': 'axial (rope_theta 1000000.0)', 'spatial_merge_size': 2, 'temporal_patch_size': 2}
RoPE θ 1e+06
Sliding window 256
Audio Detokenizer {'type': 'DepthFormer detokenizer (lfm3)', 'layers': 3, 'hidden_size': 1024, 'codebooks': 12, 'codebook_size': 2017, 'maskgit_schedule': [4, 4, 4], 'output_sample_rate_hz': 24000}
Audio encoder {'type': 'LFM3 causal audio encoder (lfm3_omni_encoder, LFM2-style conv/attention stack)', 'layers': 17, 'hidden_size': 768, 'mel_bins': 128, 'sample_rate_hz': 16000}
Layer Pattern conv, conv, full_attention, conv, sliding_attention, conv, full_attention, conv, sliding_attention, conv, full_attention, conv, sliding_attention, conv, full_attention, conv, sliding_attention, conv, full_attention, conv, sliding_attention, conv, full_attention, conv
Moe {'enabled': False, 'experts_total': None, 'experts_active': None, 'shared_experts': None, 'intermediate_size': None, 'first_k_dense': None, 'layer_freq': None, 'scoring_func': None, 'route_top_k': None}
Projector {'hidden_size': 4096, 'activation': 'gelu'}
Rope Scaling {'split_per_attention_type': True, 'note': "text_config rope_parameters split per attention type; rope_type 'default' for both. full_attention: theta 1e6 with partial_rotary_factor 0.5; sliding_attention: theta 1e4. Vision encoder uses axial rope (theta 1e6).", 'full_attention': {'rope_theta': 1000000.0, 'partial_rotary_factor': 0.5, 'rope_type': 'default'}, 'sliding_attention': {'rope_theta': 10000, 'rope_type': 'default'}}
Tied embeddings Yes

Related Models

Comments (0)

No comments yet

Be the first to share your thoughts!