/ Модель

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

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

LENS-d8000

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

LENS-d8000 создаёт 8000-мерные лексиконные эмбеддинги текста для извлечения признаков и семантического сопоставления.

482скачиваний за 30 дней6лайковвеса обновлены22 янв 2025

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

  • R2MEDMedXpertQAExamRetrieval

    main_score

    Результат

    0,0363

    MTEB

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

  • AmazonPolarityClassification

    main_score

    Результат

    0,9707

    MTEB

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

  • STS15

    main_score

    Результат

    0,8975

    MTEB

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

  • ArguAna

    main_score

    Результат

    0,7602

    MTEB

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

  • MTOPIntentClassification

    main_score

    Результат

    0,9281

    MTEB

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

  • CQADupstackPhysicsRetrieval

    main_score

    Результат

    0,5389

    MTEB

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

  • SprintDuplicateQuestions

    main_score

    Результат

    0,97

    MTEB

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

  • HotpotQA

    main_score

    Результат

    0,8571

    MTEB

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

  • MedrxivClusteringS2S

    main_score

    Результат

    0,4489

    MTEB

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

  • R2MEDBiologyRetrieval

    main_score

    Результат

    0,0782

    MTEB

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

  • STS14

    main_score

    Результат

    0,8439

    MTEB

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

  • R2MEDMedicalSciencesRetrieval

    main_score

    Результат

    0,3187

    MTEB

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

  • SciDocsRR

    main_score

    Результат

    0,8763

    MTEB

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

  • CQADupstackProgrammersRetrieval

    main_score

    Результат

    0,5115

    MTEB

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

  • SummEval

    main_score

    Результат

    0,2954

    MTEB

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

  • TwentyNewsgroupsClustering

    main_score

    Результат

    0,6878

    MTEB

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

  • R2MEDBioinformaticsRetrieval

    main_score

    Результат

    0,2956

    MTEB

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

  • STS17

    main_score

    Результат

    0,9087

    MTEB

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

  • STS16

    main_score

    Результат

    0,8763

    MTEB

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

  • CQADupstackUnixRetrieval

    main_score

    Результат

    0,514

    MTEB

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

  • StackExchangeClusteringP2P

    main_score

    Результат

    0,4441

    MTEB

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

  • Banking77Classification

    main_score

    Результат

    0,9019

    MTEB

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

  • TweetSentimentExtractionClassification

    main_score

    Результат

    0,8042

    MTEB

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

  • QuoraRetrieval

    main_score

    Результат

    0,9079

    MTEB

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

  • CQADupstackGisRetrieval

    main_score

    Результат

    0,4374

    MTEB

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

  • SICK-R

    main_score

    Результат

    0,833

    MTEB

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

  • R2MEDMedQADiagRetrieval

    main_score

    Результат

    0,0153

    MTEB

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

  • StackOverflowDupQuestions

    main_score

    Результат

    0,5879

    MTEB

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

  • MindSmallReranking

    main_score

    Результат

    0,3146

    MTEB

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

  • BiorxivClusteringP2P

    main_score

    Результат

    0,5248

    MTEB

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

  • NQ

    main_score

    Результат

    0,7464

    MTEB

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

  • STS12

    main_score

    Результат

    0,8099

    MTEB

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

  • NFCorpus

    main_score

    Результат

    0,4061

    MTEB

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

  • CQADupstackTexRetrieval

    main_score

    Результат

    0,3718

    MTEB

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

  • AmazonReviewsClassification

    main_score

    Результат

    0,6361

    MTEB

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

  • R2MEDIIYiClinicalRetrieval

    main_score

    Результат

    0,1859

    MTEB

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

  • STSBenchmark

    main_score

    Результат

    0,8847

    MTEB

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

  • TwitterSemEval2015

    main_score

    Результат

    0,7956

    MTEB

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

  • STS22

    main_score

    Результат

    0,6809

    MTEB

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

  • MassiveIntentClassification

    main_score

    Результат

    0,8114

    MTEB

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

  • CQADupstackEnglishRetrieval

    main_score

    Результат

    0,5547

    MTEB

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

  • CQADupstackGamingRetrieval

    main_score

    Результат

    0,6524

    MTEB

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

  • CQADupstackWebmastersRetrieval

    main_score

    Результат

    0,4823

    MTEB

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

  • ArxivClusteringS2S

    main_score

    Результат

    0,5014

    MTEB

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

  • R2MEDPMCTreatmentRetrieval

    main_score

    Результат

    0,1346

    MTEB

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

  • CQADupstackAndroidRetrieval

    main_score

    Результат

    0,579

    MTEB

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

  • BIOSSES

    main_score

    Результат

    0,8583

    MTEB

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

  • AmazonCounterfactualClassification

    main_score

    Результат

    0,9369

    MTEB

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

  • MassiveScenarioClassification

    main_score

    Результат

    0,8353

    MTEB

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

  • BiorxivClusteringS2S

    main_score

    Результат

    0,4852

    MTEB

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

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

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

