Modernbert Embed Base Legal Matryoshka 2
M
Modernbert Embed Base Legal Matryoshka 2
manishh16によって開発
ModernBERTアーキテクチャを基に最適化された法律分野の埋め込みモデルで、多次元特徴抽出と文類似度計算をサポート
ダウンロード数 14
リリース時間 : 3/28/2025
モデル概要
このモデルはModernBERTアーキテクチャを基に最適化された法律文書埋め込みモデルで、法律文書の文類似度計算と特徴抽出タスクに特化しています。MatryoshkaLossトレーニング手法を採用し、異なる次元の埋め込み表現をサポートします。
モデル特徴
多次元埋め込みサポート
768/512/256/128/64など多様な埋め込み次元をサポートし、アプリケーションシナリオに応じて柔軟に選択可能
法律分野最適化
法律文書に特化して最適化されており、法律用語や文書構造をより良く理解可能
マトリョーシカトレーニング手法
MatryoshkaLossトレーニング戦略を採用し、異なる次元でも良好な性能を維持
効率的な検索能力
情報検索タスクで優れた性能を発揮し、特に法律文書検索シナリオで効果的
モデル能力
法律文書特徴抽出
文類似度計算
情報検索
多次元埋め込み表現
使用事例
法律文書処理
法律事例検索
クエリ文に基づいて関連する法律事例を検索
768次元設定で0.59の精度@1を達成
契約条項マッチング
契約内の類似条項をマッチング
512次元設定で0.69の精度@5を達成
法律研究支援
判例法分析
判例法における類似判決を分析
256次元設定で0.72の再現率@10を達成
🚀 ModernBERT Embed base Legal Matryoshka
このモデルは、nomic-ai/modernbert-embed-base をjsonデータセットで微調整した sentence-transformers モデルです。文章や段落を768次元の密ベクトル空間にマッピングし、意味的な文章の類似性、意味検索、言い換えマイニング、文章分類、クラスタリングなどに使用できます。
🚀 クイックスタート
このモデルを使用するには、まず sentence-transformers
ライブラリをインストールする必要があります。
pip install -U sentence-transformers
次に、このモデルをロードして推論を実行できます。
from sentence_transformers import SentenceTransformer
# 🤗 Hubからダウンロード
model = SentenceTransformer("manishh16/modernbert-embed-base-legal-matryoshka-2")
# 推論を実行
sentences = [
'protests pursuant to 28 U.S.C. § 1491(b). See 28 U.S.C. § 1491(b). Section 1491(b)(1) grants the \n17 \n \ncourt jurisdiction over protests filed “by an interested party objecting to a solicitation by a Federal \nagency for bids or proposals for a proposed contract . . . or any alleged violation of statute or',
'Under which U.S. Code section are the protests filed?',
"Which agency's declaration is mentioned?",
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]
# 埋め込みの類似度スコアを取得
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
✨ 主な機能
- 文章や段落を768次元の密ベクトル空間にマッピングします。
- 意味的な文章の類似性、意味検索、言い換えマイニング、文章分類、クラスタリングなどに使用できます。
📦 インストール
このモデルを使用するには、sentence-transformers
ライブラリをインストールする必要があります。
pip install -U sentence-transformers
📚 ドキュメント
モデル詳細
モデルの説明
属性 | 詳情 |
---|---|
モデルタイプ | Sentence Transformer |
ベースモデル | nomic-ai/modernbert-embed-base |
最大シーケンス長 | 8192トークン |
出力次元数 | 768次元 |
類似度関数 | コサイン類似度 |
学習データセット | json |
言語 | en |
ライセンス | apache-2.0 |
モデルのソース
- ドキュメント: Sentence Transformers Documentation
- リポジトリ: Sentence Transformers on GitHub
- Hugging Face: Sentence Transformers on Hugging Face
完全なモデルアーキテクチャ
SentenceTransformer(
(0): Transformer({'max_seq_length': 8192, 'do_lower_case': False}) with Transformer model: ModernBertModel
(1): Pooling({'word_embedding_dimension': 768, '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})
(2): Normalize()
)
評価
情報検索
データセット | 評価メトリクス | 値 |
---|---|---|
dim_768 |
cosine_accuracy@1 | 0.592 |
dim_768 |
cosine_accuracy@3 | 0.6352 |
dim_768 |
cosine_accuracy@5 | 0.7032 |
dim_768 |
cosine_accuracy@10 | 0.7666 |
dim_768 |
cosine_precision@1 | 0.592 |
dim_768 |
cosine_precision@3 | 0.5683 |
dim_768 |
cosine_precision@5 | 0.4263 |
dim_768 |
cosine_precision@10 | 0.2408 |
dim_768 |
cosine_recall@1 | 0.2012 |
dim_768 |
cosine_recall@3 | 0.547 |
dim_768 |
cosine_recall@5 | 0.6664 |
dim_768 |
cosine_recall@10 | 0.7508 |
dim_768 |
cosine_ndcg@10 | 0.6774 |
dim_768 |
cosine_mrr@10 | 0.6317 |
dim_768 |
cosine_map@100 | 0.6707 |
dim_512 |
cosine_accuracy@1 | 0.5858 |
dim_512 |
cosine_accuracy@3 | 0.6167 |
dim_512 |
cosine_accuracy@5 | 0.6909 |
dim_512 |
cosine_accuracy@10 | 0.7666 |
dim_512 |
cosine_precision@1 | 0.5858 |
dim_512 |
cosine_precision@3 | 0.5574 |
dim_512 |
cosine_precision@5 | 0.4176 |
dim_512 |
cosine_precision@10 | 0.2417 |
dim_512 |
cosine_recall@1 | 0.1984 |
dim_512 |
cosine_recall@3 | 0.5353 |
dim_512 |
cosine_recall@5 | 0.6515 |
dim_512 |
cosine_recall@10 | 0.7518 |
dim_512 |
cosine_ndcg@10 | 0.6722 |
dim_512 |
cosine_mrr@10 | 0.6236 |
dim_512 |
cosine_map@100 | 0.662 |
dim_256 |
cosine_accuracy@1 | 0.5672 |
dim_256 |
cosine_accuracy@3 | 0.5873 |
dim_256 |
cosine_accuracy@5 | 0.6646 |
dim_256 |
cosine_accuracy@10 | 0.7311 |
dim_256 |
cosine_precision@1 | 0.5672 |
dim_256 |
cosine_precision@3 | 0.5384 |
dim_256 |
cosine_precision@5 | 0.4009 |
dim_256 |
cosine_precision@10 | 0.2308 |
dim_256 |
cosine_recall@1 | 0.1906 |
dim_256 |
cosine_recall@3 | 0.5152 |
dim_256 |
cosine_recall@5 | 0.6264 |
dim_256 |
cosine_recall@10 | 0.7205 |
dim_256 |
cosine_ndcg@10 | 0.6454 |
dim_256 |
cosine_mrr@10 | 0.6009 |
dim_256 |
cosine_map@100 | 0.6377 |
dim_128 |
cosine_accuracy@1 | 0.4992 |
dim_128 |
cosine_accuracy@3 | 0.5301 |
dim_128 |
cosine_accuracy@5 | 0.6136 |
dim_128 |
cosine_accuracy@10 | 0.6785 |
dim_128 |
cosine_precision@1 | 0.4992 |
dim_128 |
cosine_precision@3 | 0.4745 |
dim_128 |
cosine_precision@5 | 0.3654 |
dim_128 |
cosine_precision@10 | 0.2159 |
dim_128 |
cosine_recall@1 | 0.1695 |
dim_128 |
cosine_recall@3 | 0.4581 |
dim_128 |
cosine_recall@5 | 0.5706 |
dim_128 |
cosine_recall@10 | 0.6683 |
dim_128 |
cosine_ndcg@10 | 0.5892 |
dim_128 |
cosine_mrr@10 | 0.5386 |
dim_128 |
cosine_map@100 | 0.5783 |
dim_64 |
cosine_accuracy@1 | 0.3632 |
dim_64 |
cosine_accuracy@3 | 0.4019 |
dim_64 |
cosine_accuracy@5 | 0.473 |
dim_64 |
cosine_accuracy@10 | 0.527 |
dim_64 |
cosine_precision@1 | 0.3632 |
dim_64 |
cosine_precision@3 | 0.3514 |
dim_64 |
cosine_precision@5 | 0.2782 |
dim_64 |
cosine_precision@10 | 0.1651 |
dim_64 |
cosine_recall@1 | 0.1236 |
dim_64 |
cosine_recall@3 | 0.3391 |
dim_64 |
cosine_recall@5 | 0.4364 |
dim_64 |
cosine_recall@10 | 0.5143 |
dim_64 |
cosine_ndcg@10 | 0.4444 |
dim_64 |
cosine_mrr@10 | 0.4003 |
dim_64 |
cosine_map@100 | 0.4462 |
学習詳細
学習データセット
json
- データセット: json
- サイズ: 5,822個の学習サンプル
- 列:
positive
とanchor
- 最初の1000サンプルに基づく近似統計:
positive anchor タイプ string string 詳細 - 最小: 26トークン
- 平均: 96.76トークン
- 最大: 156トークン
- 最小: 8トークン
- 平均: 16.59トークン
- 最大: 49トークン
- サンプル:
positive anchor properly authenticated. See id. at 367, 19 A.3d at 429 (Harrell, J., dissenting).
Four years later, in Sublet, 442 Md. at 637-38, 113 A.3d at 697-98, we adopted the
reasonable juror test for social media evidence and applied it in the three cases that were
consolidated for purposes of the opinion: Sublet v. State, Harris v. State, and Monge-How many years after the dissent did the adoption of the reasonable juror test occur?
to (1) a public-interest fee waiver, (2) the expedited processing of a request, or (3) the release of
information that implicates personal privacy, all are personal to a requester and thus cannot be
assigned. See, e.g., RTC Commercial Loan Trust 1995-NP1A v. Winthrop Mgmt., 923 F. Supp.
83, 88 (E.D. Va. 1996) (holding that “certain rights are purely personal and cannot be assigned”).What type of fee waiver is mentioned as being personal to a requester?
‘IRO’] staff that reviews Agency records and makes public release determinations with an eye
toward evaluating directorate-specific equities.” Id. ¶ 4. Ms. Meeks also explains that “records
frequently involve the equities of multiple directorates,” and “[w]hen records implicate the
operational interests of multiple directorates, the reviews are conducted by the relevant IROsWho conducts the reviews when the records implicate the operational interests of multiple directorates?
学習ハイパーパラメータ
非デフォルトのハイパーパラメータ
eval_strategy
: epochper_device_train_batch_size
: 32per_device_eval_batch_size
: 16gradient_accumulation_steps
: 16learning_rate
: 2e-05num_train_epochs
: 4lr_scheduler_type
: cosinewarmup_ratio
: 0.1bf16
: Truetf32
: Falseload_best_model_at_end
: Trueoptim
: adamw_torch_fusedbatch_sampler
: no_duplicates
すべてのハイパーパラメータ
クリックして展開
overwrite_output_dir
: Falsedo_predict
: Falseeval_strategy
: epochprediction_loss_only
: Trueper_device_train_batch_size
: 32per_device_eval_batch_size
: 16per_gpu_train_batch_size
: Noneper_gpu_eval_batch_size
: Nonegradient_accumulation_steps
: 16eval_accumulation_steps
: Nonetorch_empty_cache_steps
: Nonelearning_rate
: 2e-05weight_decay
: 0.0adam_beta1
: 0.9adam_beta2
: 0.999adam_epsilon
: 1e-08max_grad_norm
: 1.0num_train_epochs
: 4max_steps
: -1lr_scheduler_type
: cosinelr_scheduler_kwargs
: {}warmup_ratio
: 0.1warmup_steps
: 0log_level
: passivelog_level_replica
: warninglog_on_each_node
: Truelogging_nan_inf_filter
: Truesave_safetensors
: Truesave_on_each_node
: Falsesave_only_model
: Falserestore_callback_states_from_checkpoint
: Falseno_cuda
: Falseuse_cpu
: Falseuse_mps_device
: Falseseed
: 42data_seed
: Nonejit_mode_eval
: Falseuse_ipex
: Falsebf16
: Truefp16
: Falsefp16_opt_level
: O1half_precision_backend
: autobf16_full_eval
: Falsefp16_full_eval
: Falsetf32
: Falselocal_rank
: 0ddp_backend
: Nonetpu_num_cores
: Nonetpu_metrics_debug
: Falsedebug
: []dataloader_drop_last
: Falsedataloader_num_workers
: 0dataloader_prefetch_factor
: Nonepast_index
: -1disable_tqdm
: Falseremove_unused_columns
: Truelabel_names
: Noneload_best_model_at_end
: Trueignore_data_skip
: Falsefsdp
: []fsdp_min_num_params
: 0fsdp_config
: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}tp_size
: 0fsdp_transformer_layer_cls_to_wrap
: Noneaccelerator_config
: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}deepspeed
: Nonelabel_smoothing_factor
: 0.0optim
: adamw_torch_fusedoptim_args
: Noneadafactor
: Falsegroup_by_length
: Falselength_column_name
: lengthddp_find_unused_parameters
: Noneddp_bucket_cap_mb
: Noneddp_broadcast_buffers
: Falsedataloader_pin_memory
: Truedataloader_persistent_workers
: Falseskip_memory_metrics
: Trueuse_legacy_prediction_loop
: Falsepush_to_hub
: Falseresume_from_checkpoint
: Nonehub_model_id
: Nonehub_strategy
: every_savehub_private_repo
: Nonehub_always_push
: Falsegradient_checkpointing
: Falsegradient_checkpointing_kwargs
: Noneinclude_inputs_for_metrics
: Falseinclude_for_metrics
: []eval_do_concat_batches
: Truefp16_backend
: autopush_to_hub_model_id
: Nonepush_to_hub_organization
: Nonemp_parameters
:auto_find_batch_size
: Falsefull_determinism
: Falsetorchdynamo
: Noneray_scope
: lastddp_timeout
: 1800torch_compile
: Falsetorch_compile_backend
: Nonetorch_compile_mode
: Nonedispatch_batches
: Nonesplit_batches
: Noneinclude_tokens_per_second
: Falseinclude_num_input_tokens_seen
: Falseneftune_noise_alpha
: Noneoptim_target_modules
: Nonebatch_eval_metrics
: Falseeval_on_start
: Falseuse_liger_kernel
: Falseeval_use_gather_object
: Falseaverage_tokens_across_devices
: Falseprompts
: Nonebatch_sampler
: no_duplicatesmulti_dataset_batch_sampler
: proportional
学習ログ
エポック | ステップ | 学習損失 | dim_768_cosine_ndcg@10 | dim_512_cosine_ndcg@10 | dim_256_cosine_ndcg@10 | dim_128_cosine_ndcg@10 | dim_64_cosine_ndcg@10 |
---|---|---|---|---|---|---|---|
0.8791 | 10 | 91.6964 | - | - | - | - | - |
1.0 | 12 | - | 0.6483 | 0.6445 | 0.6004 | 0.5232 | 0.4001 |
1.7033 | 20 | 39.6429 | - | - | - | - | - |
2.0 | 24 | - | 0.6764 | 0.6716 | 0.6361 | 0.5736 | 0.4374 |
2.5275 | 30 | 30.1905 | - | - | - | - | - |
3.0 | 36 | - | 0.6768 | 0.6699 | 0.6441 | 0.5869 | 0.4416 |
3.3516 | 40 | 26.8879 | - | - | - | - | - |
3.7033 | 44 | - | 0.6774 | 0.6722 | 0.6454 | 0.5892 | 0.4444 |
太字の行は保存されたチェックポイントを示します。
フレームワークのバージョン
- Python: 3.11.11
- Sentence Transformers: 4.0.1
- Transformers: 4.50.2
- PyTorch: 2.6.0+cu124
- Accelerate: 1.5.2
- Datasets: 3.5.0
- Tokenizers: 0.21.1
📄 ライセンス
このモデルは、apache-2.0ライセンスの下で提供されています。
🔧 技術詳細
損失関数
{
"loss": "MultipleNegativesRankingLoss",
"matryoshka_dims": [
768,
512,
256,
128,
64
],
"matryoshka_weights": [
1,
1,
1,
1,
1
],
"n_dims_per_step": -1
}
📖 引用
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",
}
MatryoshkaLoss
@misc{kusupati2024matryoshka,
title={Matryoshka Representation Learning},
author={Aditya Kusupati and Gantavya Bhatt and Aniket Rege and Matthew Wallingford and Aditya Sinha and Vivek Ramanujan and William Howard-Snyder and Kaifeng Chen and Sham Kakade and Prateek Jain and Ali Farhadi},
year={2024},
eprint={2205.13147},
archivePrefix={arXiv},
primaryClass={cs.LG}
}
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}
}
Jina Embeddings V3
Jina Embeddings V3 は100以上の言語をサポートする多言語文埋め込みモデルで、文の類似度と特徴抽出タスクに特化しています。
テキスト埋め込み
Transformers 複数言語対応

