File size: 1,126 Bytes
4d9dd77
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import streamlit as st
from transformers import AutoModelForTokenClassification, pipeline

# Chargement du modèle de NER
model = AutoModelForTokenClassification.from_pretrained("roberta-base-ner")

# Définition de la pipeline
pipeline = pipeline("ner", model=model)

# Fonction pour traiter un document
def traiter_document(document):
    # Tokenisation du document
    tokens = model.tokenizer(document)

    # Prédiction des entités nommées
    predictions = pipeline(tokens)

    # Renvoi des entités nommées
    return predictions

# Fonction pour charger un document
def charger_document(fichier):
    # Ouverture du fichier
    with open(fichier, "r") as f:
        document = f.read()

    return document

# Affichage de l'application
st.title("Named Entity Recognition")

# Chargement du document
document = charger_document(st.file_uploader("Choisissez un document"))

# Traitement du document
predictions = traiter_document(document)

# Affichage des entités nommées
for prediction in predictions:
    st.write(f"**Entité:** {prediction['entity_type']}")
    st.write(f"**Texte:** {prediction['token']}")