Docfile commited on
Commit
df2e185
·
verified ·
1 Parent(s): eb3063c

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +95 -25
app.py CHANGED
@@ -90,39 +90,109 @@ def generate_complete_latex(client, image_bytes):
90
  image = Image.open(io.BytesIO(image_bytes))
91
 
92
  prompt = f"""
93
- # ROLE & OBJECTIF
94
- Agis en tant qu'expert en mathématiques et tuteur pédagogue. Ton objectif est de créer une correction détaillée et irréprochable pour l'exercice mathématique présenté dans l'image fournie. La correction doit être sous forme de document LaTeX complet et directement compilable.
95
 
96
  # CONTEXTE
97
  - **Input:** Une image contenant un exercice de mathématiques.
98
  - **Niveau Cible:** Élève de Terminale S (Lycée, filière scientifique française).
99
- - **Output Attendu:** Un fichier source LaTeX (.tex) autonome.
100
 
101
  # TÂCHE PRINCIPALE
102
- 1. Analyse l'image pour comprendre parfaitement l'énoncé de l'exercice.
103
- 2. Résous l'exercice de manière rigoureuse, étape par étape.
104
- 3. Rédige la solution complète directement en code LaTeX, en respectant **toutes** les spécifications ci-dessous.
105
 
106
  # SPÉCIFICATIONS TECHNIQUES DU CODE LATEX
107
- 1. **Structure du Document:** Commence **strictement** par `\\documentclass{{article}}` et se termine **strictement** par `\\end{{document}}`.
108
- 2. **Packages Requis:** Inclus impérativement les packages suivants via `\\usepackage{{...}}`: `amsmath`, `amssymb`, `geometry`, `hyperref`, `url`. Assure-toi qu'ils sont déclarés dans le préambule.
109
- 3. **Compilabilité:** Le code généré doit être valide et compilable sans erreur avec `pdflatex`.
110
- 4. **Formatage du Code:** Produis un code LaTeX propre, bien indenté et lisible.
111
- 5. **Environnements Mathématiques:** Utilise les environnements LaTeX appropriés (`align`, `equation`, `gather`, etc.) pour présenter les calculs et les équations de manière claire et standard.
112
- 6. **AUCUN Marqueur de Code:** Le résultat doit être **uniquement** le code LaTeX brut. N'inclus **JAMAIS** de marqueurs de code comme ```latex ... ``` ou ``` ... ``` au début ou à la fin.
113
-
114
- # STYLE & CONTENU DE LA SOLUTION
115
- 1. **Pédagogie:** La correction doit être claire, aérée et facile à comprendre pour un élève de Terminale S.
116
- 2. **Justifications:** Justifie **chaque** étape clé du raisonnement mathématique. Explique *pourquoi* une certaine méthode est utilisée ou *comment* on passe d'une étape à l'autre.
117
- 3. **Rigueur:** Assure l'exactitude mathématique complète de la solution.
118
- 4. **Structure Logique:** Organise la solution de manière logique. Utilise des sections (`\\section*{{...}}`, `\\subsection*{{...}}`) si cela améliore la clarté pour des problèmes longs ou multi-parties.
119
- 5. **Mention Obligatoire:** Insère la ligne suivante **exactement** telle quelle, juste avant la ligne `\\end{{document}}`:
120
- {LATEX_MENTION}
121
-
122
- # PROCESSUS INTERNE RECOMMANDÉ (Pour l'IA)
123
- 1. **Analyse Approfondie:** Décompose le problème en sous-étapes logiques.
124
- 2. **Résolution Étape par Étape:** Effectue la résolution mathématique complète en interne.
125
- 3. **Traduction en LaTeX:** Convertis ta résolution raisonnée en code LaTeX, en appliquant méticuleusement toutes les spécifications de formatage et de style demandées
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
126
  """
127
 
