/ Модель

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

Контекст
512 токенов
Параметры
434 млн
Лицензия
MIT
Архитектура
bert · dense
Опубликована
12 окт 2023

ember-v1

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

Англоязычная BERT-модель для создания эмбеддингов предложений и сравнения семантической близости текстов.

156скачиваний за 30 дней0лайковвеса обновлены12 окт 2023

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

В подключённых источниках результатов для этой модели пока нет.

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

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

ember-v1 — англоязычная модель эмбеддингов текста от vectoriseai, построенная на архитектуре BERT. Она обучена на корпусе пар текстов из разных областей, включая финансы, науку, медицину и право; при обучении использовались приёмы из работ RetroMAE и SetFit. Модель предназначена для получения векторных представлений предложений и сравнения их семантической близости, например в поиске и ранжировании текстов.

Модель содержит около 433,9 млн параметров и обрабатывает до 512 токенов; более длинные входы обрезаются. В README приведён результат 63,54 в среднем по 56 задачам MTEB при размерности эмбеддингов 1024. Доступны форматы PyTorch, safetensors и ONNX. Лицензия — MIT; разработчик также предлагает доступ к модели через API LLMRails.

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

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

Ограничения

Модель рассчитана только на английский язык. Входы длиннее 512 токенов обрезаются.

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

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

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

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

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

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

Открыть на Hugging Face

ember-v1

This model has been trained on an extensive corpus of text pairs that encompass a broad spectrum of domains, including finance, science, medicine, law, and various others. During the training process, we incorporated techniques derived from the RetroMAE and SetFit research papers.

We are pleased to offer this model as an API service through our platform, LLMRails. If you are interested, please don't hesitate to sign up.

Plans

  • The research paper will be published soon.
  • The v2 of the model is currently in development and will feature an extended maximum sequence length of 4,000 tokens.

Usage

Use with API request:

curl --location 'https://api.llmrails.com/v1/embeddings' \
--header 'X-API-KEY: {token}' \
--header 'Content-Type: application/json' \
--data '{
   "input": ["This is an example sentence"],
   "model":"embedding-english-v1" # equals to ember-v1
}'

API docs: https://docs.llmrails.com/embedding/embed-text Langchain plugin: https://python.langchain.com/docs/integrations/text_embedding/llm_rails

Use with transformers:

import torch.nn.functional as F
from torch import Tensor
from transformers import AutoTokenizer, AutoModel

def average_pool(last_hidden_states: Tensor,
                 attention_mask: Tensor) -> Tensor:
    last_hidden = last_hidden_states.masked_fill(~attention_mask[..., None].bool(), 0.0)
    return last_hidden.sum(dim=1) / attention_mask.sum(dim=1)[..., None]

input_texts = [
    "This is an example sentence",
    "Each sentence is converted"
]

tokenizer = AutoTokenizer.from_pretrained("llmrails/ember-v1")
model = AutoModel.from_pretrained("llmrails/ember-v1")

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

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

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

Use with sentence-transformers:

from sentence_transformers import SentenceTransformer
from sentence_transformers.util import cos_sim

sentences = [
	"This is an example sentence",
    "Each sentence is converted"
]

model = SentenceTransformer('llmrails/ember-v1')
embeddings = model.encode(sentences)
print(cos_sim(embeddings[0], embeddings[1]))

Massive Text Embedding Benchmark (MTEB) Evaluation

Our model achieve state-of-the-art performance on MTEB leaderboard

Model NameDimensionSequence LengthAverage (56)
bge-large-en-v1.5102451264.23
bge-base-en-v1.576851263.55
ember-v1102451263.54
text-embedding-ada-0021536819160.99

Limitation

This model exclusively caters to English texts, and any lengthy texts will be truncated to a maximum of 512 tokens.

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей