je viens de tester ton chatbot, il est vraiment super. Juste un petit problème:
Waelin > Et toi, tu t'appelles comment ?
Vous > Hugo
Waelin > C'etait un ecrivain francais. Il a ecrit des poesies (les feuilles d'automnes en 1831, Les chants du crepuscule en 1835, les voix interieures en 1837....), des romans (Notre dame de paris en 1831,les miserables en 186 et l'homme qui rit en 1869)...Il mourra a paris en 1885.
- Etoile Filante : C'est étrange, je n'ai constaté aucun soucis de ce genre sous Chrome, essaye de vider le cache.
- Stephan1932 : Merci du retour Pour le moment je ne compte pas partager les sources de Waelin.
- huluti : Il y avait en effet un petit bug présent dans le cerveau principal de Waelin, elle donnera désormais la réponse citée quand elle rencontrera le nom "Victor Hugo".
- huluti : Il y avait en effet un petit bug présent dans le cerveau principal de Waelin, elle donnera désormais la réponse citée quand elle rencontrera le nom "Victor Hugo".
Ça illustre parfaitement le gros defaut de ton logiciel. Il ne fait presque exclusivement que réagir à des termes sans prendre en compte la discussion en cours. Ça n'a pas de sens ton changement. Le probleme n'est pas que cette réponse doit etre déclenché si le mec tape "victor hugo" plutot que "hugo", le probleme est que tu lui demande son nom, il doit l'accepter meme si ça correspond à un truc de la base.
Demonstration :
Vous > tu t'appel comment ?
Waelin > Et toi, quel est ton nom ?
Vous > Victor Hugo
Waelin > C'etait un ecrivain francais. Il a ecrit des poesies (les feuilles d'automnes en 1831, Les chants du crepuscule en 1835, les voix interieures en 1837....), des romans (Notre dame de paris en 1831,les miserables en 186 et l'homme qui rit en 1869)...Il mourra a paris en 1885.
Ça n'a pas de sens ! Dans l'ideal il me répondrait "ha tiens, comme l'ecrivains ?". Mais je trouve déjà moins choquant qu'il réponde "Ok, bonjour Victor Hugo !" ou un truc du genre.
Ce sont des remarques que je pense constructives. Tu as probablement fait un travail énorme pour constituer ta base de données. Mais on arrive vite à ses limites. Tu ne fais pas d'interpretation par rapport au contexte. Car ce n'est pas faisable qu'avec une phrase.
La réponse "Victor Hugo" ne devrait pas générer la meme réponse si elle suit une question type "comment tu t'appels ?" (Là il faut prendre en considération que c'est la réponse à une question) ou si elle suit une demande d'info (ton robot "tu veux des infos sur quoi ?", moi " victor hugo", ton robot "c'est un ecrivain ...").
Bref je te felicite pour tout ton travail, tu as vraiment dut y passer du temps pour que ça semble realiste avec un dictionnaire comme ça, mais si tu veux évoluer, ce n'est plus en le completant. Il faut déjà qu'il soit capable de s'adapter au contexte.
Bonjour Kristofjé, j'accepte toute remarque du moment qu'elle est constructive comme la tienne
Concernant le fait que Waelin sorte la définition en dehors du contexte, a savoir ici le fait qu'elle demande le nom de l'utilisateur, c'est simplement du à l'ordre d'analyse des éléments, ici elle à reconnu victor hugo, elle sait qu'il existe une correspondance dans son cerveau principal, donc elle ressort directement la réponse sans passer par la prise en compte du contexte, car oui, en principe elle prends en compte le contexte, mais cela n'est pas forcément applicable à tous les types de discussion pour le moment, comme je l'ai déjà dit, Waelin en est encore à ses débuts, elle évoluera avec le temps
Pourtant je pense que le contexte devrais arriver avantla recherche de correspondance. Car pour le coup le contexte et son analyse doit guider la recherche dans le dico.
Pour grandement simplifier à ce cas, il devrais d'abord regarder si la réponse est logique suivant le contexte "je lui est demandé comment il s'appel, il me répond "victor hugo". Est ce que ça peut etre son nom ? oui donc je le prend en compte.
D'ailleurs au passage tu devrais rajouter de la semantique à ta base de données. Les exemples ne manquent pas ou un mot peut, par exemple, etre à la foit des nom commun et des noms propres.
Pour moi, toujours suivant cet exemple, ta base devrait a minima comporter ce genre d'info. Je vais mettre les mots déclencheur entre guillemet, les meta-donné entre crochet et des debut de données complete entre parenthese. Tu devrais d'ailleurs permettre de lier des elements de ta biblioteque (ex ici avec "victor hugo" dans l'une des description du nom "hugo").
"Victor" > [prénom] (Victor est un prénom d'origine...)
"Hugo" > [prénom] (Hugo est un prénom d'origine...)
>[nom] (Hugo est un nom de famille entre autre porté par l'ecrivain "victor hugo" )
"Victor Hugo" > [Personne célebre](ecrivain ...)
bon ici le fait de répertorier les nom de famille est probablement too much mais l'idée est là. Tu lui demande son prénom. Il fournit une réponse. Commence donc par analyser cette réponse avec le contexte ! Il y a plus de chance que l'utilisateur réponde à ta question plutot qu'il change tout a fait de sujet. Donc là il répond "Victor Hugo". Ok "Victor" est dans ma base, c'est un prénom. La suite "Hugo" à la suite de son prénom peut tres bien etre son nom de famille => Ok il s'appel victor Hugo. Par contre j'ai aussi dans ma base quelqu'un qui s'appel déjà comme ça. Je peux lui demander si c'est lui du coup, ou si il s'appel réellement comme lui. Ou mieux, si la date du deces est enregistrer en meta-donné, je peux l'utiliser : "Tu t'appel Victor Hugo ? Comme celui mort en NNN ?"
Bref, j'en reviens a mes conseils :
Le contexte est plus important que la base de questions/réponses : Si tu pose une question il est plus probable que le type te réponde plutot qu'il change totalement de sujet. En l'occurence avec le prénom, quand tu lui pose la question, instinctivement je dirais que la personne va répondre par ordre de probabilité :
Son prénom (ou un pseudo mais on s'en fout, un truc simple de un ou deux mot)
un truc genre "Non je ne veux pas te le dire"
Un changement total de sujet.
Il faut que ta base soit plus complete que des simples clés/valeurs. Il doit y avoir des infos contextuel. Que va tu faire pour le mot "Paris" ? C'est la ville ou le verbe parier ?
Il faut agrémenter ta base de meta-donnée pour contextualisé la discussion et pouvoir affiner tes deductions.
apres, c'est du technique, mais il faut qu'elle puisse etre accédé selon plusieurs angle (ta base de donnée).
voila bonne chance pour la suite. Mais si tu veux vraiment améliorer ton robot, tu devrais vraiment restructurer la prise en compte du contexte. Là on voit vite les limites.
Merci de ta réponse, mais comme je te l'ai dit Waelin prends déjà en compte le contexte, il y a seulement un soucis au niveau de la priorité d'analyse, je me penche la dessus en ce moment, la preuve, répond avec un autre nom, genre "bob" a sa question et tu verra qu'elle mémorisera ce nom pour le ressortir plus tard au besoin ou si tu lui redemande.
je suis bluffé ! Ton programme est tout simplement énorme !
Projet très intéressant que je suivrais de près !
Bravo !
GeGeek.fr, astuces, tutoriels, informations, liens utiles..WoltLab.net , support francophone, traductions et personnalisations pour votre forum.ProWeb style pour WotLab Burning Board 3.
Bonjours à tous ! une petite mise à jour du topic pour dire qu'une page Facebook vient d'être créer !
Vous trouverez le bouton "J'aime" en haut à droite du site.
Le but de cette page sera d'informer sur les dernières mise à jour de Waelin, mais aussi de servir de support de discussion pour les sujets concernant les chatbots et les intelligences artificielles de toutes sortes.
Waelin est déjà capable de répondre à des questions usuelles, il faut seulement lui en ajouter dans sa DB n'hésite pas à me MP si tu a des propositions de questions non présentes.
Bonjour à tous ! j'aurais aimer avoir votre avis sur le fait d'implanter quelques jeux à Waelin, comme par exemple des quizz sur divers sujet, un jeu de pendu, de dé ou encor du plus ou du moins, je suis preneur si vous avez d'autre idées de jeux similaire applicable dans un chatbot
Ca pourrait être drôle d'un point de vue pratique, mais du point de vue technique ça n'a rien d'extraordinaire... ou en tout cas pas avec les jeux que tu as proposé :/
Je suis tout à fait conscient que sa n'apporte rien niveau technologique, je proposais cela pour ajouter des fonctionnalités et améliorer les intéractions possibles avec Waelin, voila tout
>Vous > Pourquoi le poulet traverse la route ?
Waelin > Et pourquoi pas ?
Vous > Très bien. Pourquoi le poulet ne traverse t'il pas la route ?
Waelin > Ben...C'est comme ca, c'est tout !
Ton projet est vraiment remarquable ? Tu a du passer énormément de temps.
Vous > je regarde la tele
Waelin > Tu as la chance de pouvoir voir...
Vous > pourquoi un robot ne voit pas ?
Waelin > Ceci dit, ma fonction est de discuter, donc ça ne me manque pas. Un système pour entendre ça serait pas mal.
Vous > quand compte tu voir ?
Waelin> Il faudrait que mon programmeur me dote d'un système de reconnaissance visuelle, reconnaissance vocale, tactile...d'un corps ? Aaah, je rève là. L'important, avant toute chose, ce serait d'avoir une bonne intelligence artificielle.
Cela serait bien d analyser encore plus loin ...
Ex : je parle de tintin, il connaît mais pas capitaine hadock ? mille sabord
Très impressionné ! Le site est super beau, le robot rapide, est plutôt bien fichu !! Je voulais m'intéresser à la programmation de robot de la sorte, aurais tu des liens de tuto sur lesquels tu te serais penché ? Ou du moins, un point de départ ?
Sinon j'ai remarqué une chose: il comprend la question "quel est ton nom ?" mais pas "comment t'appelles tu ?", j'ai mit un moment à remarquer que je posais pas la bonne question.
Un passage qui m'a bluffé:
Vous > quelle est la couleur du cheval blanc d'henri 4 ? Waelin > Euh...blanc ? C'est quoi cette question ? Tu me testes ?
Vous > quelle est la couleur du cheval vert d'henri 4 ? Waelin > Qu'est-ce que tu racontes, avec tes chevaux colorés !
Y a encore quelques problème, mais après un passage en survol, je crois que c'est en voie d'être régler
Waelin > Bon ok dit moi ton vrai nom.
Vous > Batman
Waelin > Ce super-heros a été créé par Bill Finger et Bob Kane dans Detective Comics. Costumé en chauve souris, il arpente les rues d'une ville imaginaire(Gotham city)traquant les malfaiteurs afin de venger ses parents. Bruce Wayne, son alter ego, est bourré de fric.
Mais rien que pour ça, je te dit bravo, il m'a tué xD
Waelin > J'ai beau être encore jeune, je suis capable de détecter quand un utilisateur se moque de moi en répétant la même chose hein
Il y a de ça un moment, je suivais un projet d'IA (si on peut vraiment qualifier Waelin d'IA étant donné qu'elle ne réfléchis pas) sur le SdZ, je ne me souviens plus du nom exact mais il me semble que c'est Ted.
J'ai quelques idées pour ton projet d'apprentissage que Ted m'a inspiré, du moins les propositions que les personnes ont fait sur le forum car je n'ai jamais vu un seul morceau de ce Ted et le topic a finit dans les abysses les plus profondes de cette section.
Par exemple, quand Waelin ne connait pas quelque chose les utilisateurs pourrait l'aider à compléter sa BDD, et à partir de X réponses identiques (par exemple 50) une alerte demande à l'admin de vérifier la véracité des réponses. Une fois choses faites Waelin apprend une nouvelle chose.
Pascal Prugna | Développeur Web