FerdinandPyCode commited on
Commit
dab11f0
·
1 Parent(s): bc5d0b7

update added

Browse files
Files changed (3) hide show
  1. app.py +76 -2
  2. pattern_adverbe_ment.py +140 -2
  3. pattern_est_une_etape.py +151 -2
app.py CHANGED
@@ -6,8 +6,8 @@ from langchain.chat_models import ChatOpenAI
6
  # Import the function for detecting the "est une étape" pattern
7
  from pattern_ce_qui_explique import explication, explication_prompt_template
8
  from pattern_epoque import epoque, epoque_prompt_template
9
- from pattern_est_une_etape import une_etape, est_une_etape_prompt_template
10
- from pattern_adverbe_ment import adverbement, adverbement_prompt_template
11
  from pattern_connecteur_cependant import connecteur, connecteur_prompt_template
12
  from pattern_decision import decision, decision_prompt_template
13
  from pattern_look import look, look_prompt_template
@@ -30,9 +30,14 @@ st.title("Analyse du texte")
30
  # Liste des templates de prompt
31
  List_prompt = {
32
  "<V2 Détection du pattern 'est une étape' >": est_une_etape_prompt_template(),
 
 
33
  "<V2 Détection du pattern 'epoque de, à l'ère de' >": epoque_prompt_template(),
34
  "<V2 Détection du pattern 'ce qui explique' >": explication_prompt_template(),
35
  "<V2 Détection des adverbes en -ment >": adverbement_prompt_template(),
 
 
 
36
  "<V2 Détection des connecteurs 'cependant' >": connecteur_prompt_template(),
37
  "<V2 Détection des decision 'éclairée...' >": decision_prompt_template(),
38
  "<V2 Détection du pattern 'look' >": look_prompt_template(),
@@ -83,6 +88,40 @@ if st.button("Lancer l'analyse"):
83
  except Exception as e:
84
  logging.error(f"Error during analysis: {e}")
85
  st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
86
 
87
  elif option == "<V2 Détection du pattern 'epoque de, à l'ère de' >":
88
  try:
@@ -135,6 +174,41 @@ if st.button("Lancer l'analyse"):
135
  logging.error(f"Error during analysis: {e}")
136
  st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
137
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
138
  elif option == "<V2 Détection des connecteurs 'cependant' >":
139
  try:
140
  # Analyser le texte pour les fautes de style
 
6
  # Import the function for detecting the "est une étape" pattern
7
  from pattern_ce_qui_explique import explication, explication_prompt_template
8
  from pattern_epoque import epoque, epoque_prompt_template
9
+ from pattern_est_une_etape import une_etape, est_une_etape_prompt_template, est_une_etape_prompt_template_v3, est_une_etape_prompt_template_v3_1
10
+ from pattern_adverbe_ment import adverbement, adverbement_prompt_template,adverbement_prompt_template_v3,adverbement_prompt_template_v3_1
11
  from pattern_connecteur_cependant import connecteur, connecteur_prompt_template
12
  from pattern_decision import decision, decision_prompt_template
13
  from pattern_look import look, look_prompt_template
 
30
  # Liste des templates de prompt
31
  List_prompt = {
32
  "<V2 Détection du pattern 'est une étape' >": est_une_etape_prompt_template(),
33
+ "<V3 Détection du pattern 'est une étape' >": est_une_etape_prompt_template_v3(),
34
+ "<V3.1 Détection du pattern 'est une étape' >": est_une_etape_prompt_template_v3_1(),
35
  "<V2 Détection du pattern 'epoque de, à l'ère de' >": epoque_prompt_template(),
36
  "<V2 Détection du pattern 'ce qui explique' >": explication_prompt_template(),
37
  "<V2 Détection des adverbes en -ment >": adverbement_prompt_template(),
38
+ "<V3 Détection des adverbes en -ment >": adverbement_prompt_template_v3(),
39
+ "<V3.1 Détection des adverbes en -ment >": adverbement_prompt_template_v3_1(),
40
+
41
  "<V2 Détection des connecteurs 'cependant' >": connecteur_prompt_template(),
42
  "<V2 Détection des decision 'éclairée...' >": decision_prompt_template(),
43
  "<V2 Détection du pattern 'look' >": look_prompt_template(),
 
88
  except Exception as e:
89
  logging.error(f"Error during analysis: {e}")
90
  st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
91
+
92
+ elif option == "<V3 Détection du pattern 'est une étape' >":
93
+ try:
94
+ # Analyser le texte pour les fautes de style
95
+ result = une_etape(input_text, version=2)
96
+
97
+ # Afficher les résultats en JSON formaté
98
+ st.subheader("Résultats de l'analyse du pattern 'est une étape'")
99
+ st.json(result['result'], expanded=True)
100
+
101
+ # Afficher le prompt final
102
+ # st.subheader("Prompt final envoyé au modèle")
103
+ # st.write(result['prompt'])
104
+
105
+ except Exception as e:
106
+ logging.error(f"Error during analysis: {e}")
107
+ st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
108
+
109
+ elif option == "<V3.1 Détection du pattern 'est une étape' >":
110
+ try:
111
+ # Analyser le texte pour les fautes de style
112
+ result = une_etape(input_text, version=3)
113
+
114
+ # Afficher les résultats en JSON formaté
115
+ st.subheader("Résultats de l'analyse du pattern 'est une étape'")
116
+ st.json(result['result'], expanded=True)
117
+
118
+ # Afficher le prompt final
119
+ # st.subheader("Prompt final envoyé au modèle")
120
+ # st.write(result['prompt'])
121
+
122
+ except Exception as e:
123
+ logging.error(f"Error during analysis: {e}")
124
+ st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
125
 
126
  elif option == "<V2 Détection du pattern 'epoque de, à l'ère de' >":
127
  try:
 
174
  logging.error(f"Error during analysis: {e}")
175
  st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
176
 
177
+ elif option == "<V3 Détection des adverbes en -ment >":
178
+ try:
179
+ # Analyser le texte pour les fautes de style
180
+ result = adverbement(input_text, version=2)
181
+
182
+ # Afficher les résultats en JSON formaté
183
+ st.subheader("Résultats de l'analyse des adverbes en -ment")
184
+ st.json(result['result'], expanded=True)
185
+
186
+ # Afficher le prompt final
187
+ # st.subheader("Prompt final envoyé au modèle")
188
+ # st.write(result['prompt'])
189
+
190
+ except Exception as e:
191
+ logging.error(f"Error during analysis: {e}")
192
+ st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
193
+
194
+ elif option == "<V3.1 Détection des adverbes en -ment >":
195
+ try:
196
+ # Analyser le texte pour les fautes de style
197
+ result = adverbement(input_text, version=3)
198
+
199
+ # Afficher les résultats en JSON formaté
200
+ st.subheader("Résultats de l'analyse des adverbes en -ment")
201
+ st.json(result['result'], expanded=True)
202
+
203
+ # Afficher le prompt final
204
+ # st.subheader("Prompt final envoyé au modèle")
205
+ # st.write(result['prompt'])
206
+
207
+ except Exception as e:
208
+ logging.error(f"Error during analysis: {e}")
209
+ st.error(f"Une erreur s'est produite lors de l'analyse : {str(e)}")
210
+
211
+
212
  elif option == "<V2 Détection des connecteurs 'cependant' >":
213
  try:
214
  # Analyser le texte pour les fautes de style
pattern_adverbe_ment.py CHANGED
@@ -103,6 +103,134 @@ Assurez-vous que les indices correspondent aux positions exactes dans le texte o
103
  {format_instruction}
104
  """
105
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
106
  # def adverbement_prompt_template():
107
  # return """
108
  # Veuillez analyser le texte suivant et identifier tous les adverbes se terminant par "-ment".
@@ -145,9 +273,19 @@ Assurez-vous que les indices correspondent aux positions exactes dans le texte o
145
  # """
146
 
147
 
148
- def adverbement(text):
149
  # Créer le template avec la variable text intégrée directement
150
- prompt_template = adverbement_prompt_template()
 
 
 
 
 
 
 
 
 
 
151
 
152
  output_parser = PydanticOutputParser(pydantic_object=DetectionResult)
153
 
 
103
  {format_instruction}
104
  """
105
 
106
+ def adverbement_prompt_template_v3():
107
+ return """En tant que rédacteur web expert, veuillez analyser le texte suivant et identifier tous les adverbes se terminant par "-ment".
108
+
109
+ Pour chaque phrase ou une ou plusieurs occurrences sont trouvée , veuilles :
110
+ Citez la phrase complète où apparaissent les expressions
111
+ Indiquer les expressions exactes utilisées dans la phrase
112
+
113
+ Propose cinq Reformulations de la phrase de sorte a supprimer l'adverbe sans le remplace par un autre se terminant par "-ment",
114
+ sans altérer le sens ou en le remplaçant par une expression alternative adaptée au contexte,
115
+ ou des verbes plus précis pour remplacer les combinaisons adverbe + verbe en veillant à ce que le sens reste inchangé et que le style soit amélioré,
116
+ en évitant impérativement toute redondance ou répétition de mot,
117
+ tout t'assurrant de respecter aussi les regles suivante enumerer dans les list suivante:
118
+ 1- Crucial, essentiel, important, fondamental, Le monde de, dans l’univers de, à l’ère de,
119
+ Généralement, outre, cela signifie que, ce qui signifie que, Voici, découvrez
120
+ s’avérer être, il suffit de, permet, décision éclairée, décision avisée(et leurs variantes ne doivent pas etre utilisé)
121
+ 2- Look (et leurs variantes ne doivent pas etre utilisé dans un contexte de décoration)
122
+ 3- Il existe, il faut, cependant, De plus, en revanche, Néanmoins, toutefois, imaginez (et leurs variantes ne doivent pas etre en début de phrase)
123
+ 4- Joue un rôle, il est, est une étape (et leurs variantes ne doivent pas etre associer des mots tel que important, essentiel, crucial, primordial, fondamental, indispensable, déterminant)
124
+ 5- En plus (et leurs variantes ne doivent pas etre seul en début de phrase)
125
+
126
+ Fournissez une brève justification de la suggestion en expliquant comment elle améliore le style ou la clarté.
127
+
128
+ Ton analyse doit être retournée en JSON avec la structure suivante :
129
+
130
+
131
+ {{
132
+ "phrases_detectees": [
133
+ {{
134
+ "phrase": {{
135
+ "texte": "Phrase complète contenant l'expression ou les expressions détectées",
136
+ "indice_debut": x,
137
+ "indice_fin": y
138
+ }},
139
+ "erreurs": [
140
+ {{
141
+ "expression": "Expression détectée (ex: 'est une étape importante')",
142
+ "indice_debut": a,
143
+ "indice_fin": b
144
+ }}
145
+ ],
146
+ "reformulations": [
147
+ {{ "texte": "Reformulation 1" }},
148
+ {{ "texte": "Reformulation 2" }},
149
+ {{ "texte": "Reformulation 3" }},
150
+ {{ "texte": "Reformulation 4" }},
151
+ {{ "texte": "Reformulation 5" }}
152
+ ],
153
+ "justification": "Justification des reformulations proposées en s'il est disponible l'adjectif qualificatif à laquelle c'est associés."
154
+ }}
155
+ ],
156
+ "summary": {{
157
+ "total_erreurs": nombre_total_d_expressions_detectées,
158
+ "total_phrases": nombre_total_de_phrases_contenant_des_expressions,
159
+ "total_reformulations": nombre_total_de_reformulations_proposées
160
+ }}
161
+ }}
162
+
163
+
164
+ Texte à analyser :
165
+ {text}"""
166
+
167
+ def adverbement_prompt_template_v3_1():
168
+ return """En tant que rédacteur web expert, veuillez analyser le texte suivant et identifier tous les adverbes se terminant par "-ment".
169
+
170
+ Exemples d'erreurs à corriger :
171
+ - "Elle a rapidement terminé son travail", évite "rapidement" mais on peut dire "Elle a terminé son travail vite".
172
+ - "Il a soigneusement rangé ses affaires", évite "soigneusement" mais on peut dire "Il a rangé ses affaires avec soin".
173
+ - "Ils ont efficacement géré la situation", évite "efficacement" mais on peut dire "Ils ont bien géré la situation".
174
+
175
+ Pour chaque phrase ou une ou plusieurs occurrences sont trouvée , veuilles :
176
+
177
+ Citez la phrase complète où apparaissent les expressions
178
+
179
+ Indiquer les expressions exactes utilisées dans la phrase
180
+
181
+
182
+ Propose cinq Reformulations de la phrase de sorte a supprimer l'adverbe sans le remplace par un autre se terminant par "-ment",
183
+ sans altérer le sens ou en le remplaçant par une expression alternative adaptée au contexte,
184
+ ou des verbes plus précis pour remplacer les combinaisons adverbe + verbe en veillant à ce que le sens reste inchangé et que le style soit amélioré,
185
+ en évitant impérativement toute redondance ou répétition de mot,
186
+ tout t'assurrant de respecter aussi les regles suivante enumerer dans les list suivante:
187
+ 1- Crucial, essentiel, important, fondamental, Le monde de, dans l’univers de, à l’ère de,
188
+ Généralement, outre, cela signifie que, ce qui signifie que, Voici, découvrez
189
+ s’avérer être, il suffit de, permet, décision éclairée, décision avisée(et leurs variantes ne doivent pas etre utilisé)
190
+ 2- Look (et leurs variantes ne doivent pas etre utilisé dans un contexte de décoration)
191
+ 3- Il existe, il faut, cependant, De plus, en revanche, Néanmoins, toutefois, imaginez (et leurs variantes ne doivent pas etre en début de phrase)
192
+ 4- Joue un rôle, il est, est une étape (et leurs variantes ne doivent pas etre associer des mots tel que important, essentiel, crucial, primordial, fondamental, indispensable, déterminant)
193
+ 5- En plus (et leurs variantes ne doivent pas etre seul en début de phrase)
194
+
195
+ Fournissez une brève justification de la suggestion en expliquant comment elle améliore le style ou la clarté.
196
+
197
+ Ton analyse doit être retournée en JSON avec la structure suivante :
198
+ {{
199
+ "phrases_detectees": [
200
+ {{
201
+ "phrase": {{
202
+ "texte": "Phrase complète contenant l'expression ou les expressions détectées",
203
+ "indice_debut": x,
204
+ "indice_fin": y
205
+ }},
206
+ "erreurs": [
207
+ {{
208
+ "expression": "Expression détectée (ex: 'est une étape importante')",
209
+ "indice_debut": a,
210
+ "indice_fin": b
211
+ }}
212
+ ],
213
+ "reformulations": [
214
+ {{ "texte": "Reformulation 1" }},
215
+ {{ "texte": "Reformulation 2" }},
216
+ {{ "texte": "Reformulation 3" }},
217
+ {{ "texte": "Reformulation 4" }},
218
+ {{ "texte": "Reformulation 5" }}
219
+ ],
220
+ "justification": "Justification des reformulations proposées en s'il est disponible l'adjectif qualificatif à laquelle c'est associés."
221
+ }}
222
+ ],
223
+ "summary": {{
224
+ "total_erreurs": nombre_total_d_expressions_detectées,
225
+ "total_phrases": nombre_total_de_phrases_contenant_des_expressions,
226
+ "total_reformulations": nombre_total_de_reformulations_proposées
227
+ }}
228
+ }}
229
+
230
+
231
+ Texte à analyser :
232
+ {text} """
233
+
234
  # def adverbement_prompt_template():
235
  # return """
236
  # Veuillez analyser le texte suivant et identifier tous les adverbes se terminant par "-ment".
 
273
  # """
274
 
275
 
276
+ def adverbement(text , version = 1):
277
  # Créer le template avec la variable text intégrée directement
278
+
279
+ print("Version : ", version)
280
+
281
+ if version == 1:
282
+ prompt_template = adverbement_prompt_template()
283
+ elif version == 2:
284
+ prompt_template = adverbement_prompt_template_v3()
285
+ elif version == 3:
286
+ prompt_template = adverbement_prompt_template_v3_1()
287
+ else:
288
+ prompt_template = adverbement_prompt_template()
289
 
290
  output_parser = PydanticOutputParser(pydantic_object=DetectionResult)
291
 
pattern_est_une_etape.py CHANGED
@@ -106,6 +106,146 @@ def est_une_etape_prompt_template() :
106
  Assurez-vous que les indices correspondent aux positions exactes dans le texte original et que le JSON est correctement formaté.
107
  {format_instruction}"""
108
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
109
  # def est_une_etape_prompt_template() :
110
 
111
  # return """
@@ -155,9 +295,18 @@ def est_une_etape_prompt_template() :
155
  # \n{format_instruction}
156
  # """
157
 
158
- def une_etape(text):
159
  # Créer le template avec la variable text intégrée directement
160
- prompt_template = est_une_etape_prompt_template()
 
 
 
 
 
 
 
 
 
161
 
162
  output_parser = PydanticOutputParser(pydantic_object=DetectionResult)
163
 
 
106
  Assurez-vous que les indices correspondent aux positions exactes dans le texte original et que le JSON est correctement formaté.
107
  {format_instruction}"""
108
 
109
+
110
+ def est_une_etape_prompt_template_v3() :
111
+ return """En tant que rédacteur web expert, votre mission est d'analyser le texte suivant et d'identifier toutes les phrases où une expression similaire à "est une étape" est utilisée,
112
+ y compris des variantes comme "est une étape", "constitue une étape", "représente une étape", "marque une étape",
113
+ "signifie une étape", "symbolise une étape", etc.
114
+
115
+ Recherche particulièrement ces expressions lorsqu'elles sont associées à des adjectifs exprimant l'importance (par exemple,
116
+ "important", "essentiel", "crucial", "primordial", "fondamental", "indispensable", "déterminant", "vital", "majeur", "clé",
117
+ "nécessaire", "stratégique", "significatif", etc.), que l'adjectif se trouve avant ou après le mot "étape".
118
+
119
+ Pour chaque phrase ou une ou plusieurs occurrences sont trouvée , veuilles :
120
+
121
+ Citez la phrase complète où apparaissent les expressions
122
+
123
+ Indiquer les expressions exactes utilisées dans la phrase
124
+
125
+ Mentionner l'adjectif d'importance associé.
126
+
127
+ Propose cinq Reformulations de la phrase sans exprimer (ou sans mettre l’accent sur l’importance d’une étape, d’un moment, d’un rôle, d’une chose),
128
+ en évitant impérativement toute redondance ou répétition de mot,
129
+ tout t'assurrant de respecter aussi les regles suivante enumerer dans les list suivante:
130
+ 1- Crucial, essentiel, important, fondamental, Le monde de, dans l’univers de, à l’ère de,
131
+ Généralement, outre, cela signifie que, ce qui signifie que, Voici, découvrez
132
+ s’avérer être, il suffit de, permet, décision éclairée, décision avisée(et leurs variantes ne doivent pas etre utilisé)
133
+ 2- Look (et leurs variantes ne doivent pas etre utilisé dans un contexte de décoration)
134
+ 3- Il existe, il faut, cependant, De plus, en revanche, Néanmoins, toutefois, imaginez (et leurs variantes ne doivent pas etre en début de phrase)
135
+ 4- Joue un rôle, il est, est une étape (et leurs variantes ne doivent pas etre associer des mots tel que important, essentiel, crucial, primordial, fondamental, indispensable, déterminant)
136
+ 5- En plus (et leurs variantes ne doivent pas etre seul en début de phrase)
137
+
138
+
139
+ Ton analyse doit être retournée en JSON avec la structure suivante :
140
+
141
+ {{
142
+ "phrases_detectees": [
143
+ {{
144
+ "phrase": {{
145
+ "texte": "Phrase complète contenant l'expression ou les expressions détectées",
146
+ "indice_debut": x,
147
+ "indice_fin": y
148
+ }},
149
+ "erreurs": [
150
+ {{
151
+ "expression": "Expression détectée (ex: 'est une étape importante')",
152
+ "indice_debut": a,
153
+ "indice_fin": b
154
+ }}
155
+ ],
156
+ "reformulations": [
157
+ {{ "texte": "Reformulation 1" }},
158
+ {{ "texte": "Reformulation 2" }},
159
+ {{ "texte": "Reformulation 3" }},
160
+ {{ "texte": "Reformulation 4" }},
161
+ {{ "texte": "Reformulation 5" }}
162
+ ],
163
+ "justification": "Justification des reformulations proposées en s'il est disponible l'adjectif qualificatif à laquelle c'est associés."
164
+ }}
165
+ ],
166
+ "summary": {{
167
+ "total_erreurs": nombre_total_d_expressions_detectées,
168
+ "total_phrases": nombre_total_de_phrases_contenant_des_expressions,
169
+ "total_reformulations": nombre_total_de_reformulations_proposées
170
+ }}
171
+ }}
172
+
173
+
174
+ Texte à analyser :
175
+ {text}"""
176
+
177
+
178
+ def est_une_etape_prompt_template_v3_1() :
179
+ return """En tant que rédacteur web expert, votre mission est d'analyser le texte suivant et d'identifier toutes les phrases où une expression similaire à "est une étape" est utilisée,
180
+ y compris des variantes comme "est une étape", "constitue une étape", "représente une étape", "marque une étape",
181
+ "signifie une étape", "symbolise une étape", etc.
182
+
183
+ Recherche particulièrement ces expressions lorsqu'elles sont associées à des adjectifs exprimant l'importance (par exemple,
184
+ "important", "essentiel", "crucial", "primordial", "fondamental", "indispensable", "déterminant", "vital", "majeur", "clé",
185
+ "nécessaire", "stratégique", "significatif", etc.), que l'adjectif se trouve avant ou après le mot "étape".
186
+
187
+ Exemples d'expressions à rechercher :
188
+ "est une étape importante" → "contribue à l'avancement du processus"
189
+ "représente une étape cruciale" → "fait progresser significativement le projet"
190
+ "symbolise une étape fondamentale" → "marque un tournant dans le développement"
191
+
192
+ Pour chaque phrase ou une ou plusieurs occurrences sont trouvée , veuilles :
193
+
194
+ Citez la phrase complète où apparaissent les expressions
195
+
196
+ Indiquer les expressions exactes utilisées dans la phrase
197
+
198
+ Mentionner l'adjectif d'importance associé.
199
+
200
+ Propose cinq Reformulations de la phrase sans exprimer (ou sans mettre l’accent sur l’importance d’une étape, d’un moment, d’un rôle, d’une chose),
201
+ en évitant impérativement toute redondance ou répétition de mot,
202
+ tout t'assurrant de respecter aussi les regles suivante enumerer dans les list suivante:
203
+ 1- Crucial, essentiel, important, fondamental, Le monde de, dans l’univers de, à l’ère de,
204
+ Généralement, outre, cela signifie que, ce qui signifie que, Voici, découvrez
205
+ s’avérer être, il suffit de, permet, décision éclairée, décision avisée(et leurs variantes ne doivent pas etre utilisé)
206
+ 2- Look (et leurs variantes ne doivent pas etre utilisé dans un contexte de décoration)
207
+ 3- Il existe, il faut, cependant, De plus, en revanche, Néanmoins, toutefois, imaginez (et leurs variantes ne doivent pas etre en début de phrase)
208
+ 4- Joue un rôle, il est, est une étape (et leurs variantes ne doivent pas etre associer des mots tel que important, essentiel, crucial, primordial, fondamental, indispensable, déterminant)
209
+ 5- En plus (et leurs variantes ne doivent pas etre seul en début de phrase)
210
+
211
+
212
+ Ton analyse doit être retournée en JSON avec la structure suivante :
213
+ {{
214
+ "phrases_detectees": [
215
+ {{
216
+ "phrase": {{
217
+ "texte": "Phrase complète contenant l'expression ou les expressions détectées",
218
+ "indice_debut": x,
219
+ "indice_fin": y
220
+ }},
221
+ "erreurs": [
222
+ {{
223
+ "expression": "Expression détectée (ex: 'est une étape importante')",
224
+ "indice_debut": a,
225
+ "indice_fin": b
226
+ }}
227
+ ],
228
+ "reformulations": [
229
+ {{ "texte": "Reformulation 1" }},
230
+ {{ "texte": "Reformulation 2" }},
231
+ {{ "texte": "Reformulation 3" }},
232
+ {{ "texte": "Reformulation 4" }},
233
+ {{ "texte": "Reformulation 5" }}
234
+ ],
235
+ "justification": "Justification des reformulations proposées en s'il est disponible l'adjectif qualificatif à laquelle c'est associés."
236
+ }}
237
+ ],
238
+ "summary": {{
239
+ "total_erreurs": nombre_total_d_expressions_detectées,
240
+ "total_phrases": nombre_total_de_phrases_contenant_des_expressions,
241
+ "total_reformulations": nombre_total_de_reformulations_proposées
242
+ }}
243
+ }}
244
+
245
+
246
+ Texte à analyser :
247
+ {text}"""
248
+
249
  # def est_une_etape_prompt_template() :
250
 
251
  # return """
 
295
  # \n{format_instruction}
296
  # """
297
 
298
+ def une_etape(text, version = 1):
299
  # Créer le template avec la variable text intégrée directement
300
+ # prompt_template = est_une_etape_prompt_template()
301
+
302
+ print("Version: ", version)
303
+ if version == 1:
304
+ prompt_template = est_une_etape_prompt_template()
305
+ elif version == 2:
306
+ prompt_template = est_une_etape_prompt_template_v3()
307
+ elif version == 3:
308
+ prompt_template = est_une_etape_prompt_template_v3_1()
309
+
310
 
311
  output_parser = PydanticOutputParser(pydantic_object=DetectionResult)
312