/ Модель

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

Контекст
258 токенов
Параметры
162 млн
Архитектура
roberta · dense
Библиотека
sentence-transformers
Опубликована
8 июн 2024

Vi-Legal-Bi-Encoder-v2

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

Модель создаёт векторные представления вьетнамских юридических текстов для семантического поиска, сравнения и кластеризации.

91скачиваний за 30 дней0лайковвеса обновлены24 июл 2024

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Vi-Legal-Bi-Encoder-v2 — модель эмбеддингов предложений и абзацев, опубликованная NghiemAbe и построенная на архитектуре RoBERTa с библиотекой Sentence-Transformers. Она преобразует текст в плотные векторы размерности 768 и предназначена для сравнения семантической близости, поиска и кластеризации. Модель ориентирована на вьетнамские юридические тексты; автор приводит результаты оценки на Dev-Legal-Dataset и сравнивает её с несколькими многоязычными и вьетнамскими моделями.

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

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

Ограничения

Контекст ограничен 258 токенами. Приведённые оценки получены на Dev-Legal-Dataset; в README нет данных о производительности на других наборах или языках.

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

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

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

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

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

Открыть на Hugging Face

NghiemAbe/Vi-Legal-Bi-Encoder-v2

This is a sentence-transformers model: It maps sentences & paragraphs to a 768 dimensional dense vector space and can be used for tasks like clustering or semantic search.

Usage (Sentence-Transformers)

Using this model becomes easy when you have sentence-transformers installed:

pip install -U sentence-transformers

Then you can use the model like this:

from sentence_transformers import SentenceTransformer
from pyvi.ViTokenizer import tokenize
sentences = [tokenize("This is an example sentence"), tokenize("Each sentence is converted")]

model = SentenceTransformer('NghiemAbe/Vi-Legal-Bi-Encoder-v2')
embeddings = model.encode(sentences)
print(embeddings)

Usage (HuggingFace Transformers)

Without sentence-transformers, you can use the model like this: First, you pass your input through the transformer model, then you have to apply the right pooling-operation on-top of the contextualized word embeddings.

from transformers import AutoTokenizer, AutoModel
import torch


#Mean Pooling - Take attention mask into account for correct averaging
def mean_pooling(model_output, attention_mask):
    token_embeddings = model_output[0] #First element of model_output contains all token embeddings
    input_mask_expanded = attention_mask.unsqueeze(-1).expand(token_embeddings.size()).float()
    return torch.sum(token_embeddings * input_mask_expanded, 1) / torch.clamp(input_mask_expanded.sum(1), min=1e-9)


# Sentences we want sentence embeddings for
sentences = [tokenize("This is an example sentence"), tokenize("Each sentence is converted")]

# Load model from HuggingFace Hub
tokenizer = AutoTokenizer.from_pretrained('NghiemAbe/Vi-Legal-Bi-Encoder-v2')
model = AutoModel.from_pretrained('NghiemAbe/Vi-Legal-Bi-Encoder-v2')

# Tokenize sentences
encoded_input = tokenizer(sentences, padding=True, truncation=True, return_tensors='pt')

# Compute token embeddings
with torch.no_grad():
    model_output = model(**encoded_input)

# Perform pooling. In this case, mean pooling.
sentence_embeddings = mean_pooling(model_output, encoded_input['attention_mask'])

print("Sentence embeddings:")
print(sentence_embeddings)

Evaluation Results

I evaluated my Dev-Legal-Dataset and here are the results:

ModelR@1R@5R@10R@20R@100MRR@5MRR@10MRR@20MRR@100Avg
keepitreal/vietnamese-sbert0.2780.5520.6490.7340.8420.3960.4090.4150.4170.521
sentence-transformers/paraphrase-multilingual-MiniLM-L12-v20.3140.4860.5850.6620.8540.3950.4090.4140.4190.504
sentence-transformers/paraphrase-multilingual-mpnet-base-v20.3540.5530.6460.7500.8960.4490.4610.4680.4720.561
intfloat/multilingual-e5-small0.4880.7460.8350.9060.9620.6100.6200.6240.6250.713
intfloat/multilingual-e5-base0.4660.7400.8400.9070.9520.5960.6080.6120.6130.704
bkai-foundation-models/vietnamese-bi-encoder0.6440.8810.9240.9540.9860.7520.7570.7580.7590.824
Vi-Legal-Bi-Encoder-v20.7200.8840.9350.9630.9860.7960.8020.8030.8040.855

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

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

GPU в ailist

Универсальный рантайм · sentence-transformers

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

Подбираем GPU…

Класс архитектуры
RobertaModel
Ревизия весов
87fff89

0 моделей