Maybe also include versions for (most of) the dependencies in requirements.txt. This ensures that everything keeps working in the future when new (latest) versions of the different dependencies get released.
For example, when I ran the example it failed because apparently I used an older version of the knowledge-mapper, while I should have used at least 0.0.24. If the requirements.txt file would contain knowledge-mapper>=0.0.24 it would not have failed.