J
jinaai
3.7M
911
Ms Marco MiniLM L6 V2
Apache-2.0
MS Marcoパッセージランキングタスクで訓練されたクロスエンコーダモデル、情報検索におけるクエリ-パッセージ関連性スコアリング用
テキスト埋め込み 英語
M
cross-encoder
2.5M
86
Opensearch Neural Sparse Encoding Doc V2 Distill
Apache-2.0
蒸留技術に基づくスパース検索モデルで、OpenSearch向けに最適化されており、推論不要のドキュメントエンコーディングをサポートし、検索関連性と効率性においてV1版を上回ります
テキスト埋め込み
Transformers 英語

O
opensearch-project
1.8M
7
Sapbert From PubMedBERT Fulltext
Apache-2.0
PubMedBERTに基づく生物医学エンティティ表現モデルで、自己アライメント事前学習により意味関係の捕捉を最適化します。
テキスト埋め込み 英語
S
cambridgeltl
1.7M
49
Gte Large
MIT
GTE-Largeは強力なセンテンストランスフォーマーモデルで、文の類似度とテキスト埋め込みタスクに特化しており、複数のベンチマークテストで優れた性能を発揮します。
テキスト埋め込み 英語
G
thenlper
1.5M
278
Gte Base En V1.5
Apache-2.0
GTE-base-en-v1.5 は英語の文章変換モデルで、文章類似度タスクに特化しており、複数のテキスト埋め込みベンチマークで優れた性能を発揮します。
テキスト埋め込み
Transformers 複数言語対応

