yandexcloud 0.325.0__py3-none-any.whl → 0.326.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of yandexcloud might be problematic. Click here for more details.

Files changed (24) hide show
  1. yandex/cloud/ai/assistants/v1/searchindex/common_pb2.py +18 -5
  2. yandex/cloud/ai/assistants/v1/searchindex/common_pb2.pyi +149 -0
  3. yandex/cloud/ai/assistants/v1/searchindex/search_index_file_pb2.py +3 -4
  4. yandex/cloud/ai/assistants/v1/searchindex/search_index_file_pb2.pyi +2 -7
  5. yandex/cloud/ai/assistants/v1/searchindex/search_index_pb2.py +10 -8
  6. yandex/cloud/ai/assistants/v1/searchindex/search_index_pb2.pyi +63 -5
  7. yandex/cloud/ai/assistants/v1/searchindex/search_index_service_pb2.py +20 -20
  8. yandex/cloud/ai/assistants/v1/searchindex/search_index_service_pb2.pyi +9 -3
  9. yandex/cloud/apploadbalancer/v1/backend_group_pb2.py +9 -7
  10. yandex/cloud/apploadbalancer/v1/backend_group_pb2.pyi +9 -1
  11. yandex/cloud/cloudapps/workload/v1/cloud_application_service_pb2.py +14 -9
  12. yandex/cloud/iam/v1/user_account_pb2.py +12 -11
  13. yandex/cloud/iam/v1/user_account_pb2.pyi +7 -2
  14. yandex/cloud/mdb/redis/v1/config/redis_pb2.py +8 -8
  15. yandex/cloud/mdb/redis/v1/config/redis_pb2.pyi +14 -2
  16. yandex/cloud/speechsense/v1/talk_pb2.py +14 -6
  17. yandex/cloud/speechsense/v1/talk_pb2.pyi +89 -2
  18. yandex/cloud/speechsense/v1/talk_service_pb2.py +2 -6
  19. {yandexcloud-0.325.0.dist-info → yandexcloud-0.326.0.dist-info}/METADATA +1 -1
  20. {yandexcloud-0.325.0.dist-info → yandexcloud-0.326.0.dist-info}/RECORD +24 -24
  21. {yandexcloud-0.325.0.dist-info → yandexcloud-0.326.0.dist-info}/WHEEL +1 -1
  22. {yandexcloud-0.325.0.dist-info → yandexcloud-0.326.0.dist-info}/AUTHORS +0 -0
  23. {yandexcloud-0.325.0.dist-info → yandexcloud-0.326.0.dist-info}/LICENSE +0 -0
  24. {yandexcloud-0.325.0.dist-info → yandexcloud-0.326.0.dist-info}/top_level.txt +0 -0
@@ -11,9 +11,10 @@ from google.protobuf.internal import builder as _builder
11
11
  _sym_db = _symbol_database.Default()
12
12
 
13
13
 
14
+ from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2
14
15
 
15
16
 
16
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n6yandex/cloud/ai/assistants/v1/searchindex/common.proto\x12)yandex.cloud.ai.assistants.v1.searchindex\"U\n\x16StaticChunkingStrategy\x12\x1d\n\x15max_chunk_size_tokens\x18\x01 \x01(\x03\x12\x1c\n\x14\x63hunk_overlap_tokens\x18\x02 \x01(\x03\"|\n\x10\x43hunkingStrategy\x12\\\n\x0fstatic_strategy\x18\x01 \x01(\x0b\x32\x41.yandex.cloud.ai.assistants.v1.searchindex.StaticChunkingStrategyH\x00\x42\n\n\x08StrategyB\x8a\x01\n-yandex.cloud.api.ai.assistants.v1.searchindexZYgithub.com/yandex-cloud/go-genproto/yandex/cloud/ai/assistants/v1/searchindex;searchindexb\x06proto3')
17
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n6yandex/cloud/ai/assistants/v1/searchindex/common.proto\x12)yandex.cloud.ai.assistants.v1.searchindex\x1a\x1egoogle/protobuf/wrappers.proto\"U\n\x16StaticChunkingStrategy\x12\x1d\n\x15max_chunk_size_tokens\x18\x01 \x01(\x03\x12\x1c\n\x14\x63hunk_overlap_tokens\x18\x02 \x01(\x03\"|\n\x10\x43hunkingStrategy\x12\\\n\x0fstatic_strategy\x18\x01 \x01(\x0b\x32\x41.yandex.cloud.ai.assistants.v1.searchindex.StaticChunkingStrategyH\x00\x42\n\n\x08Strategy\"\x9c\x02\n\x17MeanCombinationStrategy\x12}\n\x19mean_evaluation_technique\x18\x01 \x01(\x0e\x32Z.yandex.cloud.ai.assistants.v1.searchindex.MeanCombinationStrategy.MeanEvaluationTechnique\x12\x0f\n\x07weights\x18\x02 \x03(\x01\"q\n\x17MeanEvaluationTechnique\x12)\n%MEAN_EVALUATION_TECHNIQUE_UNSPECIFIED\x10\x00\x12\x0e\n\nARITHMETIC\x10\x01\x12\r\n\tGEOMETRIC\x10\x02\x12\x0c\n\x08HARMONIC\x10\x03\"Q\n\'ReciprocalRankFusionCombinationStrategy\x12&\n\x01k\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\"\xf0\x01\n\x13\x43ombinationStrategy\x12^\n\x10mean_combination\x18\x01 \x01(\x0b\x32\x42.yandex.cloud.ai.assistants.v1.searchindex.MeanCombinationStrategyH\x00\x12m\n\x0frrf_combination\x18\x02 \x01(\x0b\x32R.yandex.cloud.ai.assistants.v1.searchindex.ReciprocalRankFusionCombinationStrategyH\x00\x42\n\n\x08Strategy\"n\n\x0eNgramTokenizer\x12-\n\x08min_gram\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12-\n\x08max_gram\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value*T\n\x15NormalizationStrategy\x12&\n\"NORMALIZATION_STRATEGY_UNSPECIFIED\x10\x00\x12\x0b\n\x07MIN_MAX\x10\x01\x12\x06\n\x02L2\x10\x02\x42\x8a\x01\n-yandex.cloud.api.ai.assistants.v1.searchindexZYgithub.com/yandex-cloud/go-genproto/yandex/cloud/ai/assistants/v1/searchindex;searchindexb\x06proto3')
17
18
 
18
19
  _globals = globals()
19
20
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -21,8 +22,20 @@ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'yandex.cloud.ai.assistants.
21
22
  if _descriptor._USE_C_DESCRIPTORS == False:
22
23
  DESCRIPTOR._options = None
23
24
  DESCRIPTOR._serialized_options = b'\n-yandex.cloud.api.ai.assistants.v1.searchindexZYgithub.com/yandex-cloud/go-genproto/yandex/cloud/ai/assistants/v1/searchindex;searchindex'
24
- _globals['_STATICCHUNKINGSTRATEGY']._serialized_start=101
25
- _globals['_STATICCHUNKINGSTRATEGY']._serialized_end=186
26
- _globals['_CHUNKINGSTRATEGY']._serialized_start=188
27
- _globals['_CHUNKINGSTRATEGY']._serialized_end=312
25
+ _globals['_NORMALIZATIONSTRATEGY']._serialized_start=1071
26
+ _globals['_NORMALIZATIONSTRATEGY']._serialized_end=1155
27
+ _globals['_STATICCHUNKINGSTRATEGY']._serialized_start=133
28
+ _globals['_STATICCHUNKINGSTRATEGY']._serialized_end=218
29
+ _globals['_CHUNKINGSTRATEGY']._serialized_start=220
30
+ _globals['_CHUNKINGSTRATEGY']._serialized_end=344
31
+ _globals['_MEANCOMBINATIONSTRATEGY']._serialized_start=347
32
+ _globals['_MEANCOMBINATIONSTRATEGY']._serialized_end=631
33
+ _globals['_MEANCOMBINATIONSTRATEGY_MEANEVALUATIONTECHNIQUE']._serialized_start=518
34
+ _globals['_MEANCOMBINATIONSTRATEGY_MEANEVALUATIONTECHNIQUE']._serialized_end=631
35
+ _globals['_RECIPROCALRANKFUSIONCOMBINATIONSTRATEGY']._serialized_start=633
36
+ _globals['_RECIPROCALRANKFUSIONCOMBINATIONSTRATEGY']._serialized_end=714
37
+ _globals['_COMBINATIONSTRATEGY']._serialized_start=717
38
+ _globals['_COMBINATIONSTRATEGY']._serialized_end=957
39
+ _globals['_NGRAMTOKENIZER']._serialized_start=959
40
+ _globals['_NGRAMTOKENIZER']._serialized_end=1069
28
41
  # @@protoc_insertion_point(module_scope)
@@ -4,12 +4,44 @@ isort:skip_file
4
4
  """
5
5
 
6
6
  import builtins
7
+ import collections.abc
7
8
  import google.protobuf.descriptor
9
+ import google.protobuf.internal.containers
10
+ import google.protobuf.internal.enum_type_wrapper
8
11
  import google.protobuf.message
12
+ import google.protobuf.wrappers_pb2
13
+ import sys
9
14
  import typing
10
15
 
16
+ if sys.version_info >= (3, 10):
17
+ import typing as typing_extensions
18
+ else:
19
+ import typing_extensions
20
+
11
21
  DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
12
22
 
23
+ class _NormalizationStrategy:
24
+ ValueType = typing.NewType("ValueType", builtins.int)
25
+ V: typing_extensions.TypeAlias = ValueType
26
+
27
+ class _NormalizationStrategyEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_NormalizationStrategy.ValueType], builtins.type):
28
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
29
+ NORMALIZATION_STRATEGY_UNSPECIFIED: _NormalizationStrategy.ValueType # 0
30
+ MIN_MAX: _NormalizationStrategy.ValueType # 1
31
+ """https://en.wikipedia.org/wiki/Feature_scaling#Rescaling_(min-max_normalization)"""
32
+ L2: _NormalizationStrategy.ValueType # 2
33
+ """https://en.wikipedia.org/wiki/Cosine_similarity#L2-normalized_Euclidean_distance"""
34
+
35
+ class NormalizationStrategy(_NormalizationStrategy, metaclass=_NormalizationStrategyEnumTypeWrapper):
36
+ """Normalization strategy for relevance scores from different indices"""
37
+
38
+ NORMALIZATION_STRATEGY_UNSPECIFIED: NormalizationStrategy.ValueType # 0
39
+ MIN_MAX: NormalizationStrategy.ValueType # 1
40
+ """https://en.wikipedia.org/wiki/Feature_scaling#Rescaling_(min-max_normalization)"""
41
+ L2: NormalizationStrategy.ValueType # 2
42
+ """https://en.wikipedia.org/wiki/Cosine_similarity#L2-normalized_Euclidean_distance"""
43
+ global___NormalizationStrategy = NormalizationStrategy
44
+
13
45
  @typing.final
