Juste après avoir découvert
Mathetes, j'ai eu envie d'expérimenter un bot capable d'apprendre des phrases en réponse à d'autres phrases. Un bot semblable
à JabberWacky, qui associe une phrase aux réponses qu'il en obtenues.
Ainsi, quand il reconnaît une phrase, il peut choisir (en fonction des co-occurrences observées) une réponse déjà reçue. Ca donne des résultats beaucoup plus convaincants que ceux d'
Ector, du point de vue grammatical.
Ainsi est né
ACHOR (je cherche une signification à ce sigle: Agent Conversationnel Hyper Obligé de Répondre?), qui est aussi rapide qu'
Achille, car il utilise un système stimulus-réponse, et capable d'apprendre simplement comme
Ector.
En fait, ce genre de programme est simple à écrire (je l'ai fait en 3 soirées). Le plus compliqué (que je n'ai pas encore fait, mais j'ai une bonne idée de comment le faire), c'est l'algorithme de reconnaissance des phrases en entrées.
En effet, si on utilise une comparaison stricte des chaînes de caractères, on a peu de chances de tomber sur une phrase déjà connue (à part des choses comme "Bonjour", "Au revoir.", "Ca va?", et encore, il faut tenir compte de la ponctuation, présente ou absente, légèrement différente).
Je vais donc utiliser la
distance d'édition pour décider si une phrase est proche ou non d'une autre.
En attendant, vous pouvez tester la
version d'ACHOR compilée pour Windows sous CygWin sur mon site web.
Il vous faudra aussi la DLL de cygwin (
en voilà une version).
(attention, je ne lui ai rien appris, vous aurez tout à faire).