MisterAI commited on
Commit
dceb8da
·
verified ·
1 Parent(s): a89c810

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +14 -9
app.py CHANGED
@@ -13,7 +13,7 @@ import torch
13
  from llama_cpp import Llama
14
  import time
15
 
16
- # Configuration des modèles disponibles
17
  TEXT_MODELS = {
18
  "Utter-Project_EuroLLM-1.7B": "utter-project/EuroLLM-1.7B",
19
  "Mistral Nemo 2407 (GGUF)": "MisterAI/Bartowski_MistralAI_Mistral-Nemo-Instruct-2407-IQ4_XS.gguf",
@@ -111,18 +111,24 @@ class PresentationGenerator:
111
  )
112
  return response['choices'][0]['text']
113
  else:
114
- inputs = tokenizer.apply_chat_template(
115
- [{"role": "user", "content": prompt}],
 
116
  return_tensors="pt",
117
- return_dict=True
118
- )
 
 
119
  outputs = model.generate(
120
  **inputs,
121
  max_new_tokens=max_tokens,
122
- temperature=temperature
 
 
123
  )
124
  return tokenizer.decode(outputs[0], skip_special_tokens=True)
125
 
 
126
  def parse_presentation_content(self, content):
127
  """Parse le contenu généré en sections pour les diapositives"""
128
  slides = []
@@ -170,6 +176,7 @@ class PresentationGenerator:
170
 
171
  return prs
172
 
 
173
  def generate_skeleton(text, text_model_name, temperature, max_tokens):
174
  """Génère le squelette de la présentation"""
175
  try:
@@ -212,7 +219,7 @@ def create_presentation_file(generated_content):
212
  print(f"Erreur lors de la création du fichier: {str(e)}")
213
  return None
214
 
215
- # Interface Gradio
216
  with gr.Blocks(theme=gr.themes.Glass()) as demo:
217
  gr.Markdown(
218
  """
@@ -295,5 +302,3 @@ with gr.Blocks(theme=gr.themes.Glass()) as demo:
295
  if __name__ == "__main__":
296
  demo.launch()
297
 
298
-
299
-
 
13
  from llama_cpp import Llama
14
  import time
15
 
16
+ # [Configuration des modèles et PREPROMPT restent identiques]
17
  TEXT_MODELS = {
18
  "Utter-Project_EuroLLM-1.7B": "utter-project/EuroLLM-1.7B",
19
  "Mistral Nemo 2407 (GGUF)": "MisterAI/Bartowski_MistralAI_Mistral-Nemo-Instruct-2407-IQ4_XS.gguf",
 
111
  )
112
  return response['choices'][0]['text']
113
  else:
114
+ # Modification ici pour gérer les modèles sans chat template
115
+ inputs = tokenizer(
116
+ prompt,
117
  return_tensors="pt",
118
+ truncation=True,
119
+ max_length=4096
120
+ ).to(model.device)
121
+
122
  outputs = model.generate(
123
  **inputs,
124
  max_new_tokens=max_tokens,
125
+ temperature=temperature,
126
+ do_sample=True,
127
+ pad_token_id=tokenizer.eos_token_id
128
  )
129
  return tokenizer.decode(outputs[0], skip_special_tokens=True)
130
 
131
+ # [Le reste de la classe PresentationGenerator reste identique]
132
  def parse_presentation_content(self, content):
133
  """Parse le contenu généré en sections pour les diapositives"""
134
  slides = []
 
176
 
177
  return prs
178
 
179
+ # [Les fonctions generate_skeleton et create_presentation_file restent identiques]
180
  def generate_skeleton(text, text_model_name, temperature, max_tokens):
181
  """Génère le squelette de la présentation"""
182
  try:
 
219
  print(f"Erreur lors de la création du fichier: {str(e)}")
220
  return None
221
 
222
+ # [L'interface Gradio reste identique]
223
  with gr.Blocks(theme=gr.themes.Glass()) as demo:
224
  gr.Markdown(
225
  """
 
302
  if __name__ == "__main__":
303
  demo.launch()
304