Article-700 / app.py
ccdv's picture
first
d03f460
raw
history blame
No virus
5.23 kB
import gradio as gr
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer, pipeline
import os
from modeling_lsg_mbart import *
example_1 = """
RÉPUBLIQUE FRANCAISE
AU NOM DU PEUPLE FRANCAIS
COUR D'APPEL
DE BASSE-TERRE
MISE EN ETAT
ORDONNANCE DE MISE EN ETAT
DU 19 DECEMBRE 2022
RG N : No RG 22/00205 - No Portalis DBV7-V-B7G-DNFD
Chambre Sociale
Jugement Au fond, origine Conseil de Prud'hommes - Formation paritaire de POINTE A PITRE, décision attaquée en date du 09 Février 2022, enregistrée sous le no 20/00132
Nous, Rozenn Le Goff, magistrat chargé de la mise en état, assistée de Mme Valérie Souriant, greffière,
Vu la procédure en instance d'appel inscrite au répertoire général sous le numéro
No RG 22/00205 - No Portalis DBV7-V-B7G-DNFD
Madame [W], [C] [P]
demeurant [Adresse 4]
[Adresse 4],
[Adresse 4]
[Localité 3]
Représentée par Maître Nadia BOUCHER, avocat au barreau de GUADELOUPE/ST MARTIN/ST BART (Toque 18)
APPELANTE
ASSOCIATION KALITE POU VIV QUALITÉ DE
VIE EN GUADELOUPE KALITÉPOUVIV
[Adresse 1]
[Adresse 1]
[Localité 2]
Représentée par Maître Sully LACLUSE de la
SELARL LACLUSE & CESAR, avocat au barreau
de GUADELOUPE/ST MARTIN/ST BART (Toque 2)
INTIMEE
Vu la déclaration d'appel reçue le 28 février 2022 de Mme [W] [P] à l'encontre du jugement rendu le 9 février 2022 par le conseil de prud'hommes de Pointe-à-Pitre,
Vu les conclusions de désistement d'appel de Mme [W] [P], reçues par voie électronique les 17 mai et 15 juin 2022,
Vu les conclusions responsives notifiées par l'association Kalité pou viv par voie électronique le 14 juin 2022, sollicitant la condamnation de Mme [W] [P] au paiement d'une somme de 3000 euros sur le fondement de l'article 700 du code de procédure civile,
Vu les articles 400, 401,403, 405 et 916 du code de procédure civile,
Attendu qu'il n'apparaît pas été inéquitable de laisser à la charge de chacune des partis les frais qu'elles ont engagés et qui ne sont pas compris dans les dépens,
PAR CES MOTIFS
Nous, magistrat chargé de la mise en état, statuant publiquement par mise à disposition au greffe, contradictoirement,
CONSTATONS le désistement d'appel de Mme [W] [P],
DISONS que la procédure sera classée sans délai par le Secrétariat-Greffe et que copie de la présente ordonnance sera adressée à l'avocat de l'appelante et à celui de l'intimée,
DISONS lieu à application de l'article 700 du code de procédure civile,
LAISSONS les dépens à la charge de l'appelante.
La greffière, Le magistrat chargé de la mise en état,
"""
auth_token = os.environ.get("TOKEN_FROM_SECRET")
path = "cassandra-themis/lsg-bart-base-art700-16384-v1"
model = LSGMBartForConditionalGeneration.from_pretrained(path, use_auth_token=auth_token)
tokenizer = AutoTokenizer.from_pretrained(path, use_auth_token=auth_token)
pipe = pipeline("text2text-generation", model=model, tokenizer=tokenizer)
prefix = "[Frais irrépétibles ; article 700]"
def sim(question, num_beams, text):
q_type = 0
num_beams = None if num_beams == 0 else num_beams
if question == "Demandeur initial":
question = "Qui sont les demandeurs initiaux ?"
elif question == "Récapitulatif des demandes":
question = "Qui sont les demandeurs à l'origine de l'assignation, le résultat de leur demande et le montant obtenu ?"
q_type = 1
text = prefix + " " + question + " <sep> " + text
generated_text = pipe(
text,
truncation=True,
max_length=192,
no_repeat_ngram_size=None,
num_beams=num_beams,
early_stopping=True,
clean_up_tokenization_spaces=True,
return_tensors=True
)
generated_tokens = generated_text[0]["generated_token_ids"]
tokens = generated_tokens.tolist()
sentence = tokenizer.decode(tokens).replace("<s>", "").replace("</s>", "").strip()
if q_type == 0:
sentence = sentence.split("<liste>")
return "Demandeurs initiaux :\n" + "\n".join(sentence)
elif q_type == 1:
demandes = sentence.split("<demande>")
final_results = []
for i, demande in enumerate(demandes):
results = []
elems = demande.split("<sep>")
for prefix, elem in zip(["Demandeurs : \n", "Résultat : \n", "Montant obtenu : \n"], elems):
results.append(prefix + "\n".join(elem.split("<liste>")))
final_results.append("Demande " + str(i+1) + "\n".join(results))
return "\n\n".join(final_results)
iface = gr.Interface(
sim,
inputs=[
gr.Dropdown(["Demandeur initial", "Récapitulatif des demandes"], label="Information à générer", info="Succeptible de changer."),
gr.Slider(label="Nombre de Beams", minimum=0, maximum=10, value=5, step=1),
gr.Textbox(label= "Décision de justice", placeholder="Décision à traiter...", lines=25)
],
outputs=[
gr.Textbox(label="Demandes extraites", lines=25),
],
allow_flagging="auto",
title="Extraction",
description="Extrait les demandes relatives à l'article 700",
examples=[["Récapitulatif des demandes", 5, example_1]],
#live=True,
)
iface.launch()