14
46
  class StaticChunkingStrategy(google.protobuf.message.Message):
15
47
  """Defines a chunking strategy where chunks are created with a fixed maximum chunk size and an overlap between consecutive chunks."""
@@ -60,3 +92,120 @@ class ChunkingStrategy(google.protobuf.message.Message):
60
92
  def WhichOneof(self, oneof_group: typing.Literal["Strategy", b"Strategy"]) -> typing.Literal["static_strategy"] | None: ...
61
93
 
62
94
  global___ChunkingStrategy = ChunkingStrategy
95
+
96
+ @typing.final
97
+ class MeanCombinationStrategy(google.protobuf.message.Message):
98
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
99
+
100
+ class _MeanEvaluationTechnique:
101
+ ValueType = typing.NewType("ValueType", builtins.int)
102
+ V: typing_extensions.TypeAlias = ValueType
103
+
104
+ class _MeanEvaluationTechniqueEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[MeanCombinationStrategy._MeanEvaluationTechnique.ValueType], builtins.type):
105
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
106
+ MEAN_EVALUATION_TECHNIQUE_UNSPECIFIED: MeanCombinationStrategy._MeanEvaluationTechnique.ValueType # 0
107
+ ARITHMETIC: MeanCombinationStrategy._MeanEvaluationTechnique.ValueType # 1
108
+ """https://en.wikipedia.org/wiki/Arithmetic_mean"""
109
+ GEOMETRIC: MeanCombinationStrategy._MeanEvaluationTechnique.ValueType # 2
110
+ """https://en.wikipedia.org/wiki/Geometric_mean"""
111
+ HARMONIC: MeanCombinationStrategy._MeanEvaluationTechnique.ValueType # 3
112
+ """https://en.wikipedia.org/wiki/Harmonic_mean"""
113
+
114
+ class MeanEvaluationTechnique(_MeanEvaluationTechnique, metaclass=_MeanEvaluationTechniqueEnumTypeWrapper): ...
115
+ MEAN_EVALUATION_TECHNIQUE_UNSPECIFIED: MeanCombinationStrategy.MeanEvaluationTechnique.ValueType # 0
116
+ ARITHMETIC: MeanCombinationStrategy.MeanEvaluationTechnique.ValueType # 1
117
+ """https://en.wikipedia.org/wiki/Arithmetic_mean"""
118
+ GEOMETRIC: MeanCombinationStrategy.MeanEvaluationTechnique.ValueType # 2
119
+ """https://en.wikipedia.org/wiki/Geometric_mean"""
120
+ HARMONIC: MeanCombinationStrategy.MeanEvaluationTechnique.ValueType # 3
121
+ """https://en.wikipedia.org/wiki/Harmonic_mean"""
122
+
123
+ MEAN_EVALUATION_TECHNIQUE_FIELD_NUMBER: builtins.int
124
+ WEIGHTS_FIELD_NUMBER: builtins.int
125
+ mean_evaluation_technique: global___MeanCombinationStrategy.MeanEvaluationTechnique.ValueType
126
+ """Technique for averaging relevance scores from different indices. Default is ARITHMETIC"""
127
+ @property
128
+ def weights(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.float]:
129
+ """Weights used for evaluating the weighted mean of relevance scores. The sum of the values must equal 1.0
130
+ If not provided, all scores are given equal weight
131
+ """
132
+
133
+ def __init__(
134
+ self,
135
+ *,
136
+ mean_evaluation_technique: global___MeanCombinationStrategy.MeanEvaluationTechnique.ValueType = ...,
137
+ weights: collections.abc.Iterable[builtins.float] | None = ...,
138
+ ) -> None: ...
139
+ def ClearField(self, field_name: typing.Literal["mean_evaluation_technique", b"mean_evaluation_technique", "weights", b"weights"]) -> None: ...
140
+
141
+ global___MeanCombinationStrategy = MeanCombinationStrategy
142
+
143
+ @typing.final
144
+ class ReciprocalRankFusionCombinationStrategy(google.protobuf.message.Message):
145
+ """https://plg.uwaterloo.ca/~gvcormac/cormacksigir09-rrf.pdf"""
146
+
147
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
148
+
149
+ K_FIELD_NUMBER: builtins.int
150
+ @property
151
+ def k(self) -> google.protobuf.wrappers_pb2.Int64Value:
152
+ """The parameter k for RRFscore. Default is 60"""
153
+
154
+ def __init__(
155
+ self,
156
+ *,
157
+ k: google.protobuf.wrappers_pb2.Int64Value | None = ...,
158
+ ) -> None: ...
159
+ def HasField(self, field_name: typing.Literal["k", b"k"]) -> builtins.bool: ...
160
+ def ClearField(self, field_name: typing.Literal["k", b"k"]) -> None: ...
161
+
162
+ global___ReciprocalRankFusionCombinationStrategy = ReciprocalRankFusionCombinationStrategy
163
+
164
+ @typing.final
165
+ class CombinationStrategy(google.protobuf.message.Message):
166
+ """Combination strategy for merging rankings from different indices"""
167
+
168
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
169
+
170
+ MEAN_COMBINATION_FIELD_NUMBER: builtins.int
171
+ RRF_COMBINATION_FIELD_NUMBER: builtins.int
172
+ @property
173
+ def mean_combination(self) -> global___MeanCombinationStrategy: ...
174
+ @property
175
+ def rrf_combination(self) -> global___ReciprocalRankFusionCombinationStrategy: ...
176
+ def __init__(
177
+ self,
178
+ *,
179
+ mean_combination: global___MeanCombinationStrategy | None = ...,
180
+ rrf_combination: global___ReciprocalRankFusionCombinationStrategy | None = ...,
181
+ ) -> None: ...
182
+ def HasField(self, field_name: typing.Literal["Strategy", b"Strategy", "mean_combination", b"mean_combination", "rrf_combination", b"rrf_combination"]) -> builtins.bool: ...
183
+ def ClearField(self, field_name: typing.Literal["Strategy", b"Strategy", "mean_combination", b"mean_combination", "rrf_combination", b"rrf_combination"]) -> None: ...
184
+ def WhichOneof(self, oneof_group: typing.Literal["Strategy", b"Strategy"]) -> typing.Literal["mean_combination", "rrf_combination"] | None: ...
185
+
186
+ global___CombinationStrategy = CombinationStrategy
187
+
188
+ @typing.final
189
+ class NgramTokenizer(google.protobuf.message.Message):
190
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
191
+
192
+ MIN_GRAM_FIELD_NUMBER: builtins.int
193
+ MAX_GRAM_FIELD_NUMBER: builtins.int
194
+ @property
195
+ def min_gram(self) -> google.protobuf.wrappers_pb2.Int64Value:
196
+ """Minimum length of characters in a gram. Defaults to 3"""
197
+
198
+ @property
199
+ def max_gram(self) -> google.protobuf.wrappers_pb2.Int64Value:
200
+ """Maximum length of characters in a gram. Defaults to 4"""
201
+
202
+ def __init__(
203
+ self,
204
+ *,
205
+ min_gram: google.protobuf.wrappers_pb2.Int64Value | None = ...,
206
+ max_gram: google.protobuf.wrappers_pb2.Int64Value | None = ...,
207
+ ) -> None: ...
208
+ def HasField(self, field_name: typing.Literal["max_gram", b"max_gram", "min_gram", b"min_gram"]) -> builtins.bool: ...
209
+ def ClearField(self, field_name: typing.Literal["max_gram", b"max_gram", "min_gram", b"min_gram"]) -> None: ...
210
+
211
+ global___NgramTokenizer = NgramTokenizer
@@ -11,11 +11,10 @@ from google.protobuf.internal import builder as _builder
11
11
  _sym_db = _symbol_database.Default()
12
12
 
13
13
 
14
- from yandex.cloud.ai.assistants.v1.searchindex import common_pb2 as yandex_dot_cloud_dot_ai_dot_assistants_dot_v1_dot_searchindex_dot_common__pb2
15
14
  from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
16
15
 
17
16
 