LENS-d8000 — модель эмбеддингов на основе большой языковой модели, представленная в проекте LENS. Она формирует лексиконные представления текста: каждая из 8000 размерностей связана с кластером семантически близких токенов. Модель предназначена для извлечения признаков из текста и получения векторных представлений, которые можно использовать для поиска и сравнения текстов по смыслу.

Модель имеет плотную архитектуру семейства Mistral и содержит 7,1 млрд параметров. Максимальный контекст составляет 32 768 токенов. Веса опубликованы в формате safetensors под лицензией Apache-2.0. В README приведено название технического отчёта о методе LENS, но сведения о поддерживаемых языках и результатах оценки не описаны.

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

  • получение векторных представлений текстов
  • поиск текстов по смыслу
  • сравнение семантической близости предложений

Ограничения

В README не указаны поддерживаемые языки и результаты оценки; качество модели для конкретных задач по этим данным определить нельзя.

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

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

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

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

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

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

Открыть на Hugging Face

LENS is a model that produces Lexicon-based EmbeddiNgS (LENS) leveraging large language models. Each dimension of the embeddings is designed to correspond to a token cluster where semantically similar tokens are grouped together. These embeddings have a similar feature size as dense embeddings, with LENS-d8000 offering 8000-dimensional representations.

The technical report of LENS is available in Enhancing Lexicon-Based Text Embeddings with Large Language Models.

Usage

git clone https://huggingface.co/yibinlei/LENS-d8000
cd LENS-d8000
import torch
from torch import Tensor
import torch.nn.functional as F
from transformers import AutoTokenizer
from bidirectional_mistral import MistralBiForCausalLM

def get_detailed_instruct(task_instruction: str, query: str) -> str:
    return f'<instruct>{task_instruction}\n<query>{query}'

def pooling_func(vecs: Tensor, pooling_mask: Tensor) -> Tensor:
    # We use max-pooling for LENS.
    return torch.max(torch.log(1 + torch.relu(vecs)) * pooling_mask.unsqueeze(-1), dim=1).values

# Prepare the data
instruction = "Given a web search query, retrieve relevant passages that answer the query."
queries = ["what is rba",
           "what is oilskin fabric"]
instructed_queries = [get_detailed_instruct(instruction, query) for query in queries]
docs = ["Since 2007, the RBA's outstanding reputation has been affected by the 'Securency' or NPA scandal.",
        "Today's oilskins (or oilies) typically come in two parts, jackets and trousers. Oilskin jackets are generally similar to common rubberized waterproofs."]

# Load the model and tokenizer
model = MistralBiForCausalLM.from_pretrained("yibinlei/LENS-d8000", ignore_mismatched_sizes=True)
model.lm_head = torch.load('lm_head.pth')
tokenizer = AutoTokenizer.from_pretrained("yibinlei/LENS-d8000")

# Preprocess the data
query_max_len, doc_max_len = 512, 512
instructed_query_inputs = tokenizer(
                instructed_queries,
                padding=True,
                truncation=True,
                return_tensors='pt',
                max_length=query_max_len,
                add_special_tokens=True
            )
doc_inputs = tokenizer(
                docs,
                padding=True,
                truncation=True,
                return_tensors='pt',
                max_length=doc_max_len,
                add_special_tokens=True
            )
# We perform pooling exclusively on the outputs of the query tokens, excluding outputs from the instruction.
query_only_mask = torch.zeros_like(instructed_query_inputs['input_ids'], dtype=instructed_query_inputs['attention_mask'].dtype)
special_token_id = tokenizer.convert_tokens_to_ids('<query>')
for idx, seq in enumerate(instructed_query_inputs['input_ids']):
    special_pos = (seq == special_token_id).nonzero()
    if len(special_pos) > 0:
        query_start_pos = special_pos[-1].item()
        query_only_mask[idx, query_start_pos:-2] = 1 
    else:
        raise ValueError("No special token found")

# Obtain the embeddings
with torch.no_grad():
    instructed_query_outputs = model(**instructed_query_inputs)
    query_embeddings = pooling_func(instructed_query_outputs, query_only_mask)
    doc_outputs = model(**doc_inputs)
    # As the output of each token is used for predicting the next token, the pooling mask is shifted left by 1. The output of the final token EOS token is also excluded.
    doc_inputs['attention_mask'][:, -2:] = 0
    doc_embeddings = pooling_func(doc_outputs, doc_inputs['attention_mask'])

# Normalize the embeddings
query_embeddings = F.normalize(query_embeddings, p=2, dim=1)
doc_embeddings = F.normalize(doc_embeddings, p=2, dim=1)

# Compute the similarity
similarity = torch.matmul(query_embeddings, doc_embeddings.T)

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей