/ Модель

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

Контекст
514 токенов
Параметры
81,2 млн
Лицензия
MIT
Архитектура
camembert · dense
Базовая модель
crossencoder-distilcamembert-mmarcoFR
Библиотека
transformers
Опубликована
2 сен 2026

camembert-pharmacy-reranker-distil

Классификация текстаТекст → label3 профессии

Французский cross-encoder на базе DistilCamemBERT переупорядочивает аптечные карточки и сведения о лекарствах по релевантности запросу.

33скачиваний за 30 дней0лайковвеса обновлены2 сен 2026

Бенчмарки

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

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

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

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

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

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

ymelka разработала дообученный французский cross-encoder на базе DistilCamemBERT для переупорядочивания результатов поиска по аптечным карточкам и лекарствам. Модель предназначена для короткого списка кандидатов, найденного отдельным поисковым модулем: она оценивает релевантность карточек запросам о дженериках, дозировке, лекарственной форме, способе применения и подходящей возрастной группе. Размер в метаданных — 81,2 млн параметров; README указывает около 68 млн. Архитектура — CamemBERT для классификации последовательностей, формат весов — safetensors; контекст модели по метаданным — 514 токенов, а в рецепте обучения и примере использования задано ограничение 256 токенов. Модель лицензирована по MIT.

В описанном тесте на аптечных данных она улучшила метрики переупорядочивания относительно родительской модели, особенно для запросов о замене препарата. Результаты ограничены условиями оценки: проверялись преимущественно французские аптечные карточки и запросы, а лекарственные сущности частично пересекались между обучением и тестом. Модель не проверена для оценки противопоказаний, взаимодействий, беременности, почечных или печёночных состояний и не предназначена для принятия клинических решений.

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

  • Ранжирование карточек аптечных препаратов по запросу о дженерике
  • Поиск подходящей дозировки или лекарственной формы
  • Подбор препарата по способу применения
  • Поиск вариантов препарата для ребёнка или взрослого
  • Отсев карточек с той же молекулой, но неподходящим вариантом

Ограничения

Оценка не подтверждает надёжность для противопоказаний, взаимодействий, беременности, почечных и печёночных состояний; модель не предназначена для клинических решений. Тестовый набор имел пересечения лекарственных сущностей с обучением, а некоторые направления оценки могли опираться на лексические совпадения.

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

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

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

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

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

Открыть на Hugging Face

camembert-pharmacy-reranker-distil

French pharmacy / drug CrossEncoder reranker (~68M DistilCamemBERT). This is not a universal medical reranker and not a SOTA claim.

  • HF repo: ymelka/camembert-pharmacy-reranker-distil
  • Release tag: exp-037-step-01948
  • Weights SHA256 (model.safetensors): 815637b9664e85d9196e0687e3befd07727bc221e1b45eb71d1f649a83ed4051

Architecture

  • DistilCamemBERT CrossEncoder, ~68M parameters (CamembertForSequenceClassification, num_labels=1)
  • max_length = 256 at train and eval
  • CPU-friendly (same cost class as the parent)

Parent

antoinelouis/crossencoder-distilcamembert-mmarcoFR
revision = 9447ae56ace29839d8bf24f740abdf48ab0a7690
license = MIT

Parent training data: French mMARCO (unicamp-dl/mmarco). Backbone: cmarkea/distilcamembert-base.

Task

Rerank French pharmacy specialty cards (BDPM) for queries such as substitution (générique de …), dosage, formulation, route, population (enfant/adulte), and same-molecule wrong variant.

Training (exp-037)

experiment     = exp-037-v3-pharmacy-distil-mixture-v5
data           = pharmacy-mixture-v5 (~14.7k query groups, public BDPM only)
loss           = pairwise
epochs         = 1
lr             = 2e-6
freeze_layers  = 4 (bottom encoder layers)
max_length     = 256
selected ckpt  = step-01948

No private Wellchat text. No PARHAF / medical-QCM mix in this recipe.

How to use

from transformers import AutoModelForSequenceClassification, AutoTokenizer
import torch

repo = "ymelka/camembert-pharmacy-reranker-distil"
rev = "exp-037-step-01948"
tok = AutoTokenizer.from_pretrained(repo, revision=rev)
model = AutoModelForSequenceClassification.from_pretrained(repo, revision=rev)
model.eval()

pairs = [
    ("générique de Doliprane 500 mg", "PARACETAMOL XYZ 500 mg, comprimé"),
    ("générique de Doliprane 500 mg", "IBUPROFENE ABC 400 mg, comprimé"),
]
enc = tok(pairs, padding=True, truncation=True, max_length=256, return_tensors="pt")
with torch.no_grad():
    scores = model(**enc).logits.squeeze(-1)
print(scores)

Or sentence_transformers.CrossEncoder(repo, revision=rev, max_length=256).

Benchmarks

Frozen BDPM evaluator (RAW_EXACT_GOLD + SEMANTIC_MULTI_POSITIVE). Holdout opened once after preregistration.

splitmetricparent Distilthis model
pharmacy_dev N=627RAW P@10.7610.797
pharmacy_devSEMANTIC P@10.8090.884
pharmacy_dev substitutionSEMANTIC P@10.4490.936
pharmacy_final_holdout N=157RAW P@10.8340.873
pharmacy_final_holdoutSEMANTIC P@10.8600.917
SyntecRerankingMAP0.7840.792
AlloprofRerankingMAP@10000.58100.5811
MIRACL-frnDCG@100.4690.447

Holdout SEMANTIC paired bootstrap 10k, seed 42: Δ +0.057, RESCUE 14 / DESTROY 5, 95% CI [0.006, 0.115] excludes 0.

Provenance / licenses

artefactlicense / source
this fine-tune (weights)MIT (inherits parent)
parent CrossEncoderMIT — Antoine Louis, mMARCO-FR
DistilCamemBERTMIT — cmarkea/distilcamembert-base
pharmacy-mixture-v5 / pharmacy-ranking-v1BDPM dump 2026-08-31, Licence Ouverte / CADA — cite base-donnees-publique.medicaments.gouv.fr

No Wellchat private queries, traces, or MAX_DATA.

Limitations (read these)

  • Holdout is an unseen query / unseen slate holdout, not an unseen-drug entity holdout (cis_overlap_dev_holdout = 280/361).
  • Generic-group overlap exists between train and holdout (69/92 CIS_GENER groups).
  • Contraindication, interactions, pregnancy, renal, hepatic: not validated (tiny or empty N).
  • Some benchmark axes are lexical shortcuts (indication, adverse_effect, parts of drug_identity).
  • MIRACL-fr Δ ≈ −0.022 nDCG@10 vs parent (not an E2-style collapse; Syntec/Alloprof held).
  • Not a universal French medical reranker.
  • Not a SOTA claim.

Independent qrel audit: iux2019/wellchat PR #55 (VALID_WITH_QREL_BUGS). Main public metric freeze: BDPM substitution siblings + population side. Adversarial overlay additionally promotes some formulation/route same-substance other-dose positives.

Intended use

Rerank a short candidate slate of French specialty cards. Keep a first-stage retriever. Do not use as a clinical decision system.

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
CamembertForSequenceClassification
Ревизия весов
30abb1d

0 моделей