Skip to content

Cour-de-cassation/juritools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

juritools

Package permettant la pseudonymisation des décisions de justice des bases JURINET et JURICA ainsi que celles annotées via le logiciel de pseudonymisation de la cour de cassation.

Installation

Cet utilitaire fonctionne sous Python 3.9 . Pour l'installer il faut effectuer les commandes suivantes :

git clone https://github.com/Cour-de-cassation/juritools.git
cd juritools
pip install .

Utilisation

Prediction

Lorsque vous avez fini d'entraîner votre classifieur, sérialisé dans un fichier pt, vous pouvez l'utiliser sur n'importe quelle décision de justice provenant de la BDD Jurinet ou Jurica afin d'en extraire les entités d'intérêt. Pour ce faire, vous aurez besoin de précisier d'une part le modèle sérialisé et d'autre part le tokenizer que vous souhaitez appliquer, de préférence celui utilisé pour dans la phase de preprocessing.

from juritools.predict import load_ner_model, JuriTagger
from jurispacy_tokenizer import JuriSpacyTokenizer

# Load your model and the tokenizer used in juritools library
model = load_ner_model('your/classifier/model.pt')
tokenizer = JuriSpacyTokenizer()

# Instantiate your JuriTagger object with the model and the tokenizer
juritag = JuriTagger(tokenizer, model)
# Predict entities of interest on a court decision
juritag.predict(text)

Les prédictions obtenues sont accessibles via la méthode juritag.get_entity_json_from_flair_sentences(). Elles sont égalements disponibles dans l'attribut juritag.flair_sentences

Postprocessing

Une fois les entitiés obtenues à l'aide du modèle d'apprentissage automatique, nous pouvons utiliser un certain nombre de méthodes pour débusquer les entités non détectées par le modèle ainsi que pour lever des doutes sur la qualtié des prédictions. Plusieurs classes héritent de la classe PostProcess pour effectuer ces traitement. Cette classe prend en entrée une liste des entités (de type NamedEntity), une liste de vérifications manuelles à effectuer (de type str) et les métadonnées associées à la décisions (de type pandas DataFrame), si celles-ci existent. Les classes héritées sont les suivantes :

  • PostProcessFromText prend en entrée le texte de la décision de justice ;
  • PostProcessFromSents prend en entrée les phrases flair (de type flair Sentence) provenant de la classe JuriTagger après prédiction ;
  • PostProcessFromEntities.
from juritools.postprocessing import PostProcessFromText, PostProcessFromEntities, PostProcessFromSents
"""
Instantiate your PostProcess object with the text of the court decision,
the output of juritag.get_entity_json(), if the text is in a xml format,
and the metadata store in a pandas DataFrame if they exist
"""
predictions = get_entity_json_from_flair_sentences()
postpro_text = PostProcessFromText(text, predictions, manual_checklist=[], metadata=None)
postpro_sents = PostProcessFromSents(juritag.flair_sentences, postpro_text.entities, manual_checklist=[], metadata=None)
postpro_entities = PostProcessFromEntities(postpro_ents.entities, manual_checklist=[], metadata=None)

Methods available are as follows :

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages