"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.internal.enum_type_wrapper
import google.protobuf.message
import typing
import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ...

class SimilarityMethod(_SimilarityMethod, metaclass=_SimilarityMethodEnumTypeWrapper):
    pass
class _SimilarityMethod:
    V = typing.NewType('V', builtins.int)
class _SimilarityMethodEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_SimilarityMethod.V], builtins.type):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ...
    SIMILARITY_METHOD_UNSPECIFIED = SimilarityMethod.V(0)
    SIMILARITY_METHOD_COSINE = SimilarityMethod.V(1)
    SIMILARITY_METHOD_DYNAMAX_JACCARD = SimilarityMethod.V(2)
    SIMILARITY_METHOD_MAXPOOL_JACCARD = SimilarityMethod.V(3)
    SIMILARITY_METHOD_DYNAMAX_DICE = SimilarityMethod.V(4)
    SIMILARITY_METHOD_DYNAMAX_OTSUKA = SimilarityMethod.V(5)
    SIMILARITY_METHOD_WMD = SimilarityMethod.V(6)
    SIMILARITY_METHOD_EDIT = SimilarityMethod.V(7)
    SIMILARITY_METHOD_JACCARD = SimilarityMethod.V(8)
    SIMILARITY_METHOD_ANGULAR = SimilarityMethod.V(9)

SIMILARITY_METHOD_UNSPECIFIED = SimilarityMethod.V(0)
SIMILARITY_METHOD_COSINE = SimilarityMethod.V(1)
SIMILARITY_METHOD_DYNAMAX_JACCARD = SimilarityMethod.V(2)
SIMILARITY_METHOD_MAXPOOL_JACCARD = SimilarityMethod.V(3)
SIMILARITY_METHOD_DYNAMAX_DICE = SimilarityMethod.V(4)
SIMILARITY_METHOD_DYNAMAX_OTSUKA = SimilarityMethod.V(5)
SIMILARITY_METHOD_WMD = SimilarityMethod.V(6)
SIMILARITY_METHOD_EDIT = SimilarityMethod.V(7)
SIMILARITY_METHOD_JACCARD = SimilarityMethod.V(8)
SIMILARITY_METHOD_ANGULAR = SimilarityMethod.V(9)
global___SimilarityMethod = SimilarityMethod


class EmbeddingLevel(_EmbeddingLevel, metaclass=_EmbeddingLevelEnumTypeWrapper):
    pass
class _EmbeddingLevel:
    V = typing.NewType('V', builtins.int)
class _EmbeddingLevelEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_EmbeddingLevel.V], builtins.type):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ...
    EMBEDDING_LEVEL_UNSPECIFIED = EmbeddingLevel.V(0)
    EMBEDDING_LEVEL_DOCUMENT = EmbeddingLevel.V(1)
    EMBEDDING_LEVEL_TOKENS = EmbeddingLevel.V(2)
    EMBEDDING_LEVEL_SENTENCES = EmbeddingLevel.V(3)

EMBEDDING_LEVEL_UNSPECIFIED = EmbeddingLevel.V(0)
EMBEDDING_LEVEL_DOCUMENT = EmbeddingLevel.V(1)
EMBEDDING_LEVEL_TOKENS = EmbeddingLevel.V(2)
EMBEDDING_LEVEL_SENTENCES = EmbeddingLevel.V(3)
global___EmbeddingLevel = EmbeddingLevel


class Pooling(_Pooling, metaclass=_PoolingEnumTypeWrapper):
    pass
class _Pooling:
    V = typing.NewType('V', builtins.int)
class _PoolingEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_Pooling.V], builtins.type):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ...
    POOLING_UNSPECIFIED = Pooling.V(0)
    POOLING_MEAN = Pooling.V(1)
    POOLING_MAX = Pooling.V(2)
    POOLING_MIN = Pooling.V(3)
    POOLING_SUM = Pooling.V(4)
    POOLING_FIRST = Pooling.V(5)
    POOLING_LAST = Pooling.V(6)
    POOLING_MEDIAN = Pooling.V(7)
    POOLING_GMEAN = Pooling.V(8)
    POOLING_HMEAN = Pooling.V(9)

POOLING_UNSPECIFIED = Pooling.V(0)
POOLING_MEAN = Pooling.V(1)
POOLING_MAX = Pooling.V(2)
POOLING_MIN = Pooling.V(3)
POOLING_SUM = Pooling.V(4)
POOLING_FIRST = Pooling.V(5)
POOLING_LAST = Pooling.V(6)
POOLING_MEDIAN = Pooling.V(7)
POOLING_GMEAN = Pooling.V(8)
POOLING_HMEAN = Pooling.V(9)
global___Pooling = Pooling


