/ Модель

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

Контекст
512 токенов
Параметры
18,8 млн
Архитектура
bert · dense
Базовая модель
paraphrase-MiniLM-L3-v2
Библиотека
sentence-transformers
Опубликована
22 июл 2024

legal_paraphrase

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

Дообученная BERT-модель для получения векторов юридических текстов и поиска семантически близких формулировок и парафразов.

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

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

justArmenian/legal_paraphrase — дообученная модель Sentence Transformers на базе sentence-transformers/paraphrase-MiniLM-L3-v2 для преобразования предложений и абзацев в плотные векторы размерности 384. Архитектура основана на BERT: модель использует среднее объединение токенных представлений; сходство векторов рекомендуется оценивать косинусной мерой. В метаданных указаны 18,8 млн параметров и контекст до 512 токенов, тогда как README задаёт максимальную длину последовательности 128 токенов.

Модель адаптирована к юридическим текстам и предназначена для семантического сравнения, поиска похожих формулировок и парафразов, кластеризации и извлечения признаков для классификации. В примерах обучающих данных сопоставляются перефразированные фрагменты судебно-правового текста и семантически отличающиеся фрагменты. README не подтверждает поддержку других языков; примеры приведены на английском.

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

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

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

Ограничения

README указывает максимальную длину последовательности 128 токенов, а метаданные — контекст до 512 токенов; фактический рабочий предел следует проверять в используемой конфигурации. Модель возвращает векторы и сама по себе не даёт юридических ответов; качество на конкретных корпусах и лицензия в предоставленных сведениях не описаны.

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

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

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

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

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

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

Открыть на Hugging Face

SentenceTransformer based on sentence-transformers/paraphrase-MiniLM-L3-v2

This is a sentence-transformers model finetuned from sentence-transformers/paraphrase-MiniLM-L3-v2. It maps sentences & paragraphs to a 384-dimensional dense vector space and can be used for semantic textual similarity, semantic search, paraphrase mining, text classification, clustering, and more.

Model Details

Model Description

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 128, 'do_lower_case': False}) with Transformer model: BertModel 
  (1): Pooling({'word_embedding_dimension': 384, 'pooling_mode_cls_token': False, 'pooling_mode_mean_tokens': True, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False, 'pooling_mode_weightedmean_tokens': False, 'pooling_mode_lasttoken': False, 'include_prompt': True})
)

Usage

Direct Usage (Sentence Transformers)

First install the Sentence Transformers library:

pip install -U sentence-transformers

Then you can load this model and run inference.

from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("justArmenian/legal_paraphrase")
# Run inference
sentences = [
    'In contrast, the scope of punishable conduct under the instant statute is limited by the individual\'s specified intent to "haras[s]" by communicating a "threat" so as to "engage in a knowing and willful course of conduct" directed at the victim that "alarms, torments, or terrorizes" the victim.',
    "The scope of punishable conduct under the statute is limited to the individual's intent to harass by communicating a threat so as to engage in a knowing and willful course of conduct directed at the victim that alarms, torments, or terrorizes the victim.",
    'The Veteran has been diagnosed with both major depressive disorder and PTSD.',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 384]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]

Evaluation

Metrics

Triplet

MetricValue
cosine_accuracy1.0
dot_accuracy0.0
manhattan_accuracy1.0
euclidean_accuracy1.0
max_accuracy1.0

Triplet

MetricValue
cosine_accuracy1.0
dot_accuracy0.0
manhattan_accuracy1.0
euclidean_accuracy1.0
max_accuracy1.0

Triplet

MetricValue
cosine_accuracy1.0
dot_accuracy0.0
manhattan_accuracy1.0
euclidean_accuracy1.0
max_accuracy1.0

Training Details

Training Dataset

