LFM3-Omni-2B
by LiquidAI
Liquid AI's 2.2B-parameter on-device model that watches and listens to a video together and answers in text or speech
LiquidAI/LFM3-Omni-2BDeploy LFM3-Omni-2B
Single-tenantMixpeek has no managed extractor for this model. On a single-tenant deployment you upload the weights and a custom plugin serves them next to the rest of your pipeline.
Overview
LFM3-Omni-2B is Liquid AI's first omni-modal model in the LFM3 family, published on Hugging Face on 21 October 2026. One 2.17B-parameter model takes text, images, video with or without its soundtrack, and 16 kHz audio, and answers in text, 24 kHz speech, or both interleaved. Liquid AI built it for phones, laptops and other edge hardware, where it stands in for a separate speech recognizer, vision-language model and speech synthesizer.
For a media pipeline the useful part is that it hears a video's soundtrack while it watches the frames, so a description can say what was shown and what was said in the same answer. It samples video at 2 frames per second by default (4 to 384 frames) and always hears the full soundtrack. It returns no retrieval vector, so its descriptions and transcripts are embedded by a separate embedding model before they can be searched.
The weights are under the LFM Open License v1.0: commercial use is allowed for companies with annual revenue under 10 million US dollars, and a company at or above that needs a separate agreement with Liquid AI.
Architecture
An LFM3 language backbone with an LFM3 vision encoder, a causal LFM3 audio encoder and the LiquidCodec audio tokenizer for speech output. Images and video are read at native resolution, and each 2x2 block of vision patches becomes one language token. 32K-token context covering input and output, 128,000-token text vocabulary. A non-reasoning model. Runs with Hugging Face Transformers (BF16 on GPU, float32 on CPU), SGLang for text output, and llama.cpp from the GGUF checkpoint, which includes a realtime speech server.
Mixpeek SDK Integration
# Describe a video segment from its frames and soundtrack (usage from the model card).
# pip install "transformers>=5.20.2" torch torchvision torchcodec accelerate pillow librosa soundfile
import torch
from transformers import AutoModelForMultimodalLM, AutoProcessor
model_id = "LiquidAI/LFM3-Omni-2B"
device = "cuda" if torch.cuda.is_available() else "cpu"
model = AutoModelForMultimodalLM.from_pretrained(
model_id, dtype=torch.bfloat16 if device == "cuda" else torch.float32,
device_map=device, trust_remote_code=True).eval()
processor = AutoProcessor.from_pretrained(model_id, trust_remote_code=True)
conversation = [
{"role": "system", "content": "Answer questions about the video using what you see and hear."},
{"role": "user", "content": [
{"type": "video", "video": "segment_0184.mp4"},
{"type": "text", "text": "Describe this clip in two sentences for a search index: people, objects, on-screen text, and what is said."},
]},
]
inputs = processor.apply_chat_template(
conversation, add_generation_prompt=True, tokenize=True, return_dict=True,
return_tensors="pt", load_audio_from_video=True,
processor_kwargs={"use_audio_in_video": True}).to(device)
with torch.no_grad():
out = model.generate(**inputs, max_new_tokens=256, generation_mode="text")
description = processor.decode(
out.sequences[0, inputs["input_ids"].shape[1]:out.sequence_lengths[0]], skip_special_tokens=True)
# Embed the description with a text embedding model and upsert it with the file and timestamp.Capabilities
- Questions about a video using its frames and its soundtrack together
- Speech recognition in the languages the card lists, and spoken answers
- Image and document questions, including questions asked by voice
- Tool calling from spoken requests
- 16 text languages and 19 speech languages and locales, per the model card
Use Cases on Mixpeek
Benchmarks
| Dataset | Metric | Score | Source |
|---|---|---|---|
| Daily-Omni | Accuracy (video with soundtrack) | 70.09 | Liquid AI model card; Qwen2.5-Omni-7B 61.32 on the same table |
| WorldSense | Accuracy (video with soundtrack) | 47.10 | Liquid AI model card |
| Video-MME (no subtitles) | Accuracy | 57.70 | Liquid AI model card |
| DocVQA | ANLS | 92.47 | Liquid AI model card |
| ESB / Open ASR (English) | WER, lower is better | 6.36 | Liquid AI model card |
Performance
We have not measured it. Every score above was measured by Liquid AI with each model's own template and greedy decoding. Each video frame adds vision tokens to a 32K context, so long videos need a lower frame rate (processor_kwargs fps) or a frame limit.
Common Pipeline Companions
Liquid AI's vision-language sibling for images and video without audio
Embeds images and video directly for search, without a description step
A larger dedicated speech recognizer when transcripts are the main output
Frequently Asked Questions
What is LFM3-Omni-2B?
A 2.17B-parameter omni-modal model from Liquid AI, published on 21 October 2026. It takes text, images, video with its soundtrack and audio, and answers in text, speech or both. It is built to run on phones, laptops and other edge hardware.
Can LFM3-Omni-2B understand the audio in a video?
Yes. With load_audio_from_video=True and use_audio_in_video=True it interleaves the soundtrack with the frames, so it can answer questions that need both. Without those flags it sees the frames only. It samples video at 2 frames per second by default and always hears the whole soundtrack.
Can I use LFM3-Omni-2B commercially?
Under the LFM Open License v1.0, commercial use is licensed for companies with annual revenue under 10 million US dollars. A company at or above that threshold needs a separate agreement with Liquid AI. Qualified non-profits can use it for research and non-commercial purposes regardless of size.
Can I use LFM3-Omni-2B for video search?
Indirectly. It returns text and speech and has no retrieval vector, so use it to describe or transcribe each segment, then embed that text and search it. To search the visual content directly, embed the frames with a multimodal embedding model such as Qwen3-VL-Embedding-8B in Mixpeek's managed extractor.
Specification
Build a pipeline with LFM3-Omni-2B
Add this model to a processing pipeline alongside other extractors. Combine with retrieval stages for end-to-end search.
Run it on your own data, free