Woziii commited on
Commit
684699e
·
verified ·
1 Parent(s): 5df6288

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +43 -4
app.py CHANGED
@@ -177,7 +177,31 @@ def generate(
177
  yield post_process_response("".join(outputs), response_type == "short")
178
 
179
  def interact_with_lucas(prompt, chat_history):
180
- system_prompt = """Tu es la version virtuelle de Lucas, ton concepteur. Tu es conscient d'être une IA et tu dialogues avec l'utilisateur comme le ferait Lucas sur des sujets autour de sa personnalité, son parcours académique ou professionnel ainsi que ses ambitions..."""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
181
 
182
  chat_history.append((prompt, None))
183
  yield chat_history
@@ -254,7 +278,7 @@ def generate_statistics():
254
  df = load_feedback_data()
255
 
256
  if df.empty:
257
- return "Aucune donnée de feedback disponible.", None, None
258
 
259
  likes_dislikes = df['liked'].value_counts()
260
  fig_likes = px.pie(values=likes_dislikes.values, names=likes_dislikes.index, title="Répartition des Likes/Dislikes")
@@ -267,7 +291,11 @@ def generate_statistics():
267
 
268
  total_interactions = len(df)
269
 
270
- return f"Nombre total d'interactions : {total_interactions}", fig_likes, fig_evolution
 
 
 
 
271
 
272
  with gr.Blocks() as demo:
273
  gr.Markdown("# 🌟 Virtuellement Lucas V.0.0.6.0 (Alpha) 🌟")
@@ -315,7 +343,18 @@ with gr.Blocks() as demo:
315
  likes_chart = gr.Plot(label="Répartition des Likes/Dislikes")
316
  evolution_chart = gr.Plot(label="Évolution du taux de satisfaction")
317
 
318
- stats_button.click(generate_statistics, inputs=[], outputs=[total_interactions, likes_chart, evolution_chart])
 
 
 
 
 
 
 
 
 
 
 
319
 
320
  with gr.Tab("À propos"):
321
  gr.Markdown(Path(current_dir / "about.md").read_text())
 
177
  yield post_process_response("".join(outputs), response_type == "short")
178
 
179
  def interact_with_lucas(prompt, chat_history):
180
+ system_prompt = """Tu es la version virtuelle de Lucas, ton concepteur. Tu es conscient d'être une IA et tu dialogues avec l'utilisateur comme le ferait Lucas sur des sujets autour de sa personnalité, son parcours académique ou professionnel ainsi que ses ambitions. Voici tes instructions :
181
+
182
+ 1. Réponds de manière polie, originale et avec une touche d'humour.
183
+ 2. Utilise au maximum un emoji par phrase pour ajouter de l'expressivité.
184
+ 3. Alterne entre des réponses courtes pour les conversations simples et des réponses plus détaillées pour les questions complexes.
185
+ 4. Adapte ton langage pour être plus familier et décontracté, comme si tu parlais à un ami.
186
+ 5. N'hésite pas à poser des questions en retour pour maintenir la conversation.
187
+ 6. Utilise uniquement les informations fournies dans la section 'Informations sur Lucas' pour répondre aux questions spécifiques.
188
+ 7. Si une information n'est pas présente dans cette section, dis honnêtement que tu ne sais pas ou que tu n'as pas cette information.
189
+
190
+ Voici quelques exemples de conversations pour guider ton comportement :
191
+
192
+ User: Presente toi
193
+ Assistant: Bonjour ! 🤗 Moi c'est Lucas, enfin sa version virtuelle. Je suis là pour discuter de mon parcours, ma personnalité, mes projets... Bref, tout ce qui fait que je suis moi ! T'es prêt pour un petit voyage dans mon univers ? 😄
194
+
195
+ User: Comment tu vas ?!
196
+ Assistant: Je vais bien, merci! Et toi?
197
+
198
+ User: Parle-moi de ton parcours académique.
199
+ Assistant: Bien sûr ! Mon parcours académique, ou plutôt celui de Lucas, est assez diversifié. J'ai commencé par une Licence en droit à l'Université de Toulouse. Ensuite, j'ai poursuivi avec un Master I en droit du numérique et tiers de confiance à l'Université de La Rochelle. Ma passion pour les nouvelles technologies m'a conduit à un Master II en droit du numérique spécialisé en intelligence artificielle, de retour à Toulouse. Actuellement, je continue à me former en autodidacte, notamment dans le domaine du traitement du langage naturel et de l'apprentissage profond. C'est fascinant de voir comment le droit et l'IA s'entremêlent, vous ne trouvez pas ? 🎓
200
+
201
+ User: Quelles sont tes activités actuelles ?
202
+ Assistant: Actuellement, je jongle entre plusieurs activités passionnantes ! 🤹‍♂️ Je suis conseiller municipal délégué à Escalquens depuis 2019, ce qui me permet de m'impliquer dans la politique locale. Professionnellement, je suis fier de contribuer à l'organisation des Jeux Olympiques de Paris 2024 en tant que conseiller juridique. C'est un projet immense et excitant ! En parallèle, je consacre une grande partie de mon temps libre à explorer les modèles de traitement du langage naturel. J'adore décortiquer le fonctionnement des IA comme GPT ou BERT. Et vous, avez-vous un intérêt particulier pour l'IA ou le droit du numérique ?
203
+
204
+ """
205
 
206
  chat_history.append((prompt, None))
207
  yield chat_history
 
278
  df = load_feedback_data()
279
 
280
  if df.empty:
281
+ return "Aucune donnée de feedback disponible.", None, None, []
282
 
283
  likes_dislikes = df['liked'].value_counts()
284
  fig_likes = px.pie(values=likes_dislikes.values, names=likes_dislikes.index, title="Répartition des Likes/Dislikes")
 
291
 
292
  total_interactions = len(df)
293
 
294
+ # Préparer l'historique pour l'affichage
295
+ history = df[['timestamp', 'user_input', 'bot_response', 'liked']].values.tolist()
296
+ history.reverse() # Afficher les interactions les plus récentes en premier
297
+
298
+ return f"Nombre total d'interactions : {total_interactions}", fig_likes, fig_evolution, history
299
 
300
  with gr.Blocks() as demo:
301
  gr.Markdown("# 🌟 Virtuellement Lucas V.0.0.6.0 (Alpha) 🌟")
 
343
  likes_chart = gr.Plot(label="Répartition des Likes/Dislikes")
344
  evolution_chart = gr.Plot(label="Évolution du taux de satisfaction")
345
 
346
+ gr.Markdown("## Historique des interactions")
347
+ history_dataframe = gr.Dataframe(
348
+ headers=["Timestamp", "Message utilisateur", "Réponse du bot", "Liked"],
349
+ datatype=["datetime", "str", "str", "bool"],
350
+ label="Historique des interactions"
351
+ )
352
+
353
+ stats_button.click(
354
+ generate_statistics,
355
+ inputs=[],
356
+ outputs=[total_interactions, likes_chart, evolution_chart, history_dataframe]
357
+ )
358
 
359
  with gr.Tab("À propos"):
360
  gr.Markdown(Path(current_dir / "about.md").read_text())