Bonjour, étudiant dans le domaine du développement web, je me passionne depuis quelques temps pour les robots de conversation (Chatbot) tel que Cleverbot, Igod, Alice ou encore Elbot. Un chatbot est un personnage virtuel, souvent à visage humain, accessible sur un site web et doté d’une intelligence artificielle qui lui permet de répondre de manière plus ou moins pertinente aux questions posées par les internautes par l’intermédiaire du clavier.
Généralités et avancement
Waelin est une intelligence articielle programmée en PHP et Javascript, elle a été conçu dans le but d'imiter le raisonnement humain afin de tenir des conversations simples et variées avec les internautes.
Son fonctionnement réside sur l'analyse syntaxique des phrases, la base de données de Waelin est pour le moment constituée de plus de 5000 couple de question/réponses.
Un interpréteur de commandes a été mis en place, pour le moment les commandes suivantes sont disponibles :
/help : Affiche la liste des commandes disponibles.
/reset : Rénitialise la conversation avec Waelin.
/news : Waelin récupère une liste des dernières actualités de la journée.
/search: Rechercher un ou plusieurs termes via bing. Exemple : /search ma recherche
/weather : Waelin vous donne la météo des villes françaises. Exemple : /weather paris
En dehors de ces commandes, Waelin dispose d'autres fonctionnalités, elle peut calculer des expressions mathématiques simples, vous donner des informations sur votre adresse ip, ainsi que vous donner l'heure et la date du jour.
Waelin possède son propre caractère ainsi que ses centres d'intérêts, n'hésiter donc pas à être original dans vos questions. Les logs des conversations sont ouverts au publique, il vous est donc possible de les consulter librement.
Objectifs
L'objectif sur le long-terme serais de rendre Waelin auto-apprenante et pourquoi pas la soumettre au test de turing.
Il y a une chose qui me dérange pas mal, c'est l'apparition des IP sur "Lire les conversations" c'est assez dérangeant. Tout les utilisateurs n'ont pas envies de voir leurs IP s'afficher pour tous.
welhorn>C'est pour sa qu'il y'a un petit temps de latence entre la question et la réponse c'est pas trop optimisé pour ce genre de services les fichiers texte
Il marche bien ton bot, j'ai parler avec lui quelques minutes, c'est très intéressant, au moins il sait suivre une conversation logique, des réponses bien pensés souvent, il m'a séduit, beau boulot
Je me demande quand même comment tu fait pour écrire çà en PHP
KestrelAL>Pour créer le système en lui même c'est plutôt simple sa ne demande pas plus d'une heure c'est de remplir la base de données de mots qui est compliqué
Ce qu'il ne faut pas entendre ... le core principal de l'application utilise plus de 35 fonctions basées sur des regex, soit un total de plus de 1600 lignes de codes, donc crois moi ce n'est vraiment pas faisable en moins d'une heure
Non mais ce qu'il voulait dire c'est que ton programme n'a rien de compliqué a faire s'il se base juste sur des couples questions réponses, deux ou trois effets mémoire.le système est simple et facile a mettre en oeuvre.
Sinon je trouve ton bot marrant. Quelques idées :
Un peu plus de random pour être moi s prévisible.
Gérer les multiples demandes par phrases.
Sinon deux trois questions :
Comment reconnait tu une phrase ? Et la réponse qui suit ? Peut il apprendre des phrases ? Qu'as tu de prévu pour l'améliorer ?
Les couples question/réponse sont composés de la sorte : la question (*)=la réponse 1|la réponse2|la réponse 3
- La partie avant le = correspond donc à la question posée par l'utilisateur, elle peut contenir ou non le joker (*) et ce à n'importe quel place dans la question, permettant de remplacer (*) par n'importe quel mot ou suite de mots.
- La partie après le = correspond aux différentes réponses du bot qui serons choisi aléatoirement, ces réponses sont séparées par le pipe |
- En plus de ce simple système, il existe une gestion de variables, par exemple si la réponse du bot contient <IP>, l'ip sera affichée en remplacement de la chaîne <IP>, il existe aussi une gestion du contexte, certaine réponse du bot ne sont disponibles seulement si une question précise a déjà étais posée précédemment.
- Pour le moment Waelin ne peut pas apprendre par elle même, mais je suis en train de travailler la-dessus.
- Concernant les évolutions futures, je compte ajouter une multitudes de commandes (utilitaires, jeux, ...) ainsi qu'un module TTS (Text To Speech).
L'univers le plus inhumain devient humain par la force de l'habitude.
L'univers le plus inhumain devient humain par la force de l'habitude.