/ Модель

Характеристики

Контекст
262 144 токена
Размер весов
17,8 ГБ
Лицензия
Apache 2.0
Архитектура
qwen3_vl · dense
Базовая модель
Qwen3-VL-4B-Instruct
Библиотека
peft
Опубликована
20 ноя 2025

eager-embed-v1

Языковая модельИзображение, текст → embedding8 профессий

Мультимодальная модель эмбеддингов для индексации и визуально-текстового поиска по документам.

12скачиваний за 30 дней7лайковвеса обновлены5 дек 2025

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки17

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

  • Vidore2ESGReportsHLRetrieval

    main_score

    Результат

    0,5525

    MTEB

    Публичная таблицадругая ревизия

  • Vidore3PhysicsRetrieval

    main_score

    Результат

    0,4694

    Общий результат 0,4698Общий результат 0,4682Общий результат 0,4644
    MTEB

    Публичная таблицадругая ревизия

  • Vidore3HrRetrieval

    main_score

    Результат

    0,4748

    Общий результат 0,574Общий результат 0,4935Общий результат 0,4778
    MTEB

    Публичная таблицадругая ревизия

  • Vidore3IndustrialRetrieval

    main_score

    Результат

    0,4512

    Общий результат 0,3434Общий результат 0,314
    MTEB

    Публичная таблицадругая ревизия

  • VidoreSyntheticDocQAHealthcareIndustryRetrieval

    main_score

    Результат

    0,9679

    MTEB

    Публичная таблицадругая ревизия

  • VidoreShiftProjectRetrieval

    main_score

    Результат

    0,7782

    MTEB

    Публичная таблицадругая ревизия

  • Vidore3FinanceFrRetrieval

    main_score

    Результат

    0,2901

    Общий результат 0,3492Общий результат 0,3161Общий результат 0,3144
    MTEB

    Публичная таблицадругая ревизия

  • Vidore3FinanceEnRetrieval

    main_score

    Результат

    0,4139

    Общий результат 0,5223Общий результат 0,4403Общий результат 0,4095
    MTEB

    Публичная таблицадругая ревизия

  • Vidore3PharmaceuticalsRetrieval

    main_score

    Результат

    0,5901

    Общий результат 0,6415Общий результат 0,5986Общий результат 0,5834
    MTEB

    Публичная таблицадругая ревизия

  • Vidore3ComputerScienceRetrieval

    main_score

    Результат

    0,7046

    Общий результат 0,7312Общий результат 0,7051Общий результат 0,6969
    MTEB

    Публичная таблицадругая ревизия

  • Vidore3EnergyRetrieval

    main_score

    Результат

    0,5754

    Общий результат 0,5833Общий результат 0,5707Общий результат 0,56
    MTEB

    Публичная таблицадругая ревизия

  • Vidore2EconomicsReportsRetrieval

    main_score

    Результат

    0,5365

    Общий результат 0,5102
    MTEB

    Публичная таблицадругая ревизия

  • VidoreInfoVQARetrieval

    main_score

    Результат

    0,884

    MTEB

    Публичная таблицадругая ревизия

  • Vidore2ESGReportsRetrieval

    main_score

    Результат

    0,5587

    Общий результат 0,5111
    MTEB

    Публичная таблицадругая ревизия

  • VidoreTabfquadRetrieval

    main_score

    Результат

    0,9231

    MTEB

    Публичная таблицадругая ревизия

  • Vidore2BioMedicalLecturesRetrieval

    main_score

    Результат

    0,636

    Общий результат 0,6296
    MTEB

    Публичная таблицадругая ревизия

  • VidoreSyntheticDocQAGovernmentReportsRetrieval

    main_score

    Результат

    0,9431

    MTEB

    Публичная таблицадругая ревизия

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Eager Embed V1 — мультимодальная плотная модель эмбеддингов, разработанная Хуаном Пабло Баларани при финансировании Eagerworks. Она дообучена на Qwen/Qwen3-VL-4B-Instruct и предназначена для индексации и поиска по документам с учётом их визуального и текстового содержимого.

Модель формирует эмбеддинги для визуально-текстового поиска по документам. По сравнению с многовекторными подходами типа ColBERT она рассчитана на баланс между размерностью эмбеддингов, точностью поиска и эффективностью; для сравнения эмбеддингов не требуется функция max-sim. Модель оценивали на бенчмарках Vidore 1, 2 и 3.

В основе лежит мультимодальная архитектура Qwen3-VL с 4 млрд параметров. Использование предполагает подачу визуального и текстового содержимого документов и получение векторных представлений для поиска. Модель распространяется по лицензии Apache 2.0.

Сценарии применения

  • Создание векторного индекса документов с текстом и изображениями
  • Поиск страниц документов по визуальным и текстовым признакам
  • Поиск релевантных документов в коллекции сканов и форм
  • Подбор страниц по запросу для визуально-текстовой системы поиска

Ограничения

В README не приведены численные результаты на Vidore и подробные сведения о языковом покрытии. Модель предназначена для получения эмбеддингов и поиска, а не для генерации ответов.

Для каких профессий подходит8

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Также подходит для

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

Eager Embed V1

eager-embed-v1 is a multimodal dense embedding model built upon a Vision-Language Model (VLM). It is designed to efficiently index documents using both their visual and textual features.

