bourdoiscatie commited on
Commit
2513305
·
verified ·
1 Parent(s): c2845f7

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +21 -5
app.py CHANGED
@@ -5,8 +5,8 @@ from PIL import Image
5
  import re
6
 
7
  st.sidebar.header("**Instructions**")
8
- st.sidebar.markdown("Démonstrateur des modèles [NERmembert](https://hf.co/collections/CATIE-AQ/french-ner-pack-658aefafe3f7a2dcf0e4dbb4) entraînés sur 385 000 à 420 000 données en français en fonction de la configuration. Les modèles sont capables d'étiquetter les entités LOC (Localisations), PER (Personnalités), ORG (Organisations) et MISC (Divers). Ils sont disponibles en version *base* (110M de paramètres) et *large* (335M de paramètres). Pour les essayer, sélectionnez la version de votre choix ci-dessous, puis renseignez un texte. Enfin appuyez sur le bouton « Appliquer le modèle » pour observer la réponse trouvée par le modèle. Pour en savoir plus sur ces modèles, vous pouvez lire l'[article de blog](https://blog.vaniila.ai/NER/) détaillant la démarche suvie.")
9
- version = st.sidebar.radio("Choix de la version du modèle :", ["version 4 entités base", "version 4 entités large", "version 3 entités base", "version 3 entités large"])
10
  st.sidebar.markdown("---")
11
  st.sidebar.markdown("Ce modèle a été entraîné via la plateforme [*Vaniila*](https://www.vaniila.ai/) du [CATIE](https://www.catie.fr/).")
12
 
@@ -16,18 +16,34 @@ st.sidebar.image(image, caption=None, width=None, use_column_width=None, clamp=F
16
 
17
  @st.cache_resource
18
  def load_model(version,text):
19
- if version == "version 3 entités base":
20
  ner = pipeline('token-classification', model='CATIE-AQ/NERmembert-base-3entities', tokenizer='CATIE-AQ/NERmembert-base-3entities', aggregation_strategy="simple")
21
  result = ner(text)
22
  return result
23
- if version == "version 3 entités large":
 
 
 
 
 
 
 
 
24
  ner = pipeline('token-classification', model='CATIE-AQ/NERmembert-large-3entities', tokenizer='CATIE-AQ/NERmembert-large-3entities', aggregation_strategy="simple")
25
  result = ner(text)
26
  return result
27
- if version == "version 4 entités base":
28
  ner = pipeline('token-classification', model='CATIE-AQ/NERmembert-base-4entities', tokenizer='CATIE-AQ/NERmembert-base-4entities', aggregation_strategy="simple")
29
  result = ner(text)
30
  return result
 
 
 
 
 
 
 
 
31
  else:
32
  ner = pipeline('token-classification', model='CATIE-AQ/NERmembert-large-4entities', tokenizer='CATIE-AQ/NERmembert-large-4entities', aggregation_strategy="simple")
33
  result = ner(text)
 
5
  import re
6
 
7
  st.sidebar.header("**Instructions**")
8
+ st.sidebar.markdown("Démonstrateur du modèle [NERmemBERT](https://hf.co/collections/CATIE-AQ/french-ner-pack-658aefafe3f7a2dcf0e4dbb4) entraîné sur 385 000 à 420 000 données en français en fonction de la configuration. Il est capable d'étiquetter les entités LOC (Localisations), PER (Personnalités), ORG (Organisations) et MISC (Divers). Il est disponible en huit versions : NERmemBERT1-3entities-base (110M de paramètres, contexte de 512 tokens), NERmemBERT2-3entities-base (111M de paramètres, contexte de 1024 tokens), NERmemBERTa-3entities (111M de paramètres, contexte de 1024 tokens), NERmemBERT1-3entities-large (336M de paramètres, contexte de 512 tokens), NERmemBERT1-4entities-base (110M de paramètres, contexte de 512 tokens), NERmemBERT2-4entities-base (111M de paramètres, contexte de 1024 tokens), NERmemBERTa-4entities (111M de paramètres, contexte de 1024 tokens), NERmemBERT1-4entities-large (336M de paramètres, contexte de 512 tokens). Pour utiliser l'application, sélectionnez la version de votre choix ci-dessous, puis renseignez un texte. Enfin appuyez sur le bouton « Appliquer le modèle » pour observer la réponse trouvée par le modèle. Pour en savoir plus sur ces modèles, vous pouvez lire l'[article de blog](https://blog.vaniila.ai/NER/) détaillant la démarche suvie.")
9
+ version = st.sidebar.radio("Choix de la version du modèle :", ["NERmemBERT1-3entities-base", "NERmemBERT2-3entities-base", "NERmemBERTa-3entities", "NERmemBERT1-3entities-large","NERmemBERT1-4entities-base", "NERmemBERT2-4entities-base", "NERmemBERTa-4entities", "NERmemBERT1-4entities-large"])
10
  st.sidebar.markdown("---")
11
  st.sidebar.markdown("Ce modèle a été entraîné via la plateforme [*Vaniila*](https://www.vaniila.ai/) du [CATIE](https://www.catie.fr/).")
12
 
 
16
 
17
  @st.cache_resource
18
  def load_model(version,text):
19
+ if version == "NERmemBERT1-3entities-base:
20
  ner = pipeline('token-classification', model='CATIE-AQ/NERmembert-base-3entities', tokenizer='CATIE-AQ/NERmembert-base-3entities', aggregation_strategy="simple")
21
  result = ner(text)
22
  return result
23
+ if version == "NERmemBERT2-3entities-base:
24
+ ner = pipeline('token-classification', model='CATIE-AQ/NERmembert2-3entities', tokenizer='CATIE-AQ/NERmembert2-3entities', aggregation_strategy="simple")
25
+ result = ner(text)
26
+ return result
27
+ if version == "NERmemBERTa-3entities-base:
28
+ ner = pipeline('token-classification', model='CATIE-AQ/NERmemberta-3entities', tokenizer='CATIE-AQ/NERmemberta-3entities', aggregation_strategy="simple")
29
+ result = ner(text)
30
+ return result
31
+ if version == "NERmemBERT1-3entities-large":
32
  ner = pipeline('token-classification', model='CATIE-AQ/NERmembert-large-3entities', tokenizer='CATIE-AQ/NERmembert-large-3entities', aggregation_strategy="simple")
33
  result = ner(text)
34
  return result
35
+ if version == "NERmemBERT1-4entities-base:
36
  ner = pipeline('token-classification', model='CATIE-AQ/NERmembert-base-4entities', tokenizer='CATIE-AQ/NERmembert-base-4entities', aggregation_strategy="simple")
37
  result = ner(text)
38
  return result
39
+ if version == "NERmemBERT2-4entities-base:
40
+ ner = pipeline('token-classification', model='CATIE-AQ/NERmembert2-4entities', tokenizer='CATIE-AQ/NERmembert2-4entities', aggregation_strategy="simple")
41
+ result = ner(text)
42
+ return result
43
+ if version == "NERmemBERTa-4entities-base:
44
+ ner = pipeline('token-classification', model='CATIE-AQ/NERmemberta-4entities', tokenizer='CATIE-AQ/NERmemberta-4entities', aggregation_strategy="simple")
45
+ result = ner(text)
46
+ return result
47
  else:
48
  ner = pipeline('token-classification', model='CATIE-AQ/NERmembert-large-4entities', tokenizer='CATIE-AQ/NERmembert-large-4entities', aggregation_strategy="simple")
49
  result = ner(text)