# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
"""Client and server classes corresponding to protobuf-defined services."""
import grpc

from proto import operrouter_pb2 as proto_dot_operrouter__pb2


class OperRouterStub(object):
    """Main service definition
    """

    def __init__(self, channel):
        """Constructor.

        Args:
            channel: A grpc.Channel.
        """
        self.Ping = channel.unary_unary(
                '/operrouter.v1.OperRouter/Ping',
                request_serializer=proto_dot_operrouter__pb2.PingRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.PingResponse.FromString,
                _registered_method=True)
        self.ValidateConfig = channel.unary_unary(
                '/operrouter.v1.OperRouter/ValidateConfig',
                request_serializer=proto_dot_operrouter__pb2.ValidateConfigRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.ValidateConfigResponse.FromString,
                _registered_method=True)
        self.LoadConfig = channel.unary_unary(
                '/operrouter.v1.OperRouter/LoadConfig',
                request_serializer=proto_dot_operrouter__pb2.LoadConfigRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.LoadConfigResponse.FromString,
                _registered_method=True)
        self.GetMetadata = channel.unary_unary(
                '/operrouter.v1.OperRouter/GetMetadata',
                request_serializer=proto_dot_operrouter__pb2.GetMetadataRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.GetMetadataResponse.FromString,
                _registered_method=True)
        self.CreateDataSource = channel.unary_unary(
                '/operrouter.v1.OperRouter/CreateDataSource',
                request_serializer=proto_dot_operrouter__pb2.CreateDataSourceRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.CreateDataSourceResponse.FromString,
                _registered_method=True)
        self.QueryDataSource = channel.unary_unary(
                '/operrouter.v1.OperRouter/QueryDataSource',
                request_serializer=proto_dot_operrouter__pb2.QueryDataSourceRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.QueryDataSourceResponse.FromString,
                _registered_method=True)
        self.ExecuteDataSource = channel.unary_unary(
                '/operrouter.v1.OperRouter/ExecuteDataSource',
                request_serializer=proto_dot_operrouter__pb2.ExecuteDataSourceRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.ExecuteDataSourceResponse.FromString,
                _registered_method=True)
        self.InsertDataSource = channel.unary_unary(
                '/operrouter.v1.OperRouter/InsertDataSource',
                request_serializer=proto_dot_operrouter__pb2.InsertDataSourceRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.InsertDataSourceResponse.FromString,
                _registered_method=True)
        self.PingDataSource = channel.unary_unary(
                '/operrouter.v1.OperRouter/PingDataSource',
                request_serializer=proto_dot_operrouter__pb2.PingDataSourceRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.PingDataSourceResponse.FromString,
                _registered_method=True)
        self.CloseDataSource = channel.unary_unary(
                '/operrouter.v1.OperRouter/CloseDataSource',
                request_serializer=proto_dot_operrouter__pb2.CloseDataSourceRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.CloseDataSourceResponse.FromString,
                _registered_method=True)
        self.CreateLLM = channel.unary_unary(
                '/operrouter.v1.OperRouter/CreateLLM',
                request_serializer=proto_dot_operrouter__pb2.CreateLLMRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.CreateLLMResponse.FromString,
                _registered_method=True)
        self.GenerateLLM = channel.unary_unary(
                '/operrouter.v1.OperRouter/GenerateLLM',
                request_serializer=proto_dot_operrouter__pb2.GenerateLLMRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.GenerateLLMResponse.FromString,
                _registered_method=True)
        self.ChatLLM = channel.unary_unary(
                '/operrouter.v1.OperRouter/ChatLLM',
                request_serializer=proto_dot_operrouter__pb2.ChatLLMRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.ChatLLMResponse.FromString,
                _registered_method=True)
        self.EmbeddingLLM = channel.unary_unary(
                '/operrouter.v1.OperRouter/EmbeddingLLM',
                request_serializer=proto_dot_operrouter__pb2.EmbeddingLLMRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.EmbeddingLLMResponse.FromString,
                _registered_method=True)
        self.StreamLLM = channel.unary_stream(
                '/operrouter.v1.OperRouter/StreamLLM',
                request_serializer=proto_dot_operrouter__pb2.StreamLLMRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.StreamLLMResponse.FromString,
                _registered_method=True)
        self.PingLLM = channel.unary_unary(
                '/operrouter.v1.OperRouter/PingLLM',
                request_serializer=proto_dot_operrouter__pb2.PingLLMRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.PingLLMResponse.FromString,
                _registered_method=True)
        self.CloseLLM = channel.unary_unary(
                '/operrouter.v1.OperRouter/CloseLLM',
                request_serializer=proto_dot_operrouter__pb2.CloseLLMRequest.SerializeToString,
                response_deserializer=proto_dot_operrouter__pb2.CloseLLMResponse.FromString,
                _registered_method=True)