Compared to multi-vector (ColBERT-like) architectures, eager-embed-v1 offers a strong balance between embedding dimensionality and retrieval accuracy, while maintaining efficiency. Unlike those approaches, it does not require a max-sim distance function, further simplifying the retrieval process.

Model Details

Model Description

  • Developed by: Juan Pablo Balarini
  • Funded by: Eagerworks
  • Model type: Embedding model
  • License: Apache 2.0
  • Finetuned from model: Qwen3-VL-4B-Instruct

Model Sources

How to Get Started with the Model

Load the model and define a helper function to encode messages:

import torch
from transformers import AutoProcessor, Qwen3VLForConditionalGeneration
from transformers.utils.import_utils import is_flash_attn_2_available
from qwen_vl_utils import process_vision_info

MODEL_NAME = "eagerworks/eager-embed-v1"
DEVICE = torch.device("cpu")
if torch.cuda.is_available():
    DEVICE = torch.device("cuda:0")
elif torch.backends.mps.is_available():
    DEVICE = torch.device("mps")
DTYPE = torch.bfloat16

processor = AutoProcessor.from_pretrained(MODEL_NAME)
model = Qwen3VLForConditionalGeneration.from_pretrained(
    MODEL_NAME,
    attn_implementation=(
        "flash_attention_2" if is_flash_attn_2_available() else None
    ),
    dtype=DTYPE
).to(DEVICE).eval()

# Function to Encode Message
def encode_message(message):
    with torch.no_grad():
        texts = processor.apply_chat_template(message, tokenize=False, add_generation_prompt=True) + "<|endoftext|>"
        image_inputs, video_inputs = process_vision_info(message)

        inputs = processor(
            text=texts,
            images=image_inputs,
            videos=video_inputs,
            return_tensors="pt",
            padding="longest",
        ).to(DEVICE)

        model_outputs = model(**inputs, return_dict=True, output_hidden_states=True)

        last_hidden_state = model_outputs.hidden_states[-1]
        embeddings = last_hidden_state[:, -1]
        embeddings = torch.nn.functional.normalize(embeddings, p=2, dim=-1)
        return embeddings

🌍 Multilingual Text Retrieval

example_query = "Query: What is the capital city of Uruguay?"
example_text_1 = "Montevideo es la capital y la ciudad más poblada de la República Oriental del Uruguay, así como la capital del departamento homónimo"
example_text_2 = "El río Uruguay es un río internacional que forma parte de la cuenca del Plata. Nace en Brasil, recorre unos 1.800 km y desemboca en el Río de la Plata"
query = [{'role': 'user', 'content': [{'type': 'text', 'text': example_query}]}]
text_1 = [{'role': 'user', 'content': [{'type': 'text', 'text': example_text_1}]}]
text_2 = [{'role': 'user', 'content': [{'type': 'text', 'text': example_text_2}]}]

sim1 = torch.cosine_similarity(encode_message(query), encode_message(text_1))
sim2 = torch.cosine_similarity(encode_message(query), encode_message(text_2))

print("Similarities:", sim1.item(), sim2.item())

📈 Image Document Retrieval (Image, Chart, PDF)

MAX_IMAGE_SIZE = 784
example_query = 'Query: Where can we find the animal llama?'
example_image_1 = "https://huggingface.co/Tevatron/dse-phi3-docmatix-v2/resolve/main/animal-llama.png"
example_image_2 = "https://huggingface.co/Tevatron/dse-phi3-docmatix-v2/resolve/main/meta-llama.png"
query = [{'role': 'user', 'content': [{'type': 'text', 'text': example_query}]}]
image_1 = [{'role': 'user', 'content': [{'type': 'image', 'image': example_image_1, 'resized_height': MAX_IMAGE_SIZE, 'resized_width': MAX_IMAGE_SIZE}]}]
image_2 = [{'role': 'user', 'content': [{'type': 'image', 'image': example_image_2, 'resized_height': MAX_IMAGE_SIZE, 'resized_width': MAX_IMAGE_SIZE}]}]

sim1 = torch.cosine_similarity(encode_message(query), encode_message(image_1))
sim2 = torch.cosine_similarity(encode_message(query), encode_message(image_2))

print("Similarities:", sim1.item(), sim2.item())

Training Details

Training Data

Training was done on a computer with the following specs:

  • 8x RTX 5090 for a total of 256 GB of VRAM
  • AMD EPYC 9534 64-Core CPU (128 threads)
  • 256 RAM
  • 2TB SSD

Training Procedure

Training was done using the Tevatron framework and Deepspeed for parallel training.

Training Hyperparameters

More information on training parameters can be found here

Evaluation

Model was evaluated on the Vidore 1, 2 and 3 benchmarks. More info can be found here.

Citation

@article{EagerEmbed,
  title={Eager Embed V1: Multimodal Dense Embeddings for Retrieval},
  author={Juan Pablo Balarini},
  year={2025},
  publisher={Eagerworks},
  url={https://github.com/eagerworks/eager-embed}
}

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · peft

Нельзя запустить

Репозиторий содержит только адаптер (LoRA/PEFT) без базовой модели.

Класс архитектуры
Qwen3VLForConditionalGeneration
Ревизия весов
51dfdee

0 моделей