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]
# Each input text should start with "query: " or "passage: ".
# For tasks other than retrieval, you can simply use the "query: " prefix.
input_texts = ['query: Who is prophet known for patience',
'query: Who is moses',
"passage: passage 1",
"passage: passage 2"]
tokenizer = AutoTokenizer.from_pretrained('intfloat/e5-small')
model = AutoModel.from_pretrained('intfloat/e5-small')
# 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[:2] @ embeddings[2:].T) * 100
print(scores.tolist())
Характеристики
- Контекст
- 512 токенов
- Параметры
- 40 млн
- Лицензия
- MIT
- Архитектура
- bert · dense
- Опубликована
- 2 апр 2023
Ссылки
e5-small-Quran
Англоязычная BERT-модель для создания текстовых эмбеддингов и семантического поиска по Корану и тафсирам.
Бенчмарки
Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды
Тесты пользователейпока нет
Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.
Добавьте модель в бенчмарк
Вместе с другими моделями категории «Эмбеддинги» — сравнение идёт внутри одной категории.
Опишите свои задачи
Напишите запросы, при необходимости приложите файлы и эталонные ответы.
Запустите и опубликуйте
Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.
Публичные оценки
Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.
В подключённых источниках результатов для этой модели пока нет.
Что умеет модель
Описание составлено по карточке модели и метаданным Hugging Face
mustapha/e5-small-Quran — англоязычная модель эмбеддингов на архитектуре BERT, предназначенная для извлечения признаков из текста и семантического поиска по материалам Корана и тафсирам. Модель содержит около 40 млн параметров, принимает текст с контекстом до 512 токенов и выдаёт векторные представления. Она опубликована в формате PyTorch под лицензией MIT.
Карточка связывает модель с набором данных M-AI-C/quran-en-tafssirs. Её можно использовать для поиска релевантных фрагментов англоязычных толкований Корана и сопоставления текстовых запросов с такими фрагментами. Поддержка других языков или дополнительные возможности в доступных данных не подтверждены.
Сценарии применения
- Семантический поиск по англоязычным тафсирам Корана
- Поиск фрагментов религиозных текстов по смысловому запросу
- Построение векторного индекса для материалов о Коране
Ограничения
Контекст ограничен 512 токенами. Данные подтверждают связь с англоязычным набором тафсиров, но не подтверждают поддержку других языков или задачи генерации текста.
Для каких профессий подходит3
Разделы каталога профессий, в задачах которых используется эта модель
Карточка модели
README от автора на Hugging Face, как он его опубликовал
Как запустить
На своей GPU в ailist. Цена — по текущим предложениям провайдеров
GPU в ailist
Универсальный рантайм
Подбираем GPU…
- Класс архитектуры
- BertModel
- Ревизия весов
- ad45e7f