/ Модель

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

Контекст
8 194 токена
Параметры
659 млн
Архитектура
xlm-roberta · dense
Базовая модель
bge-m3
Библиотека
sentence-transformers
Опубликована
12 мар 2025

foodex-baseterm-retriever

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

Дообученная на FoodEx модель превращает описания продуктов и термины классификатора в векторы для семантического поиска и сопоставления.

114скачиваний за 30 дней0лайковвеса обновлены12 мар 2025

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Многоязычная модель Sentence Transformer, дообученная командой DISI — University of Bologna на базе BAAI/bge-m3 для сопоставления текстов с терминами классификатора пищевых продуктов FoodEx. Она кодирует предложения и абзацы в плотные векторы размерностью 1024; сходство оценивается косинусной мерой. Архитектура состоит из XLM-RoBERTa и среднего пулинга токенов. Метаданные указывают контекст до 8194 токенов, однако в README задана максимальная длина последовательности 64 токена.

Модель подходит для семантического поиска и ранжирования терминов FoodEx по описаниям продуктов, поиска похожих формулировок, кластеризации и классификации текстов. В обучающем наборе 553 000 примеров, а в README приведены высокие показатели cosine_accuracy на задаче поиска, но без полного описания оценки их нельзя напрямую переносить на другие данные. Репозиторий содержит веса safetensors и использует библиотеку Sentence Transformers. Лицензия в предоставленных сведениях не указана.

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

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

Ограничения

README задаёт максимальную длину последовательности 64 токена, тогда как метаданные указывают контекст 8194 токена; для применения следует учитывать ограничение Sentence Transformers из карточки. Приведённые метрики относятся к указанной оценке поиска и не гарантируют качество на других наборах данных.

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

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

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

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

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

Открыть на Hugging Face

SentenceTransformer based on BAAI/bge-m3

