Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Syntax maker


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.

Business solutions

Rootroo logo

My company, Rootroo, offers consulting related to Finnish NLG solutions. We have a strong academic background in the state-of-the-art AI solutions for every NLP need. Just contact us, we won't bite.