/ Модель

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

Контекст
8 192 токена
Параметры
149 млн
Архитектура
modernbert · dense
Базовая модель
langcache-embed-v1
Библиотека
sentence-transformers
Опубликована
21 мая 2025

langcache-embed-v2

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

Дообученная на триплетах модель ModernBERT создаёт эмбеддинги текстов для семантического поиска, сравнения и кластеризации.

118скачиваний за 30 дней0лайковвеса обновлены22 мая 2025

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

waris-gill/langcache-embed-v2 — модель Sentence Transformers, дообученная автором на триплетном наборе данных от базовой модели redis/langcache-embed-v1. Она использует архитектуру ModernBERT с 149 млн параметров и преобразует предложения и абзацы в плотные векторы размерностью 768 для сравнения текстов по косинусному сходству. Максимальная длина последовательности составляет 8192 токена.

Модель предназначена для семантического поиска и сравнения текстов, поиска перефразировок, кластеризации и классификации на основе эмбеддингов. Её можно применять для поиска похожих запросов и семантического кэширования. Обучение описано как дообучение на триплетах; репозиторий использует Sentence Transformers и формат Safetensors. Язык лицензии в предоставленных данных не указан, поэтому условия использования по ним определить нельзя.

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

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

Ограничения

Модель выдаёт векторы, а не готовые ответы; для прикладного поиска или классификации необходима соответствующая система обработки эмбеддингов. Языки и лицензия не установлены по предоставленным данным.

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

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

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

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

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

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

Открыть на Hugging Face

SentenceTransformer based on redis/langcache-embed-v1

This is a sentence-transformers model finetuned from redis/langcache-embed-v1 on the triplet dataset. It maps sentences & paragraphs to a 768-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 Type: Sentence Transformer
  • Base model: redis/langcache-embed-v1
  • Maximum Sequence Length: 8192 tokens
  • Output Dimensionality: 768 dimensions
  • Similarity Function: Cosine Similarity
  • Training Dataset:
    • triplet

Model Sources

Full Model Architecture

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': True, 'pooling_mode_mean_tokens': False, '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("waris-gill/langcache-embed-v2")
# Run inference
sentences = [
    'What are some examples of crimes understood as a moral turpitude?',
    'What are some examples of crimes of moral turpitude?',
    'What are some examples of crimes understood as a legal aptitude?',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]

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

Training Details

Training Dataset

triplet

  • Dataset: triplet
  • Size: 36,864 training samples
  • Columns: anchor, positive, negative_1, negative_2, and negative_3
  • Approximate statistics based on the first 1000 samples:
    anchorpositivenegative_1negative_2negative_3
    typestringstringstringstringstring
    detailsmin: 6 tokensmean: 13.88 tokensmax: 54 tokensmin: 5 tokensmean: 13.89 tokensmax: 45 tokensmin: 6 tokensmean: 18.68 tokensmax: 118 tokensmin: 5 tokensmean: 19.26 tokensmax: 117 tokensmin: 6 tokensmean: 18.07 tokensmax: 108 tokens
  • Samples:
    anchorpositivenegative_1negative_2negative_3
    Is life really what I make of it?Life is what you make it?Is life hardly what I take of it?Life is not entirely what I make of it.Is life not what I make of it?
    When you visit a website, can a person running the website see your IP address?Does every website I visit knows my public ip address?When you avoid a website, can a person hiding the website see your MAC address?When you send an email, can the recipient see your physical location?When you visit a website, a person running the website cannot see your IP address.
    What are some cool features about iOS 10?What are the best new features of iOS 10?iOS 10 received criticism for its initial bugs and performance issues, and some users found the redesigned apps less intuitive compared to previous versions.What are the drawbacks of using Android 14?iOS 10 was widely criticized for its bugs, removal of beloved features, and generally being a downgrade from previous versions.
  • Loss: MatryoshkaLoss with these parameters:
    {
        "loss": "CachedMultipleNegativesRankingLoss",
        "matryoshka_dims": [
            768,
            512,
            256,
            128,
            64
        ],
        "matryoshka_weights": [
            1,
            1,
            1,
            1,
            1
        ],
        "n_dims_per_step": -1
    }
    

Evaluation

alt text alt text alt text alt text

