Get started
minimal example
var prose = new ProseEngine();
prose.Mine(@"C:\corpus\text"); // parse every *.txt and mine it
prose.Save(@"prose.wal"); // persist the mined tables (optional)
foreach (var sentence in prose.Generate(1000)) // new, grammatical, plausible sentences
Console.WriteLine(sentence);
prose.WriteCorpus(@"C:\corpus\synthetic", 100_000); // write sentences out as .txt for an LM
prose.WriteQaPairs(@"C:\corpus\qa", 50_000); // context+question -> answer TSV
Parse a single sentence directly, no mining or database required:
var p = ProseEngine.ParseSentence("The panda eats, shoots, and leaves.");
Console.WriteLine(ProseEngine.Explain(p)); // subject, verbs, objects, template
Depends on: HoloDb (the storage engine that holds mined grammar knowledge) and AlgFormer (supplies the optional plausibility-scoring model) — installing the NuGet package pulls both in automatically. License: proprietary, compiled library only; every capability is free to use.