1 from SimpleXMLRPCServer import SimpleXMLRPCServer
2 from SimpleXMLRPCServer import SimpleXMLRPCRequestHandler
3 from app.autoranking.application import Autoranking
4
5
8
9
10 classifier_filename = "/share/taraxu/selection-mechanism/wmt13/sentenceranking/autoranking_wmt13_newfeatures1_de_en/class_nameranklangpairde-eninclude_references0.0ties0.0trainset_modeannotatedattattset_24classifierLogReg/classifier.clsf"
11 configfilenames = [
12 '/home/Eleftherios Avramidis/workspace/qualitative/src/app/autoranking/config/pipeline.cfg',
13 '/home/Eleftherios Avramidis/workspace/qualitative/src/app/autoranking/config/pipeline.wmt13metric.blade6.de.de-en.cfg'
14 ]
15
16
17 autoranker = Autoranking(configfilenames, classifier_filename)
18 server = SimpleXMLRPCServer(("lns-87004.sb.dfki.de", 8089),
19 requestHandler=RequestHandler)
20 server.register_introspection_functions()
21
22
23
24
25 -def rank(source, mosestranslation, lucytranslation, googletranslation, langsrc, langtgt):
32
33
34 -def qualityRank(source, mosestranslation, lucytranslation, googletranslation, langsrc, langtgt):
35
36 ranking, description = autoranker.rank(source, [mosestranslation, lucytranslation, googletranslation])
37 result="{rank1}$##${rank2}$##${rank3}$##${description}".format(rank1=ranking[0],
38 rank2=ranking[1],
39 rank3=ranking[2],
40 description=description)
41 return result
42
43
44
45
46 server.register_function(rank, 'rank')
47 server.register_function(qualityRank, 'qualityRank')
48 print "server ready"
49 server.serve_forever()
50