🤖 Projet NSI (remp.) : Créer un Chatbot en Python (2H) 📝
Indications :
- Vous pouvez utiliser une IA (comme ChatGPT, MistralAI ou autre) comme aide, mais vous devez comprendre chaque ligne de votre code !
- À la fin de la séance, un représentant de chaque groupe devra présenter le chatbot et expliquer son fonctionnement.
Objectif :
Programmer un chatbot interactif capable de répondre à des questions simples, avec des possibilités d'amélioration.
Concepts révisés :
- Utilisation de
print()
etinput()
pour l’interaction utilisateur. - Structures conditionnelles
if/else
. - Utilisation de boucles
while
pour une interaction continue.
Étape 1 : Démarrage 🚀
Exercice : Commencez par un programme minimal :
- Affiche une salutation.
- Lit la question posée par l'utilisateur.
- Affiche une réponse en fonction de mots-clés.
# Étape 1 : Squelette du chatbot
print("Bonjour ! Je suis votre assistant virtuel.") # Affiche une salutation
utilisateur = input("Comment puis-je vous aider aujourd'hui ? ") # Lit la question posée par l'utilisateur
if "météo" in utilisateur: # Si l'utilisateur parle de la météo
print("Je ne suis pas connecté à la météo, mais je ne pense pas qu'il va pleuvoir à Dubaï, vous ne finirez pas à 14H30")
elif "heure" in utilisateur: # Si l'utilisateur parle de l'heure
print("Désolé, je ne porte pas de montre, je ne connais l'heure.")
else: # Sinon, réponse par défaut
print("Je ne comprends pas votre demande, mais tu vas m'aider à me développer !")
Étape 2 : Interaction plus riche 💡
Exercice : Ajoutez de nouvelles questions et réponses pour rendre le chatbot plus utile.
Par exemple :
- "Raconte-moi une blague."
- "Quel est le cours aujourd'hui ?"
# Étape 2 : Enrichissement des réponses
print("Bienvenue dans la discussion !") # Message de bienvenue
while True: # Boucle infinie pour poser plusieurs questions
utilisateur = input("Pose-moi une question (ou Ă©cris 'quit' pour quitter) : ") # Lit la question
if utilisateur == "quit": # Si l'utilisateur Ă©crit "quit", on quitte la boucle
print("Au revoir !")
break
elif "blague" in utilisateur: # Si l'utilisateur demande une blague
print("Qu'est-ce qui est jaune et qui attend? Jo-Jo-Jonaaaathan")
elif "cours" in utilisateur: # Si l'utilisateur demande le cours
print("Aujourd'hui, vous réalisez un chatbot en Python avec Mr. SALAH")
else: # Réponse par défaut
print("Je ne sais pas répondre à cette question.")
Étape 3 : Personnalisation ✨
Exercice : Donnez à votre chatbot un nom et ajoutez des réponses personnalisées.
Par exemple, le chatbot pourrait dire :
- "Je suis SquidBot42, votre assistant virtuel !"
- Affichez un message différent si une question contient le mot "NSI".
Étape 4 : Amélioration 🛠️
Consigne : Prenez le temps d'améliorer votre chatbot :
- Ajoutez de nouvelles questions/réponses créatives.
- Personnalisez l'affichage (par exemple, ajoutez des emojis).
Vous pouvez utiliser une IA comme aide, mais vous devez comprendre chaque ligne de code !
Étape 5 : Présentation 🎤
À la fin de la séance :
- Chaque binôme ou élève présente son chatbot en expliquant le fonctionnement de son code.
- Partagez vos idées pour améliorer le projet.
🎉 Bravo, vous avez créé un chatbot Python ! 🎉
Suggestions d'amélioration :
- Ajouter des fonctions pour organiser le code.
- Intégrer une interface utilisateur simple avec une bibliothèque comme
tkinter
. - Utiliser une base de données de questions/réponses.
🚀