class OperRouterServicer(object):
    """Main service definition
    """

    def Ping(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ValidateConfig(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def LoadConfig(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetMetadata(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CreateDataSource(self, request, context):
        """DataSource operations
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def QueryDataSource(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ExecuteDataSource(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def InsertDataSource(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def PingDataSource(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CloseDataSource(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CreateLLM(self, request, context):
        """LLM operations
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GenerateLLM(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ChatLLM(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def EmbeddingLLM(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def StreamLLM(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def PingLLM(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CloseLLM(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_OperRouterServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'Ping': grpc.unary_unary_rpc_method_handler(
                    servicer.Ping,
                    request_deserializer=proto_dot_operrouter__pb2.PingRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.PingResponse.SerializeToString,
            ),
            'ValidateConfig': grpc.unary_unary_rpc_method_handler(
                    servicer.ValidateConfig,
                    request_deserializer=proto_dot_operrouter__pb2.ValidateConfigRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.ValidateConfigResponse.SerializeToString,
            ),
            'LoadConfig': grpc.unary_unary_rpc_method_handler(
                    servicer.LoadConfig,
                    request_deserializer=proto_dot_operrouter__pb2.LoadConfigRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.LoadConfigResponse.SerializeToString,
            ),
            'GetMetadata': grpc.unary_unary_rpc_method_handler(
                    servicer.GetMetadata,
                    request_deserializer=proto_dot_operrouter__pb2.GetMetadataRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.GetMetadataResponse.SerializeToString,
            ),
            'CreateDataSource': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateDataSource,
                    request_deserializer=proto_dot_operrouter__pb2.CreateDataSourceRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.CreateDataSourceResponse.SerializeToString,
            ),
            'QueryDataSource': grpc.unary_unary_rpc_method_handler(
                    servicer.QueryDataSource,
                    request_deserializer=proto_dot_operrouter__pb2.QueryDataSourceRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.QueryDataSourceResponse.SerializeToString,
            ),
            'ExecuteDataSource': grpc.unary_unary_rpc_method_handler(
                    servicer.ExecuteDataSource,
                    request_deserializer=proto_dot_operrouter__pb2.ExecuteDataSourceRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.ExecuteDataSourceResponse.SerializeToString,
            ),
            'InsertDataSource': grpc.unary_unary_rpc_method_handler(
                    servicer.InsertDataSource,
                    request_deserializer=proto_dot_operrouter__pb2.InsertDataSourceRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.InsertDataSourceResponse.SerializeToString,
            ),
            'PingDataSource': grpc.unary_unary_rpc_method_handler(
                    servicer.PingDataSource,
                    request_deserializer=proto_dot_operrouter__pb2.PingDataSourceRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.PingDataSourceResponse.SerializeToString,
            ),
            'CloseDataSource': grpc.unary_unary_rpc_method_handler(
                    servicer.CloseDataSource,
                    request_deserializer=proto_dot_operrouter__pb2.CloseDataSourceRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.CloseDataSourceResponse.SerializeToString,
            ),
            'CreateLLM': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateLLM,
                    request_deserializer=proto_dot_operrouter__pb2.CreateLLMRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.CreateLLMResponse.SerializeToString,
            ),
            'GenerateLLM': grpc.unary_unary_rpc_method_handler(
                    servicer.GenerateLLM,
                    request_deserializer=proto_dot_operrouter__pb2.GenerateLLMRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.GenerateLLMResponse.SerializeToString,
            ),
            'ChatLLM': grpc.unary_unary_rpc_method_handler(
                    servicer.ChatLLM,
                    request_deserializer=proto_dot_operrouter__pb2.ChatLLMRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.ChatLLMResponse.SerializeToString,
            ),
            'EmbeddingLLM': grpc.unary_unary_rpc_method_handler(
                    servicer.EmbeddingLLM,
                    request_deserializer=proto_dot_operrouter__pb2.EmbeddingLLMRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.EmbeddingLLMResponse.SerializeToString,
            ),
            'StreamLLM': grpc.unary_stream_rpc_method_handler(
                    servicer.StreamLLM,
                    request_deserializer=proto_dot_operrouter__pb2.StreamLLMRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.StreamLLMResponse.SerializeToString,
            ),
            'PingLLM': grpc.unary_unary_rpc_method_handler(
                    servicer.PingLLM,
                    request_deserializer=proto_dot_operrouter__pb2.PingLLMRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.PingLLMResponse.SerializeToString,
            ),
            'CloseLLM': grpc.unary_unary_rpc_method_handler(
                    servicer.CloseLLM,
                    request_deserializer=proto_dot_operrouter__pb2.CloseLLMRequest.FromString,
                    response_serializer=proto_dot_operrouter__pb2.CloseLLMResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'operrouter.v1.OperRouter', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))
    server.add_registered_method_handlers('operrouter.v1.OperRouter', rpc_method_handlers)


 # This class is part of an EXPERIMENTAL API.
class OperRouter(object):
    """Main service definition
    """

    @staticmethod
    def Ping(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/operrouter.v1.OperRouter/Ping',
            proto_dot_operrouter__pb2.PingRequest.SerializeToString,
            proto_dot_operrouter__pb2.PingResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ValidateConfig(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/operrouter.v1.OperRouter/ValidateConfig',
            proto_dot_operrouter__pb2.ValidateConfigRequest.SerializeToString,
            proto_dot_operrouter__pb2.ValidateConfigResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def LoadConfig(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/operrouter.v1.OperRouter/LoadConfig',
            proto_dot_operrouter__pb2.LoadConfigRequest.SerializeToString,
            proto_dot_operrouter__pb2.LoadConfigResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def GetMetadata(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/operrouter.v1.OperRouter/GetMetadata',
            proto_dot_operrouter__pb2.GetMetadataRequest.SerializeToString,
            proto_dot_operrouter__pb2.GetMetadataResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CreateDataSource(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/operrouter.v1.OperRouter/CreateDataSource',
            proto_dot_operrouter__pb2.CreateDataSourceRequest.SerializeToString,
            proto_dot_operrouter__pb2.CreateDataSourceResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def QueryDataSource(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/operrouter.v1.OperRouter/QueryDataSource',
            proto_dot_operrouter__pb2.QueryDataSourceRequest.SerializeToString,
            proto_dot_operrouter__pb2.QueryDataSourceResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ExecuteDataSource(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/operrouter.v1.OperRouter/ExecuteDataSource',
            proto_dot_operrouter__pb2.ExecuteDataSourceRequest.SerializeToString,
            proto_dot_operrouter__pb2.ExecuteDataSourceResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def InsertDataSource(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/operrouter.v1.OperRouter/InsertDataSource',
            proto_dot_operrouter__pb2.InsertDataSourceRequest.SerializeToString,
            proto_dot_operrouter__pb2.InsertDataSourceResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def PingDataSource(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/operrouter.v1.OperRouter/PingDataSource',
            proto_dot_operrouter__pb2.PingDataSourceRequest.SerializeToString,
            proto_dot_operrouter__pb2.PingDataSourceResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CloseDataSource(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/operrouter.v1.OperRouter/CloseDataSource',
            proto_dot_operrouter__pb2.CloseDataSourceRequest.SerializeToString,
            proto_dot_operrouter__pb2.CloseDataSourceResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CreateLLM(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/operrouter.v1.OperRouter/CreateLLM',
            proto_dot_operrouter__pb2.CreateLLMRequest.SerializeToString,
            proto_dot_operrouter__pb2.CreateLLMResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def GenerateLLM(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/operrouter.v1.OperRouter/GenerateLLM',
            proto_dot_operrouter__pb2.GenerateLLMRequest.SerializeToString,
            proto_dot_operrouter__pb2.GenerateLLMResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ChatLLM(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/operrouter.v1.OperRouter/ChatLLM',
            proto_dot_operrouter__pb2.ChatLLMRequest.SerializeToString,
            proto_dot_operrouter__pb2.ChatLLMResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def EmbeddingLLM(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/operrouter.v1.OperRouter/EmbeddingLLM',
            proto_dot_operrouter__pb2.EmbeddingLLMRequest.SerializeToString,
            proto_dot_operrouter__pb2.EmbeddingLLMResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def StreamLLM(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_stream(
            request,
            target,
            '/operrouter.v1.OperRouter/StreamLLM',
            proto_dot_operrouter__pb2.StreamLLMRequest.SerializeToString,
            proto_dot_operrouter__pb2.StreamLLMResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def PingLLM(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/operrouter.v1.OperRouter/PingLLM',
            proto_dot_operrouter__pb2.PingLLMRequest.SerializeToString,
            proto_dot_operrouter__pb2.PingLLMResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CloseLLM(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(
            request,
            target,
            '/operrouter.v1.OperRouter/CloseLLM',
            proto_dot_operrouter__pb2.CloseLLMRequest.SerializeToString,
            proto_dot_operrouter__pb2.CloseLLMResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)
