During recent times chatbots are becoming ever more present in our everyday lives. The most apparent of these are the integrated personal assistants in smartphones, however service providers are also reaching out to use chatbots to improve the user experience of their costumer services, and many other companies are also seeking to improve their inner communications by employing chatbots to answer the most frequently asked questions of their employees.
Chatbots are interactive software, that can understand input from users in natural language, and can reply to these messages also in natural language usually in written format, although this can also happen verbally if supported by the necessary techniques, or in simpler cases it could be a simple selection menu. The two large groups of chatbots are the general purpose chatbots, which can talk to the user about any topic, and the task-specific chatbots, which are designed to perform specific tasks, like answering questions about our credit card balance.
In the case of task-specific chatbots the first step when receiving a message from a user is obviously to understand it. This is most often the task of the lowest level in the architecture of the bot, which is called the NLP (natural language processing) module.
There is various software capable of processing inputs in natural language for English for example, however this is not so for Hungarian unfortunately. There are few open source projects for this, the best of which is probably the e-magyar toolchain, and the GATE server wrapper around its components, however neither of these provide output in a format frequently used in practice making them difficult to use. My main task in this thesis is to enable easy integration of these technologies by providing a spaCy wrapper, and a standard Python package wrapping.