Distributed infrastructure for Machine Translation web services (using Moses, Python, JSON-RPC/web interface)

ufal ufal Last update: Aug 19, 2022

MTMonkey – an infrastructure for Machine Translation web services

Typing MT Monkeys

Description

MTMonkey is a simple and easily adaptable infrastructure forMachine Translation web services, written in Python.It allows clients JSON-encoded request for different translation directionsto be distributed among multiple MT servers.

MTMonkey Schema

This system consists of:

  • the main application server that handles the clients' requests anddistributes them to the machines that perform the translation,
  • the worker that handles one translation direction (includingsegmentation, tokenization, recasing, and detokenization),
  • all text processing tools used by the workers,
  • a simple demonstration web client written in PHP,
  • and support scripts for self-checks, auto-starting and easy modeldistribution.

The communication between the main application server and workers proceedsvia XML-RPC requests, but workers accepting JSON requests are also supportedon the application server side, allowing alternative worker implementations.

There may be more workers for the same language pair. Workers mayrun on the same physical machine or on several different machines.For a more detailed description of the overall architecture of MTMonkey,see our paper presented at MT Marathon 2013in Prague or the accompanying poster.

License

Authors: Aleš Tamchyna, Ondřej Dušek, Rudolf Rosa, Pavel Pecina

Copyright © 2013 Institute of Formal and Applied Linguistics,Charles University in Prague.

Licensed under the Apache License, Version 2.0.

When using this software in your scientific work, please cite thefollowing paper:

Aleš Tamchyna, Ondřej Dušek, Rudolf Rosa, and Pavel Pecina:MTMonkey: A scalable infrastructure for a Machine Translation web service.In Prague Bulletin of Mathematical Linguistics 100, 2013, pp. 31-40.

Contents of this package

  • appserver – source codes of the application server
  • cmdline-client – command-line clients for MTMonkey
  • config-example – example configuration files
  • images – just logos and images
  • install – installation scripts and instructions
  • scripts – application server, worker and Moses servers startup scripts
  • web-client – two different web clients for the service
  • worker – source codes of the worker, incl. text pre- and post-processingtools.

Usage

Installation

For installation notes for both workers and the applicationserver, see install/README.md.

API description

For a detailed description of the API used by MTMonkey,see API.md and the paper referenced above.

MTMonkey clients

The package includes command-line and web-basedclients that can connect to MTMonkey servers. Please see the respectivedirectories for documentation.

In addition, you can easily send requests to MTMonkey from command-lineusing the curl tool, or from your browser by typing the correct URL.See the API description for more information.


Acknowledgements

The research leading to these results has received funding from the European Union SeventhFramework Programme (FP7/2007-2013) under grant agreement n° 257528 (KHRESMOI).This work has been using language resources developed and/or stored and/or distributedby the LINDAT-Clarin project of the Ministry of Education of the Czech Republic(project LM2010013). This work has been supported by the AMALACH grant (DF12P01OVV02) ofthe Ministry of Culture of the Czech Republic.

Tags:

Subscribe to our newsletter