/ Модель

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

Контекст
512 токенов
Параметры
40 млн
Архитектура
bert · dense
Базовая модель
gte-small
Библиотека
sentence-transformers
Опубликована
21 авг 2024

gte-small-llama

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

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

104скачиваний за 30 дней0лайковвеса обновлены21 авг 2024

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Hemg/gte-small-llama — дообученная Hemg на базе thenlper/gte-small модель Sentence Transformers для получения плотных текстовых эмбеддингов. Она кодирует предложения и абзацы в векторы размерности 384; архитектура включает BERT-трансформер, усреднение токенов и нормализацию векторов. Максимальная длина входа — 512 токенов, сходство текстов можно оценивать по косинусному сходству.

Модель предназначена для семантического поиска, сравнения текстов, поиска перефразировок, кластеризации и классификации текстов на основе эмбеддингов. В README приведены обучающие пары из 3 327 примеров и настройка обучения с MultipleNegativesRankingLoss. Лицензия в предоставленных данных не указана.

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

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

Ограничения

Контекст ограничен 512 токенами; качество зависит от соответствия текстов и сценария обучения, а в README приведены обучающие данные и метрики без подробной оценки на конкретных прикладных наборах.

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

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

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

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

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

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

Открыть на Hugging Face

SentenceTransformer based on thenlper/gte-small

This is a sentence-transformers model finetuned from thenlper/gte-small. It maps sentences & paragraphs to a 384-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: thenlper/gte-small
  • Maximum Sequence Length: 512 tokens
  • Output Dimensionality: 384 tokens
  • Similarity Function: Cosine Similarity

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: 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("sentence_transformers_model_id")
# Run inference
sentences = [
    '**Question 1**',
    '89Fisika SMA/MA XII\n2. Dua muatan listrik q1 = +8 x 10-9 C dan q2 = + 16 x 10-9 C\nterpisah pada jarak 12 cm. Tentukan di mana muatan q3\nharus diletakkan agar gaya Coulomb pada muatan q3\nsama dengan nol!\n3. Sebuah segitiga sama sisi ABC mempunyai panjang sisi\n6 cm. Apabila pada masing-masing titik sudut segitiga\nberturut-turut terdapat muatan listrik sebesar  qA = +8 C,\nqB = -9 C, dan qC = +3 C, tentukan besarnya gaya Cou-\nlomb pada titik sudut C!\n(a) Muatan negatif (b) Muatan positif\nGambar 3.3  Garis-garis gaya listrik(c) Antara muatan positif dan muatan negatifB. Medan Listrik dan Kuat Medan Listrik\nMedan listrik  didefinisikan sebagai ruangan di sekitar\nbenda bermuatan listrik, di mana jika sebuah bendabermuatan listrik berada di dalam ruangan tersebut akanmendapat gaya listrik (gaya Coulomb). Medan listrik termasukmedan vektor, sehingga untuk menyatakan arah medan listrikdinyatakan sama dengan arah gaya yang dialami oleh muatanpositif jika berada dalam sembarang tempat di dalam medantersebut. Arah medan listrik yang ditimbulkan oleh  bendabermuatan positif dinyatakan keluar dari benda, sedangkanarah medan listrik yang ditimbulkan oleh benda bermuatannegatif dinyatakan masuk ke benda.\nUntuk menggambarkan medan listrik digunakan garis-\ngaris gaya listrik . Garis-garis gaya listrik yaitu garis lengkung\nyang dibayangkan merupakan lintasan yang ditempuh olehmuatan positif yang bergerak dalam medan listrik. Garis gayalistrik tidak mungkin akan berpotongan, sebab garis gayalistrik merupakan garis khayal yang berawal dari bendabermuatan positif dan akan berakhir di benda yang bermuatannegatif. Gambar (3.3)  menggambarkan garis-garis gaya listrik\ndi sekitar benda bermuatan listrik.',
    'Fisika SMA/MA XII 230yang diusulkan oleh Einstein. Percobaan Compton cukup\nsederhana yaitu sinar X monokromatik (sinar X yang memilikipanjang gelombang tunggal) dikenakan pada keping tipisberilium sebagai sasarannya. Kemudian untuk mengamatifoton dari sinar X dan elektron yang terhambur dipasangdetektor. Sinar X yang telah menumbuk elektron akankehilangan sebagian energinya yang kemudian terhamburdengan sudut hamburan sebesar T terhadap arah semula.\nBerdasarkan hasil pengamatan ternyata sinar X yang ter-hambur memiliki panjang gelombang yang lebih besar daripanjang gelombang sinar X semula. Hal ini dikarenakansebagian energinya terserap oleh elektron. Jika energi fotonsinar X mula-mula hf dan energi foton sinar X yang terhambur\nmenjadi ( hf – hf ’) dalam hal ini f > f’, sedangkan panjang\ngelombang yang terhambur menjadi tambah besar yaitu O > Oc.\nDengan menggunakan hukum ke-\nkekalan momentum dan kekekalan energi\nCompton berhasil menunjukkan bahwaperubahan panjang gelombang foton\nterhambur dengan panjang gelombang\nsemula, yang memenuhi persamaan :\n             .... (7.6)\ndengan\nO = panjang gelombang sinar X sebelum tumbukan (m)\nOc = panjang gelombang sinar X setelah tumbukan (m)\nh = konstanta Planck (6,625 × 10-34 Js)\nmo= massa diam elektron (9,1 × 10-31 kg)\nc = kecepatan cahaya (3 × 108 ms-1)\nT =  sudut hamburan sinar X terhadap arah semula (derajat\natau radian)\nBesaran \n  sering disebut dengan panjang gelombang\nCompton . Jadi jelaslah sudah bahwa dengan hasil pengamatan\nCompton tentang hamburan foton dari sinar X menunjukkan\nbahwa foton dapat dipandang sebagai partikel, sehingga mem-perkuat teori kuantum yang mengatakan bahwa cahaya mem-punyai dua sifat, yaitu cahaya dapat sebagai gelombang  dan\ncahaya dapat bersifat sebagai partikel  yang sering disebut\nsebagai dualime gelombang cahaya .\nTFoton\nterhambur\nElektron terhamburFoton datang\nElektrondiamhfc\nhf\nGambar 7.7 Skema percobaan Compton untuk\nmenyelidiki tumbukan foton dan elektron',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 384]

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

