Spaces:
Sleeping
Sleeping
Update app.py
Browse files
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
|
6 |
index, documents = load_faiss_index()
|
7 |
embedder = get_embedding_model()
|
8 |
|
9 |
-
# Fonction
|
10 |
-
def
|
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 |
-
|
|
|
16 |
except Exception as e:
|
17 |
-
print("Erreur
|
18 |
-
|
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
|
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 |
-
|
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 |
+
|