/ Модель

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

Контекст
32 768 токенов
Параметры
7,1 млрд
Размер весов
14,2 ГБ
Лицензия
MIT
Архитектура
mistral · dense
Опубликована
31 окт 2024

speed-embedding-7b-instruct

ЭмбеддингиТекст → embedding9 профессий

Англоязычная модель Mistral на 7,1 млрд параметров для получения инструкционно-управляемых текстовых эмбеддингов и семантического поиска.

421скачиваний за 30 дней5лайковвеса обновлены3 ноя 2024

Бенчмарки

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

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Эмбеддинги» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

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

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

  • CUREv1

    main_score

    Результат

    0,003

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

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

  • SCIDOCS

    main_score

    Результат

    0,1663

    MTEB

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

  • GerDaLIRSmall

    main_score

    Результат

    0,303

    MTEB

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

  • MassiveIntentClassification

    main_score

    Результат

    0,5666

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

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

  • XNLI

    main_score

    Результат

    0,6087

    MTEB

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

  • SIB200ClusteringS2S

    main_score

    Результат

    0,0287

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

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

  • IndicGenBenchFloresBitextMining

    main_score

    Результат

    0,1258

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

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

  • FinancialPhrasebankClassification

    main_score

    Результат

    0,6841

    MTEB

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

  • MTOPIntentClassification

    main_score

    Результат

    0,7612

    MTEB

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

  • TV2Nordretrieval

    main_score

    Результат

    0,7685

    MTEB

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

  • CataloniaTweetClassification

    main_score

    Результат

    0,509

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

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

  • ArxivClusteringP2P

    main_score

    Результат

    0,5112

    MTEB

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

  • MasakhaNEWSClassification

    main_score

    Результат

    0,5941

    MTEB

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

  • PawsXPairClassification

    main_score

    Результат

    0,6206

    MTEB

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

  • InappropriatenessClassification

    main_score

    Результат

    0,5889

    MTEB

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

  • WebLINXCandidatesReranking

    main_score

    Результат

    0,0831

    MTEB

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

  • WikiClusteringP2P.v2

    main_score

    Результат

    0,4228

    MTEB

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

  • MLQARetrieval

    main_score

    Результат

    0,1072

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

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

  • CodeTransOceanDL

    main_score

    Результат

    0,3412

    MTEB

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

  • TweetSentimentExtractionClassification

    main_score

    Результат

    0,6383

    MTEB

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

  • MassiveScenarioClassification

    main_score

    Результат

    0,626

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

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

  • Tatoeba

    main_score

    Результат

    0,028

    MTEB

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

  • STS13

    main_score

    Результат

    0,8994

    MTEB

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

  • NorQuadRetrieval

    main_score

    Результат

    0,0958

    MTEB

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

  • STSBenchmarkMultilingualSTS

    main_score

    Результат

    0,5677

    MTEB

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

  • FilipinoShopeeReviewsClassification

    main_score

    Результат

    0,3274

    MTEB

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

  • MalteseNewsClassification

    main_score

    Результат

    0,2561

    MTEB

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

  • CodeSearchNetCCRetrieval

    main_score

    Результат

    0,5138

    MTEB

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

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

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

SPEED-embedding-7b-instruct — текстовая модель эмбеддингов от Haonan Chen и соавторов, представленная в работе «Little Giants: Synthesizing High-Quality Embedding Data at Scale» (2024). Она предназначена для преобразования запросов и документов в векторы, пригодные для семантического поиска и ранжирования. Модель построена на архитектуре Mistral, содержит 7,1 млрд параметров, имеет 32 слоя и размер эмбеддинга 4096. Метаданные указывают контекст до 32 768 токенов, однако авторы не рекомендуют подавать входы длиннее 4096 токенов.

Для запросов следует задавать краткую инструкцию на естественном языке, описывающую задачу; документы можно кодировать без инструкции. Это позволяет настраивать представления для разных сценариев. В README указана оценка на наборах BEIR и MTEB. Модель ориентирована на английский язык. Распространяется по лицензии MIT.

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

  • создание эмбеддингов для семантического поиска
  • поиск документов по текстовому запросу
  • сопоставление запросов и документов по смыслу
  • подготовка векторов для retrieval-систем

Ограничения

