Skip to main content

The NLG tool for Finnish

Project description

Syntax maker

Build Status DOI

The tool NLG tool for Finnish by Mika Hämäläinen

Syntax maker is the natural language generation tool for generating syntactically correct sentences in Finnish automatically. The tool is especially useful in the case of Finnish which has such a high diversity in its morphosyntax. All you need to know are the lemmas and their parts-of-speech and syntax maker will take care of the rest.

For instance, just throw in words rantaleijona, uneksia, korkea and aalto and you will get rantaleijonat uneksivat korkeista aalloista. So you will get the morphology right automatically! Don't believe me? Just take a look at this tutorial to find out how.



pip install syntaxmaker
python -m -l fin


An example for generating a sentence in Finnish:

from syntaxmaker.syntax_maker import *
vp = create_verb_pharse("antaa")
subject = create_phrase("NP", "hevonen", {"NUM": "PL"})

dobject = create_phrase("NP", "lahja", {"NUM": "PL"})
dobject.components["attribute"] = create_phrase("AP", "mahtava")
dobject.components["attribute"].components["attribute"] = create_phrase("AdvP", "erittäin")

indobject = create_phrase("NP", "lehmä")
vp.components["subject"] = subject
vp.components["dir_object"] = dobject
vp.components["indir_object"] = indobject
>> hevoset antavat erittäin mahtavia lahjoja lehmälle

Go to Creating a sentence, the basics for a quick start guide.

A good source of example code with the expected output can be found in the Travis test file.

Don't forget to read the Wiki for more instructions.


If you use Syntax Maker in any academic publication, please cite it as follows:

Hämäläinen, Mika and Rueter, Jack 2018. Development of an Open Source Natural Language Generation Tool for Finnish. In Proceedings of the Fourth International Workshop on Computational Linguistics of Uralic Languages, 51–58.

More information?

Just go ahead and take a look at the wiki or my blog post about Syntax maker.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

syntaxmaker-2.0.1.tar.gz (1.8 MB view hashes)

Uploaded source

Built Distribution

syntaxmaker-2.0.1-py2.py3-none-any.whl (1.9 MB view hashes)

Uploaded py2 py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page