Ejemplo n.º 1
0
from thrift.protocol import TBinaryProtocol
from thrift.server import TServer

import cPickle as pkl


class ClassifierHandler(object):
    def __init__(self):
        self.model = pkl.load(open('svm_model.pkl', 'rb'))
        print 'loading model...'

    def predict(self, feature):
        return self.model.predict(feature)[0]


handler = ClassifierHandler()
processor = Classifier.Processor(handler)
transport = TSocket.TServerSocket(port=9090)
tfactory = TTransport.TBufferedTransportFactory()
pfactory = TBinaryProtocol.TBinaryProtocolFactory()

server = TServer.TSimpleServer(processor, transport, tfactory, pfactory)

# You could do one of these for a multithreaded server
#server = TServer.TThreadedServer(processor, transport, tfactory, pfactory)
#server = TServer.TThreadPoolServer(processor, transport, tfactory, pfactory)

print 'Starting the server...'
server.serve()
print 'done.'