This is a sentence-transformers model finetuned from BAAI/bge-m3. It maps sentences & paragraphs to a 1024-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: BAAI/bge-m3
  • Maximum Sequence Length: 64 tokens
  • Output Dimensionality: 1024 dimensions
  • Similarity Function: Cosine Similarity

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 64, 'do_lower_case': False}) with Transformer model: XLMRobertaModel 
  (1): Pooling({'word_embedding_dimension': 1024, '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("disi-unibo-nlp/foodex-baseterm-retriever")
# Run inference
sentences = [
    'sauce cream salad dressing based facets desc food production commercial brandname productname known',
    'The group includes any type of Salad dressing. The part consumed/analysed is by default the whole marketed unit or a homogeneous representative portion.',
    'The group includes any type of Seasonings and extracts. The part consumed/analysed is by default the whole marketed unit or a representative portion of it.',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 1024]

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

Evaluation

Metrics

Device Aware Information Retrieval

  • Evaluated with src.utils.eval_functions.DeviceAwareInformationRetrievalEvaluator
MetricValue
cosine_accuracy@10.9617
cosine_accuracy@30.9974
cosine_accuracy@50.9993
cosine_accuracy@101.0
cosine_precision@10.9617
cosine_precision@30.3347
cosine_precision@50.2012
cosine_precision@100.1008
cosine_recall@10.9586
cosine_recall@30.997
cosine_recall@50.9988
cosine_recall@101.0
cosine_ndcg@100.9846
cosine_mrr@100.9793
cosine_map@1000.9791

Training Details

Training Dataset

Unnamed Dataset

  • Size: 553,000 training samples
  • Columns: sentence_0, sentence_1, and sentence_2
  • Approximate statistics based on the first 1000 samples:
    sentence_0sentence_1sentence_2
    typestringstringstring
    detailsmin: 3 tokensmean: 16.88 tokensmax: 57 tokensmin: 11 tokensmean: 55.65 tokensmax: 64 tokensmin: 12 tokensmean: 53.82 tokensmax: 64 tokens
  • Samples:
    sentence_0sentence_1sentence_2
    porridge made with ssmilk waterThe group includes any type of Oat porridge in dry form to be diluted with milk or water. The term refers to e.g. ground oatmeal or rolled oat intended to be used for making oat porridge. The part consumed/analysed is by default the whole or a portion of it representing the observed heterogeneity.The group includes any type of Oat flour (finely milled grains with particles not easy to distinguish). Different grades of refinement and types are all included in this group. The part consumed/analysed is by default the whole or a portion of it representing the observed heterogeneity.
    pepper sweet red raw unprocessed fresh no treatment brand product name with skin peel crust bought chilled fresh department 2 8 cFruiting vegetables from the plant classified under the species Capsicum annuum var. grossum (L.) Sendtner or Capsicum annuum var. longum Bailey, commonly known as Sweet peppers or Bell peppers or Paprika or PeppersLong or Pimento or Pimiento. The part consumed/analysed is not specified. When relevant, information on the part consumed/analysed has to be reported with additional facet descriptors. In case of data collections related to legislations, the default part consumed/analysed is the one defined in the applicable legislation.Spices from the fruits of the plant classified under the species Piper guineense Thonn., commonly known as West African pepper fruit. The part consumed/analysed is not specified. When relevant, information on the part consumed/analysed has to be reported with additional facet descriptors. In case of data collections related to legislations, the default part consumed/analysed is the one defined in the applicable legislation.
    yeasted wheat bread with sourmilk slicedThe group includes any type of bread and rolls made with wheat flour containing high proportion of bran or wholemeal (brown or wholemeal wheat flour). The part consumed/analysed is by default the whole or a portion of it representing the observed heterogeneity.The group includes any type of bread and rolls made with wheat flour containing moderate amounts of bran (semi-brown wheat flour). The part consumed/analysed is by default the whole or a portion of it representing the observed heterogeneity.
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: steps
  • per_device_train_batch_size: 64
  • per_device_eval_batch_size: 64
  • num_train_epochs: 5
  • fp16: True
  • multi_dataset_batch_sampler: round_robin

All Hyperparameters

  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: steps
  • prediction_loss_only: True
  • per_device_train_batch_size: 64
  • per_device_eval_batch_size: 64
  • 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: 5e-05
  • weight_decay: 0.0
  • adam_beta1: 0.9
  • adam_beta2: 0.999
  • adam_epsilon: 1e-08
  • max_grad_norm: 1.0
  • num_train_epochs: 5
  • max_steps: -1
  • lr_scheduler_type: linear
  • lr_scheduler_kwargs: {}
  • warmup_ratio: 0.0
  • warmup_steps: 0
  • 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: True
  • 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}
  • 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: False
  • 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: False
  • torch_compile_backend: None
  • torch_compile_mode: None
  • dispatch_batches: None
  • split_batches: 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: batch_sampler
  • multi_dataset_batch_sampler: round_robin

Training Logs

EpochStepTraining Losscosine_ndcg@10
00-0.2918
0.05795001.23360.7926
0.115710000.65940.8605
0.173615000.55860.8827
0.231520000.50410.8998
0.289325000.47770.9075
0.347230000.46160.9172
0.405035000.44160.9309
0.462940000.42920.9279
0.520845000.41050.9375
0.578650000.40110.9384
0.636555000.40640.9491
0.694460000.38640.9504
0.752265000.38640.9502
0.810170000.38030.9546
0.868075000.38370.9571
0.925880000.37750.9606
0.983785000.37280.9629
1.08641-0.9621
1.041590000.36120.9612
1.099495000.36570.9650
1.1573100000.36130.9659
1.2151105000.35560.9630
1.2730110000.36570.9655
1.3309115000.36450.9697
1.3887120000.3510.9702
1.4466125000.35330.9702
1.5045130000.35050.9723
1.5623135000.34440.9713
1.6202140000.35170.9725
1.6780145000.35350.9735
1.7359150000.3530.9726
1.7938155000.34440.9740
1.8516160000.34550.9785
1.9095165000.34590.9763
1.9674170000.34940.9787
2.017282-0.9790
2.0252175000.34870.9794
2.0831180000.33710.9761
2.1410185000.33150.9788
2.1988190000.33520.9785
2.2567195000.33960.9763
2.3145200000.33560.9776
2.3724205000.33820.9811
2.4303210000.340.9805
2.4881215000.33090.9802
2.5460220000.33530.9797
2.6039225000.34230.9798
2.6617230000.32890.9809
2.7196235000.33330.9803
2.7775240000.3380.9815
2.8353245000.3360.9816
2.8932250000.33460.9813
2.9510255000.33110.9807
3.025923-0.9819
3.0089260000.33020.9824
3.0668265000.32750.9833
3.1246270000.33310.9840
3.1825275000.32310.9839
3.2404280000.33080.9839
3.2982285000.32590.9836
3.3561290000.32520.9838
3.4140295000.3150.9847
3.4718300000.3220.9829
3.5297305000.33230.9837
3.5875310000.33180.9833
3.6454315000.33070.9842
3.7033320000.3310.9841
3.7611325000.32090.9849
3.8190330000.32670.9841
3.8769335000.32140.9846
3.9347340000.32320.9847
3.9926345000.32910.9848
4.034564-0.9844
4.0505350000.32570.9843
4.1083355000.32370.9841
4.1662360000.31770.9837
4.2240365000.33140.9838
4.2819370000.32660.9842
4.3398375000.31840.9841
4.3976380000.31620.9844
4.4555385000.31640.9850
4.5134390000.32090.9849
4.5712395000.32920.9850
4.6291400000.31940.9850
4.6870405000.32120.9850
4.7448410000.33590.9849
4.8027415000.31990.9848
4.8605420000.32570.9847
4.9184425000.31720.9846
4.9763430000.3240.9846
5.043205-0.9846

Framework Versions

  • Python: 3.10.12
  • Sentence Transformers: 3.4.1
  • Transformers: 4.49.0
  • PyTorch: 2.6.0+cu124
  • Accelerate: 1.4.0
  • Datasets: 3.3.1
  • Tokenizers: 0.21.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",
}

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

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
XLMRobertaModel
Ревизия весов
9d25771

0 моделей