triplet

  • Dataset: triplet
  • Size: 7,267 evaluation samples
  • Columns: anchor, positive, negative_1, negative_2, and negative_3
  • Approximate statistics based on the first 1000 samples:
    anchorpositivenegative_1negative_2negative_3
    typestringstringstringstringstring
    detailsmin: 6 tokensmean: 13.62 tokensmax: 46 tokensmin: 6 tokensmean: 13.58 tokensmax: 39 tokensmin: 6 tokensmean: 18.32 tokensmax: 107 tokensmin: 6 tokensmean: 18.1 tokensmax: 174 tokensmin: 6 tokensmean: 18.26 tokensmax: 172 tokens
  • Samples:
    anchorpositivenegative_1negative_2negative_3
    How do I make friends in office?How can I make friends in office?How do I lose friends in office?How do I lose enemies in office?I already have plenty of friends at work.
    Is it good to do MBA after Engineering?Is it necessary to do MBA after Engineering?Is learning to code essential for a successful marketing career?Not necessarily; an MBA isn't always the best next step after engineering – practical experience or specialized master's degrees can be more valuable depending on career goals.Is it bad to do MBA after Engineering?
    How I should fix my computer while it is showing no boot device found?How do I fix the "Boot device not found" problem?My computer is booting normally and does not have any issues with the boot device.I should not fix my computer while it is showing no boot device found.When will I break my phone while it is showing full boot device found?
  • Loss: MatryoshkaLoss with these parameters:
    {
        "loss": "CachedMultipleNegativesRankingLoss",
        "matryoshka_dims": [
            768,
            512,
            256,
            128,
            64
        ],
        "matryoshka_weights": [
            1,
            1,
            1,
            1,
            1
        ],
        "n_dims_per_step": -1
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: steps
  • per_device_train_batch_size: 2048
  • per_device_eval_batch_size: 1024
  • learning_rate: 1e-05
  • num_train_epochs: 1
  • lr_scheduler_type: constant
  • warmup_steps: 10
  • gradient_checkpointing: True
  • torch_compile: True
  • torch_compile_backend: inductor
  • 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: 2048
  • per_device_eval_batch_size: 1024
  • per_gpu_train_batch_size: None
  • per_gpu_eval_batch_size: None
  • gradient_accumulation_steps: 1
  • eval_accumulation_steps: None
  • torch_empty_cache_steps: None
  • learning_rate: 1e-05
  • weight_decay: 0.0
  • adam_beta1: 0.9
  • adam_beta2: 0.999
  • adam_epsilon: 1e-08
  • max_grad_norm: 1
  • num_train_epochs: 1
  • max_steps: -1
  • lr_scheduler_type: constant
  • lr_scheduler_kwargs: {}
  • warmup_ratio: 0.0
  • warmup_steps: 10
  • 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: False
  • 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}
  • tp_size: 0
  • 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: None
  • hub_always_push: False
  • gradient_checkpointing: True
  • gradient_checkpointing_kwargs: None
  • include_inputs_for_metrics: False
  • include_for_metrics: []
  • 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: True
  • torch_compile_backend: inductor
  • torch_compile_mode: 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
  • use_liger_kernel: False
  • eval_use_gather_object: False
  • average_tokens_across_devices: False
  • prompts: None
  • batch_sampler: no_duplicates
  • multi_dataset_batch_sampler: proportional

Training Logs

EpochStepTraining Losstriplet loss
0.055616.4636-
0.111126.1076-
0.166735.8323-
0.222245.6861-
0.277855.5694-
0.333365.2121-
0.388975.0695-
0.444484.81-
0.594.6698-
0.5556104.35461.2224
0.6111114.1922-
0.6667124.1434-
0.7222133.9918-
0.7778143.702-
0.8333153.6501-
0.8889163.6641-
0.9444173.3196-
1.0182.7108-

Framework Versions

  • Python: 3.11.11
  • Sentence Transformers: 4.1.0
  • Transformers: 4.51.3
  • PyTorch: 2.6.0+cu124
  • Accelerate: 1.6.0
  • Datasets: 3.5.1
  • Tokenizers: 0.21.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",
}

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}
}

CachedMultipleNegativesRankingLoss

@misc{gao2021scaling,
    title={Scaling Deep Contrastive Learning Batch Size under Memory Limited Setup},
    author={Luyu Gao and Yunyi Zhang and Jiawei Han and Jamie Callan},
    year={2021},
    eprint={2101.06983},
    archivePrefix={arXiv},
    primaryClass={cs.LG}
}

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
ModernBertModel
Ревизия весов
db21990

0 моделей