Spaces:
Sleeping
Sleeping
from dataclasses import dataclass | |
from enum import Enum | |
class Task: | |
benchmark: str | |
metric: str | |
col_name: str | |
# Select your tasks here | |
# --------------------------------------------------- | |
class Tasks(Enum): | |
# task_key in the json file, metric_key in the json file, name to display in the leaderboard | |
emea_ner = Task("emea_ner", "f1", "EMEA") | |
medline_ner = Task("medline_ner", "f1", "MEDLINE") | |
cas1_ner = Task("cas1_ner", "f1", "CAS1") | |
cas2_ner = Task("cas2_ner", "f1", "CAS2") | |
NUM_FEWSHOT = 0 # Change with your few shot | |
# --------------------------------------------------- | |
# Your leaderboard name | |
TITLE = """<h1 align="center" id="space-title">🏥 Leaderboard NLP Biomédical Français</h1>""" | |
# What does your leaderboard evaluate? | |
INTRODUCTION_TEXT = """ | |
Ce leaderboard évalue les modèles NLP français sur des tâches de reconnaissance d'entités nommées (NER) biomédicales. | |
Nous nous concentrons sur les modèles de type BERT avec des plans d'extension vers d'autres architectures. | |
**Tâches actuelles :** | |
- **EMEA** : Reconnaissance d'entités sur textes médicaux français de l'EMEA | |
- **MEDLINE** : Reconnaissance d'entités sur résumés médicaux français de MEDLINE | |
Les modèles sont évalués par fine-tuning sur chaque tâche. | |
""" | |
# Which evaluations are you running? how can people reproduce what you have? | |
LLM_BENCHMARKS_TEXT = f""" | |
## Comment ça fonctionne | |
Nous évaluons les modèles en les **fine-tunant** sur des tâches de NER médical français : | |
**Paramètres de fine-tuning :** | |
- **Optimiseur** : AdamW | |
- **Taux d'apprentissage** : 5e-5 | |
- **Scheduler** : Cosine avec redémarrages | |
- **Étapes** : 2000 | |
- **Batch Size** : 4 | |
- **Accumulation de gradient** : 4 étapes | |
- **Longueur max** : 512 tokens | |
- **Sortie** : Couche linéaire simple | |
**Évaluation** : Utilise seqeval avec schéma IOB2 pour le **micro F1**, précision et rappel au niveau des entités. | |
## Reproductibilité | |
Les résultats sont obtenus par fine-tuning approprié, pas par évaluation zero-shot. Chaque modèle est fine-tuné indépendamment sur chaque tâche. | |
**Datasets :** | |
Les datasets utilisés sont basés sur des corpus annotés français pour la reconnaissance d'entités biomédicales. | |
""" | |
EVALUATION_QUEUE_TEXT = """ | |
## Avant de soumettre un modèle | |
### 1) Assurez-vous que votre modèle est compatible avec les AutoClasses : | |
```python | |
from transformers import AutoTokenizer, AutoModelForTokenClassification | |
tokenizer = AutoTokenizer.from_pretrained("nom_de_votre_modèle") | |
model = AutoModelForTokenClassification.from_pretrained("nom_de_votre_modèle") | |
``` | |
### 2) Exigences du modèle : | |
- Doit être un modèle fine-tuné pour la classification de tokens (pas juste un modèle de base) | |
- Devrait être entraîné sur des données NER médicales françaises | |
- Doit être publiquement disponible sur le Hub Hugging Face | |
- Préférez le format safetensors pour un chargement plus rapide | |
### 3) Performance attendue : | |
- Les modèles de base sans fine-tuning obtiendront des scores très bas (~0.02 F1) | |
- Les modèles fine-tunés devraient atteindre des scores significativement plus élevés | |
### 4) Recommandations pour la carte du modèle : | |
- Spécifiez le dataset d'entraînement utilisé | |
- Incluez les détails de l'architecture du modèle | |
- Ajoutez les métriques de performance si disponibles | |
- Utilisez une licence ouverte | |
## Dépannage | |
Si votre modèle échoue à l'évaluation : | |
1. Vérifiez qu'il se charge correctement avec AutoModelForTokenClassification | |
2. Vérifiez qu'il est entraîné pour la classification de tokens | |
3. Assurez-vous que le modèle est public et accessible | |
""" | |
CITATION_BUTTON_LABEL = "Copiez le snippet suivant pour citer ces résultats" | |
CITATION_BUTTON_TEXT = r""" | |
""" | |