Для запросов требуется инструкция, иначе качество может снизиться. Авторы не рекомендуют использовать входы длиннее 4096 токенов; небольшие различия в результатах возможны из-за версий Transformers и PyTorch.

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

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

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

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

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

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

Открыть на Hugging Face

SPEED-embedding-7b-instruct

Little Giants: Synthesizing High-Quality Embedding Data at Scale. Haonan Chen, Liang Wang, Nan Yang, Yutao Zhu, Ziliang Zhao, Furu Wei, Zhicheng Dou, arXiv 2024

This model has 32 layers and the embedding size is 4096.

Usage

Below is an example to encode queries and passages from the MS-MARCO passage ranking dataset.

Transformers

import torch
import torch.nn.functional as F

from torch import Tensor
from transformers import AutoTokenizer, AutoModel


def last_token_pool(last_hidden_states: Tensor,
                 attention_mask: Tensor) -> Tensor:
    left_padding = (attention_mask[:, -1].sum() == attention_mask.shape[0])
    if left_padding:
        return last_hidden_states[:, -1]
    else:
        sequence_lengths = attention_mask.sum(dim=1) - 1
        batch_size = last_hidden_states.shape[0]
        return last_hidden_states[torch.arange(batch_size, device=last_hidden_states.device), sequence_lengths]


def get_detailed_instruct(task_description: str, query: str) -> str:
    return f'Instruct: {task_description}\nQuery: {query}'


# Each query must come with a one-sentence instruction that describes the task
task = 'Given a web search query, retrieve relevant passages that answer the query'
queries = [
    get_detailed_instruct(task, 'how much protein should a female eat'),
    get_detailed_instruct(task, 'summit define')
]
# No need to add instruction for retrieval documents
documents = [
    "As a general guideline, the CDC's average requirement of protein for women ages 19 to 70 is 46 grams per day. But, as you can see from this chart, you'll need to increase that if you're expecting or training for a marathon. Check out the chart below to see how much protein you should be eating each day.",
    "Definition of summit for English Language Learners. : 1  the highest point of a mountain : the top of a mountain. : 2  the highest level. : 3  a meeting or series of meetings between the leaders of two or more governments."
]
input_texts = queries + documents

tokenizer = AutoTokenizer.from_pretrained('Haon-Chen/speed-embedding-7b-instruct')
model = AutoModel.from_pretrained('Haon-Chen/speed-embedding-7b-instruct')

max_length = 4096
# Tokenize the input texts
batch_dict = tokenizer(input_texts, max_length=max_length, padding=True, truncation=True, return_tensors='pt')

outputs = model(**batch_dict)
embeddings = last_token_pool(outputs.last_hidden_state, batch_dict['attention_mask'])

# normalize embeddings
embeddings = F.normalize(embeddings, p=2, dim=1)
scores = (embeddings[:2] @ embeddings[2:].T) * 100
print(scores.tolist())

MTEB Benchmark Evaluation

Check out unilm/e5 to reproduce evaluation results on the BEIR and MTEB benchmark.

FAQ

1. Do I need to add instructions to the query?

Yes, this is how the model is trained, otherwise you will see a performance degradation. The task definition should be a one-sentence instruction that describes the task. This is a way to customize text embeddings for different scenarios through natural language instructions.

Please check out unilm/e5/utils.py for instructions we used for evaluation.

On the other hand, there is no need to add instructions to the document side.

2. Why are my reproduced results slightly different from reported in the model card?

Different versions of transformers and pytorch could cause negligible but non-zero performance differences.

3. Where are the LoRA-only weights?

You can find the LoRA-only weights at https://huggingface.co/Haon-Chen/speed-embedding-7b-instruct/tree/main/lora.

Citation

If you find our paper or models helpful, please consider cite as follows:

@article{chen2024little,
  title={Little Giants: Synthesizing High-Quality Embedding Data at Scale},
  author={Chen, Haonan and Wang, Liang and Yang, Nan and Zhu, Yutao and Zhao, Ziliang and Wei, Furu and Dou, Zhicheng},
  journal={arXiv preprint arXiv:2410.18634},
  year={2024}
}

Limitations

Using this model for inputs longer than 4096 tokens is not recommended.

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

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

GPU в ailist

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

Можно запустить

Подбираем GPU…

Класс архитектуры
MistralModel
Ревизия весов
c167e9a

0 моделей