SetFit with intfloat/multilingual-e5-large
This is a SetFit model that can be used for Text Classification. This SetFit model uses intfloat/multilingual-e5-large as the Sentence Transformer embedding model. A LogisticRegression instance is used for classification.
The model has been trained using an efficient few-shot learning technique that involves:
- Fine-tuning a Sentence Transformer with contrastive learning.
- Training a classification head with features from the fine-tuned Sentence Transformer.
Model Details
Model Description
- Model Type: SetFit
- Sentence Transformer body: intfloat/multilingual-e5-large
- Classification head: a LogisticRegression instance
- Maximum Sequence Length: 512 tokens
- Number of Classes: 9 classes
Model Sources
- Repository: SetFit on GitHub
- Paper: Efficient Few-Shot Learning Without Prompts
- Blogpost: SetFit: Efficient Few-Shot Learning Without Prompts
Model Labels
Label | Examples |
---|---|
list_documents |
|
get_section |
|
translate |
|
summarize |
|
modify_data |
|
send_email |
|
generate_document |
|
book_ticket |
|
out_of_scope |
|
Uses
Direct Use for Inference
First install the SetFit library:
pip install setfit
Then you can load this model and run inference.
from setfit import SetFitModel
# Download from the 🤗 Hub
model = SetFitModel.from_pretrained("WeksteinEyal/setfit-tooldetect-trilingual-v1")
# Run inference
preds = model("Give me the latest news")
Training Details
Training Set Metrics
Training set | Min | Median | Max |
---|---|---|---|
Word count | 4 | 6.6897 | 10 |
Label | Training Sample Count |
---|---|
book_ticket | 9 |
generate_document | 9 |
get_section | 9 |
list_documents | 9 |
modify_data | 9 |
out_of_scope | 15 |
send_email | 9 |
summarize | 9 |
translate | 9 |
Training Hyperparameters
- batch_size: (8, 8)
- num_epochs: (1, 1)
- max_steps: -1
- sampling_strategy: oversampling
- num_iterations: 20
- body_learning_rate: (2e-05, 2e-05)
- head_learning_rate: 2e-05
- loss: CosineSimilarityLoss
- distance_metric: cosine_distance
- margin: 0.25
- end_to_end: False
- use_amp: False
- warmup_proportion: 0.1
- l2_weight: 0.01
- seed: 42
- eval_max_steps: -1
- load_best_model_at_end: False
Training Results
Epoch | Step | Training Loss | Validation Loss |
---|---|---|---|
0.0023 | 1 | 0.1063 | - |
0.1149 | 50 | 0.2008 | - |
0.2299 | 100 | 0.0205 | - |
0.3448 | 150 | 0.0048 | - |
0.4598 | 200 | 0.0022 | - |
0.5747 | 250 | 0.0011 | - |
0.6897 | 300 | 0.001 | - |
0.8046 | 350 | 0.0008 | - |
0.9195 | 400 | 0.0007 | - |
Framework Versions
- Python: 3.11.12
- SetFit: 1.1.2
- Sentence Transformers: 3.4.1
- Transformers: 4.51.3
- PyTorch: 2.6.0+cu124
- Datasets: 3.5.1
- Tokenizers: 0.21.1
Citation
BibTeX
@article{https://doi.org/10.48550/arxiv.2209.11055,
doi = {10.48550/ARXIV.2209.11055},
url = {https://arxiv.org/abs/2209.11055},
author = {Tunstall, Lewis and Reimers, Nils and Jo, Unso Eun Seo and Bates, Luke and Korat, Daniel and Wasserblat, Moshe and Pereg, Oren},
keywords = {Computation and Language (cs.CL), FOS: Computer and information sciences, FOS: Computer and information sciences},
title = {Efficient Few-Shot Learning Without Prompts},
publisher = {arXiv},
year = {2022},
copyright = {Creative Commons Attribution 4.0 International}
}
- Downloads last month
- 76
Inference Providers
NEW
This model isn't deployed by any Inference Provider.
🙋
Ask for provider support
Model tree for WeksteinEyal/setfit-tooldetect-trilingual-v1
Base model
intfloat/multilingual-e5-large