Ich suche nach einem Tool, das Text (natürliche Sprache) gemäß einer Liste von Wörtern und ihren syntaktischen/morphologischen Regeln generieren kann, die beide von mir angegeben werden.
So könnte ich zum Beispiel das Wort "Tabelle" hinzufügen, es in die Kategorie "Substantiv" einordnen und die Pluralkonstruktionsregel "append -s" auswählen.
Das Tool sollte eine Möglichkeit bieten, anhand meines Vokabulars und der von mir erstellten Regeln eine Liste möglicher Sätze zu erstellen. Es sollte auch möglich sein, einen Satz einzugeben, den das Tool auf Korrektheit überprüfen soll (entsprechend den ihm bekannten Vokabeln/Regeln).
Das Werkzeug muss kostenlos sein (und idealerweise FLOSS). Das Betriebssystem spielt keine Rolle (aber native GNU/Linux-Unterstützung wird bevorzugt). Keine gehosteten Lösungen (selbst gehostet ist in Ordnung).
(Ich habe vor einigen Jahren ein solches Tool mit einer textbasierten Benutzeroberfläche verwendet, kann mich aber nicht an seinen Namen erinnern.)
Es hört sich so an, als ob Sie nach dem Natural Language Toolkit von Python , NLTK , suchen . Es erfüllt alle Ihre Anforderungen:
Ein Beispiel für das, was Sie tun möchten, finden Sie hier , sieht aber so aus:
from nltk.parse.generate import generate, demo_grammar
from nltk import CFG
grammar = CFG.fromstring(demo_grammar)
print(grammar)
for sentence in generate(grammar, n=10):
print(' '.join(sentence))
the man slept the man saw the man the man saw the park the man saw the dog the man saw a man the man saw a park the man saw a dog the man walked in the man the man walked in the park the man walked in the dog