Welcome to the mt-serverland wiki!
MT Server Land is an open-source architecture for MT, developed by DFKI’s MT Group in Saarbrücken.
- See [[license]] for more information.
- The [[system architecture]] is described here.
- [[API Interface]] planning goes here.
Please note: Added a Bing! worker server using a sample appID from http://www.bing.com/community/forums/p/658908/9597507.aspx.
- Python 2.6.x
- django 1.2.3
- django-piston 0.2.2
- python-protobuf 2.3.0
Quick Setup Guide
1. Install Python 2.6.×.
2. Install django 1.2.x, do NOT use django-svn as this is NOT TESTED and likely to break things.
If you are updating from a previous django version, REMOVE the django folder from your Python’s
site-packages folder BEFORE installing the new version!
3. Extract data to a folder named
git clone git://github.com/cfedermann/mt-serverland.git serverland
Do NOT name the folder
mt-serverland as this does not work with Python!
4. Install django-piston and python-protobuf.
5. Prepare development database (See next section)
python manage.py runserver
7. Point your browser to
mkdir serverland/messages, otherwise not
.message files can be created!
More details to be added soon, in case of problems, drop me an email:
Setting Up Development Database
python manage.py syncdb to create the necessary database file. Answer “yes”
when creation of the superuser account is proposed and enter a username, an email and
the corresponding password. This user will have ALL privileges.
Setting Up Worker Servers
You can find several worker implementations within
workers/. The dummy worker will
block for a certain amount of seconds and then return an all-uppercase version of the input
text it received. Other workers (such as the Google, Bing and Yahoo! workers) connect to
external translation services and create real actual translations. To start a worker server,
move into the root folder of your MT Server Land installation, do not change into the
A sample session with the dummy worker is shown below:
claymore:serverland cfedermann$ PYTHONPATH=. python2.6 workers/start_worker.py
usage: workers/start_worker.py <worker> <host> <port> [logfile]
registered worker servers: - LucyWorker - GoogleWorker - DummyWorker - BingWorker - YahooWorker
claymore:serverland cfedermann$ PYTHONPATH=. python2.6 workers/start_worker.py GoogleWorker localhost 1234 /tmp/my-logfile.txt INFO:GoogleWorker:GoogleWorker listening on localhost:1234 INFO:GoogleWorker:Started GoogleWorker instance, serving via XML-RPC. ... ^Z + Stopped PYTHONPATH=. python2.6 workers/start_worker.py GoogleWorker localhost 1234 /tmp/my-logfile.txt claymore:serverland cfedermann$ bg + PYTHONPATH=. python2.6 workers/start_worker.py GoogleWorker localhost 1234 /tmp/my-logfile.txt & claymore:serverland cfedermann$ PYTHONPATH=. python2.6 workers/stop_worker.py
usage: workers/stop_worker.py <host> <port>
claymore:serverland cfedermann$ PYTHONPATH=. python2.6 workers/stop_worker.py localhost 1234 INFO:GoogleWorker:Stopped GoogleWorker instance. localhost - - [15/Sep/2010 13:46:31] "POST / HTTP/1.0" 200 - claymore:serverland cfedermann$ + Done PYTHONPATH=. python2.6 workers/start_worker.py GoogleWorker localhost 1234 /tmp/my-logfile.txt claymore:serverland cfedermann$
Before you can actually use a worker server inside the MT Server Land application, you
have to create a corresponding
WorkerServer instance inside the django admin backend
Important: make sure you enter the hostname including the