Unnamed Dataset

  • Size: 2,000 training samples
  • Columns: anchor, positive, and negative
  • Approximate statistics based on the first 1000 samples:
    anchorpositivenegative
    typestringstringstring
    detailsmin: 8 tokensmean: 36.01 tokensmax: 128 tokensmin: 8 tokensmean: 31.41 tokensmax: 99 tokensmin: 8 tokensmean: 31.39 tokensmax: 99 tokens
  • Samples:
    anchorpositivenegative
    The weight of the competent and probative medical opinions of record is against finding that the Veteran has a current diagnosis of PTSD or any other chronic acquired psychiatric disorder which is related to her military service.The weight of the credible and persuasive medical evidence on record suggests that the Veteran does not currently suffer from PTSD or any other chronic psychiatric condition related to her military service.It is evident that an unauthorized physical intrusion would have been deemed a "search" under the Fourth Amendment when it was originally formulated.
    We have no doubt that such a physical intrusion would have been considered a “search” within the meaning of the Fourth Amendment when it was adopted.It is evident that an unauthorized physical intrusion would have been deemed a "search" under the Fourth Amendment when it was originally formulated.In June 1972, the Veteran's condition was assessed by the Army Medical Board, which concluded that the Veteran's back condition made him unfit for active service, leading to his discharge from the military.
    Later in June 1972, the Veteran's condition was evaluated by the Army Medical Board, where it was determined that the Veteran's back condition rendered him physically unfit for active service, and he was subsequently discharged from service.In June 1972, the Veteran's condition was assessed by the Army Medical Board, which concluded that the Veteran's back condition made him unfit for active service, leading to his discharge from the military.The court has granted a petition for a writ of certiorari to review a decision made by the Court of Appeal of California, Fourth Appellate District, Division One.
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

Evaluation Dataset

Unnamed Dataset

  • Size: 500 evaluation samples
  • Columns: anchor, positive, and negative
  • Approximate statistics based on the first 1000 samples:
    anchorpositivenegative
    typestringstringstring
    detailsmin: 8 tokensmean: 35.69 tokensmax: 128 tokensmin: 8 tokensmean: 32.11 tokensmax: 77 tokensmin: 8 tokensmean: 32.12 tokensmax: 77 tokens
  • Samples:
    anchorpositivenegative
    (Virginia v. Black, supra, 538 U.S. at p. 347.)The Black Court asserted that the "vagueness doctrine is a safeguard against the arbitrary exercise of power by government officials."This Court will determine if there was enough evidence to support the jury's verdict by considering whether reasonable people could have reached different conclusions based on the evidence presented.
    However, this Court will determine that there was sufficient evidence to sustain the jury's verdict if the evidence was "of such quality and weight that, having in mind the beyond a reasonable doubt burden of proof standard, reasonable fair-minded men in the exercise of impartial judgment might reach different conclusions on every element of the offense."This Court will determine if there was enough evidence to support the jury's verdict by considering whether reasonable people could have reached different conclusions based on the evidence presented.The VA psychiatrist believed that the Veteran was likely to have PTSD as a direct result of the attack on him during his military service in Korea.
    This VA psychiatrist opined that the Veteran had PTSD more likely than not to be the direct result of the attack on him during service in Korea.The VA psychiatrist believed that the Veteran was likely to have PTSD as a direct result of the attack on him during his military service in Korea.She noted that the Veteran's greatest source of stress was caring for their adult child without any assistance.
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: steps
  • per_device_train_batch_size: 16
  • per_device_eval_batch_size: 16
  • num_train_epochs: 1
  • warmup_ratio: 0.1
  • fp16: True
  • batch_sampler: no_duplicates

