return [str(p) for p in preds]

    def predict_floats(self, inputs):
        preds = self.predict_func(inputs)
        return [str(p) for p in preds]

    def predict_doubles(self, inputs):
        preds = self.predict_func(inputs)
        return [str(p) for p in preds]

    def predict_bytes(self, inputs):
        preds = self.predict_func(inputs)
        return [str(p) for p in preds]

    def predict_strings(self, inputs):
        preds = self.predict_func(inputs)
        return [str(p) for p in preds]


if __name__ == "__main__":
    print("Starting Python Closure container")
    rpc_service = rpc.RPCService()
    try:
        model = PythonContainer(rpc_service.get_model_path(),
                                rpc_service.get_input_type())
        sys.stdout.flush()
        sys.stderr.flush()
    except ImportError:
        sys.exit(IMPORT_ERROR_RETURN_CODE)
    rpc_service.start(model)
            clipper_time = input_item[0]
            event_history = self.rpc_service.get_event_history()
            recent_events = []
            for i in range(0, len(event_history)):
                curr_event = event_history[i]
                if curr_event[0] >= clipper_time:
                    if i > 0 and len(recent_events) == 0:
                        # Capture the heartbeat message
                        # sent before Clipper came online
                        recent_events.append(event_history[i - 1][1])
                    recent_events.append(event_history[i][1])
            outputs.append(json.dumps(recent_events))
        return outputs


if __name__ == "__main__":
    ip = "127.0.0.1"
    port = 7000
    input_type = "doubles"
    model_version = 1

    rpc_service = rpc.RPCService(collect_metrics=False, read_config=False)
    rpc_service.model_name = "rpctest_py"
    rpc_service.model_version = 1
    rpc_service.host = "127.0.0.1"
    rpc_service.port = 7000
    rpc_service.input_type = "doubles"

    model = RPCTestContainer(rpc_service)
    rpc_service.start(model)