class EmbeddingType(_EmbeddingType, metaclass=_EmbeddingTypeEnumTypeWrapper):
    pass
class _EmbeddingType:
    V = typing.NewType('V', builtins.int)
class _EmbeddingTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_EmbeddingType.V], builtins.type):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ...
    EMBEDDING_TYPE_UNSPECIFIED = EmbeddingType.V(0)
    EMBEDDING_TYPE_SPACY = EmbeddingType.V(1)
    EMBEDDING_TYPE_USE = EmbeddingType.V(2)
    EMBEDDING_TYPE_SBERT = EmbeddingType.V(3)

EMBEDDING_TYPE_UNSPECIFIED = EmbeddingType.V(0)
EMBEDDING_TYPE_SPACY = EmbeddingType.V(1)
EMBEDDING_TYPE_USE = EmbeddingType.V(2)
EMBEDDING_TYPE_SBERT = EmbeddingType.V(3)
global___EmbeddingType = EmbeddingType


class NlpConfig(google.protobuf.message.Message):
    """message ResetCacheRequest {
        repeated CacheType cache_types = 1;
    }
    message ResetCacheResponse {}

    enum CacheType {
        CACHE_TYPE_UNSPECIFIED = 0;
        CACHE_TYPE_SPACY = 1;
        CACHE_TYPE_EMBEDDINGS = 2;
        CACHE_TYPE_VECTORS = 3;
        CACHE_TYPE_SIMILARITIES = 4;
    }

    """
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    LANGUAGE_FIELD_NUMBER: builtins.int
    SPACY_MODEL_FIELD_NUMBER: builtins.int
    EMBEDDING_MODELS_FIELD_NUMBER: builtins.int
    SIMILARITY_METHOD_FIELD_NUMBER: builtins.int
    language: typing.Text = ...
    spacy_model: typing.Text = ...
    @property
    def embedding_models(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___EmbeddingModel]: ...
    similarity_method: global___SimilarityMethod.V = ...
    def __init__(self,
        *,
        language : typing.Text = ...,
        spacy_model : typing.Text = ...,
        embedding_models : typing.Optional[typing.Iterable[global___EmbeddingModel]] = ...,
        similarity_method : global___SimilarityMethod.V = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"embedding_models",b"embedding_models",u"language",b"language",u"similarity_method",b"similarity_method",u"spacy_model",b"spacy_model"]) -> None: ...
global___NlpConfig = NlpConfig

class SimilaritiesRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CONFIG_FIELD_NUMBER: builtins.int
    TEXT_TUPLES_FIELD_NUMBER: builtins.int
    @property
    def config(self) -> global___NlpConfig: ...
    @property
    def text_tuples(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TextTuple]: ...
    def __init__(self,
        *,
        config : typing.Optional[global___NlpConfig] = ...,
        text_tuples : typing.Optional[typing.Iterable[global___TextTuple]] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"config",b"config"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"config",b"config",u"text_tuples",b"text_tuples"]) -> None: ...
global___SimilaritiesRequest = SimilaritiesRequest

class SimilaritiesResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    SIMILARITIES_FIELD_NUMBER: builtins.int
    @property
    def similarities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.float]: ...
    def __init__(self,
        *,
        similarities : typing.Optional[typing.Iterable[builtins.float]] = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"similarities",b"similarities"]) -> None: ...
global___SimilaritiesResponse = SimilaritiesResponse

class TextTuple(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    TEXT1_FIELD_NUMBER: builtins.int
    TEXT2_FIELD_NUMBER: builtins.int
    text1: typing.Text = ...
    text2: typing.Text = ...
    def __init__(self,
        *,
        text1 : typing.Text = ...,
        text2 : typing.Text = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"text1",b"text1",u"text2",b"text2"]) -> None: ...
global___TextTuple = TextTuple

class DocBinRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CONFIG_FIELD_NUMBER: builtins.int
    TEXTS_FIELD_NUMBER: builtins.int
    ATTRIBUTES_FIELD_NUMBER: builtins.int
    NO_ATTRIBUTES_FIELD_NUMBER: builtins.int
    PIPES_FIELD_NUMBER: builtins.int
    NO_PIPES_FIELD_NUMBER: builtins.int
    EMBEDDING_LEVELS_FIELD_NUMBER: builtins.int
    @property
    def config(self) -> global___NlpConfig: ...
    @property
    def texts(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ...
    @property
    def attributes(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ...
    no_attributes: builtins.bool = ...
    @property
    def pipes(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ...
    no_pipes: builtins.bool = ...
    @property
    def embedding_levels(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[global___EmbeddingLevel.V]: ...
    def __init__(self,
        *,
        config : typing.Optional[global___NlpConfig] = ...,
        texts : typing.Optional[typing.Iterable[typing.Text]] = ...,
        attributes : typing.Optional[typing.Iterable[typing.Text]] = ...,
        no_attributes : builtins.bool = ...,
        pipes : typing.Optional[typing.Iterable[typing.Text]] = ...,
        no_pipes : builtins.bool = ...,
        embedding_levels : typing.Optional[typing.Iterable[global___EmbeddingLevel.V]] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"config",b"config"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"attributes",b"attributes",u"config",b"config",u"embedding_levels",b"embedding_levels",u"no_attributes",b"no_attributes",u"no_pipes",b"no_pipes",u"pipes",b"pipes",u"texts",b"texts"]) -> None: ...
global___DocBinRequest = DocBinRequest

class DocBinResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    DOCBIN_FIELD_NUMBER: builtins.int
    docbin: builtins.bytes = ...
    def __init__(self,
        *,
        docbin : builtins.bytes = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"docbin",b"docbin"]) -> None: ...
global___DocBinResponse = DocBinResponse

class VectorsRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CONFIG_FIELD_NUMBER: builtins.int
    TEXTS_FIELD_NUMBER: builtins.int
    EMBEDDING_LEVELS_FIELD_NUMBER: builtins.int
    @property
    def config(self) -> global___NlpConfig: ...
    @property
    def texts(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ...
    @property
    def embedding_levels(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[global___EmbeddingLevel.V]: ...
    def __init__(self,
        *,
        config : typing.Optional[global___NlpConfig] = ...,
        texts : typing.Optional[typing.Iterable[typing.Text]] = ...,
        embedding_levels : typing.Optional[typing.Iterable[global___EmbeddingLevel.V]] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"config",b"config"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"config",b"config",u"embedding_levels",b"embedding_levels",u"texts",b"texts"]) -> None: ...
global___VectorsRequest = VectorsRequest

class VectorsResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    VECTORS_FIELD_NUMBER: builtins.int
    @property
    def vectors(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___VectorResponse]: ...
    def __init__(self,
        *,
        vectors : typing.Optional[typing.Iterable[global___VectorResponse]] = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"vectors",b"vectors"]) -> None: ...
global___VectorsResponse = VectorsResponse

class VectorResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    DOCUMENT_FIELD_NUMBER: builtins.int
    TOKENS_FIELD_NUMBER: builtins.int
    SENTENCES_FIELD_NUMBER: builtins.int
    @property
    def document(self) -> global___Vector: ...
    @property
    def tokens(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Vector]: ...
    @property
    def sentences(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Vector]: ...
    def __init__(self,
        *,
        document : typing.Optional[global___Vector] = ...,
        tokens : typing.Optional[typing.Iterable[global___Vector]] = ...,
        sentences : typing.Optional[typing.Iterable[global___Vector]] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"document",b"document"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"document",b"document",u"sentences",b"sentences",u"tokens",b"tokens"]) -> None: ...
global___VectorResponse = VectorResponse

class Vector(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    VECTOR_FIELD_NUMBER: builtins.int
    @property
    def vector(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.float]: ...
    def __init__(self,
        *,
        vector : typing.Optional[typing.Iterable[builtins.float]] = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"vector",b"vector"]) -> None: ...
global___Vector = Vector

class EmbeddingModel(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    MODEL_TYPE_FIELD_NUMBER: builtins.int
    MODEL_NAME_FIELD_NUMBER: builtins.int
    POOLING_FIELD_NUMBER: builtins.int
    model_type: global___EmbeddingType.V = ...
    model_name: typing.Text = ...
    pooling: global___Pooling.V = ...
    def __init__(self,
        *,
        model_type : global___EmbeddingType.V = ...,
        model_name : typing.Text = ...,
        pooling : global___Pooling.V = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"model_name",b"model_name",u"model_type",b"model_type",u"pooling",b"pooling"]) -> None: ...
global___EmbeddingModel = EmbeddingModel
