Adding vision to a language model is more than one extra modality. With large images or long video, the vision encoder can use more compute than the language model itself, so efficient models need a different design. Our VLM team, including @rshubert98, @TianshuYu6, @sina_semnani, and @iamsamstevens, explains how they teach LFMs to see, from mid-training to the custom vision encoder built for LFM3.
@MiaAI_lab The LFM3-VL-2B is the best model for its size for video understanding, quite usable compared to all other models of that size for checking security camera footage for example.
No, it’s not public. I wrote it for training so it only work on AMD gpu. Won’t work on any device that you would use. My point is that if you want the true speed of the model you need to profile the inference engine you use. We are going to release a hyper optimized inference engine for lfm3 vl model on only mac book soon.
@mmm_tech If you run on llama.cpp, it will be much faster. A lot of inference engine, doesn’t have a good conv2d varshape kernel, which is critical part of the vision encoder of lfm3. I wrote customized fused kernel for training.
LFM3-VL-2B vs Gemma 4 E2B on 50 real scanned receipts.
LFM3 got 41 of 50 receipts fully right. Gemma got 28. 50 receipts from SROIE, same prompt, JSON out, one 5060 Ti 16 GB.
- LFM3-VL-2B: 95% of fields right, 41/50 receipts perfect, 46 s
- Gemma 4 E2B: 87% of fields right, 28/50 receipts perfect, 62 s
Across both tests: Gemma reads messy chat-style text a bit better (95% vs 90%). LFM3 reads receipts better, and was faster both times.
@liquidai@googlegemma
pointed lfm3-vl-2b at the whole san fernando valley overnight. 16,692 aerial tiles, one rtx 3060, 5.5 hours.
it found 62,873 pools and drew a box around each one.
not a crazy idea, just “find the pools”. it misses about 1 in 5 and boxes a roof now and then. but it’s a 2B model with zero finetune.
imagine what you can do with this. palantir at home lmao
@DogukanUrker Crazy. How did you fit the high res map into the model? I don’t remember putting ton of these satellite data during pre-training. Crazy OOD performance.
@minamotomasaru The performance gap between audio model and omni model is very small. The gap between vision model and omni, text model and omni are much bigger. We are working unifying those modality into the same model better. It’s our first attempt.