VOOZH about

URL: https://huggingface.co/redis/langcache-embed-v3-small

⇱ redis/langcache-embed-v3-small · Hugging Face


Redis fine-tuned BiEncoder model for semantic caching on LangCache

This is a sentence-transformers model finetuned from sentence-transformers/all-MiniLM-L6-v2 on the LangCache Sentence Pairs (all) dataset. It maps sentences & paragraphs to a 384-dimensional dense vector space and can be used for sentence pair similarity.

Model Details

Model Description

Model Sources

Full Model Architecture

SentenceTransformer(
 (0): Transformer({'max_seq_length': 128, 'do_lower_case': False, 'architecture': '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("redis/langcache-embed-v3-small")
# Run inference
sentences = [
 '"If you click ""like"" on an old post that someone made on your wall yet you\'re no longer Facebook friends, will they still receive a notification?"',
 '"If you click ""like"" on an old post that someone made on your wall yet you\'re no longer Facebook friends, will they still receive a notification?"',
 '"If your teenage son posted ""La commedia e finita"" on his Facebook wall, would you be concerned?"',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 384]

# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities)

Evaluation

Metrics

Custom Information Retrieval

  • Dataset: test
  • Evaluated with ir_evaluator.CustomInformationRetrievalEvaluator
Metric Value
cosine_accuracy@1 0.6162
cosine_precision@1 0.6162
cosine_recall@1 0.5987
cosine_ndcg@10 0.7883
cosine_mrr@1 0.6162
cosine_map@100 0.7416

Training Details

Training Dataset

LangCache Sentence Pairs (all)

  • Dataset: LangCache Sentence Pairs (all)
  • Size: ~8,000,000 training samples
  • Columns: anchor, positive, and negative
  • Loss: losses.ArcFaceInBatchLoss with these parameters:
    {
     "scale": 20.0,
     "similarity_fct": "cos_sim",
     "gather_across_devices": false
    }
    

Evaluation Dataset

LangCache Sentence Pairs (all)

  • Dataset: LangCache Sentence Pairs (all)
  • Columns: anchor, positive, and negative
  • Loss: losses.ArcFaceInBatchLoss with these parameters:
    {
     "scale": 20.0,
     "similarity_fct": "cos_sim",
     "gather_across_devices": false
    }
    

Training Logs

Epoch Step test_cosine_ndcg@10
4.0 40000 0.7880

Framework Versions

  • Python: 3.12.3
  • Sentence Transformers: 5.1.0
  • Transformers: 4.56.0
  • PyTorch: 2.8.0+cu128
  • Accelerate: 1.10.1
  • Datasets: 4.0.0
  • Tokenizers: 0.22.0

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",
}
Downloads last month
617
Safetensors
Model size
22.6M params
Tensor type
BF16
·

Model tree for redis/langcache-embed-v3-small

Dataset used to train redis/langcache-embed-v3-small

Collection including redis/langcache-embed-v3-small

Paper for redis/langcache-embed-v3-small

Evaluation results