/ Модель

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

Контекст
514 токенов
Параметры
305 млн
Архитектура
xlm-roberta · dense
Опубликована
17 ноя 2025

paraphrase-multilingual-mpnet-base-v2-eutekne-filtri-materia-lv1-2-desc-cascata

Сходство предложенийТекст → score

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

101скачиваний за 30 дней0лайковвеса обновлены17 ноя 2025

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Модель giacomorossojakala/paraphrase-multilingual-mpnet-base-v2-eutekne-filtri-materia-lv1-2-desc-cascata — дообученная версия paraphrase-multilingual-mpnet-base-v2 для классификации юридических вопросов по категориям Eutekne. Классификация сформулирована как задача поиска: модель кодирует вопрос и текстовые описания категорий общим энкодером, после чего выбираются ближайшие категории.

Модель основана на архитектуре XLM-RoBERTa, содержит 305,2 млн параметров и принимает текстовые последовательности длиной до 514 токенов. В README указано обучение на 4044 примерах обучающей выборки, а также наличие валидационной и тестовой выборок по 867 примеров. Репозиторий содержит веса в формате safetensors.

Модель предназначена для категоризации юридических вопросов по таксономии Eutekne; результаты для других предметных областей и категорий в доступных материалах не описаны. Базовая модель мультиязычная, однако языки обучающих примеров явно не перечислены. Лицензия в предоставленных данных не указана.

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

  • Отнесение юридического вопроса к категории Eutekne
  • Поиск подходящей категории по описаниям меток
  • Многоязычный поиск семантически близких описаний категорий

Ограничения

Проверенная область применения ограничена категориями Eutekne; качество на других юридических таксономиях или языках в предоставленных материалах не установлено. Лицензия в доступных данных не указана.

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

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

Открыть на Hugging Face

Model Description

This model is a fine-tuned paraphrase-multilingual-mpnet-base-v2 for a multi-label text classification on Eutekne domande_fitlri_materie train dataset.

The multi-label text classification task is faced as a retrieval problem: given a query and a list of description of labels, they are encoded with the same ambedder and the neareast neighbors are retrieved.

Intended Use

This model is intended for classifying legal questions into categories. These categories are based on the Eutekne domande_fitlri_materie.

Training Details

Experiment

The Training is preformed using following settings: contrastive_learning - ['level_1_2', 'descrizione_riassunto_cascata']

Base Model

This model is a finetuning of: paraphrase-multilingual-mpnet-base-v2

Training Data

{
  "train_samples": 4044,
  "val_samples": 867,
  "test_samples": 867
}

Training Hyperparameters

{
  "batch_size": 16,
  "learning_rate": 2e-05,
  "num_epochs": 30,
  "max_length": 256
}

Evaluation Results

|              |   validation_results |   test_results |
|:-------------|---------------------:|---------------:|
| accuracy_1   |             0.681661 |       0.663206 |
| accuracy_3   |             0.83045  |       0.817762 |
| accuracy_5   |             0.889273 |       0.861592 |
| accuracy_10  |             0.929642 |       0.916955 |
| precision_1  |             0.681661 |       0.663206 |
| precision_3  |             0.532488 |       0.517878 |
| precision_5  |             0.396078 |       0.376471 |
| precision_10 |             0.233449 |       0.227682 |
| recall_1     |             0.195662 |       0.199829 |
| recall_3     |             0.422025 |       0.41992  |
| recall_5     |             0.495023 |       0.479549 |
| recall_10    |             0.555928 |       0.547916 |
| f1_1         |             0.284624 |       0.286278 |
| f1_3         |             0.434482 |       0.426173 |
| f1_5         |             0.405207 |       0.386656 |
| f1_10        |             0.305581 |       0.297389 |
| mrr_1        |             0.681661 |       0.663206 |
| mrr_3        |             0.749519 |       0.731642 |
| mrr_5        |             0.76313  |       0.741619 |
| mrr_10       |             0.768567 |       0.749094 |
| r_precision  |             0.475959 |       0.468916 |

How to Use

from sentence_transformers import SentenceTransformer
from sklearn.metrics.pairwise import cosine_similarity

repo_id = f"giacomorossojakala/paraphrase-multilingual-mpnet-base-v2-eutekne-filtri-materia-lv1-2-desc-cascata"
model = SentenceTransformer(repo_id, device=device)

downloaded_path = hf_hub_download(repo_id=HF_REPO_ID, filename="label_description.json", token=HF_TOKEN)
label_descriptions = json.load(open(downloaded_path, "r"))

# Get predictions
custom_text = "acquista casa nel 2025 lavori ristrutturazione ma andrà ad abitare nel 2026, detrazioni 50%?"

def classify_text(text, model, label_descriptions, top_k=5):
    '''
    Classify a text by computing similarity with all label descriptions.

    Args:
        text: Input text to classify
        model: Trained SentenceTransformer model
        label_descriptions: Dict mapping label codes to descriptions
        top_k: Number of top predictions to return

    Returns:
        List of (label, similarity_score) tuples, sorted by score (descending)
    '''

    # Get label list and descriptions
    label_list = sorted(list(label_descriptions.keys()))
    label_texts = [label_descriptions[label] for label in label_list]

    # Encode question and all labels
    question_embedding = model.encode(text, convert_to_numpy=True)
    label_embeddings = model.encode(label_texts, convert_to_numpy=True, show_progress_bar=False)

    # Compute cosine similarities
    similarities = cosine_similarity([question_embedding], label_embeddings)[0]

    # Get top-k
    top_k_indices = np.argsort(similarities)[::-1][:top_k]
    predictions = [(label_list[idx], similarities[idx]) for idx in top_k_indices]

    return predictions



predictions = classify_text(custom_text, model, label_descriptions, top_k=5)

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
XLMRobertaModel
Ревизия весов
06ed326

0 моделей