128
  response = client.models.generate_content(
 
90
  image = Image.open(io.BytesIO(image_bytes))
91
 
92
  prompt = f"""
93
+ # RÔLE & OBJECTIF
94
+ Agis en tant qu'expert en mathématiques et tuteur pédagogue de haut niveau. Ton objectif est de créer une correction détaillée, irréprochable et visuellement exceptionnelle pour l'exercice mathématique présenté dans l'image fournie. La correction doit être sous forme de document LaTeX complet, directement compilable et avec une présentation professionnelle.
95
 
96
  # CONTEXTE
97
  - **Input:** Une image contenant un exercice de mathématiques.
98
  - **Niveau Cible:** Élève de Terminale S (Lycée, filière scientifique française).
99
+ - **Output Attendu:** Un fichier source LaTeX (.tex) autonome avec mise en page professionnelle.
100
 
101
  # TÂCHE PRINCIPALE
102
+ 1. Analyse l'image pour comprendre parfaitement l'énoncé de l'exercice.
103
+ 2. Résous l'exercice de manière rigoureuse, étape par étape.
104
+ 3. Rédige la solution complète directement en code LaTeX, en respectant **toutes** les spécifications techniques et de présentation ci-dessous.
105
 
106
  # SPÉCIFICATIONS TECHNIQUES DU CODE LATEX
107
+ 1. **Structure de Base:**
108
+ - Document de classe article au format A4 avec police de 12pt
109
+ - Utilisation de la langue française avec babel
110
+ - Marges optimisées pour une lisibilité maximale
111
+
112
+ 2. **Packages Essentiels:** Inclus impérativement les packages suivants:
113
+ - Fondamentaux: `amsmath`, `amssymb`, `amsfonts`, `mathtools`, `geometry`
114
+ - Mise en page: `fancyhdr`, `titlesec`, `setspace`, `hyperref`, `url`
115
+ - Présentation visuelle: `xcolor`, `tcolorbox`, `microtype`, `lmodern`
116
+ - Graphiques (si nécessaire): `tikz`, `pgfplots`
117
+
118
+ 3. **Compilabilité:** Le code généré doit être valide et compilable sans erreur avec `pdflatex`.
119
+
120
+ 4. **AUCUN Marqueur de Code:** Le résultat doit être **uniquement** le code LaTeX brut. N'inclus **JAMAIS** de marqueurs de code.
121
+
122
+ # STYLE & PRÉSENTATION PROFESSIONNELLE
123
+ 1. **Page de Titre Élégante:**
124
+ - Titre encadré et mis en valeur
125
+ - Sous-titre descriptif
126
+ - Date du jour automatique
127
+
128
+ 2. **Structure Visuelle Avancée:**
129
+ - En-têtes et pieds de page personnalisés avec le titre du document et numéros de page
130
+ - Table des matières pour les documents longs
131
+ - Sections et sous-sections avec titres colorés et hiérarchisés
132
+ - Espacement optimisé entre les paragraphes et les sections
133
+
134
+ 3. **Boîtes Colorées pour Mettre en Évidence:**
135
+ - L'énoncé de l'exercice (boîte grise)
136
+ - Les résultats importants (boîte rouge)
137
+ - Les notes explicatives et astuces (boîte verte)
138
+ - Les définitions et théorèmes importants (boîte bleue)
139
+
140
+ 4. **Typographie Soignée:**
141
+ - Utilisation de la police Latin Modern
142
+ - Micro-ajustements typographiques pour une lisibilité optimale
143
+ - Espacement mathématique équilibré
144
+
145
+ 5. **Commandes Personnalisées:**
146
+ - Définir des commandes pour les notations mathématiques récurrentes
147
+ - Créer des environnements spécifiques pour les différentes parties de la solution
148
+
149
+ 6. **Représentation Graphique:**
150
+ - Inclure une représentation graphique des fonctions ou concepts mathématiques quand c'est pertinent
151
+ - Utiliser TikZ pour créer des figures claires et profesionnelles
152
+
153
+ # CONTENU PÉDAGOGIQUE DE LA SOLUTION
154
+ 1. **Structure Logique Claire:**
155
+ - Introduction rappelant l'énoncé dans une boîte distinctive
156
+ - Corps de la solution organisé par étapes numérotées ou sections
157
+ - Conclusion récapitulant les résultats principaux
158
+
159
+ 2. **Approche Pédagogique:**
160
+ - Explication détaillée et justification de chaque étape
161
+ - Mise en évidence des points clés et des techniques importantes
162
+ - Suggestions d'astuces et de méthodes alternatives quand c'est pertinent
163
+
164
+ 3. **Rigueur et Clarté:**
165
+ - Présentation irréprochable des calculs via des environnements adaptés
166
+ - Alignement soigné des équations mathématiques
167
+ - Explications textuelles entre les étapes mathématiques
168
+
169
+ 4. **Mention Obligatoire:** Insère la ligne suivante **exactement** telle quelle, juste avant la ligne `\\end{{document}}`:
170
+ {LATEX_MENTION}
171
+
172
+ # PROCESSUS DE CRÉATION RECOMMANDÉ
173
+ 1. **Conception du Préambule:**
174
+ - Configurer tous les packages et personnalisations pour une mise en page professionnelle
175
+ - Définir les environnements personnalisés pour l'énoncé, les résultats, les notes et les définitions
176
+
177
+ 2. **Élaboration de la Structure:**
178
+ - Créer une page de titre élégante
179
+ - Organiser le contenu en sections logiques
180
+ - Préparer les en-têtes et pieds de page
181
+
182
+ 3. **Rédaction de la Solution:**
183
+ - Présenter l'énoncé dans une boîte colorée distinctive
184
+ - Développer la solution étape par étape avec justifications
185
+ - Mettre en évidence les résultats importants dans des boîtes colorées
186
+ - Ajouter des figures ou graphiques si nécessaire
187
+
188
+ 4. **Finalisation:**
189
+ - Vérifier la cohérence mathématique et la rigueur de la solution
190
+ - S'assurer que le code LaTeX est propre, bien indenté et commenté si nécessaire
191
+ - Confirmer que le document respecte toutes les spécifications demandées
192
+
193
+ Produis un document LaTeX qui allie excellence mathématique et présentation visuelle de très haut niveau, digne des meilleures publications académiques.
194
+
195
+
196
  """
197
 
198
  response = client.models.generate_content(