Model reference · open weights

LCO-Embedding-Omni-2605

Embeddings LCO-Embedding Embeddings 1 build Open weights 1k dl/mo

LCO-Embedding-Omni-2605 is an open-weight embedding model from LCO-Embedding. LCO-Embedding-Omni-3B-2605 (BF16) weighs 9.4 GB; 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.

  • LCO-Embedding-Omni-2605 is a 4.7B parameter feature-extraction model designed for multimodal retrieval across text, image, audio, and video.
  • It supports a context length of 32,768 tokens and is distributed under the Apache-2.0 license.

Summary of the LCO-Embedding/LCO-Embedding-Omni-3B-2605 model card, 2026-10-01

What it is

Released byLCO-Embedding
Released2026-05-13
Parameters4.7B
VRAM9.4 GB for the weights

What it runs on

Memory and cards for LCO-Embedding-Omni-3B-2605 (BF16)

9.4 GBweights, file size
1.1 GBruntime overhead
CardRunsMemory
RTX 3060 12 GBtight11.6 GB
RTX 4060 Ti 16 GBfits15.4 GB
RTX 3090 24 GBfits23.4 GB
RTX 4090 24 GBfits23.4 GB
RTX 5090 32 GBfits31.0 GB
L40S 48 GBfits44.0 GB
A100 80 GBfits78.2 GB
H100 80 GBfits78.1 GB
RTX PRO 6000 Blackwell 96 GBfits93.8 GB
DGX Spark (GB10) 128 GB unifiedfits107 GB
H200 141 GBfits138 GB
B200 180 GBfits176 GB

From the model card

What LCO-Embedding says about LCO-Embedding-Omni-2605

Read the model card

It's been a while since we introduced LCO-Embedding 3B & 7B in Oct 2025. Now we release a small update LCO-Embedding-Omni-3B-2605!

In this version, we make substantial improvements on all 4 modalities (text, image, audio, video).

Main Benchmarks (text, image, audio):

Other Capabilities (code, video)

Checkpoint Overview

ModelRelease Time
LCO-Embedding-Omni-3BOct 2025
LCO-Embedding-Omni-7BOct 2025
LCO-Embedding-Omni-3B-2605May 2026

Usage

Using Sentence Transformers

Install Sentence Transformers with the multimodal extras (for image, audio, and video support):

pip install "sentence_transformers[image,audio,video]" "transformers>=5.6.0"
import torch
from sentence_transformers import SentenceTransformer

model = SentenceTransformer(
    "LCO-Embedding/LCO-Embedding-Omni-3B-2605",
    model_kwargs={
        "dtype": torch.bfloat16,
        # "attn_implementation": "flash_attention_2",  # recommended, if a flash-attn build exists for your platform
    },
)

The same Summarize the above in one word: instruction used in the paper is baked into the chat template, so encode() takes plain text, file paths, URLs, or multimodal dicts directly.

Text Retrieval

query = "What is the tallest mountain in the world?"
documents = [
    "Mount Everest is Earth's highest mountain above sea level, located in the Mahalangur Himal sub-range of the Himalayas. Its elevation of 8,848.86 metres was established by a joint Chinese-Nepali survey in 2020.",
    "K2, at 8,611 metres above sea level, is the second-highest mountain on Earth, after Mount Everest. It lies in the Karakoram range on the China-Pakistan border.",
    "Mount Kilimanjaro is a dormant volcano in Tanzania. It is the highest mountain in Africa, with its summit about 5,895 metres above sea level.",
]

query_embedding = model.encode(query)
document_embeddings = model.encode(documents)
print(model.similarity(query_embedding, document_embeddings))
# tensor([[0.5368, 0.5053, 0.4989]])

Image Retrieval

query = "How many input modalities does Qwen2.5-Omni support?"
documents = [
    "https://huggingface.co/Tevatron/OmniEmbed-v0.1/resolve/main/assets/qwen2.5omni_hgf.png",
    "https://huggingface.co/Tevatron/OmniEmbed-v0.1/resolve/main/assets/llama4_hgf.png",
]

query_embedding = model.encode(query)
document_embeddings = model.encode(documents, batch_size=1)
print(model.similarity(query_embedding, document_embeddings))
# tensor([[0.6544, 0.3852]])

Audio Retrieval

query = "A light piano piece"
documents = [
    "https://huggingface.co/Tevatron/OmniEmbed-v0.1/resolve/main/assets/joe_hisaishi_summer.mp3",
    "https://huggingface.co/Tevatron/OmniEmbed-v0.1/resolve/main/assets/jay_chou_superman_cant_fly.mp3",
]

query_embedding = model.encode(query)
document_embeddings = model.encode(documents, batch_size=1)
print(model.similarity(query_embedding, document_embeddings))
# tensor([[0.3649, 0.0662]])

Video Retrieval

# For video on smaller GPUs, cap the processor up front:
model[0].processing_kwargs.update({
    "video": {"max_pixels": 64 * 28 * 28, "do_sample_frames": True, "fps": 1},
})

query = "How to cook Mapo Tofu?"
documents = [
    "https://huggingface.co/Tevatron/OmniEmbed-v0.1/resolve/main/assets/mapo_tofu.mp4",
    "https://huggingface.co/Tevatron/OmniEmbed-v0.1/resolve/main/assets/zhajiang_noodle.mp4",
]

query_embedding = model.encode(query)
document_embeddings = model.encode(documents, batch_size=1)
print(model.similarity(query_embedding, document_embeddings))
# tensor([[0.6408, 0.4967]])

Multimodal Inputs

To embed a document that combines multiple modalities, pass a dict with any combination of "text", "image", "audio", and "video" keys instead of a single path or string:

documents = [
    {
        "text": "A cooking tutorial for Mapo Tofu",
        "video": "https://huggingface.co/Tevatron/OmniEmbed-v0.1/resolve/main/assets/mapo_tofu.mp4",
    },
    {
        "image": "https://huggingface.co/Tevatron/OmniEmbed-v0.1/resolve/main/assets/qwen2.5omni_hgf.png",
        "audio": "https://huggingface.co/Tevatron/OmniEmbed-v0.1/resolve/main/assets/joe_hisaishi_summer.mp3",
    },
]
document_embeddings = model.encode(documents, batch_size=1)
print(document_embeddings.shape)
# (2, 2048)

The expected outputs above were produced in bfloat16 on a CUDA device with the default (sdpa) attention. Exact values shift slightly in the fourth decimal with a different dtype or attention implementation.

Using Transformers

All inference code is the same with our OG models and can seamlessly support the new checkpoint by changing the model name.

Contributors

LCO-Embedding Team members that made this release happen:

Chenghao Xiao, Ruifeng Yuan, Long Li, Fengyu Cai, Yiqi Liu, Yang Wang, Chenghua Lin, Hao Zhang, Hou Pong Chan, Ling Zhang

Quoted from the model card on Hugging Face. The full card is behind the Hugging Face link above.

© 2026 AxForge · EU-hosted AI infrastructure Pricing Docs Trust Privacy Terms