G
Alibaba-NLP
1.5M
63
Gte Multilingual Base
Apache-2.0
GTE Multilingual Base は50以上の言語をサポートする多言語文埋め込みモデルで、文類似度計算などのタスクに適しています。
テキスト埋め込み
Transformers 複数言語対応

G
Alibaba-NLP
1.2M
246
Polybert
polyBERTは、完全に機械駆動の超高速ポリマー情報学を実現するための化学言語モデルです。PSMILES文字列を600次元の密なフィンガープリントにマッピングし、ポリマー化学構造を数値形式で表現します。
テキスト埋め込み
Transformers

P
kuelumbus
1.0M
5
Bert Base Turkish Cased Mean Nli Stsb Tr
Apache-2.0
トルコ語BERTベースの文埋め込みモデルで、意味的類似性タスクに最適化
テキスト埋め込み
Transformers その他

B
emrecan
1.0M
40
GIST Small Embedding V0
MIT
BAAI/bge-small-en-v1.5モデルを微調整したテキスト埋め込みモデルで、MEDIデータセットとMTEB分類タスクデータセットで訓練され、検索タスクのクエリエンコーディング能力を最適化しました。
テキスト埋め込み
Safetensors 英語
G
avsolatorio
945.68k
29
おすすめAIモデル
Llama 3 Typhoon V1.5x 8b Instruct
タイ語専用に設計された80億パラメータの命令モデルで、GPT-3.5-turboに匹敵する性能を持ち、アプリケーションシナリオ、検索拡張生成、制限付き生成、推論タスクを最適化
大規模言語モデル
Transformers 複数言語対応

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-TinyはSODAデータセットでトレーニングされた超小型対話モデルで、エッジデバイス推論向けに設計されており、体積はCosmo-3Bモデルの約2%です。
対話システム
Transformers 英語

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
RoBERTaアーキテクチャに基づく中国語抽出型QAモデルで、与えられたテキストから回答を抽出するタスクに適しています。
質問応答システム 中国語
R
uer
2,694
98