All Hyperparameters

  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: steps
  • prediction_loss_only: True
  • per_device_train_batch_size: 16
  • per_device_eval_batch_size: 16
  • per_gpu_train_batch_size: None
  • per_gpu_eval_batch_size: None
  • gradient_accumulation_steps: 1
  • eval_accumulation_steps: None
  • learning_rate: 5e-05
  • weight_decay: 0.0
  • adam_beta1: 0.9
  • adam_beta2: 0.999
  • adam_epsilon: 1e-08
  • max_grad_norm: 1.0
  • num_train_epochs: 1
  • max_steps: -1
  • lr_scheduler_type: linear
  • lr_scheduler_kwargs: {}
  • warmup_ratio: 0.1
  • warmup_steps: 0
  • log_level: passive
  • log_level_replica: warning
  • log_on_each_node: True
  • logging_nan_inf_filter: True
  • save_safetensors: True
  • save_on_each_node: False
  • save_only_model: False
  • restore_callback_states_from_checkpoint: False
  • no_cuda: False
  • use_cpu: False
  • use_mps_device: False
  • seed: 42
  • data_seed: None
  • jit_mode_eval: False
  • use_ipex: False
  • bf16: False
  • fp16: True
  • fp16_opt_level: O1
  • half_precision_backend: auto
  • bf16_full_eval: False
  • fp16_full_eval: False
  • tf32: None
  • local_rank: 0
  • ddp_backend: None
  • tpu_num_cores: None
  • tpu_metrics_debug: False
  • debug: []
  • dataloader_drop_last: False
  • dataloader_num_workers: 0
  • dataloader_prefetch_factor: None
  • past_index: -1
  • disable_tqdm: False
  • remove_unused_columns: True
  • label_names: None
  • load_best_model_at_end: False
  • ignore_data_skip: False
  • fsdp: []
  • fsdp_min_num_params: 0
  • fsdp_config: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}
  • fsdp_transformer_layer_cls_to_wrap: None
  • accelerator_config: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}
  • deepspeed: None
  • label_smoothing_factor: 0.0
  • optim: adamw_torch
  • optim_args: None
  • adafactor: False
  • group_by_length: False
  • length_column_name: length
  • ddp_find_unused_parameters: None
  • ddp_bucket_cap_mb: None
  • ddp_broadcast_buffers: False
  • dataloader_pin_memory: True
  • dataloader_persistent_workers: False
  • skip_memory_metrics: True
  • use_legacy_prediction_loop: False
  • push_to_hub: False
  • resume_from_checkpoint: None
  • hub_model_id: None
  • hub_strategy: every_save
  • hub_private_repo: False
  • hub_always_push: False
  • gradient_checkpointing: False
  • gradient_checkpointing_kwargs: None
  • include_inputs_for_metrics: False
  • eval_do_concat_batches: True
  • fp16_backend: auto
  • push_to_hub_model_id: None
  • push_to_hub_organization: None
  • mp_parameters:
  • auto_find_batch_size: False
  • full_determinism: False
  • torchdynamo: None
  • ray_scope: last
  • ddp_timeout: 1800
  • torch_compile: False
  • torch_compile_backend: None
  • torch_compile_mode: None
  • dispatch_batches: None
  • split_batches: None
  • include_tokens_per_second: False
  • include_num_input_tokens_seen: False
  • neftune_noise_alpha: None
  • optim_target_modules: None
  • batch_eval_metrics: False
  • eval_on_start: False
  • batch_sampler: no_duplicates
  • multi_dataset_batch_sampler: proportional

Training Logs

EpochStepTraining Losslossall-nli-dev_max_accuracyall-nli-test_max_accuracy
00--1.0-
0.08100.14020.07591.0-
0.16200.08730.07261.0-
0.24300.09920.06771.0-
0.32400.07590.06511.0-
0.4500.03550.06521.0-
0.48600.08140.06661.0-
0.56700.03530.06771.0-
0.64800.14040.06771.0-
0.72900.03360.06641.0-
0.81000.05590.06611.0-
0.881100.04840.06541.0-
0.961200.05220.06501.0-
1.0125---1.0

Framework Versions

  • Python: 3.10.12
  • Sentence Transformers: 3.0.1
  • Transformers: 4.42.4
  • PyTorch: 2.3.1+cu121
  • Accelerate: 0.32.1
  • Datasets: 2.20.0
  • Tokenizers: 0.19.1

Citation

BibTeX

Sentence Transformers

@inproceedings{reimers-2019-sentence-bert,
    title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks",
    author = "Reimers, Nils and Gurevych, Iryna",
    booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing",
    month = "11",
    year = "2019",
    publisher = "Association for Computational Linguistics",
    url = "https://arxiv.org/abs/1908.10084",
}

MultipleNegativesRankingLoss

@misc{henderson2017efficient,
    title={Efficient Natural Language Response Suggestion for Smart Reply}, 
    author={Matthew Henderson and Rami Al-Rfou and Brian Strope and Yun-hsuan Sung and Laszlo Lukacs and Ruiqi Guo and Sanjiv Kumar and Balint Miklos and Ray Kurzweil},
    year={2017},
    eprint={1705.00652},
    archivePrefix={arXiv},
    primaryClass={cs.CL}
}

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей