authoring-app / app.py
FerdinandPyCode's picture
pushing error of style
cc27478
raw
history blame
17.7 kB
import streamlit as st
import logging
from langchain.chat_models import ChatOpenAI
# Import the function for detecting the "est une étape" pattern
from pattern_ce_qui_explique import explication, explication_prompt_template
from pattern_epoque import epoque, epoque_prompt_template
from pattern_est_une_etape import une_etape, est_une_etape_prompt_template
from pattern_adverbe_ment import adverbement, adverbement_prompt_template
from pattern_connecteur_cependant import connecteur, connecteur_prompt_template
from pattern_decision import decision, decision_prompt_template
from pattern_look import look, look_prompt_template
from pattern_il_existe import il_existe, il_existe_prompt_template
from pattern_il_faut import il_faut, il_faut_prompt_template
from pattern_vous_pouvez import vous_pouvez, vous_pouvez_prompt_template
from pattern_imaginez import imaginez, imaginez_prompt_template
from pattern_en_plus import en_plus_prompt_template, detect_en_plus
from pattern_outre import detect_outre, outre_prompt_template
from pattern_il_suffit_de import detect_il_suffit_de, il_suffit_de_prompt_template
from pattern_important_crucial import importance_prompt_template, importance_detection
from pattern_permettre import permettre_detection, permettre_prompt_template
from pattern_voici_decouvrez import detect_voici_decouvrez, voici_decouvrez_prompt_template
from erreurs_de_langue import detect_errors, academie_prompt_template
from erreur_de_style import detect_erreur_de_style, erreur_de_style_prompt_template
# Interface Streamlit
st.title("Analyse du texte")
# Liste des templates de prompt
List_prompt = {
"< Détection du pattern 'est une étape' >": est_une_etape_prompt_template(),
"< Détection du pattern 'epoque de, à l'ère de' >": epoque_prompt_template(),
"< Détection du pattern 'ce qui explique' >": explication_prompt_template(),
"< Détection des adverbes en -ment >": adverbement_prompt_template(),
"< Détection des connecteurs 'cependant' >": connecteur_prompt_template(),
"< Détection des decision 'éclairée...' >": decision_prompt_template(),
"< Détection du pattern 'look' >": look_prompt_template(),
"< Détection du pattern 'il existe' >": il_existe_prompt_template(),
"< Détection du pattern 'il faut' >": il_faut_prompt_template(),
"< Détection du pattern 'vous pouvez' >": vous_pouvez_prompt_template(),
"< Détection du pattern 'imaginez' >": imaginez_prompt_template(),
"< Détection du pattern 'en plus' >": en_plus_prompt_template(),
"< Détection du pattern 'outre' >": outre_prompt_template(),
"< Détection du pattern 'il suffit de' >": il_suffit_de_prompt_template(),
"< Détection du pattern 'important crucial' >": importance_prompt_template(),
"< Détection du pattern 'permettre' >": permettre_prompt_template(),
"< Détection du pattern 'voici découvrez' >": voici_decouvrez_prompt_template(),
"< Détection des erreurs de 'langue courante' >" : academie_prompt_template(),
"< Détection des erreurs de style >": erreur_de_style_prompt_template()
}
# Menu déroulant pour sélectionner l'analyse
option = st.selectbox(
"Choisissez l'analyse à effectuer :",
List_prompt.keys()
)
# Afficher le prompt correspondant à l'option sélectionnée
selected_prompt = List_prompt.get(option, "")
st.subheader(f"Prompt : {option}")
st.text_area("Voici le prompt utilisé pour cette analyse :", value=selected_prompt, height=300, disabled=True)
# Champ de saisie du texte
input_text = st.text_area("Entrez votre texte ici :", height=200)
# Bouton d'analyse
if st.button("Lancer l'analyse"):
if input_text:
if option == "< Détection du pattern 'est une étape' >":
try:
# Analyser le texte pour les fautes de style
result = une_etape(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse du pattern 'est une étape'")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection du pattern 'epoque de, à l'ère de' >":
try:
# Analyser le texte pour les fautes de style
result = epoque(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse du pattern 'epoque de, à l'ère de'")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection du pattern 'ce qui explique' >":
try:
# Analyser le texte pour les fautes de style
result = explication(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse du pattern 'ce qui explique'")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection des adverbes en -ment >":
try:
# Analyser le texte pour les fautes de style
result = adverbement(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse des adverbes en -ment")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection des connecteurs 'cependant' >":
try:
# Analyser le texte pour les fautes de style
result = connecteur(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse des connecteurs 'cependant'")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection des decision 'éclairée...' >":
try:
# Analyser le texte pour les fautes de style
result = decision(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse des decision 'éclairée...'")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection du pattern 'look' >":
try:
# Analyser le texte pour les fautes de style
result = look(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse du pattern 'look'")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection du pattern 'il existe' >":
try:
# Analyser le texte pour les fautes de style
result = il_existe(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse du pattern 'il existe'")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection du pattern 'il faut' >":
try:
# Analyser le texte pour les fautes de style
result = il_faut(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse du pattern 'il faut'")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection du pattern 'vous pouvez' >":
try:
# Analyser le texte pour les fautes de style
result = vous_pouvez(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse du pattern 'vous pouvez'")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection du pattern 'imaginez' >":
try:
# Analyser le texte pour les fautes de style
result = imaginez(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse du pattern 'imaginez'")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection du pattern 'en plus' >":
try:
# Analyser le texte pour les fautes de style
result = detect_en_plus(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse du pattern 'en plus'")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection du pattern 'outre' >":
try:
# Analyser le texte pour les fautes de style
result = detect_outre(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse du pattern 'outre'")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection du pattern 'il suffit de' >":
try:
# Analyser le texte pour les fautes de style
result = detect_il_suffit_de(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse du pattern 'il suffit de'")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection du pattern 'important crucial' >":
try:
# Analyser le texte pour les fautes de style
result = importance_detection(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse du pattern 'important crucial'")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection du pattern 'permettre' >":
try:
# Analyser le texte pour les fautes de style
result = permettre_detection(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse du pattern 'permettre'")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection du pattern 'voici découvrez' >":
try:
# Analyser le texte pour les fautes de style
result = detect_voici_decouvrez(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse du pattern 'voici découvrez'")
st.json(result['result'], expanded=True)
# Afficher le prompt final
# st.subheader("Prompt final envoyé au modèle")
# st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection des erreurs de 'langue courante' >" :
try:
# Analyser le texte pour les fautes de style
result = detect_errors(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse des erreurs de style")
st.json(result['result'], expanded=True)
# Afficher le prompt final
st.subheader("Prompt final envoyé au modèle")
st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
elif option == "< Détection des erreurs de style >":
try:
# Analyser le texte pour les fautes de style
result = detect_erreur_de_style(input_text)
# Afficher les résultats en JSON formaté
st.subheader("Résultats de l'analyse des erreurs de style")
st.json(result['result'], expanded=True)
# Afficher le prompt final
st.subheader("Prompt final envoyé au modèle")
st.write(result['prompt'])
except Exception as e:
logging.error(f"Error during analysis: {e}")
st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
else:
st.error("Veuillez entrer du texte pour lancer l'analyse.")