/ Модель

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

Контекст
2 048 токенов
Параметры
303 млн
Архитектура
gemma3_text · dense
Базовая модель
embeddinggemma-300m
Библиотека
sentence-transformers
Опубликована
14 сен 2025

dental-gemma-300m-emb

ЭмбеддингиТекст → embedding

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

105скачиваний за 30 дней0лайковвеса обновлены14 сен 2025

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

yasserrmd разработал эту модель Sentence Transformers, дообучив google/embeddinggemma-300m на парах текстов по стоматологии. Модель преобразует предложения и абзацы в плотные векторы размерностью 768 для семантического поиска и сравнения текстов. Для сравнения используется косинусное сходство.

Модель предназначена для поиска релевантных стоматологических материалов, оценки сходства вопросов и ответов, поиска перефразировок, классификации и кластеризации текстов. В README указана максимальная длина последовательности 2048 токенов. Модель принимает текст и выдаёт эмбеддинги; в метаданных указаны архитектура Gemma 3 Text, 302,8 млн параметров и библиотека Sentence Transformers.

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

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

Ограничения

Модель рассчитана на тексты длиной до 2048 токенов. Доступные сведения не подтверждают качество за пределами стоматологической тематики или для иных языков.

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

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

Открыть на Hugging Face

SentenceTransformer based on google/embeddinggemma-300m

This is a sentence-transformers model finetuned from google/embeddinggemma-300m. It maps sentences & paragraphs to a 768-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: google/embeddinggemma-300m
  • Maximum Sequence Length: 2048 tokens
  • Output Dimensionality: 768 dimensions
  • Similarity Function: Cosine Similarity

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 2048, 'do_lower_case': False, 'architecture': 'Gemma3TextModel'})
  (1): Pooling({'word_embedding_dimension': 768, '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): Dense({'in_features': 768, 'out_features': 3072, 'bias': False, 'activation_function': 'torch.nn.modules.linear.Identity'})
  (3): Dense({'in_features': 3072, 'out_features': 768, 'bias': False, 'activation_function': 'torch.nn.modules.linear.Identity'})
  (4): 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("yasserrmd/dental-gemma-300m-emb")
# Run inference
queries = [
    "What is tooth transposition and how does it occur?\n",
]
documents = [
    'Tooth transposition is a condition where two adjacent teeth switch positions in the dental arch. It can be classified as complete transposition when both the crowns and roots of the involved teeth exchange places, or incomplete transposition when only the crowns are transposed. Tooth transposition is more commonly found unilaterally than bilaterally, with a higher prevalence in the maxillary (upper) arch. There is no sex preference for tooth transposition. The condition is not significantly related to other dental anomalies such as missing teeth, peg-shaped or hypoplastic teeth, or impacted teeth. The etiology of tooth transposition is believed to be genetically involved, and it most often occurs at the maxillary canine.',
    'Air polishing offers many advantages to clinicians and their patients. It is less time-consuming and effective in heavily stained surfaces, such as smoking and chlorhexidine stain. This minimizes operator and patient fatigue. Additionally, air polishing treatments can provide superior treatment outcomes in terms of speed and efficacy.',
    'The main forms of treatment for oral and tooth health in government hospitals and health centers in Turkey are extraction, removable prosthodontics, and routine amalgam and composite restorations. Root canal treatment is not generally preferred due to a lack of endodontic equipment and time.',
]
query_embeddings = model.encode_query(queries)
document_embeddings = model.encode_document(documents)
print(query_embeddings.shape, document_embeddings.shape)
# [1, 768] [3, 768]

# Get the similarity scores for the embeddings
similarities = model.similarity(query_embeddings, document_embeddings)
print(similarities)
# tensor([[0.7669, 0.0321, 0.2308]])

Training Details

Training Dataset

Unnamed Dataset

  • Size: 20,000 training samples
  • Columns: sentence_0 and sentence_1
  • Approximate statistics based on the first 1000 samples:
    sentence_0sentence_1
    typestringstring
    detailsmin: 9 tokensmean: 19.66 tokensmax: 49 tokensmin: 22 tokensmean: 87.28 tokensmax: 221 tokens
  • Samples:
    sentence_0sentence_1
    How do prosthodontists in Australia determine the need for placing a post in a tooth restoration?Prosthodontists in Australia consider both the quantity of tooth structure and the type of planned restoration when deciding whether to place a post. The location of the tooth in the arch seems to have less influence on their decision. Molar teeth and mandibular anterior teeth are less likely to receive posts.
    What are some patient-centered outcome measures used to assess the impact of oral health problems on quality of life?There are several patient-centered outcome measures called 'oral health related quality of life measures' (OHQoL) that have been developed to assess the extent to which oral health problems affect a person's quality of life. Two measures that have received particular attention are the Oral Health Impact Profile (OHIP-14) and the UK Oral Health Related Quality of Life (OHQoL-UK) questionnaires. The OHIP-14 measures the adverse impacts of oral conditions on daily life, while the OHQoL-UK incorporates both negative and positive influences on health.
    How does finite element analysis (FEA) contribute to the understanding and improvement of dental implant procedures?Finite element analysis (FEA) is a computational method that can be used to simulate the distribution of stress and strain in the mandibular bone and osseointegrated implants. By considering various variables such as material characteristics, types of loads, and individual bio-subjectivity, FEA studies provide valuable insights into stress distribution and geometry evaluation. This information helps in making informed decisions about implant positioning, inclination, and type to ensure the long-term stability and success of dental implants.
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim",
        "gather_across_devices": false
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • per_device_train_batch_size: 4
  • per_device_eval_batch_size: 4
  • num_train_epochs: 1
  • multi_dataset_batch_sampler: round_robin

All Hyperparameters

  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: no
  • prediction_loss_only: True
  • per_device_train_batch_size: 4
  • per_device_eval_batch_size: 4
  • 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: 1
  • 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}
  • parallelism_config: None
  • deepspeed: None
  • label_smoothing_factor: 0.0
  • optim: adamw_torch_fused
  • 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
  • hub_revision: None
  • 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
  • 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
  • liger_kernel_config: None
  • eval_use_gather_object: False
  • average_tokens_across_devices: False
  • prompts: None
  • batch_sampler: batch_sampler
  • multi_dataset_batch_sampler: round_robin
  • router_mapping: {}
  • learning_rate_mapping: {}

Training Logs

EpochStepTraining Loss
0.15000.0147
0.210000.0142
0.315000.0154
0.420000.0085
0.525000.0052
0.630000.0071
0.735000.0025
0.840000.0028
0.945000.0056
1.050000.0045

Framework Versions

  • Python: 3.12.11
  • Sentence Transformers: 5.1.0
  • Transformers: 4.56.1
  • 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",
}

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…

Класс архитектуры
Gemma3TextModel
Ревизия весов
16e5db9

0 моделей