Programmes commited on
Commit
188192e
·
verified ·
1 Parent(s): 947d949

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +12 -20
app.py CHANGED
@@ -1,41 +1,33 @@
1
-
2
  import gradio as gr
3
  from rag_utils import load_faiss_index, get_embedding_model, query_index, nettoyer_context, generate_answer
4
 
5
- # Chargement de l'index et du modèle d'embedding
6
  index, documents = load_faiss_index()
7
  embedder = get_embedding_model()
8
 
9
- # Fonction de réponse avec gestion d'erreur
10
- def ask_edu_pilot(message, history):
11
  try:
12
  context = query_index(message, index, documents, embedder)
13
  cleaned_context = nettoyer_context("\n".join(context))
14
  answer = generate_answer(message, cleaned_context)
15
- return answer
 
16
  except Exception as e:
17
- print("Erreur lors de l'appel au modèle :", e)
18
- return "😓 Le conseiller IA est temporairement indisponible. Merci de réessayer plus tard."
19
-
20
- # Message d'accueil dans le chat
21
- welcome_message = """👋 Bonjour ! Je suis **EduPilot**, ton conseiller IA.
22
-
23
- Pose-moi une question sur ton avenir scolaire, les filières, les écoles ou les métiers qui t'intéressent. 🎓"""
24
 
25
- # Interface Gradio stylisée
26
  with gr.Blocks(theme=gr.themes.Soft(primary_hue="blue", secondary_hue="yellow")) as demo:
27
  gr.Markdown("# 🎓 EduPilot - Chatbot d'Orientation IA")
28
  gr.Markdown("👋 Bonjour ! Je suis **EduPilot**, ton conseiller IA.\n\nPose-moi une question sur ton avenir scolaire, les filières, les écoles ou les métiers qui t'intéressent.")
29
 
30
  chatbot = gr.Chatbot(label="Conseiller IA")
31
  msg = gr.Textbox(placeholder="Exemple : Que faire après un bac pro ?", show_label=False)
 
32
 
33
- def respond(user_message, history):
34
- context = query_index(user_message, index, documents, embedder)
35
- cleaned = nettoyer_context("\n".join(context))
36
- answer = generate_answer(user_message, cleaned)
37
- return "", history + [[user_message, answer]]
38
-
39
- msg.submit(respond, [msg, chatbot], [msg, chatbot])
40
 
41
  demo.launch()
 
 
 
1
  import gradio as gr
2
  from rag_utils import load_faiss_index, get_embedding_model, query_index, nettoyer_context, generate_answer
3
 
4
+ # Chargement des données
5
  index, documents = load_faiss_index()
6
  embedder = get_embedding_model()
7
 
8
+ # Fonction pour traiter la question et générer une réponse
9
+ def respond(message, history):
10
  try:
11
  context = query_index(message, index, documents, embedder)
12
  cleaned_context = nettoyer_context("\n".join(context))
13
  answer = generate_answer(message, cleaned_context)
14
+ history.append((message, answer))
15
+ return "", history
16
  except Exception as e:
17
+ print("Erreur :", e)
18
+ history.append((message, "😓 Le conseiller IA est temporairement indisponible."))
19
+ return "", history
 
 
 
 
20
 
21
+ # Interface Gradio
22
  with gr.Blocks(theme=gr.themes.Soft(primary_hue="blue", secondary_hue="yellow")) as demo:
23
  gr.Markdown("# 🎓 EduPilot - Chatbot d'Orientation IA")
24
  gr.Markdown("👋 Bonjour ! Je suis **EduPilot**, ton conseiller IA.\n\nPose-moi une question sur ton avenir scolaire, les filières, les écoles ou les métiers qui t'intéressent.")
25
 
26
  chatbot = gr.Chatbot(label="Conseiller IA")
27
  msg = gr.Textbox(placeholder="Exemple : Que faire après un bac pro ?", show_label=False)
28
+ state = gr.State([]) # historique du chat
29
 
30
+ msg.submit(respond, [msg, state], [msg, chatbot, state])
 
 
 
 
 
 
31
 
32
  demo.launch()
33
+