Comment fabriquer un tchat bot en français
Cette page s'adresse tout principalement au débutant.
Comment fabriquer un tchatbot, tchat bot ou tchatter bot en français et facilement ?
Principe général du tchat bot
un utilisateur entre dans un fenêtre de tchat sa phrase et le robot lui répond du genre :
- bonjour robot
- salut l'humain !
Comment ça marche ?
Le programeur, (ou botmaster )créer des fichiers où il entrera ce que le robot doit reconnaitre et quelle répoonse il doit y apporter.
Tout d'abord, il nous faut un "logiciel", l'interpreteur.
C'est quoi ?
c'est un programe qui comprendra le code et le fera afficher dans une fenetre de tchat.
Il existe different interpreteur dans different language, notament les interpreteur du genre ALICE qui fonctione a partir de fichier AIML.
Nous on utilisera le Rivescript !
Pourquoi ?
Parcequ'il est beaucoup plus facile a utiliser et a programer, qu'on peut l'utiliser aussi bien en local sur son disque dure ou une clé usb que sur le web avec un site internet. voir le comparatif ici
Comment faire ?
D'abord, télécharger le programe ici
Une fois que c'est fait, vous vous retrouver avec un fichier .zip C'est une archive, il faut le décompresser sur votre disque dur sur c: par exemple
vous aurez alors un repertoir (dossier) nommé rivescript
Dans ce dossier, il y aura d'autres dossiers, celui qui nous interesse, c'est celui qui s'appel "eg"
car dans celui ci, se trouve les fichiers chat.html et index.html
Et alors ?
Ben c'est avec eux qu'on va faire marcher le robot. Il suffit de cliquer dessus et de les ouvrir ou l'un ou l'autre avec firefox (pas chrome, ça bug)
C'est quoi la difference entre ces deux fichiers ?
chat.html est entièrement fonctionel, mais il ouvre uniquement la fenetre de tchat, index.html, quant à lui, ouvre la fenêtre de tchat, mais aussi permet d'avoir la synthese vocal.
Voila, avec ça vous avez le robot. Il a quelques connaissance, mais tres peu.
Comment lui apprendre des choses ?
les connaissances du robot son stockées dans les fichier .rs du dossier eg/brain
vous avez déja cela :
activitepresente.rs
age.rs
cerveaudebase.rs
depart.rs
reactionbot.rs
substitutions.rs
variables.rs
Pourquoi plusieur fichiers ?
Pour structurer nos donnée par sujet de conversation, c'est plus simple ensuite de s'y retrouver.
Comment modifer les fichiers ?
Pour modifier le ou les cerveaux,:
utilisez un simple editeur de texte comme notpad, notpad2 (a préférer, on le trouve en téléchargement ici ).
Une fois que c'est fait, vous n'avez plus qu'a ouvrir un fichier .rs et écrire votre code.
Exemple, je veux que le robot sache dire bonjour quand on le salut
+ salut
- bonjour humain
ce que l'utilisateur entre et sur la ligne + ce que le robot doit répondre sur la ligne -
probléme, la ligne + salut ne fera que reconnaitre si l'on inscrit salut, mais ne reconnaitra pas pour "salut toi"
pour ça on utilisera le caractère *
+ salut *
- bonjour humain
reconnaitra donc :
salut toi
salut mariane
salut bernard
salut joli robot
etc.
Mais ne reconnaitra pas
"et bien salut toi" ou le simple "salut"
pour ça faudrait qu'on mette un * aussi devant le salut
Pour qu'il reconnaisse toute les vraiante, on se retrouvera donc avec un fichier
de ce style :
+ salut toi
- bonjour humain
+ * salut toi
- bonjour humain
+ * salut toi *
- bonjour humain
+ salut toi *
- bonjour humain
Là, votre robot reconnaitra tout.
Pour simplifer la programation au cas ou l'on veuille lui faire répondre autre chose que bonjour humain, on utilisera la commande @ qui renvera sur la phrase désigné
comme ça
+ salut
- bonjour humain
+ * salut
@salut
+ * salut *
@salut
+ salut *
@salut
Pour changer la réponse on n'aura qu'a changer dans la 2eme ligne.
Une autre commande interessante a utiliser, c'est [*]
car ce code remplace tout le groupe de code ci dessus.
+ [*] salut [*]
- bonjour humain
Alors pourquoi ne pas toujours l'utiliser ?
parceque [*] est tres puissant, et qu'il faut le manier avec précaution plus de détail ici
Vous voici armé pour continuer a programmer en rivescripte.
Le rivescript vous permet de faire énormément de chose, enregistrer des valeurs dans des variables, les comparer, utiliser des contitions etc. vous trouverez toutes les base
Quelque précisions qui vous éviterons de vous casser la tête bêtement (comment moi :) avant de vous lancer
Vos code rivescript doivent imperativement ne comporter ni majuscule ni accent ni apostrophe ni tiret dans les commandes !
meffiez vous des espaces ! la commande @ par exemple qui remplace le <srai> ne doit pas avoir d'espace
Pensez aussi à actualiser la page web dans votre navigateur pour que vos changement prenent effet.
google chrome ne fonctione pas en local, utilisez firefox.
ET Aussi
Si vous voulez ajouter d'autres fichiers, rien de plus simple, vous nomez votre ficher en .rs le metez dans le repertoire brain.
Il vous faut aussi modifier le fichier chat.html pour lui indiquer votre fichier suplémentaire, en le rajoutant a la suite des autres ici :
// Load our files from the brain/ folder. Inscrire ici vos fichiers cerveaux a ouvrir,
// entre les crochets attention a ne pas oublier la virgule finale
rs.loadFile([
"brain/activitepresente.rs",
"brain/age.rs",
"brain/cerveaudebase.rs",
"brain/depart.rs",
"brain/reactionbot.rs",
"brain/substitutions.rs",
"brain/variables.rs",
"brain/votrenouveaufichier.rs"
], on_load_success, on_load_error);
// fin insertion fichiers cerveaux
Attention, pas d'espace pas de majuscule pour votre nom de fichier ! ça créer parfois des bugs
Amusez vous bien