Petit système mnémonique en Python/SQLite [1/4]

Rédigé par BeHuman Aucun commentaire
Classé dans : Python Mots clés : cerveau, neurone, synapse

Salut à tous,

Aujourd'hui, je vais vous exposer un projet en cours. Le but est d'imaginer un chatBot XMPP avec une base de donnée SQLite servant de système mnémonique

Cette base de donnée contiendra une table "dictionary" ainsi qu'une table "synapse".

Dictionary

Cette table est réservé au mots utilisés par le ChatBot.

Structure

CREATE TABLE `dictionary` (
	`name`	TEXT NOT NULL,
	`type`	TEXT NOT NULL DEFAULT '',
	`genre`	TEXT NOT NULL DEFAULT '',
	`temps`	TEXT NOT NULL DEFAULT '',
	`desc`	TEXT NOT NULL DEFAULT ''
);

 

Synapse

Cette table servira aux liaisons mnémoniques.

Structure

CREATE TABLE `synapse` (
	`name`	TEXT NOT NULL,
	`attribute`	TEXT NOT NULL DEFAULT '',
	`operator`	TEXT NOT NULL DEFAULT '',
	`value`	TEXT NOT NULL DEFAULT ''
);

 

Principe de base

Comme je vous l'ai dit plus haut, la table "dictionary" contiendra les mots utilisé. Quelques exemples:

NAME TYPE GENRE TEMPS DESC
dormir verbe   inf  
dors dormir je ind-pre  
dors dormir tu ind-pre  
je PRO-per      
tu PRO-per      

La table "synapse" va faire la liaison entre les différents mots et ce qu'elle a en déjà en mémoire. Exemple avec cette phrase:

Je dors.
NAME ATTRIBUTE OPERATOR VALUE
je dormir ind-pre return = Repose toi bien.
?tu dormir ind-pre return = Je ne dors jamais, je ne suis qu'un vulgaire Bot.

En premier lieu, on récupère chacun des mots de la phrase.

    JE         DORS    

Ensuite on vérifie la disponibilité de ces mots dans la table "dictionary". On se rend compte alors que le Pronom personnel (PRO-per) JE est disponible dans la table ainsi que le verbe DORS. On vois aussi que dans le champs "TYPE" de DORS il y a DORMIR, qui est le verbe à l'infinitif. Dans cette même table on remarque que dans le champs "GENRE" du verbe DORS il y a notre pronom personnel JE et que sont "TEMPS" est à indicatif présent (ind-pre).

On va maintenant interroger notre table "synapse" de cette façon:

je dormir ind-pre

Si "OPERATOR" est "=" et que "ATTRIBUTE" est "return" le ChatBot répondra avec le champs "VALUE" 

Repose toi bien.

Voilà, dans cette première partie je vous ai exposé le principe de base d'un petit système mnémonique  SQlite. Dans la seconde partie, je vous partagerai un petit Bot XMPP en python, couplet à cette même base de donnée.

Télécharger Base de Donnée xee.db

à très bientôt. 

Lire la suite [2/4]

Écrire un commentaire

Quelle est la troisième lettre du mot sharc94 ?

Fil RSS des commentaires de cet article