Evaluation

Metrics

Information Retrieval

MetricValue
cosine_accuracy@10.0878
cosine_accuracy@30.1271
cosine_accuracy@50.1524
cosine_accuracy@100.1903
cosine_precision@10.0878
cosine_precision@30.0424
cosine_precision@50.0305
cosine_precision@100.019
cosine_recall@10.0878
cosine_recall@30.1271
cosine_recall@50.1524
cosine_recall@100.1903
cosine_ndcg@100.1332
cosine_mrr@100.1156
cosine_map@1000.1252
dot_accuracy@10.0881
dot_accuracy@30.1274
dot_accuracy@50.1515
dot_accuracy@100.1894
dot_precision@10.0881
dot_precision@30.0425
dot_precision@50.0303
dot_precision@100.0189
dot_recall@10.0881
dot_recall@30.1274
dot_recall@50.1515
dot_recall@100.1894
dot_ndcg@100.133
dot_mrr@100.1157
dot_map@1000.1253

Training Details

Training Dataset

Unnamed Dataset

  • Size: 3,327 training samples
  • Columns: sentence_0 and sentence_1
  • Approximate statistics based on the first 1000 samples:
    sentence_0sentence_1
    typestringstring
    detailsmin: 7 tokensmean: 12.11 tokensmax: 61 tokensmin: 2 tokensmean: 437.69 tokensmax: 512 tokens
  • Samples:
    sentence_0sentence_1
    Here are two questions based on the context:Pusat PerbukuanDepartemen Pendidikan Nasional
    What type of institution is Pusat Perbukuan?Pusat PerbukuanDepartemen Pendidikan Nasional
    I don't see any context information provided. It seems there's nothing above the horizontal lines.
  • 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: 10
  • per_device_eval_batch_size: 10
  • num_train_epochs: 16
  • 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: 10
  • per_device_eval_batch_size: 10
  • 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
  • num_train_epochs: 16
  • 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: 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}
  • 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: False
  • hub_always_push: False
  • gradient_checkpointing: False
  • gradient_checkpointing_kwargs: None
  • include_inputs_for_metrics: False
  • 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
  • eval_use_gather_object: False
  • batch_sampler: batch_sampler
  • multi_dataset_batch_sampler: round_robin

