Team Ai
Apppublic

FerdinandPyCode/AuthringApp

sourceHugging Faceupdated 2y agoView on Hugging Face
1likes
app.py375 linesDownload Raw Back to root
1import streamlit as st2 3import logging4from langchain.chat_models import ChatOpenAI5 6# Import the function for detecting the "est une étape" pattern7from pattern_ce_qui_explique import explication, explication_prompt_template8from pattern_epoque import epoque, epoque_prompt_template9from pattern_est_une_etape import une_etape, est_une_etape_prompt_template10from pattern_adverbe_ment import adverbement, adverbement_prompt_template11from pattern_connecteur_cependant import connecteur, connecteur_prompt_template12from pattern_decision import decision, decision_prompt_template13from pattern_look import look, look_prompt_template14from pattern_il_existe import il_existe, il_existe_prompt_template15from pattern_il_faut import il_faut, il_faut_prompt_template16from pattern_vous_pouvez import vous_pouvez, vous_pouvez_prompt_template17from pattern_imaginez import imaginez, imaginez_prompt_template18from pattern_en_plus import en_plus_prompt_template, detect_en_plus19from pattern_outre import detect_outre, outre_prompt_template20from pattern_il_suffit_de import detect_il_suffit_de, il_suffit_de_prompt_template21from pattern_important_crucial import importance_prompt_template, importance_detection22from pattern_permettre import permettre_detection, permettre_prompt_template23from pattern_voici_decouvrez import detect_voici_decouvrez, voici_decouvrez_prompt_template24from faute_style import detect_errors, academie_prompt_template25 26# Interface Streamlit27st.title("Analyse du texte")28 29# Liste des templates de prompt30List_prompt = {31    "< Détection du pattern 'est une étape' >": est_une_etape_prompt_template(),32    "< Détection du pattern 'epoque de, à l'ère de' >": epoque_prompt_template(),33    "< Détection du pattern 'ce qui explique' >": explication_prompt_template(),34    "< Détection des adverbes en -ment >": adverbement_prompt_template(),35    "< Détection des connecteurs 'cependant' >": connecteur_prompt_template(),36    "< Détection des decision 'éclairée...' >": decision_prompt_template(),37    "< Détection du pattern 'look' >": look_prompt_template(),38    "< Détection du pattern 'il existe' >": il_existe_prompt_template(),39    "< Détection du pattern 'il faut' >": il_faut_prompt_template(),40    "< Détection du pattern 'vous pouvez' >": vous_pouvez_prompt_template(),41    "< Détection du pattern 'imaginez' >": imaginez_prompt_template(),42    "< Détection du pattern 'en plus' >": en_plus_prompt_template(),43    "< Détection du pattern 'outre' >": outre_prompt_template(),44    "< Détection du pattern 'il suffit de' >": il_suffit_de_prompt_template(),45    "< Détection du pattern 'important crucial' >": importance_prompt_template(),46    "< Détection du pattern 'permettre' >": permettre_prompt_template(),47    "< Détection du pattern 'voici découvrez' >": voici_decouvrez_prompt_template(),48    "< Détection des erreurs de style" : academie_prompt_template()49}50 51# Menu déroulant pour sélectionner l'analyse52option = st.selectbox(53    "Choisissez l'analyse à effectuer :",54    List_prompt.keys()55)56 57# Afficher le prompt correspondant à l'option sélectionnée58selected_prompt = List_prompt.get(option, "")59st.subheader(f"Prompt : {option}")60st.text_area("Voici le prompt utilisé pour cette analyse :", value=selected_prompt, height=300, disabled=True)61 62# Champ de saisie du texte63input_text = st.text_area("Entrez votre texte ici :", height=200)64 65# Bouton d'analyse66if st.button("Lancer l'analyse"):67    if input_text:68        if option == "< Détection du pattern 'est une étape' >":69            try:70                # Analyser le texte pour les fautes de style71                result = une_etape(input_text)72 73                # Afficher les résultats en JSON formaté74                st.subheader("Résultats de l'analyse du pattern 'est une étape'")75                st.json(result['result'], expanded=True)76 77                # Afficher le prompt final78                # st.subheader("Prompt final envoyé au modèle")79                # st.write(result['prompt'])80 81            except Exception as e:82                logging.error(f"Error during analysis: {e}")83                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")84 85        elif option == "< Détection du pattern 'epoque de, à l'ère de' >":86            try:87                # Analyser le texte pour les fautes de style88                result = epoque(input_text)89 90                # Afficher les résultats en JSON formaté91                st.subheader("Résultats de l'analyse du pattern 'epoque de, à l'ère de'")92                st.json(result['result'], expanded=True)93 94                # Afficher le prompt final95                # st.subheader("Prompt final envoyé au modèle")96                # st.write(result['prompt'])97 98            except Exception as e:99                logging.error(f"Error during analysis: {e}")100                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")101        102        elif option == "< Détection du pattern 'ce qui explique' >":103            try:104                # Analyser le texte pour les fautes de style105                result = explication(input_text)106 107                # Afficher les résultats en JSON formaté108                st.subheader("Résultats de l'analyse du pattern 'ce qui explique'")109                st.json(result['result'], expanded=True)110 111                # Afficher le prompt final112                # st.subheader("Prompt final envoyé au modèle")113                # st.write(result['prompt'])114 115            except Exception as e:116                logging.error(f"Error during analysis: {e}")117                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")118        119        elif option == "< Détection des adverbes en -ment >":120            try:121                # Analyser le texte pour les fautes de style122                result = adverbement(input_text)123 124                # Afficher les résultats en JSON formaté125                st.subheader("Résultats de l'analyse des adverbes en -ment")126                st.json(result['result'], expanded=True)127 128                # Afficher le prompt final129                # st.subheader("Prompt final envoyé au modèle")130                # st.write(result['prompt'])131 132            except Exception as e:133                logging.error(f"Error during analysis: {e}")134                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")135        136        elif option == "< Détection des connecteurs 'cependant' >":137            try:138                # Analyser le texte pour les fautes de style139                result = connecteur(input_text)140 141                # Afficher les résultats en JSON formaté142                st.subheader("Résultats de l'analyse des connecteurs 'cependant'")143                st.json(result['result'], expanded=True)144 145                # Afficher le prompt final146                # st.subheader("Prompt final envoyé au modèle")147                # st.write(result['prompt'])148 149            except Exception as e:150                logging.error(f"Error during analysis: {e}")151                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")152        153        elif option == "< Détection des decision 'éclairée...' >":154            try:155                # Analyser le texte pour les fautes de style156                result = decision(input_text)157 158                # Afficher les résultats en JSON formaté159                st.subheader("Résultats de l'analyse des decision 'éclairée...'")160                st.json(result['result'], expanded=True)161 162                # Afficher le prompt final163                # st.subheader("Prompt final envoyé au modèle")164                # st.write(result['prompt'])165 166            except Exception as e:167                logging.error(f"Error during analysis: {e}")168                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")169        170        elif option == "< Détection du pattern 'look' >":171            try:172                # Analyser le texte pour les fautes de style173                result = look(input_text)174 175                # Afficher les résultats en JSON formaté176                st.subheader("Résultats de l'analyse du pattern 'look'")177                st.json(result['result'], expanded=True)178 179                # Afficher le prompt final180                # st.subheader("Prompt final envoyé au modèle")181                # st.write(result['prompt'])182 183            except Exception as e:184                logging.error(f"Error during analysis: {e}")185                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")186        187        elif option == "< Détection du pattern 'il existe' >":188            try:189                # Analyser le texte pour les fautes de style190                result = il_existe(input_text)191 192                # Afficher les résultats en JSON formaté193                st.subheader("Résultats de l'analyse du pattern 'il existe'")194                st.json(result['result'], expanded=True)195 196                # Afficher le prompt final197                # st.subheader("Prompt final envoyé au modèle")198                # st.write(result['prompt'])199 200            except Exception as e:201                logging.error(f"Error during analysis: {e}")202                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")203        204        elif option == "< Détection du pattern 'il faut' >":205            try:206                # Analyser le texte pour les fautes de style207                result = il_faut(input_text)208 209                # Afficher les résultats en JSON formaté210                st.subheader("Résultats de l'analyse du pattern 'il faut'")211                st.json(result['result'], expanded=True)212 213                # Afficher le prompt final214                # st.subheader("Prompt final envoyé au modèle")215                # st.write(result['prompt'])216 217            except Exception as e:218                logging.error(f"Error during analysis: {e}")219                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")220        221        elif option == "< Détection du pattern 'vous pouvez' >":222            try:223                # Analyser le texte pour les fautes de style224                result = vous_pouvez(input_text)225 226                # Afficher les résultats en JSON formaté227                st.subheader("Résultats de l'analyse du pattern 'vous pouvez'")228                st.json(result['result'], expanded=True)229 230                # Afficher le prompt final231                # st.subheader("Prompt final envoyé au modèle")232                # st.write(result['prompt'])233 234            except Exception as e:235                logging.error(f"Error during analysis: {e}")236                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")237        238        elif option == "< Détection du pattern 'imaginez' >":239            try:240                # Analyser le texte pour les fautes de style241                result = imaginez(input_text)242 243                # Afficher les résultats en JSON formaté244                st.subheader("Résultats de l'analyse du pattern 'imaginez'")245                st.json(result['result'], expanded=True)246 247                # Afficher le prompt final248                # st.subheader("Prompt final envoyé au modèle")249                # st.write(result['prompt'])250 251            except Exception as e:252                logging.error(f"Error during analysis: {e}")253                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")254        255        elif option == "< Détection du pattern 'en plus' >":256            try:257                # Analyser le texte pour les fautes de style258                result = detect_en_plus(input_text)259 260                # Afficher les résultats en JSON formaté261                st.subheader("Résultats de l'analyse du pattern 'en plus'")262                st.json(result['result'], expanded=True)263 264                # Afficher le prompt final265                # st.subheader("Prompt final envoyé au modèle")266                # st.write(result['prompt'])267 268            except Exception as e:269                logging.error(f"Error during analysis: {e}")270                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")271        272        elif option == "< Détection du pattern 'outre' >":273            try:274                # Analyser le texte pour les fautes de style275                result = detect_outre(input_text)276 277                # Afficher les résultats en JSON formaté278                st.subheader("Résultats de l'analyse du pattern 'outre'")279                st.json(result['result'], expanded=True)280 281                # Afficher le prompt final282                # st.subheader("Prompt final envoyé au modèle")283                # st.write(result['prompt'])284 285            except Exception as e:286                logging.error(f"Error during analysis: {e}")287                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")288        289        elif option == "< Détection du pattern 'il suffit de' >":290            try:291                # Analyser le texte pour les fautes de style292                result = detect_il_suffit_de(input_text)293 294                # Afficher les résultats en JSON formaté295                st.subheader("Résultats de l'analyse du pattern 'il suffit de'")296                st.json(result['result'], expanded=True)297 298                # Afficher le prompt final299                # st.subheader("Prompt final envoyé au modèle")300                # st.write(result['prompt'])301 302            except Exception as e:303                logging.error(f"Error during analysis: {e}")304                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")305 306        elif option == "< Détection du pattern 'important crucial' >":307            try:308                # Analyser le texte pour les fautes de style309                result = importance_detection(input_text)310 311                # Afficher les résultats en JSON formaté312                st.subheader("Résultats de l'analyse du pattern 'important crucial'")313                st.json(result['result'], expanded=True)314 315                # Afficher le prompt final316                # st.subheader("Prompt final envoyé au modèle")317                # st.write(result['prompt'])318 319            except Exception as e:320                logging.error(f"Error during analysis: {e}")321                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")322        323        elif option == "< Détection du pattern 'permettre' >":324            try:325                # Analyser le texte pour les fautes de style326                result = permettre_detection(input_text)327 328                # Afficher les résultats en JSON formaté329                st.subheader("Résultats de l'analyse du pattern 'permettre'")330                st.json(result['result'], expanded=True)331 332                # Afficher le prompt final333                # st.subheader("Prompt final envoyé au modèle")334                # st.write(result['prompt'])335 336            except Exception as e:337                logging.error(f"Error during analysis: {e}")338                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")339        340        elif option == "< Détection du pattern 'voici découvrez' >":341            try:342                # Analyser le texte pour les fautes de style343                result = detect_voici_decouvrez(input_text)344 345                # Afficher les résultats en JSON formaté346                st.subheader("Résultats de l'analyse du pattern 'voici découvrez'")347                st.json(result['result'], expanded=True)348 349                # Afficher le prompt final350                # st.subheader("Prompt final envoyé au modèle")351                # st.write(result['prompt'])352 353            except Exception as e:354                logging.error(f"Error during analysis: {e}")355                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")356        357        elif option == "< Détection des erreurs de style" :358            try:359                # Analyser le texte pour les fautes de style360                result = detect_errors(input_text)361 362                # Afficher les résultats en JSON formaté363                st.subheader("Résultats de l'analyse des erreurs de style")364                st.json(result['result'], expanded=True)365 366                # Afficher le prompt final367                st.subheader("Prompt final envoyé au modèle")368                st.write(result['prompt'])369 370            except Exception as e:371                logging.error(f"Error during analysis: {e}")372                st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")373        374    else:375        st.error("Veuillez entrer du texte pour lancer l'analyse.")