AuthringApp / app.py
FerdinandPyCode's picture
fix errors
cb7be16
raw
history blame
5.31 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
# 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()
}
# 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)}")
else:
st.error("Veuillez entrer du texte pour lancer l'analyse.")