Sarab98 commited on
Commit
77b103e
·
verified ·
1 Parent(s): 543d88c

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +29 -36
app.py CHANGED
@@ -1,40 +1,33 @@
1
- import gradio as gr
2
- from huggingface_hub import InferenceClient
3
 
4
- # Modèle librement accessible
5
- client = InferenceClient("bigscience/bloom-560m")
 
 
6
 
7
  # Prompt maître
8
- system_message = """Tu es un formateur de formateurs spécialisé en analyse réflexive des pratiques enseignantes.
9
- À partir du texte fourni, aide l'enseignant à approfondir sa réflexion professionnelle en suivant le modèle de Gibbs :
10
- Décrire objectivement les faits
11
- Exprimer les sentiments et émotions ressentis
12
- Évaluer ce qui a bien ou mal fonctionné
13
- Analyser les causes possibles de ces résultats
14
- • Conclure sur ce que tu pourrais améliorer
15
- • Proposer un plan d’action concret pour l’avenir
16
- Tes questions doivent impérativement faire le tour de ces étapes. Pose une seule question à la fois et attends la réponse avant de continuer.
17
- Réponds toujours aux questions de l'enseignant s'il en pose avant pour que l’échange soit fluide et interactif."""
18
-
19
- # Fonction de réponse
20
- def respond(message, history):
21
- messages = [{"role": "system", "content": system_message}]
22
- for val in history:
23
- if val[0]:
24
- messages.append({"role": "user", "content": val[0]})
25
- if val[1]:
26
- messages.append({"role": "assistant", "content": val[1]})
27
- messages.append({"role": "user", "content": message})
28
-
29
- response = ""
30
- for chunk in client.chat_completion(messages, max_tokens=150, stream=True):
31
- token = chunk.choices[0].delta.content
32
- response += token
33
- yield response
34
-
35
- # Interface Gradio
36
- demo = gr.ChatInterface(respond)
37
-
38
- if __name__ == "__main__":
39
- demo.launch(share=True)
40
 
 
1
+ from transformers import AutoTokenizer, AutoModelForCausalLM
2
+ import torch
3
 
4
+ # Charger le modèle
5
+ model_name = "Qwen/Qwen3-4B-Thinking-2507"
6
+ tokenizer = AutoTokenizer.from_pretrained(model_name)
7
+ model = AutoModelForCausalLM.from_pretrained(model_name, device_map="auto", torch_dtype=torch.float16)
8
 
9
  # Prompt maître
10
+ system_message = "Tu es un formateur de formateurs spécialisé en analyse réflexive des pratiques enseignantes."
11
+
12
+ # Exemple de conversation
13
+ messages = [
14
+ {"role": "system", "content": system_message},
15
+ {"role": "user", "content": "Salut, peux-tu analyser cette situation ?"}
16
+ ]
17
+
18
+ # Préparer l'entrée pour le modèle
19
+ inputs = tokenizer.apply_chat_template(
20
+ messages,
21
+ add_generation_prompt=True,
22
+ tokenize=True,
23
+ return_dict=True,
24
+ return_tensors="pt"
25
+ ).to(model.device)
26
+
27
+ # Génération de réponse
28
+ outputs = model.generate(**inputs, max_new_tokens=200)
29
+ response = tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:], skip_special_tokens=True)
30
+
31
+ print("Réponse de l'IA :", response)
32
+
 
 
 
 
 
 
 
 
 
33