18
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\nAyandex/cloud/ai/assistants/v1/searchindex/search_index_file.proto\x12)yandex.cloud.ai.assistants.v1.searchindex\x1a\x36yandex/cloud/ai/assistants/v1/searchindex/common.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xd2\x01\n\x0fSearchIndexFile\x12\n\n\x02id\x18\x01 \x01(\t\x12\x17\n\x0fsearch_index_id\x18\x02 \x01(\t\x12\x12\n\ncreated_by\x18\x03 \x01(\t\x12.\n\ncreated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12V\n\x11\x63hunking_strategy\x18\x05 \x01(\x0b\x32;.yandex.cloud.ai.assistants.v1.searchindex.ChunkingStrategyB\x8a\x01\n-yandex.cloud.api.ai.assistants.v1.searchindexZYgithub.com/yandex-cloud/go-genproto/yandex/cloud/ai/assistants/v1/searchindex;searchindexb\x06proto3')
17
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\nAyandex/cloud/ai/assistants/v1/searchindex/search_index_file.proto\x12)yandex.cloud.ai.assistants.v1.searchindex\x1a\x1fgoogle/protobuf/timestamp.proto\"z\n\x0fSearchIndexFile\x12\n\n\x02id\x18\x01 \x01(\t\x12\x17\n\x0fsearch_index_id\x18\x02 \x01(\t\x12\x12\n\ncreated_by\x18\x03 \x01(\t\x12.\n\ncreated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x8a\x01\n-yandex.cloud.api.ai.assistants.v1.searchindexZYgithub.com/yandex-cloud/go-genproto/yandex/cloud/ai/assistants/v1/searchindex;searchindexb\x06proto3')
19
18
 
20
19
  _globals = globals()
21
20
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -23,6 +22,6 @@ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'yandex.cloud.ai.assistants.
23
22
  if _descriptor._USE_C_DESCRIPTORS == False:
24
23
  DESCRIPTOR._options = None
25
24
  DESCRIPTOR._serialized_options = b'\n-yandex.cloud.api.ai.assistants.v1.searchindexZYgithub.com/yandex-cloud/go-genproto/yandex/cloud/ai/assistants/v1/searchindex;searchindex'
26
- _globals['_SEARCHINDEXFILE']._serialized_start=202
27
- _globals['_SEARCHINDEXFILE']._serialized_end=412
25
+ _globals['_SEARCHINDEXFILE']._serialized_start=145
26
+ _globals['_SEARCHINDEXFILE']._serialized_end=267
28
27
  # @@protoc_insertion_point(module_scope)
@@ -8,7 +8,6 @@ import google.protobuf.descriptor
8
8
  import google.protobuf.message
9
9
  import google.protobuf.timestamp_pb2
10
10
  import typing
11
- import yandex.cloud.ai.assistants.v1.searchindex.common_pb2
12
11
 
13
12
  DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
14
13
 
@@ -22,7 +21,6 @@ class SearchIndexFile(google.protobuf.message.Message):
22
21
  SEARCH_INDEX_ID_FIELD_NUMBER: builtins.int
23
22
  CREATED_BY_FIELD_NUMBER: builtins.int
24
23
  CREATED_AT_FIELD_NUMBER: builtins.int
25
- CHUNKING_STRATEGY_FIELD_NUMBER: builtins.int
26
24
  id: builtins.str
27
25
  """Unique identifier of the file that was used for indexing."""
28
26
  search_index_id: builtins.str
@@ -33,8 +31,6 @@ class SearchIndexFile(google.protobuf.message.Message):
33
31
  def created_at(self) -> google.protobuf.timestamp_pb2.Timestamp:
34
32
  """Timestamp representing when the file was created."""
35
33
 
36
- @property
37
- def chunking_strategy(self) -> yandex.cloud.ai.assistants.v1.searchindex.common_pb2.ChunkingStrategy: ...
38
34
  def __init__(
39
35
  self,
40
36
  *,
@@ -42,9 +38,8 @@ class SearchIndexFile(google.protobuf.message.Message):
42
38
  search_index_id: builtins.str = ...,
43
39
  created_by: builtins.str = ...,
44
40
  created_at: google.protobuf.timestamp_pb2.Timestamp | None = ...,
45
- chunking_strategy: yandex.cloud.ai.assistants.v1.searchindex.common_pb2.ChunkingStrategy | None = ...,
46
41
  ) -> None: ...
47
- def HasField(self, field_name: typing.Literal["chunking_strategy", b"chunking_strategy", "created_at", b"created_at"]) -> builtins.bool: ...
48
- def ClearField(self, field_name: typing.Literal["chunking_strategy", b"chunking_strategy", "created_at", b"created_at", "created_by", b"created_by", "id", b"id", "search_index_id", b"search_index_id"]) -> None: ...
42
+ def HasField(self, field_name: typing.Literal["created_at", b"created_at"]) -> builtins.bool: ...
43
+ def ClearField(self, field_name: typing.Literal["created_at", b"created_at", "created_by", b"created_by", "id", b"id", "search_index_id", b"search_index_id"]) -> None: ...
49
44
 
50
45
  global___SearchIndexFile = SearchIndexFile
@@ -16,7 +16,7 @@ from yandex.cloud.ai.assistants.v1.searchindex import common_pb2 as yandex_dot_c
16
16
  from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
17
17
 
18
18
 
19
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n<yandex/cloud/ai/assistants/v1/searchindex/search_index.proto\x12)yandex.cloud.ai.assistants.v1.searchindex\x1a#yandex/cloud/ai/common/common.proto\x1a\x36yandex/cloud/ai/assistants/v1/searchindex/common.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\x92\x05\n\x0bSearchIndex\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\tfolder_id\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12\x12\n\ncreated_by\x18\x05 \x01(\t\x12.\n\ncreated_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x12\n\nupdated_by\x18\x07 \x01(\t\x12.\n\nupdated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x43\n\x11\x65xpiration_config\x18\t \x01(\x0b\x32(.yandex.cloud.ai.common.ExpirationConfig\x12.\n\nexpires_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12R\n\x06labels\x18\x0b \x03(\x0b\x32\x42.yandex.cloud.ai.assistants.v1.searchindex.SearchIndex.LabelsEntry\x12W\n\x11text_search_index\x18\x0c \x01(\x0b\x32:.yandex.cloud.ai.assistants.v1.searchindex.TextSearchIndexH\x00\x12[\n\x13vector_search_index\x18\r \x01(\x0b\x32<.yandex.cloud.ai.assistants.v1.searchindex.VectorSearchIndexH\x00\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0b\n\tIndexType\"i\n\x0fTextSearchIndex\x12V\n\x11\x63hunking_strategy\x18\x01 \x01(\x0b\x32;.yandex.cloud.ai.assistants.v1.searchindex.ChunkingStrategy\"\xa1\x01\n\x11VectorSearchIndex\x12\x18\n\x10\x64oc_embedder_uri\x18\x01 \x01(\t\x12\x1a\n\x12query_embedder_uri\x18\x02 \x01(\t\x12V\n\x11\x63hunking_strategy\x18\x03 \x01(\x0b\x32;.yandex.cloud.ai.assistants.v1.searchindex.ChunkingStrategyB\x8a\x01\n-yandex.cloud.api.ai.assistants.v1.searchindexZYgithub.com/yandex-cloud/go-genproto/yandex/cloud/ai/assistants/v1/searchindex;searchindexb\x06proto3')
19
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n<yandex/cloud/ai/assistants/v1/searchindex/search_index.proto\x12)yandex.cloud.ai.assistants.v1.searchindex\x1a#yandex/cloud/ai/common/common.proto\x1a\x36yandex/cloud/ai/assistants/v1/searchindex/common.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xef\x05\n\x0bSearchIndex\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\tfolder_id\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12\x12\n\ncreated_by\x18\x05 \x01(\t\x12.\n\ncreated_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x12\n\nupdated_by\x18\x07 \x01(\t\x12.\n\nupdated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x43\n\x11\x65xpiration_config\x18\t \x01(\x0b\x32(.yandex.cloud.ai.common.ExpirationConfig\x12.\n\nexpires_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12R\n\x06labels\x18\x0b \x03(\x0b\x32\x42.yandex.cloud.ai.assistants.v1.searchindex.SearchIndex.LabelsEntry\x12W\n\x11text_search_index\x18\x0c \x01(\x0b\x32:.yandex.cloud.ai.assistants.v1.searchindex.TextSearchIndexH\x00\x12[\n\x13vector_search_index\x18\r \x01(\x0b\x32<.yandex.cloud.ai.assistants.v1.searchindex.VectorSearchIndexH\x00\x12[\n\x13hybrid_search_index\x18\x0e \x01(\x0b\x32<.yandex.cloud.ai.assistants.v1.searchindex.HybridSearchIndexH\x00\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0b\n\tIndexType\"i\n\x0fTextSearchIndex\x12V\n\x11\x63hunking_strategy\x18\x01 \x01(\x0b\x32;.yandex.cloud.ai.assistants.v1.searchindex.ChunkingStrategy\"\xa1\x01\n\x11VectorSearchIndex\x12\x18\n\x10\x64oc_embedder_uri\x18\x01 \x01(\t\x12\x1a\n\x12query_embedder_uri\x18\x02 \x01(\t\x12V\n\x11\x63hunking_strategy\x18\x03 \x01(\x0b\x32;.yandex.cloud.ai.assistants.v1.searchindex.ChunkingStrategy\"\xdd\x03\n\x11HybridSearchIndex\x12U\n\x11text_search_index\x18\x01 \x01(\x0b\x32:.yandex.cloud.ai.assistants.v1.searchindex.TextSearchIndex\x12Y\n\x13vector_search_index\x18\x02 \x01(\x0b\x32<.yandex.cloud.ai.assistants.v1.searchindex.VectorSearchIndex\x12V\n\x11\x63hunking_strategy\x18\x03 \x01(\x0b\x32;.yandex.cloud.ai.assistants.v1.searchindex.ChunkingStrategy\x12`\n\x16normalization_strategy\x18\x04 \x01(\x0e\x32@.yandex.cloud.ai.assistants.v1.searchindex.NormalizationStrategy\x12\\\n\x14\x63ombination_strategy\x18\x05 \x01(\x0b\x32>.yandex.cloud.ai.assistants.v1.searchindex.CombinationStrategyB\x8a\x01\n-yandex.cloud.api.ai.assistants.v1.searchindexZYgithub.com/yandex-cloud/go-genproto/yandex/cloud/ai/assistants/v1/searchindex;searchindexb\x06proto3')
20
20
 
21
21
  _globals = globals()
22
22
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -27,11 +27,13 @@ if _descriptor._USE_C_DESCRIPTORS == False:
27
27
  _SEARCHINDEX_LABELSENTRY._options = None
28
28
  _SEARCHINDEX_LABELSENTRY._serialized_options = b'8\001'
29
29
  _globals['_SEARCHINDEX']._serialized_start=234
30
- _globals['_SEARCHINDEX']._serialized_end=892
31
- _globals['_SEARCHINDEX_LABELSENTRY']._serialized_start=834
32
- _globals['_SEARCHINDEX_LABELSENTRY']._serialized_end=879
33
- _globals['_TEXTSEARCHINDEX']._serialized_start=894
34
- _globals['_TEXTSEARCHINDEX']._serialized_end=999
35
- _globals['_VECTORSEARCHINDEX']._serialized_start=1002
36
- _globals['_VECTORSEARCHINDEX']._serialized_end=1163
30
+ _globals['_SEARCHINDEX']._serialized_end=985
31
+ _globals['_SEARCHINDEX_LABELSENTRY']._serialized_start=927
32
+ _globals['_SEARCHINDEX_LABELSENTRY']._serialized_end=972
33
+ _globals['_TEXTSEARCHINDEX']._serialized_start=987
34
+ _globals['_TEXTSEARCHINDEX']._serialized_end=1092
35
+ _globals['_VECTORSEARCHINDEX']._serialized_start=1095
36
+ _globals['_VECTORSEARCHINDEX']._serialized_end=1256
37
+ _globals['_HYBRIDSEARCHINDEX']._serialized_start=1259
38
+ _globals['_HYBRIDSEARCHINDEX']._serialized_end=1736
37
39
  # @@protoc_insertion_point(module_scope)
@@ -50,6 +50,7 @@ class SearchIndex(google.protobuf.message.Message):
50
50
  LABELS_FIELD_NUMBER: builtins.int
51
51
  TEXT_SEARCH_INDEX_FIELD_NUMBER: builtins.int
52
52
  VECTOR_SEARCH_INDEX_FIELD_NUMBER: builtins.int
53
+ HYBRID_SEARCH_INDEX_FIELD_NUMBER: builtins.int
53
54
  id: builtins.str
54
55
  """Unique identifier of the search index."""
55
56
  folder_id: builtins.str
@@ -94,6 +95,12 @@ class SearchIndex(google.protobuf.message.Message):
94
95
  This type is used for vector search, where documents are indexed using vector embeddings.
95
96
  """
96
97
 
98
+ @property
99
+ def hybrid_search_index(self) -> global___HybridSearchIndex:
100
+ """Hybrid (vector-based + keyword-based) search index configuration
101
+ This type is used for hybrid search, where documents are indexed using both keyword-based and vector-based search mechanisms.
102
+ """
103
+
97
104
  def __init__(
98
105
  self,
99
106
  *,
@@ -110,10 +117,11 @@ class SearchIndex(google.protobuf.message.Message):
110
117
  labels: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
111
118
  text_search_index: global___TextSearchIndex | None = ...,
112
119
  vector_search_index: global___VectorSearchIndex | None = ...,
120
+ hybrid_search_index: global___HybridSearchIndex | None = ...,
113
121
  ) -> None: ...
114
- def HasField(self, field_name: typing.Literal["IndexType", b"IndexType", "created_at", b"created_at", "expiration_config", b"expiration_config", "expires_at", b"expires_at", "text_search_index", b"text_search_index", "updated_at", b"updated_at", "vector_search_index", b"vector_search_index"]) -> builtins.bool: ...
115
- def ClearField(self, field_name: typing.Literal["IndexType", b"IndexType", "created_at", b"created_at", "created_by", b"created_by", "description", b"description", "expiration_config", b"expiration_config", "expires_at", b"expires_at", "folder_id", b"folder_id", "id", b"id", "labels", b"labels", "name", b"name", "text_search_index", b"text_search_index", "updated_at", b"updated_at", "updated_by", b"updated_by", "vector_search_index", b"vector_search_index"]) -> None: ...
116
- def WhichOneof(self, oneof_group: typing.Literal["IndexType", b"IndexType"]) -> typing.Literal["text_search_index", "vector_search_index"] | None: ...
122
+ def HasField(self, field_name: typing.Literal["IndexType", b"IndexType", "created_at", b"created_at", "expiration_config", b"expiration_config", "expires_at", b"expires_at", "hybrid_search_index", b"hybrid_search_index", "text_search_index", b"text_search_index", "updated_at", b"updated_at", "vector_search_index", b"vector_search_index"]) -> builtins.bool: ...
123
+ def ClearField(self, field_name: typing.Literal["IndexType", b"IndexType", "created_at", b"created_at", "created_by", b"created_by", "description", b"description", "expiration_config", b"expiration_config", "expires_at", b"expires_at", "folder_id", b"folder_id", "hybrid_search_index", b"hybrid_search_index", "id", b"id", "labels", b"labels", "name", b"name", "text_search_index", b"text_search_index", "updated_at", b"updated_at", "updated_by", b"updated_by", "vector_search_index", b"vector_search_index"]) -> None: ...
124
+ def WhichOneof(self, oneof_group: typing.Literal["IndexType", b"IndexType"]) -> typing.Literal["text_search_index", "vector_search_index", "hybrid_search_index"] | None: ...
117
125
 
118
126
  global___SearchIndex = SearchIndex
119
127
 
@@ -126,7 +134,9 @@ class TextSearchIndex(google.protobuf.message.Message):
126
134
  CHUNKING_STRATEGY_FIELD_NUMBER: builtins.int
127
135
  @property
128
136
  def chunking_strategy(self) -> yandex.cloud.ai.assistants.v1.searchindex.common_pb2.ChunkingStrategy:
129
- """Chunking strategy used to split text into smaller chunks before indexing."""
137
+ """Chunking strategy used to split text into smaller chunks before indexing.
138
+ In the case of text search, tokens are individual text characters.
139
+ """
130
140
 
131
141
  def __init__(
132
142
  self,
@@ -153,7 +163,9 @@ class VectorSearchIndex(google.protobuf.message.Message):
153
163
  """The [ID of the model](/docs/foundation-models/concepts/embeddings) to be used for obtaining query text embeddings."""
154
164
  @property
155
165
  def chunking_strategy(self) -> yandex.cloud.ai.assistants.v1.searchindex.common_pb2.ChunkingStrategy:
156
- """Chunking strategy used to split text into smaller chunks before indexing."""
166
+ """Chunking strategy used to split text into smaller chunks before indexing.
167
+ In the case of vector search, tokens are produced by the tokenizer from the embedding model.
168
+ """
157
169
 
158
170
  def __init__(
159
171
  self,
@@ -166,3 +178,49 @@ class VectorSearchIndex(google.protobuf.message.Message):
166
178
  def ClearField(self, field_name: typing.Literal["chunking_strategy", b"chunking_strategy", "doc_embedder_uri", b"doc_embedder_uri", "query_embedder_uri", b"query_embedder_uri"]) -> None: ...
167
179
 
168
180
  global___VectorSearchIndex = VectorSearchIndex
181
+
182
+ @typing.final
183
+ class HybridSearchIndex(google.protobuf.message.Message):
184
+ """Defines the configuration for a hybrid (vector-based + keyword-based) search index. This type uses both embeddings and keyword-based search to represent documents and queries."""
185
+
186
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
187
+
188
+ TEXT_SEARCH_INDEX_FIELD_NUMBER: builtins.int
189
+ VECTOR_SEARCH_INDEX_FIELD_NUMBER: builtins.int
190
+ CHUNKING_STRATEGY_FIELD_NUMBER: builtins.int
191
+ NORMALIZATION_STRATEGY_FIELD_NUMBER: builtins.int
192
+ COMBINATION_STRATEGY_FIELD_NUMBER: builtins.int
193
+ normalization_strategy: yandex.cloud.ai.assistants.v1.searchindex.common_pb2.NormalizationStrategy.ValueType
194
+ """Normalization strategy for relevance scores from different indices. Default is MIN_MAX_STRATEGY"""
195
+ @property
196
+ def text_search_index(self) -> global___TextSearchIndex:
197
+ """Configuration for a traditional keyword-based text search index."""
198
+
199
+ @property
200
+ def vector_search_index(self) -> global___VectorSearchIndex:
201
+ """Configuration for a vector-based search index."""
202
+
203
+ @property
204
+ def chunking_strategy(self) -> yandex.cloud.ai.assistants.v1.searchindex.common_pb2.ChunkingStrategy:
205
+ """Common chunking strategy that applies to both text and vector search indexes.
206
+ If provided, it overrides the individual chunking strategies in both `text_search_index` and `vector_search_index`.
207
+ In this case, both text and vector search will use token-based chunking, where tokens are produced by the tokenizer of the embedding model.
208
+ """
209
+
210
+ @property
211
+ def combination_strategy(self) -> yandex.cloud.ai.assistants.v1.searchindex.common_pb2.CombinationStrategy:
212
+ """Combination strategy for merging rankings from different indices. Default is arithmetic mean"""
213
+
214
+ def __init__(
215
+ self,
216
+ *,
217
+ text_search_index: global___TextSearchIndex | None = ...,
218
+ vector_search_index: global___VectorSearchIndex | None = ...,
219
+ chunking_strategy: yandex.cloud.ai.assistants.v1.searchindex.common_pb2.ChunkingStrategy | None = ...,
220
+ normalization_strategy: yandex.cloud.ai.assistants.v1.searchindex.common_pb2.NormalizationStrategy.ValueType = ...,
221
+ combination_strategy: yandex.cloud.ai.assistants.v1.searchindex.common_pb2.CombinationStrategy | None = ...,
222
+ ) -> None: ...
223
+ def HasField(self, field_name: typing.Literal["chunking_strategy", b"chunking_strategy", "combination_strategy", b"combination_strategy", "text_search_index", b"text_search_index", "vector_search_index", b"vector_search_index"]) -> builtins.bool: ...
224
+ def ClearField(self, field_name: typing.Literal["chunking_strategy", b"chunking_strategy", "combination_strategy", b"combination_strategy", "normalization_strategy", b"normalization_strategy", "text_search_index", b"text_search_index", "vector_search_index", b"vector_search_index"]) -> None: ...
225
+
226
+ global___HybridSearchIndex = HybridSearchIndex
@@ -20,7 +20,7 @@ from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
20
20
  from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2
21
21
 
22
22
 
23
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\nDyandex/cloud/ai/assistants/v1/searchindex/search_index_service.proto\x12)yandex.cloud.ai.assistants.v1.searchindex\x1a#yandex/cloud/ai/common/common.proto\x1a<yandex/cloud/ai/assistants/v1/searchindex/search_index.proto\x1a yandex/cloud/api/operation.proto\x1a&yandex/cloud/operation/operation.proto\x1a\x1dyandex/cloud/validation.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\"\x80\x04\n\x18\x43reateSearchIndexRequest\x12\x17\n\tfolder_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12\x10\n\x08\x66ile_ids\x18\x02 \x03(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12\x43\n\x11\x65xpiration_config\x18\x05 \x01(\x0b\x32(.yandex.cloud.ai.common.ExpirationConfig\x12_\n\x06labels\x18\x06 \x03(\x0b\x32O.yandex.cloud.ai.assistants.v1.searchindex.CreateSearchIndexRequest.LabelsEntry\x12W\n\x11text_search_index\x18\x07 \x01(\x0b\x32:.yandex.cloud.ai.assistants.v1.searchindex.TextSearchIndexH\x00\x12[\n\x13vector_search_index\x18\x08 \x01(\x0b\x32<.yandex.cloud.ai.assistants.v1.searchindex.VectorSearchIndexH\x00\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0b\n\tIndexType\"6\n\x15GetSearchIndexRequest\x12\x1d\n\x0fsearch_index_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"\xe8\x02\n\x18UpdateSearchIndexRequest\x12\x1d\n\x0fsearch_index_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12\x35\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x04\xe8\xc7\x31\x01\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12\x43\n\x11\x65xpiration_config\x18\x05 \x01(\x0b\x32(.yandex.cloud.ai.common.ExpirationConfig\x12_\n\x06labels\x18\x06 \x03(\x0b\x32O.yandex.cloud.ai.assistants.v1.searchindex.UpdateSearchIndexRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"9\n\x18\x44\x65leteSearchIndexRequest\x12\x1d\n\x0fsearch_index_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"\x1b\n\x19\x44\x65leteSearchIndexResponse\"Z\n\x18ListSearchIndicesRequest\x12\x17\n\tfolder_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12\x11\n\tpage_size\x18\x02 \x01(\x03\x12\x12\n\npage_token\x18\x03 \x01(\t\"}\n\x19ListSearchIndicesResponse\x12G\n\x07indices\x18\x01 \x03(\x0b\x32\x36.yandex.cloud.ai.assistants.v1.searchindex.SearchIndex\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t2\xbc\x07\n\x12SearchIndexService\x12\xa8\x01\n\x06\x43reate\x12\x43.yandex.cloud.ai.assistants.v1.searchindex.CreateSearchIndexRequest\x1a!.yandex.cloud.operation.Operation\"6\xb2\xd2*\r\x12\x0bSearchIndex\x82\xd3\xe4\x93\x02\x1f\"\x1a/assistants/v1/searchIndex:\x01*\x12\xb5\x01\n\x03Get\x12@.yandex.cloud.ai.assistants.v1.searchindex.GetSearchIndexRequest\x1a\x36.yandex.cloud.ai.assistants.v1.searchindex.SearchIndex\"4\x82\xd3\xe4\x93\x02.\x12,/assistants/v1/searchIndex/{search_index_id}\x12\xbe\x01\n\x06Update\x12\x43.yandex.cloud.ai.assistants.v1.searchindex.UpdateSearchIndexRequest\x1a\x36.yandex.cloud.ai.assistants.v1.searchindex.SearchIndex\"7\x82\xd3\xe4\x93\x02\x31\x32,/assistants/v1/searchIndex/{search_index_id}:\x01*\x12\xc9\x01\n\x06\x44\x65lete\x12\x43.yandex.cloud.ai.assistants.v1.searchindex.DeleteSearchIndexRequest\x1a\x44.yandex.cloud.ai.assistants.v1.searchindex.DeleteSearchIndexResponse\"4\x82\xd3\xe4\x93\x02.*,/assistants/v1/searchIndex/{search_index_id}\x12\xb5\x01\n\x04List\x12\x43.yandex.cloud.ai.assistants.v1.searchindex.ListSearchIndicesRequest\x1a\x44.yandex.cloud.ai.assistants.v1.searchindex.ListSearchIndicesResponse\"\"\x82\xd3\xe4\x93\x02\x1c\x12\x1a/assistants/v1/searchIndexB\x8a\x01\n-yandex.cloud.api.ai.assistants.v1.searchindexZYgithub.com/yandex-cloud/go-genproto/yandex/cloud/ai/assistants/v1/searchindex;searchindexb\x06proto3')
23
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\nDyandex/cloud/ai/assistants/v1/searchindex/search_index_service.proto\x12)yandex.cloud.ai.assistants.v1.searchindex\x1a#yandex/cloud/ai/common/common.proto\x1a<yandex/cloud/ai/assistants/v1/searchindex/search_index.proto\x1a yandex/cloud/api/operation.proto\x1a&yandex/cloud/operation/operation.proto\x1a\x1dyandex/cloud/validation.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\"\xdd\x04\n\x18\x43reateSearchIndexRequest\x12\x17\n\tfolder_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12\x10\n\x08\x66ile_ids\x18\x02 \x03(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12\x43\n\x11\x65xpiration_config\x18\x05 \x01(\x0b\x32(.yandex.cloud.ai.common.ExpirationConfig\x12_\n\x06labels\x18\x06 \x03(\x0b\x32O.yandex.cloud.ai.assistants.v1.searchindex.CreateSearchIndexRequest.LabelsEntry\x12W\n\x11text_search_index\x18\x07 \x01(\x0b\x32:.yandex.cloud.ai.assistants.v1.searchindex.TextSearchIndexH\x00\x12[\n\x13vector_search_index\x18\x08 \x01(\x0b\x32<.yandex.cloud.ai.assistants.v1.searchindex.VectorSearchIndexH\x00\x12[\n\x13hybrid_search_index\x18\t \x01(\x0b\x32<.yandex.cloud.ai.assistants.v1.searchindex.HybridSearchIndexH\x00\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0b\n\tIndexType\"6\n\x15GetSearchIndexRequest\x12\x1d\n\x0fsearch_index_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"\xe8\x02\n\x18UpdateSearchIndexRequest\x12\x1d\n\x0fsearch_index_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12\x35\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x04\xe8\xc7\x31\x01\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12\x43\n\x11\x65xpiration_config\x18\x05 \x01(\x0b\x32(.yandex.cloud.ai.common.ExpirationConfig\x12_\n\x06labels\x18\x06 \x03(\x0b\x32O.yandex.cloud.ai.assistants.v1.searchindex.UpdateSearchIndexRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"9\n\x18\x44\x65leteSearchIndexRequest\x12\x1d\n\x0fsearch_index_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"\x1b\n\x19\x44\x65leteSearchIndexResponse\"Z\n\x18ListSearchIndicesRequest\x12\x17\n\tfolder_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12\x11\n\tpage_size\x18\x02 \x01(\x03\x12\x12\n\npage_token\x18\x03 \x01(\t\"}\n\x19ListSearchIndicesResponse\x12G\n\x07indices\x18\x01 \x03(\x0b\x32\x36.yandex.cloud.ai.assistants.v1.searchindex.SearchIndex\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t2\xbc\x07\n\x12SearchIndexService\x12\xa8\x01\n\x06\x43reate\x12\x43.yandex.cloud.ai.assistants.v1.searchindex.CreateSearchIndexRequest\x1a!.yandex.cloud.operation.Operation\"6\xb2\xd2*\r\x12\x0bSearchIndex\x82\xd3\xe4\x93\x02\x1f\"\x1a/assistants/v1/searchIndex:\x01*\x12\xb5\x01\n\x03Get\x12@.yandex.cloud.ai.assistants.v1.searchindex.GetSearchIndexRequest\x1a\x36.yandex.cloud.ai.assistants.v1.searchindex.SearchIndex\"4\x82\xd3\xe4\x93\x02.\x12,/assistants/v1/searchIndex/{search_index_id}\x12\xbe\x01\n\x06Update\x12\x43.yandex.cloud.ai.assistants.v1.searchindex.UpdateSearchIndexRequest\x1a\x36.yandex.cloud.ai.assistants.v1.searchindex.SearchIndex\"7\x82\xd3\xe4\x93\x02\x31\x32,/assistants/v1/searchIndex/{search_index_id}:\x01*\x12\xc9\x01\n\x06\x44\x65lete\x12\x43.yandex.cloud.ai.assistants.v1.searchindex.DeleteSearchIndexRequest\x1a\x44.yandex.cloud.ai.assistants.v1.searchindex.DeleteSearchIndexResponse\"4\x82\xd3\xe4\x93\x02.*,/assistants/v1/searchIndex/{search_index_id}\x12\xb5\x01\n\x04List\x12\x43.yandex.cloud.ai.assistants.v1.searchindex.ListSearchIndicesRequest\x1a\x44.yandex.cloud.ai.assistants.v1.searchindex.ListSearchIndicesResponse\"\"\x82\xd3\xe4\x93\x02\x1c\x12\x1a/assistants/v1/searchIndexB\x8a\x01\n-yandex.cloud.api.ai.assistants.v1.searchindexZYgithub.com/yandex-cloud/go-genproto/yandex/cloud/ai/assistants/v1/searchindex;searchindexb\x06proto3')
24
24
 
25
25
  _globals = globals()
26
26
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -55,23 +55,23 @@ if _descriptor._USE_C_DESCRIPTORS == False:
55
55
  _SEARCHINDEXSERVICE.methods_by_name['List']._options = None
56
56
  _SEARCHINDEXSERVICE.methods_by_name['List']._serialized_options = b'\202\323\344\223\002\034\022\032/assistants/v1/searchIndex'
57
57
  _globals['_CREATESEARCHINDEXREQUEST']._serialized_start=384
58
- _globals['_CREATESEARCHINDEXREQUEST']._serialized_end=896
59
- _globals['_CREATESEARCHINDEXREQUEST_LABELSENTRY']._serialized_start=838
60
- _globals['_CREATESEARCHINDEXREQUEST_LABELSENTRY']._serialized_end=883
61
- _globals['_GETSEARCHINDEXREQUEST']._serialized_start=898
62
- _globals['_GETSEARCHINDEXREQUEST']._serialized_end=952
63
- _globals['_UPDATESEARCHINDEXREQUEST']._serialized_start=955
64
- _globals['_UPDATESEARCHINDEXREQUEST']._serialized_end=1315
65
- _globals['_UPDATESEARCHINDEXREQUEST_LABELSENTRY']._serialized_start=838
66
- _globals['_UPDATESEARCHINDEXREQUEST_LABELSENTRY']._serialized_end=883
67
- _globals['_DELETESEARCHINDEXREQUEST']._serialized_start=1317
68
- _globals['_DELETESEARCHINDEXREQUEST']._serialized_end=1374
69
- _globals['_DELETESEARCHINDEXRESPONSE']._serialized_start=1376
70
- _globals['_DELETESEARCHINDEXRESPONSE']._serialized_end=1403
71
- _globals['_LISTSEARCHINDICESREQUEST']._serialized_start=1405
72
- _globals['_LISTSEARCHINDICESREQUEST']._serialized_end=1495
73
- _globals['_LISTSEARCHINDICESRESPONSE']._serialized_start=1497
74
- _globals['_LISTSEARCHINDICESRESPONSE']._serialized_end=1622
75
- _globals['_SEARCHINDEXSERVICE']._serialized_start=1625
76
- _globals['_SEARCHINDEXSERVICE']._serialized_end=2581
58
+ _globals['_CREATESEARCHINDEXREQUEST']._serialized_end=989
59
+ _globals['_CREATESEARCHINDEXREQUEST_LABELSENTRY']._serialized_start=931
60
+ _globals['_CREATESEARCHINDEXREQUEST_LABELSENTRY']._serialized_end=976
61
+ _globals['_GETSEARCHINDEXREQUEST']._serialized_start=991
62
+ _globals['_GETSEARCHINDEXREQUEST']._serialized_end=1045
63
+ _globals['_UPDATESEARCHINDEXREQUEST']._serialized_start=1048
64
+ _globals['_UPDATESEARCHINDEXREQUEST']._serialized_end=1408
65
+ _globals['_UPDATESEARCHINDEXREQUEST_LABELSENTRY']._serialized_start=931
66
+ _globals['_UPDATESEARCHINDEXREQUEST_LABELSENTRY']._serialized_end=976
67
+ _globals['_DELETESEARCHINDEXREQUEST']._serialized_start=1410
68
+ _globals['_DELETESEARCHINDEXREQUEST']._serialized_end=1467
69
+ _globals['_DELETESEARCHINDEXRESPONSE']._serialized_start=1469
70
+ _globals['_DELETESEARCHINDEXRESPONSE']._serialized_end=1496
71
+ _globals['_LISTSEARCHINDICESREQUEST']._serialized_start=1498
72
+ _globals['_LISTSEARCHINDICESREQUEST']._serialized_end=1588
73
+ _globals['_LISTSEARCHINDICESRESPONSE']._serialized_start=1590
74
+ _globals['_LISTSEARCHINDICESRESPONSE']._serialized_end=1715
75
+ _globals['_SEARCHINDEXSERVICE']._serialized_start=1718
76
+ _globals['_SEARCHINDEXSERVICE']._serialized_end=2674
77
77
  # @@protoc_insertion_point(module_scope)
@@ -45,6 +45,7 @@ class CreateSearchIndexRequest(google.protobuf.message.Message):
45
45
  LABELS_FIELD_NUMBER: builtins.int
46
46
  TEXT_SEARCH_INDEX_FIELD_NUMBER: builtins.int
47
47
  VECTOR_SEARCH_INDEX_FIELD_NUMBER: builtins.int
48
+ HYBRID_SEARCH_INDEX_FIELD_NUMBER: builtins.int
48
49
  folder_id: builtins.str
49
50
  name: builtins.str
50
51
  """Name of the search index."""
@@ -70,6 +71,10 @@ class CreateSearchIndexRequest(google.protobuf.message.Message):
70
71
  def vector_search_index(self) -> yandex.cloud.ai.assistants.v1.searchindex.search_index_pb2.VectorSearchIndex:
71
72
  """Configuration for a vector-based search index using embeddings."""
72
73
 
74
+ @property
75
+ def hybrid_search_index(self) -> yandex.cloud.ai.assistants.v1.searchindex.search_index_pb2.HybridSearchIndex:
76
+ """Configuration for a hybrid (vector-based + keyword-based) search index."""
77
+
73
78
  def __init__(
74
79
  self,
75
80
  *,
@@ -81,10 +86,11 @@ class CreateSearchIndexRequest(google.protobuf.message.Message):
81
86
  labels: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
82
87
  text_search_index: yandex.cloud.ai.assistants.v1.searchindex.search_index_pb2.TextSearchIndex | None = ...,
83
88
  vector_search_index: yandex.cloud.ai.assistants.v1.searchindex.search_index_pb2.VectorSearchIndex | None = ...,
89
+ hybrid_search_index: yandex.cloud.ai.assistants.v1.searchindex.search_index_pb2.HybridSearchIndex | None = ...,
84
90
  ) -> None: ...
85
- def HasField(self, field_name: typing.Literal["IndexType", b"IndexType", "expiration_config", b"expiration_config", "text_search_index", b"text_search_index", "vector_search_index", b"vector_search_index"]) -> builtins.bool: ...
86
- def ClearField(self, field_name: typing.Literal["IndexType", b"IndexType", "description", b"description", "expiration_config", b"expiration_config", "file_ids", b"file_ids", "folder_id", b"folder_id", "labels", b"labels", "name", b"name", "text_search_index", b"text_search_index", "vector_search_index", b"vector_search_index"]) -> None: ...
87
- def WhichOneof(self, oneof_group: typing.Literal["IndexType", b"IndexType"]) -> typing.Literal["text_search_index", "vector_search_index"] | None: ...
91
+ def HasField(self, field_name: typing.Literal["IndexType", b"IndexType", "expiration_config", b"expiration_config", "hybrid_search_index", b"hybrid_search_index", "text_search_index", b"text_search_index", "vector_search_index", b"vector_search_index"]) -> builtins.bool: ...
92
+ def ClearField(self, field_name: typing.Literal["IndexType", b"IndexType", "description", b"description", "expiration_config", b"expiration_config", "file_ids", b"file_ids", "folder_id", b"folder_id", "hybrid_search_index", b"hybrid_search_index", "labels", b"labels", "name", b"name", "text_search_index", b"text_search_index", "vector_search_index", b"vector_search_index"]) -> None: ...
93
+ def WhichOneof(self, oneof_group: typing.Literal["IndexType", b"IndexType"]) -> typing.Literal["text_search_index", "vector_search_index", "hybrid_search_index"] | None: ...
88
94
 
89
95
  global___CreateSearchIndexRequest = CreateSearchIndexRequest
90
96
 
@@ -19,7 +19,7 @@ from yandex.cloud.apploadbalancer.v1 import tls_pb2 as yandex_dot_cloud_dot_appl
19
19
  from yandex.cloud import validation_pb2 as yandex_dot_cloud_dot_validation__pb2
20
20
 
21
21
 
22
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n3yandex/cloud/apploadbalancer/v1/backend_group.proto\x12\x1fyandex.cloud.apploadbalancer.v1\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1egoogle/protobuf/wrappers.proto\x1a-yandex/cloud/apploadbalancer/v1/payload.proto\x1a)yandex/cloud/apploadbalancer/v1/tls.proto\x1a\x1dyandex/cloud/validation.proto\"\xd8\x03\n\x0c\x42\x61\x63kendGroup\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x11\n\tfolder_id\x18\x04 \x01(\t\x12I\n\x06labels\x18\x05 \x03(\x0b\x32\x39.yandex.cloud.apploadbalancer.v1.BackendGroup.LabelsEntry\x12\x41\n\x04http\x18\x06 \x01(\x0b\x32\x31.yandex.cloud.apploadbalancer.v1.HttpBackendGroupH\x00\x12\x41\n\x04grpc\x18\x07 \x01(\x0b\x32\x31.yandex.cloud.apploadbalancer.v1.GrpcBackendGroupH\x00\x12\x45\n\x06stream\x18\n \x01(\x0b\x32\x33.yandex.cloud.apploadbalancer.v1.StreamBackendGroupH\x00\x12.\n\ncreated_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\t\n\x07\x62\x61\x63kendJ\x04\x08\x08\x10\t\"\xbc\x01\n\x12StreamBackendGroup\x12@\n\x08\x62\x61\x63kends\x18\x01 \x03(\x0b\x32..yandex.cloud.apploadbalancer.v1.StreamBackend\x12P\n\nconnection\x18\x02 \x01(\x0b\x32:.yandex.cloud.apploadbalancer.v1.ConnectionSessionAffinityH\x00\x42\x12\n\x10session_affinity\"\xcc\x02\n\x10HttpBackendGroup\x12>\n\x08\x62\x61\x63kends\x18\x01 \x03(\x0b\x32,.yandex.cloud.apploadbalancer.v1.HttpBackend\x12P\n\nconnection\x18\x02 \x01(\x0b\x32:.yandex.cloud.apploadbalancer.v1.ConnectionSessionAffinityH\x00\x12H\n\x06header\x18\x03 \x01(\x0b\x32\x36.yandex.cloud.apploadbalancer.v1.HeaderSessionAffinityH\x00\x12H\n\x06\x63ookie\x18\x04 \x01(\x0b\x32\x36.yandex.cloud.apploadbalancer.v1.CookieSessionAffinityH\x00\x42\x12\n\x10session_affinity\"\xcc\x02\n\x10GrpcBackendGroup\x12>\n\x08\x62\x61\x63kends\x18\x01 \x03(\x0b\x32,.yandex.cloud.apploadbalancer.v1.GrpcBackend\x12P\n\nconnection\x18\x02 \x01(\x0b\x32:.yandex.cloud.apploadbalancer.v1.ConnectionSessionAffinityH\x00\x12H\n\x06header\x18\x03 \x01(\x0b\x32\x36.yandex.cloud.apploadbalancer.v1.HeaderSessionAffinityH\x00\x12H\n\x06\x63ookie\x18\x04 \x01(\x0b\x32\x36.yandex.cloud.apploadbalancer.v1.CookieSessionAffinityH\x00\x42\x12\n\x10session_affinity\"7\n\x15HeaderSessionAffinity\x12\x1e\n\x0bheader_name\x18\x01 \x01(\tB\t\x8a\xc8\x31\x05\x31-256\"X\n\x15\x43ookieSessionAffinity\x12\x17\n\x04name\x18\x01 \x01(\tB\t\x8a\xc8\x31\x05\x31-256\x12&\n\x03ttl\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\".\n\x19\x43onnectionSessionAffinity\x12\x11\n\tsource_ip\x18\x01 \x01(\x08\"\xc7\x01\n\x13LoadBalancingConfig\x12\"\n\x0fpanic_threshold\x18\x01 \x01(\x03\x42\t\xfa\xc7\x31\x05\x30-100\x12\x31\n\x1elocality_aware_routing_percent\x18\x02 \x01(\x03\x42\t\xfa\xc7\x31\x05\x30-100\x12\x17\n\x0fstrict_locality\x18\x03 \x01(\x08\x12@\n\x04mode\x18\x04 \x01(\x0e\x32\x32.yandex.cloud.apploadbalancer.v1.LoadBalancingMode\"\x97\x04\n\rStreamBackend\x12.\n\x04name\x18\x01 \x01(\tB \xf2\xc7\x31\x1c[a-z][-a-z0-9]{1,61}[a-z0-9]\x12\x33\n\x0e\x62\x61\x63kend_weight\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12S\n\x15load_balancing_config\x18\x03 \x01(\x0b\x32\x34.yandex.cloud.apploadbalancer.v1.LoadBalancingConfig\x12\x19\n\x04port\x18\x04 \x01(\x03\x42\x0b\xfa\xc7\x31\x07\x30-65535\x12M\n\rtarget_groups\x18\x05 \x01(\x0b\x32\x34.yandex.cloud.apploadbalancer.v1.TargetGroupsBackendH\x00\x12\x42\n\x0chealthchecks\x18\x06 \x03(\x0b\x32,.yandex.cloud.apploadbalancer.v1.HealthCheck\x12\x38\n\x03tls\x18\x07 \x01(\x0b\x32+.yandex.cloud.apploadbalancer.v1.BackendTls\x12\x1d\n\x15\x65nable_proxy_protocol\x18\x08 \x01(\x08\x12/\n\'keep_connections_on_host_health_failure\x18\t \x01(\x08\x42\x14\n\x0c\x62\x61\x63kend_type\x12\x04\xc0\xc1\x31\x01\"\xad\x04\n\x0bHttpBackend\x12\x32\n\x04name\x18\x01 \x01(\tB$\xe8\xc7\x31\x01\xf2\xc7\x31\x1c[a-z][-a-z0-9]{1,61}[a-z0-9]\x12\x33\n\x0e\x62\x61\x63kend_weight\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12S\n\x15load_balancing_config\x18\x03 \x01(\x0b\x32\x34.yandex.cloud.apploadbalancer.v1.LoadBalancingConfig\x12\x19\n\x04port\x18\x04 \x01(\x03\x42\x0b\xfa\xc7\x31\x07\x30-65535\x12M\n\rtarget_groups\x18\x05 \x01(\x0b\x32\x34.yandex.cloud.apploadbalancer.v1.TargetGroupsBackendH\x00\x12O\n\x0estorage_bucket\x18\t \x01(\x0b\x32\x35.yandex.cloud.apploadbalancer.v1.StorageBucketBackendH\x00\x12\x42\n\x0chealthchecks\x18\x06 \x03(\x0b\x32,.yandex.cloud.apploadbalancer.v1.HealthCheck\x12\x38\n\x03tls\x18\x07 \x01(\x0b\x32+.yandex.cloud.apploadbalancer.v1.BackendTls\x12\x11\n\tuse_http2\x18\x08 \x01(\x08\x42\x14\n\x0c\x62\x61\x63kend_type\x12\x04\xc0\xc1\x31\x01\"\xcf\x03\n\x0bGrpcBackend\x12\x32\n\x04name\x18\x01 \x01(\tB$\xe8\xc7\x31\x01\xf2\xc7\x31\x1c[a-z][-a-z0-9]{1,61}[a-z0-9]\x12\x33\n\x0e\x62\x61\x63kend_weight\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12S\n\x15load_balancing_config\x18\x03 \x01(\x0b\x32\x34.yandex.cloud.apploadbalancer.v1.LoadBalancingConfig\x12\x19\n\x04port\x18\x04 \x01(\x03\x42\x0b\xfa\xc7\x31\x07\x30-65535\x12M\n\rtarget_groups\x18\x05 \x01(\x0b\x32\x34.yandex.cloud.apploadbalancer.v1.TargetGroupsBackendH\x00\x12\x42\n\x0chealthchecks\x18\x07 \x03(\x0b\x32,.yandex.cloud.apploadbalancer.v1.HealthCheck\x12\x38\n\x03tls\x18\x08 \x01(\x0b\x32+.yandex.cloud.apploadbalancer.v1.BackendTlsB\x14\n\x0c\x62\x61\x63kend_type\x12\x04\xc0\xc1\x31\x01J\x04\x08\x06\x10\x07\"7\n\x13TargetGroupsBackend\x12 \n\x10target_group_ids\x18\x01 \x03(\tB\x06\x82\xc8\x31\x02>0\"\x1c\n\x1aPlaintextTransportSettings\"|\n\x17SecureTransportSettings\x12\x0b\n\x03sni\x18\x01 \x01(\t\x12N\n\x12validation_context\x18\x03 \x01(\x0b\x32\x32.yandex.cloud.apploadbalancer.v1.ValidationContextJ\x04\x08\x02\x10\x03\"o\n\nBackendTls\x12\x0b\n\x03sni\x18\x01 \x01(\t\x12N\n\x12validation_context\x18\x03 \x01(\x0b\x32\x32.yandex.cloud.apploadbalancer.v1.ValidationContextJ\x04\x08\x02\x10\x03\",\n\x14StorageBucketBackend\x12\x14\n\x06\x62ucket\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"\xa0\x07\n\x0bHealthCheck\x12\x30\n\x07timeout\x18\x01 \x01(\x0b\x32\x19.google.protobuf.DurationB\x04\xe8\xc7\x31\x01\x12\x31\n\x08interval\x18\x02 \x01(\x0b\x32\x19.google.protobuf.DurationB\x04\xe8\xc7\x31\x01\x12\x1f\n\x17interval_jitter_percent\x18\x03 \x01(\x01\x12\x19\n\x11healthy_threshold\x18\x04 \x01(\x03\x12\x1b\n\x13unhealthy_threshold\x18\x05 \x01(\x03\x12%\n\x10healthcheck_port\x18\x06 \x01(\x03\x42\x0b\xfa\xc7\x31\x07\x30-65535\x12P\n\x06stream\x18\x07 \x01(\x0b\x32>.yandex.cloud.apploadbalancer.v1.HealthCheck.StreamHealthCheckH\x00\x12L\n\x04http\x18\x08 \x01(\x0b\x32<.yandex.cloud.apploadbalancer.v1.HealthCheck.HttpHealthCheckH\x00\x12L\n\x04grpc\x18\t \x01(\x0b\x32<.yandex.cloud.apploadbalancer.v1.HealthCheck.GrpcHealthCheckH\x00\x12P\n\tplaintext\x18\n \x01(\x0b\x32;.yandex.cloud.apploadbalancer.v1.PlaintextTransportSettingsH\x01\x12G\n\x03tls\x18\x0b \x01(\x0b\x32\x38.yandex.cloud.apploadbalancer.v1.SecureTransportSettingsH\x01\x1a\x86\x01\n\x11StreamHealthCheck\x12\x36\n\x04send\x18\x01 \x01(\x0b\x32(.yandex.cloud.apploadbalancer.v1.Payload\x12\x39\n\x07receive\x18\x02 \x01(\x0b\x32(.yandex.cloud.apploadbalancer.v1.Payload\x1a\x46\n\x0fHttpHealthCheck\x12\x0c\n\x04host\x18\x01 \x01(\t\x12\x12\n\x04path\x18\x02 \x01(\tB\x04\xe8\xc7\x31\x01\x12\x11\n\tuse_http2\x18\x03 \x01(\x08\x1a\'\n\x0fGrpcHealthCheck\x12\x14\n\x0cservice_name\x18\x01 \x01(\tB\x13\n\x0bhealthcheck\x12\x04\xc0\xc1\x31\x01\x42\x14\n\x12transport_settings*T\n\x11LoadBalancingMode\x12\x0f\n\x0bROUND_ROBIN\x10\x00\x12\n\n\x06RANDOM\x10\x01\x12\x11\n\rLEAST_REQUEST\x10\x02\x12\x0f\n\x0bMAGLEV_HASH\x10\x03\x42z\n#yandex.cloud.api.apploadbalancer.v1ZSgithub.com/yandex-cloud/go-genproto/yandex/cloud/apploadbalancer/v1;apploadbalancerb\x06proto3')
22
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n3yandex/cloud/apploadbalancer/v1/backend_group.proto\x12\x1fyandex.cloud.apploadbalancer.v1\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1egoogle/protobuf/wrappers.proto\x1a-yandex/cloud/apploadbalancer/v1/payload.proto\x1a)yandex/cloud/apploadbalancer/v1/tls.proto\x1a\x1dyandex/cloud/validation.proto\"\xd8\x03\n\x0c\x42\x61\x63kendGroup\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x11\n\tfolder_id\x18\x04 \x01(\t\x12I\n\x06labels\x18\x05 \x03(\x0b\x32\x39.yandex.cloud.apploadbalancer.v1.BackendGroup.LabelsEntry\x12\x41\n\x04http\x18\x06 \x01(\x0b\x32\x31.yandex.cloud.apploadbalancer.v1.HttpBackendGroupH\x00\x12\x41\n\x04grpc\x18\x07 \x01(\x0b\x32\x31.yandex.cloud.apploadbalancer.v1.GrpcBackendGroupH\x00\x12\x45\n\x06stream\x18\n \x01(\x0b\x32\x33.yandex.cloud.apploadbalancer.v1.StreamBackendGroupH\x00\x12.\n\ncreated_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\t\n\x07\x62\x61\x63kendJ\x04\x08\x08\x10\t\"\xbc\x01\n\x12StreamBackendGroup\x12@\n\x08\x62\x61\x63kends\x18\x01 \x03(\x0b\x32..yandex.cloud.apploadbalancer.v1.StreamBackend\x12P\n\nconnection\x18\x02 \x01(\x0b\x32:.yandex.cloud.apploadbalancer.v1.ConnectionSessionAffinityH\x00\x42\x12\n\x10session_affinity\"\xcc\x02\n\x10HttpBackendGroup\x12>\n\x08\x62\x61\x63kends\x18\x01 \x03(\x0b\x32,.yandex.cloud.apploadbalancer.v1.HttpBackend\x12P\n\nconnection\x18\x02 \x01(\x0b\x32:.yandex.cloud.apploadbalancer.v1.ConnectionSessionAffinityH\x00\x12H\n\x06header\x18\x03 \x01(\x0b\x32\x36.yandex.cloud.apploadbalancer.v1.HeaderSessionAffinityH\x00\x12H\n\x06\x63ookie\x18\x04 \x01(\x0b\x32\x36.yandex.cloud.apploadbalancer.v1.CookieSessionAffinityH\x00\x42\x12\n\x10session_affinity\"\xcc\x02\n\x10GrpcBackendGroup\x12>\n\x08\x62\x61\x63kends\x18\x01 \x03(\x0b\x32,.yandex.cloud.apploadbalancer.v1.GrpcBackend\x12P\n\nconnection\x18\x02 \x01(\x0b\x32:.yandex.cloud.apploadbalancer.v1.ConnectionSessionAffinityH\x00\x12H\n\x06header\x18\x03 \x01(\x0b\x32\x36.yandex.cloud.apploadbalancer.v1.HeaderSessionAffinityH\x00\x12H\n\x06\x63ookie\x18\x04 \x01(\x0b\x32\x36.yandex.cloud.apploadbalancer.v1.CookieSessionAffinityH\x00\x42\x12\n\x10session_affinity\"7\n\x15HeaderSessionAffinity\x12\x1e\n\x0bheader_name\x18\x01 \x01(\tB\t\x8a\xc8\x31\x05\x31-256\"X\n\x15\x43ookieSessionAffinity\x12\x17\n\x04name\x18\x01 \x01(\tB\t\x8a\xc8\x31\x05\x31-256\x12&\n\x03ttl\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\".\n\x19\x43onnectionSessionAffinity\x12\x11\n\tsource_ip\x18\x01 \x01(\x08\"\xc7\x01\n\x13LoadBalancingConfig\x12\"\n\x0fpanic_threshold\x18\x01 \x01(\x03\x42\t\xfa\xc7\x31\x05\x30-100\x12\x31\n\x1elocality_aware_routing_percent\x18\x02 \x01(\x03\x42\t\xfa\xc7\x31\x05\x30-100\x12\x17\n\x0fstrict_locality\x18\x03 \x01(\x08\x12@\n\x04mode\x18\x04 \x01(\x0e\x32\x32.yandex.cloud.apploadbalancer.v1.LoadBalancingMode\"\x97\x04\n\rStreamBackend\x12.\n\x04name\x18\x01 \x01(\tB \xf2\xc7\x31\x1c[a-z][-a-z0-9]{1,61}[a-z0-9]\x12\x33\n\x0e\x62\x61\x63kend_weight\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12S\n\x15load_balancing_config\x18\x03 \x01(\x0b\x32\x34.yandex.cloud.apploadbalancer.v1.LoadBalancingConfig\x12\x19\n\x04port\x18\x04 \x01(\x03\x42\x0b\xfa\xc7\x31\x07\x30-65535\x12M\n\rtarget_groups\x18\x05 \x01(\x0b\x32\x34.yandex.cloud.apploadbalancer.v1.TargetGroupsBackendH\x00\x12\x42\n\x0chealthchecks\x18\x06 \x03(\x0b\x32,.yandex.cloud.apploadbalancer.v1.HealthCheck\x12\x38\n\x03tls\x18\x07 \x01(\x0b\x32+.yandex.cloud.apploadbalancer.v1.BackendTls\x12\x1d\n\x15\x65nable_proxy_protocol\x18\x08 \x01(\x08\x12/\n\'keep_connections_on_host_health_failure\x18\t \x01(\x08\x42\x14\n\x0c\x62\x61\x63kend_type\x12\x04\xc0\xc1\x31\x01\"\xad\x04\n\x0bHttpBackend\x12\x32\n\x04name\x18\x01 \x01(\tB$\xe8\xc7\x31\x01\xf2\xc7\x31\x1c[a-z][-a-z0-9]{1,61}[a-z0-9]\x12\x33\n\x0e\x62\x61\x63kend_weight\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12S\n\x15load_balancing_config\x18\x03 \x01(\x0b\x32\x34.yandex.cloud.apploadbalancer.v1.LoadBalancingConfig\x12\x19\n\x04port\x18\x04 \x01(\x03\x42\x0b\xfa\xc7\x31\x07\x30-65535\x12M\n\rtarget_groups\x18\x05 \x01(\x0b\x32\x34.yandex.cloud.apploadbalancer.v1.TargetGroupsBackendH\x00\x12O\n\x0estorage_bucket\x18\t \x01(\x0b\x32\x35.yandex.cloud.apploadbalancer.v1.StorageBucketBackendH\x00\x12\x42\n\x0chealthchecks\x18\x06 \x03(\x0b\x32,.yandex.cloud.apploadbalancer.v1.HealthCheck\x12\x38\n\x03tls\x18\x07 \x01(\x0b\x32+.yandex.cloud.apploadbalancer.v1.BackendTls\x12\x11\n\tuse_http2\x18\x08 \x01(\x08\x42\x14\n\x0c\x62\x61\x63kend_type\x12\x04\xc0\xc1\x31\x01\"\xcf\x03\n\x0bGrpcBackend\x12\x32\n\x04name\x18\x01 \x01(\tB$\xe8\xc7\x31\x01\xf2\xc7\x31\x1c[a-z][-a-z0-9]{1,61}[a-z0-9]\x12\x33\n\x0e\x62\x61\x63kend_weight\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.Int64Value\x12S\n\x15load_balancing_config\x18\x03 \x01(\x0b\x32\x34.yandex.cloud.apploadbalancer.v1.LoadBalancingConfig\x12\x19\n\x04port\x18\x04 \x01(\x03\x42\x0b\xfa\xc7\x31\x07\x30-65535\x12M\n\rtarget_groups\x18\x05 \x01(\x0b\x32\x34.yandex.cloud.apploadbalancer.v1.TargetGroupsBackendH\x00\x12\x42\n\x0chealthchecks\x18\x07 \x03(\x0b\x32,.yandex.cloud.apploadbalancer.v1.HealthCheck\x12\x38\n\x03tls\x18\x08 \x01(\x0b\x32+.yandex.cloud.apploadbalancer.v1.BackendTlsB\x14\n\x0c\x62\x61\x63kend_type\x12\x04\xc0\xc1\x31\x01J\x04\x08\x06\x10\x07\"7\n\x13TargetGroupsBackend\x12 \n\x10target_group_ids\x18\x01 \x03(\tB\x06\x82\xc8\x31\x02>0\"\x1c\n\x1aPlaintextTransportSettings\"|\n\x17SecureTransportSettings\x12\x0b\n\x03sni\x18\x01 \x01(\t\x12N\n\x12validation_context\x18\x03 \x01(\x0b\x32\x32.yandex.cloud.apploadbalancer.v1.ValidationContextJ\x04\x08\x02\x10\x03\"o\n\nBackendTls\x12\x0b\n\x03sni\x18\x01 \x01(\t\x12N\n\x12validation_context\x18\x03 \x01(\x0b\x32\x32.yandex.cloud.apploadbalancer.v1.ValidationContextJ\x04\x08\x02\x10\x03\",\n\x14StorageBucketBackend\x12\x14\n\x06\x62ucket\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"\xcc\x07\n\x0bHealthCheck\x12\x30\n\x07timeout\x18\x01 \x01(\x0b\x32\x19.google.protobuf.DurationB\x04\xe8\xc7\x31\x01\x12\x31\n\x08interval\x18\x02 \x01(\x0b\x32\x19.google.protobuf.DurationB\x04\xe8\xc7\x31\x01\x12\x1f\n\x17interval_jitter_percent\x18\x03 \x01(\x01\x12\x19\n\x11healthy_threshold\x18\x04 \x01(\x03\x12\x1b\n\x13unhealthy_threshold\x18\x05 \x01(\x03\x12%\n\x10healthcheck_port\x18\x06 \x01(\x03\x42\x0b\xfa\xc7\x31\x07\x30-65535\x12P\n\x06stream\x18\x07 \x01(\x0b\x32>.yandex.cloud.apploadbalancer.v1.HealthCheck.StreamHealthCheckH\x00\x12L\n\x04http\x18\x08 \x01(\x0b\x32<.yandex.cloud.apploadbalancer.v1.HealthCheck.HttpHealthCheckH\x00\x12L\n\x04grpc\x18\t \x01(\x0b\x32<.yandex.cloud.apploadbalancer.v1.HealthCheck.GrpcHealthCheckH\x00\x12P\n\tplaintext\x18\n \x01(\x0b\x32;.yandex.cloud.apploadbalancer.v1.PlaintextTransportSettingsH\x01\x12G\n\x03tls\x18\x0b \x01(\x0b\x32\x38.yandex.cloud.apploadbalancer.v1.SecureTransportSettingsH\x01\x1a\x86\x01\n\x11StreamHealthCheck\x12\x36\n\x04send\x18\x01 \x01(\x0b\x32(.yandex.cloud.apploadbalancer.v1.Payload\x12\x39\n\x07receive\x18\x02 \x01(\x0b\x32(.yandex.cloud.apploadbalancer.v1.Payload\x1ar\n\x0fHttpHealthCheck\x12\x0c\n\x04host\x18\x01 \x01(\t\x12\x12\n\x04path\x18\x02 \x01(\tB\x04\xe8\xc7\x31\x01\x12\x11\n\tuse_http2\x18\x03 \x01(\x08\x12*\n\x11\x65xpected_statuses\x18\x04 \x03(\x03\x42\x0f\xfa\xc7\x31\x07\x31\x30\x30-599\x90\xc8\x31\x01\x1a\'\n\x0fGrpcHealthCheck\x12\x14\n\x0cservice_name\x18\x01 \x01(\tB\x13\n\x0bhealthcheck\x12\x04\xc0\xc1\x31\x01\x42\x14\n\x12transport_settings*T\n\x11LoadBalancingMode\x12\x0f\n\x0bROUND_ROBIN\x10\x00\x12\n\n\x06RANDOM\x10\x01\x12\x11\n\rLEAST_REQUEST\x10\x02\x12\x0f\n\x0bMAGLEV_HASH\x10\x03\x42z\n#yandex.cloud.api.apploadbalancer.v1ZSgithub.com/yandex-cloud/go-genproto/yandex/cloud/apploadbalancer/v1;apploadbalancerb\x06proto3')
23
23
 
24
24
  _globals = globals()
25
25
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -61,6 +61,8 @@ if _descriptor._USE_C_DESCRIPTORS == False:
61
61
  _STORAGEBUCKETBACKEND.fields_by_name['bucket']._serialized_options = b'\350\3071\001'
62
62
  _HEALTHCHECK_HTTPHEALTHCHECK.fields_by_name['path']._options = None
63
63
  _HEALTHCHECK_HTTPHEALTHCHECK.fields_by_name['path']._serialized_options = b'\350\3071\001'
64
+ _HEALTHCHECK_HTTPHEALTHCHECK.fields_by_name['expected_statuses']._options = None
65
+ _HEALTHCHECK_HTTPHEALTHCHECK.fields_by_name['expected_statuses']._serialized_options = b'\372\3071\007100-599\220\3101\001'
64
66
  _HEALTHCHECK.oneofs_by_name['healthcheck']._options = None
65
67
  _HEALTHCHECK.oneofs_by_name['healthcheck']._serialized_options = b'\300\3011\001'
66
68
  _HEALTHCHECK.fields_by_name['timeout']._options = None
@@ -69,8 +71,8 @@ if _descriptor._USE_C_DESCRIPTORS == False:
69
71
  _HEALTHCHECK.fields_by_name['interval']._serialized_options = b'\350\3071\001'
70
72
  _HEALTHCHECK.fields_by_name['healthcheck_port']._options = None
71
73
  _HEALTHCHECK.fields_by_name['healthcheck_port']._serialized_options = b'\372\3071\0070-65535'
72
- _globals['_LOADBALANCINGMODE']._serialized_start=4906
73
- _globals['_LOADBALANCINGMODE']._serialized_end=4990
74
+ _globals['_LOADBALANCINGMODE']._serialized_start=4950
75
+ _globals['_LOADBALANCINGMODE']._serialized_end=5034
74
76
  _globals['_BACKENDGROUP']._serialized_start=307
75
77
  _globals['_BACKENDGROUP']._serialized_end=779
76
78
  _globals['_BACKENDGROUP_LABELSENTRY']._serialized_start=717
@@ -106,11 +108,11 @@ if _descriptor._USE_C_DESCRIPTORS == False:
106
108
  _globals['_STORAGEBUCKETBACKEND']._serialized_start=3929
107
109
  _globals['_STORAGEBUCKETBACKEND']._serialized_end=3973
108
110
  _globals['_HEALTHCHECK']._serialized_start=3976
109
- _globals['_HEALTHCHECK']._serialized_end=4904
111
+ _globals['_HEALTHCHECK']._serialized_end=4948
110
112
  _globals['_HEALTHCHECK_STREAMHEALTHCHECK']._serialized_start=4614
111
113
  _globals['_HEALTHCHECK_STREAMHEALTHCHECK']._serialized_end=4748
112
114
  _globals['_HEALTHCHECK_HTTPHEALTHCHECK']._serialized_start=4750
113
- _globals['_HEALTHCHECK_HTTPHEALTHCHECK']._serialized_end=4820
114
- _globals['_HEALTHCHECK_GRPCHEALTHCHECK']._serialized_start=4822
115
- _globals['_HEALTHCHECK_GRPCHEALTHCHECK']._serialized_end=4861
115
+ _globals['_HEALTHCHECK_HTTPHEALTHCHECK']._serialized_end=4864
116
+ _globals['_HEALTHCHECK_GRPCHEALTHCHECK']._serialized_start=4866
117
+ _globals['_HEALTHCHECK_GRPCHEALTHCHECK']._serialized_end=4905
116
118
  # @@protoc_insertion_point(module_scope)