Training Logs

EpochStepTraining Lossdot_map@100
0.150250-0.0576
0.3003100-0.0621
0.4505150-0.0640
0.6006200-0.0683
0.7508250-0.0671
0.9009300-0.0702
1.0333-0.0724
1.0511350-0.0726
1.2012400-0.0751
1.3514450-0.0774
1.50155002.14130.0815
1.6517550-0.0851
1.8018600-0.0831
1.9520650-0.0852
2.0666-0.0859
2.1021700-0.0890
2.2523750-0.0872
2.4024800-0.0897
2.5526850-0.0929
2.7027900-0.0924
2.8529950-0.0948
3.0999-0.0975
3.003010001.95120.0977
3.15321050-0.0993
3.30331100-0.0996
3.45351150-0.1033
3.60361200-0.1037
3.75381250-0.1055
3.90391300-0.1039
4.01332-0.1045
4.05411350-0.1064
4.20421400-0.1068
4.35441450-0.1074
4.504515001.80160.1090
4.65471550-0.1107
4.80481600-0.1111
4.95501650-0.1112
5.01665-0.1115
5.10511700-0.1117
5.25531750-0.1135
5.40541800-0.1124
5.55561850-0.1138
5.70571900-0.1167
5.85591950-0.1150
6.01998-0.1157
6.006020001.61290.1164
6.15622050-0.1185
6.30632100-0.1166
6.45652150-0.1152
6.60662200-0.1173
6.75682250-0.1185
6.90692300-0.1141
7.02331-0.1153
7.05712350-0.1154
7.20722400-0.1186
7.35742450-0.1163
7.507525001.45730.1171
7.65772550-0.1200
7.80782600-0.1190
7.95802650-0.1182
8.02664-0.1197
8.10812700-0.1195
8.25832750-0.1210
8.40842800-0.1199
8.55862850-0.1188
8.70872900-0.1207
8.85892950-0.1178
9.02997-0.1178
9.009030001.29470.1185
9.15923050-0.1207
9.30933100-0.1193
9.45953150-0.1203
9.60963200-0.1206
9.75983250-0.1233
9.90993300-0.1180
10.03330-0.1205
10.06013350-0.1208
10.21023400-0.1206
10.36043450-0.1184
10.510535001.20410.1212
10.66073550-0.1192
10.81083600-0.1219
10.96103650-0.1197
11.03663-0.1196
11.11113700-0.1219
11.26133750-0.1224
11.41143800-0.1199
11.56163850-0.1209
11.71173900-0.1211
11.86193950-0.1241
12.03996-0.1209
12.012040001.1060.1217
12.16224050-0.1223
12.31234100-0.1222
12.46254150-0.1208
12.61264200-0.1213
12.76284250-0.1220
12.91294300-0.1231
13.04329-0.1220
13.06314350-0.1229
13.21324400-0.1236
13.36344450-0.1217
13.513545001.05980.1235
13.66374550-0.1235
13.81384600-0.1235
13.96404650-0.1225
14.04662-0.1234
14.11414700-0.1246
14.26434750-0.1244
14.41444800-0.1237
14.56464850-0.1244
14.71474900-0.1253
14.86494950-0.1244
15.04995-0.1253
15.015050001.01040.1248
15.16525050-0.1253

Framework Versions

  • Python: 3.11.0
  • Sentence Transformers: 3.0.1
  • Transformers: 4.44.0
  • PyTorch: 2.4.0+cu124
  • Accelerate: 0.33.0
  • Datasets: 2.21.0
  • Tokenizers: 0.19.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",
}

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…

Класс архитектуры
BertModel
Ревизия весов
88b57cf

0 моделей