Ce projet a pour but de :
- Représenter des histoires sous forme de chaînes de factoïdes structurés (
[sujet],[prédicat],[objet], etc.) - Vérifier la cohérence des faits en interrogeant le réseau Jeux de Mots (JDM)
- Généraliser les termes (hyperonymes)
- Prédire les lignes manquantes dans des histoires incomplètes
| Fichier / Dossier | Description |
|---|---|
main.py |
Interface en ligne de commande (CLI) |
story_generator.py |
Chargement et validation d'histoires |
story_generalizer.py |
Généralisation des termes dans les histoires |
factoid_predict_1.py |
Prédiction des lignes manquantes |
factoid_extractor.py |
Extraction des composantes des factoïdes |
story_database.py |
Gestion de la base de données locale |
jdm_client.py |
Client API JDM avec cache |
tests.txt, histoires.txt |
Exemples de fichiers d'entrée |
-
Télécharger le projet
-
Installer les dépendances
pip install -r requirements.txt- Créer les dossiers nécessaires
mkdir -p data/stories data/factoids data/cacheLancer le programme :
python main.py <commande> [options]| Commande | Description |
|---|---|
import |
Importe et structure les histoires depuis histoires.txt |
generalize |
Applique la généralisation sémantique sur toutes les histoires |
list |
Affiche tous les identifiants d’histoires chargées |
show <id> |
Affiche les détails d’une histoire donnée |
test <id> |
Teste la généralisation d’une histoire (sans sauvegarde) |
predict |
Complète une histoire à trous via saisie utilisateur |
predict-from-file |
Complète une histoire à trous depuis un fichier texte |
Chaque ligne représente un fait :
[sujet] client [predicat] commander [objet] soupe [lieu] table [temps] soir
Les lignes contenant ? sont considérées comme manquantes et seront prédites.
python main.py predictEntrée utilisateur :
[sujet] homme [predicat] entrer [objet] restaurant
?
[sujet] serveur [predicat] accueillir [objet] homme
Le système prédit automatiquement la ligne manquante.
La documentation détaillée (PDF) se trouve dans le fichier Documentation.pdf
requests
Projet pédagogique basé sur le réseau lexical JeuxDeMots – www.jeuxdemots.org