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 Type: Sentence Transformer
- Base model: sentence-transformers/all-MiniLM-L6-v2
- Maximum Sequence Length: 100 tokens
- Output Dimensionality: 384 dimensions
- Similarity Function: Cosine Similarity
- Training Dataset:
- Language: en
- License: apache-2.0
Model Sources
- Documentation: Sentence Transformers Documentation
- Repository: Sentence Transformers on GitHub
- Hugging Face: Sentence Transformers on Hugging Face
Full Model Architecture
SentenceTransformer(
(0): Transformer({'max_seq_length': 100, '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})
(2): Normalize()
)
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-experimental")
# Run inference
sentences = [
'According to him , the earth is the carrier of his artistic work , which is only integrated into the creative process by minimal changes .',
'According to him , earth is the carrier of his artistic work being integrated into the creative process only by minimal changes .',
'According to him , earth is the carrier of his creative work being integrated into the artistic process only by minimal changes .',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 384]
# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities)
# tensor([[1.0000, 0.9844, 0.9844],
# [0.9844, 1.0000, 1.0000],
# [0.9844, 1.0000, 1.0078]], dtype=torch.bfloat16)
Evaluation
Metrics
Custom Information Retrieval
- Dataset:
test - Evaluated with
ir_evaluator.CustomInformationRetrievalEvaluator
| Metric | Value |
|---|---|
| cosine_accuracy@1 | 0.5768 |
| cosine_precision@1 | 0.5768 |
| cosine_recall@1 | 0.5588 |
| cosine_ndcg@10 | 0.7653 |
| cosine_mrr@1 | 0.5768 |
| cosine_map@100 | 0.7131 |
| cosine_auc_precision_cache_hit_ratio | 0.3337 |
| cosine_auc_similarity_distribution | 0.1529 |
Training Details
Training Dataset
LangCache Sentence Pairs (all)
- Dataset: LangCache Sentence Pairs (all)
- Size: 126,938 training samples
- Columns:
anchor,positive, andnegative - Approximate statistics based on the first 1000 samples:
anchor positive negative type string string string details - min: 8 tokens
- mean: 26.28 tokens
- max: 47 tokens
- min: 8 tokens
- mean: 26.28 tokens
- max: 47 tokens
- min: 7 tokens
- mean: 25.69 tokens
- max: 65 tokens
- Samples:
anchor positive negative The newer Punts are still very much in existence today and race in the same fleets as the older boats .The newer punts are still very much in existence today and run in the same fleets as the older boats .how can I get financial freedom as soon as possible?The newer punts are still very much in existence today and run in the same fleets as the older boats .The newer Punts are still very much in existence today and race in the same fleets as the older boats .The older Punts are still very much in existence today and race in the same fleets as the newer boats .Turner Valley , was at the Turner Valley Bar N Ranch Airport , southwest of the Turner Valley Bar N Ranch , Alberta , Canada .Turner Valley , , was located at Turner Valley Bar N Ranch Airport , southwest of Turner Valley Bar N Ranch , Alberta , Canada .Turner Valley Bar N Ranch Airport , , was located at Turner Valley Bar N Ranch , southwest of Turner Valley , Alberta , Canada . - Loss:
losses.ArcFaceInBatchLosswith these parameters:{ "scale": 20.0, "similarity_fct": "cos_sim", "gather_across_devices": false }
Evaluation Dataset
LangCache Sentence Pairs (all)
- Dataset: LangCache Sentence Pairs (all)
- Size: 126,938 evaluation samples
- Columns:
anchor,positive, andnegative - Approximate statistics based on the first 1000 samples:
anchor positive negative type string string string details - min: 8 tokens
- mean: 26.28 tokens
- max: 47 tokens
- min: 8 tokens
- mean: 26.28 tokens
- max: 47 tokens
- min: 7 tokens
- mean: 25.69 tokens
- max: 65 tokens
- Samples:
anchor positive negative The newer Punts are still very much in existence today and race in the same fleets as the older boats .The newer punts are still very much in existence today and run in the same fleets as the older boats .how can I get financial freedom as soon as possible?The newer punts are still very much in existence today and run in the same fleets as the older boats .The newer Punts are still very much in existence today and race in the same fleets as the older boats .The older Punts are still very much in existence today and race in the same fleets as the newer boats .Turner Valley , was at the Turner Valley Bar N Ranch Airport , southwest of the Turner Valley Bar N Ranch , Alberta , Canada .Turner Valley , , was located at Turner Valley Bar N Ranch Airport , southwest of Turner Valley Bar N Ranch , Alberta , Canada .Turner Valley Bar N Ranch Airport , , was located at Turner Valley Bar N Ranch , southwest of Turner Valley , Alberta , Canada . - Loss:
losses.ArcFaceInBatchLosswith these parameters:{ "scale": 20.0, "similarity_fct": "cos_sim", "gather_across_devices": false }
Training Logs
| Epoch | Step | test_cosine_ndcg@10 |
|---|---|---|
| -1 | -1 | 0.7653 |
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
- 13
Model tree for redis/langcache-embed-experimental
Base model
sentence-transformers/all-MiniLM-L6-v2Dataset used to train redis/langcache-embed-experimental
Evaluation results
- Cosine Accuracy@1 on testself-reported0.577
- Cosine Precision@1 on testself-reported0.577
- Cosine Recall@1 on testself-reported0.559
- Cosine Ndcg@10 on testself-reported0.765
- Cosine Mrr@1 on testself-reported0.577
- Cosine Map@100 on testself-reported0.713
- Cosine Auc Precision Cache Hit Ratio on testself-reported0.334
- Cosine Auc Similarity Distribution on testself-reported0.153