yandexcloud 0.349.0__py3-none-any.whl → 0.351.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.
Files changed (160) hide show
  1. yandex/cloud/ai/assistants/v1/assistant_pb2.py +4 -4
  2. yandex/cloud/ai/assistants/v1/assistant_pb2.pyi +8 -2
  3. yandex/cloud/ai/assistants/v1/assistant_service_pb2.py +26 -26
  4. yandex/cloud/ai/assistants/v1/assistant_service_pb2.pyi +14 -4
  5. yandex/cloud/ai/assistants/v1/common_pb2.py +5 -1
  6. yandex/cloud/ai/assistants/v1/common_pb2.pyi +50 -0
  7. yandex/cloud/ai/assistants/v1/runs/run_pb2.py +10 -10
  8. yandex/cloud/ai/assistants/v1/runs/run_pb2.pyi +8 -2
  9. yandex/cloud/ai/assistants/v1/runs/run_service_pb2.py +28 -28
  10. yandex/cloud/ai/assistants/v1/runs/run_service_pb2.pyi +8 -2
  11. yandex/cloud/ai/foundation_models/v1/image_generation/image_generation_pb2.pyi +2 -2
  12. yandex/cloud/ai/foundation_models/v1/text_common_pb2.py +20 -16
  13. yandex/cloud/ai/foundation_models/v1/text_common_pb2.pyi +62 -1
  14. yandex/cloud/ai/foundation_models/v1/text_generation/text_generation_service_pb2.py +24 -23
  15. yandex/cloud/ai/foundation_models/v1/text_generation/text_generation_service_pb2.pyi +15 -2
  16. yandex/cloud/ai/ocr/v1/ocr_pb2.py +24 -20
  17. yandex/cloud/ai/ocr/v1/ocr_pb2.pyi +72 -2
  18. yandex/cloud/ai/stt/v3/stt_pb2.pyi +1 -1
  19. yandex/cloud/ai/tuning/v1/tuning_service_pb2.py +13 -3
  20. yandex/cloud/ai/tuning/v1/tuning_service_pb2.pyi +40 -0
  21. yandex/cloud/ai/tuning/v1/tuning_service_pb2_grpc.py +43 -0
  22. yandex/cloud/ai/tuning/v1/tuning_service_pb2_grpc.pyi +17 -0
  23. yandex/cloud/ai/tuning/v1/tuning_task_pb2.py +4 -4
  24. yandex/cloud/ai/tuning/v1/tuning_task_pb2.pyi +2 -0
  25. yandex/cloud/apploadbalancer/v1/load_balancer_pb2.py +39 -37
  26. yandex/cloud/apploadbalancer/v1/load_balancer_pb2.pyi +10 -2
  27. yandex/cloud/apploadbalancer/v1/load_balancer_service_pb2.py +110 -87
  28. yandex/cloud/apploadbalancer/v1/load_balancer_service_pb2.pyi +96 -0
  29. yandex/cloud/apploadbalancer/v1/load_balancer_service_pb2_grpc.py +88 -0
  30. yandex/cloud/apploadbalancer/v1/load_balancer_service_pb2_grpc.pyi +40 -0
  31. yandex/cloud/backup/v1/policy_pb2.py +56 -52
  32. yandex/cloud/backup/v1/policy_pb2.pyi +64 -1
  33. yandex/cloud/baremetal/v1alpha/private_cloud_connection_pb2.py +4 -4
  34. yandex/cloud/baremetal/v1alpha/private_cloud_connection_pb2.pyi +5 -1
  35. yandex/cloud/clouddesktop/v1/desktop_group_pb2.py +20 -14
  36. yandex/cloud/clouddesktop/v1/desktop_group_pb2.pyi +31 -2
  37. yandex/cloud/clouddesktop/v1/desktop_group_service_pb2.py +16 -16
  38. yandex/cloud/clouddesktop/v1/desktop_group_service_pb2.pyi +11 -2
  39. yandex/cloud/clouddesktop/v1/desktop_image_service_pb2.pyi +8 -2
  40. yandex/cloud/dataproc/v1/cluster_pb2.py +20 -20
  41. yandex/cloud/dataproc/v1/cluster_pb2.pyi +5 -1
  42. yandex/cloud/dataproc/v1/cluster_service_pb2.py +40 -40
  43. yandex/cloud/dataproc/v1/cluster_service_pb2.pyi +10 -2
  44. yandex/cloud/datatransfer/v1/endpoint/common_pb2.py +8 -8
  45. yandex/cloud/datatransfer/v1/endpoint/common_pb2.pyi +1 -5
  46. yandex/cloud/datatransfer/v1/endpoint/mongo_pb2.py +12 -10
  47. yandex/cloud/datatransfer/v1/endpoint/mongo_pb2.pyi +26 -3
  48. yandex/cloud/datatransfer/v1/endpoint_service_pb2.pyi +1 -1
  49. yandex/cloud/datatransfer/v1/transfer_service_pb2.pyi +1 -1
  50. yandex/cloud/gitlab/v1/instance_pb2.pyi +58 -4
  51. yandex/cloud/gitlab/v1/instance_service_pb2.py +50 -27
  52. yandex/cloud/gitlab/v1/instance_service_pb2.pyi +163 -2
  53. yandex/cloud/gitlab/v1/instance_service_pb2_grpc.py +62 -9
  54. yandex/cloud/gitlab/v1/instance_service_pb2_grpc.pyi +50 -6
  55. yandex/cloud/gitlab/v1/maintenance_pb2.pyi +10 -3
  56. yandex/cloud/loadbalancer/v1/network_load_balancer_pb2.py +26 -22
  57. yandex/cloud/loadbalancer/v1/network_load_balancer_pb2.pyi +34 -1
  58. yandex/cloud/loadbalancer/v1/network_load_balancer_service_pb2.py +86 -63
  59. yandex/cloud/loadbalancer/v1/network_load_balancer_service_pb2.pyi +86 -0
  60. yandex/cloud/loadbalancer/v1/network_load_balancer_service_pb2_grpc.py +88 -0
  61. yandex/cloud/loadbalancer/v1/network_load_balancer_service_pb2_grpc.pyi +40 -0
  62. yandex/cloud/mdb/clickhouse/v1/cluster_pb2.py +52 -46
  63. yandex/cloud/mdb/clickhouse/v1/cluster_pb2.pyi +63 -8
  64. yandex/cloud/mdb/clickhouse/v1/cluster_service_pb2.py +170 -170
  65. yandex/cloud/mdb/clickhouse/v1/cluster_service_pb2.pyi +54 -10
  66. yandex/cloud/mdb/clickhouse/v1/database_pb2.py +6 -4
  67. yandex/cloud/mdb/clickhouse/v1/database_pb2.pyi +35 -3
  68. yandex/cloud/mdb/greenplum/v1/hba_rule_pb2.py +3 -3
  69. yandex/cloud/mdb/greenplum/v1/hba_rule_pb2.pyi +4 -0
  70. yandex/cloud/mdb/kafka/v1/cluster_pb2.py +42 -38
  71. yandex/cloud/mdb/kafka/v1/cluster_pb2.pyi +48 -4
  72. yandex/cloud/mdb/mongodb/v1/cluster_pb2.py +142 -142
  73. yandex/cloud/mdb/mongodb/v1/cluster_pb2.pyi +8 -2
  74. yandex/cloud/mdb/mongodb/v1/cluster_service_pb2.py +234 -234
  75. yandex/cloud/mdb/mongodb/v1/cluster_service_pb2.pyi +16 -4
  76. yandex/cloud/mdb/mysql/v1/cluster_pb2.py +38 -32
  77. yandex/cloud/mdb/mysql/v1/cluster_pb2.pyi +40 -4
  78. yandex/cloud/mdb/mysql/v1/cluster_service_pb2.py +96 -96
  79. yandex/cloud/mdb/mysql/v1/cluster_service_pb2.pyi +24 -6
  80. yandex/cloud/mdb/mysql/v1/config/mysql5_7_pb2.py +26 -24
  81. yandex/cloud/mdb/mysql/v1/config/mysql5_7_pb2.pyi +12 -2
  82. yandex/cloud/mdb/mysql/v1/config/mysql8_0_pb2.py +26 -24
  83. yandex/cloud/mdb/mysql/v1/config/mysql8_0_pb2.pyi +12 -2
  84. yandex/cloud/mdb/opensearch/v1/cluster_pb2.py +46 -45
  85. yandex/cloud/mdb/opensearch/v1/cluster_pb2.pyi +9 -2
  86. yandex/cloud/mdb/opensearch/v1/cluster_service_pb2.py +140 -139
  87. yandex/cloud/mdb/opensearch/v1/cluster_service_pb2.pyi +17 -4
  88. yandex/cloud/mdb/postgresql/v1/cluster_pb2.py +42 -42
  89. yandex/cloud/mdb/postgresql/v1/cluster_pb2.pyi +8 -2
  90. yandex/cloud/mdb/postgresql/v1/cluster_service_pb2.py +98 -98
  91. yandex/cloud/mdb/postgresql/v1/cluster_service_pb2.pyi +16 -4
  92. yandex/cloud/mdb/postgresql/v1/config/postgresql14_1c_pb2.py +38 -36
  93. yandex/cloud/mdb/postgresql/v1/config/postgresql14_1c_pb2.pyi +24 -1
  94. yandex/cloud/mdb/postgresql/v1/config/postgresql14_pb2.py +38 -36
  95. yandex/cloud/mdb/postgresql/v1/config/postgresql14_pb2.pyi +24 -1
  96. yandex/cloud/mdb/postgresql/v1/config/postgresql15_1c_pb2.py +38 -36
  97. yandex/cloud/mdb/postgresql/v1/config/postgresql15_1c_pb2.pyi +24 -1
  98. yandex/cloud/mdb/postgresql/v1/config/postgresql15_pb2.py +38 -36
  99. yandex/cloud/mdb/postgresql/v1/config/postgresql15_pb2.pyi +24 -1
  100. yandex/cloud/mdb/postgresql/v1/config/postgresql16_1c_pb2.py +38 -36
  101. yandex/cloud/mdb/postgresql/v1/config/postgresql16_1c_pb2.pyi +24 -1
  102. yandex/cloud/mdb/postgresql/v1/config/postgresql16_pb2.py +38 -36
  103. yandex/cloud/mdb/postgresql/v1/config/postgresql16_pb2.pyi +24 -1
  104. yandex/cloud/mdb/postgresql/v1/database_pb2.py +6 -4
  105. yandex/cloud/mdb/postgresql/v1/database_pb2.pyi +1 -1
  106. yandex/cloud/mdb/redis/v1/cluster_pb2.py +36 -36
  107. yandex/cloud/mdb/redis/v1/cluster_pb2.pyi +8 -2
  108. yandex/cloud/mdb/redis/v1/cluster_service_pb2.py +114 -114
  109. yandex/cloud/mdb/redis/v1/cluster_service_pb2.pyi +16 -4
  110. yandex/cloud/metastore/v1/cluster_pb2.py +16 -20
  111. yandex/cloud/metastore/v1/cluster_pb2.pyi +1 -31
  112. yandex/cloud/metastore/v1/cluster_service_pb2.py +44 -50
  113. yandex/cloud/metastore/v1/cluster_service_pb2.pyi +3 -35
  114. yandex/cloud/metastore/v1/cluster_service_pb2_grpc.py +4 -4
  115. yandex/cloud/metastore/v1/cluster_service_pb2_grpc.pyi +12 -12
  116. yandex/cloud/monitoring/v3/chart_widget_pb2.py +60 -44
  117. yandex/cloud/monitoring/v3/chart_widget_pb2.pyi +151 -6
  118. yandex/cloud/monitoring/v3/dashboard_service_pb2.py +36 -34
  119. yandex/cloud/monitoring/v3/dashboard_service_pb2.pyi +13 -7
  120. yandex/cloud/monitoring/v3/link_pb2.py +8 -4
  121. yandex/cloud/monitoring/v3/link_pb2.pyi +27 -1
  122. yandex/cloud/monitoring/v3/multi_source_chart_widget_pb2.py +60 -44
  123. yandex/cloud/monitoring/v3/multi_source_chart_widget_pb2.pyi +151 -6
  124. yandex/cloud/searchapi/v2/gen_search_service_pb2.py +26 -31
  125. yandex/cloud/searchapi/v2/gen_search_service_pb2.pyi +6 -1
  126. yandex/cloud/searchapi/v2/img_search_service_pb2.py +8 -8
  127. yandex/cloud/searchapi/v2/img_search_service_pb2.pyi +5 -1
  128. yandex/cloud/serverless/eventrouter/v1/bus_pb2.py +8 -8
  129. yandex/cloud/serverless/eventrouter/v1/bus_pb2.pyi +1 -5
  130. yandex/cloud/spark/v1/cluster_pb2.py +29 -25
  131. yandex/cloud/spark/v1/cluster_pb2.pyi +53 -0
  132. yandex/cloud/spark/v1/cluster_service_pb2.py +54 -31
  133. yandex/cloud/spark/v1/cluster_service_pb2.pyi +93 -0
  134. yandex/cloud/spark/v1/cluster_service_pb2_grpc.py +44 -0
  135. yandex/cloud/spark/v1/cluster_service_pb2_grpc.pyi +20 -0
  136. yandex/cloud/storage/v1/bucket_pb2.py +78 -78
  137. yandex/cloud/storage/v1/bucket_pb2.pyi +5 -1
  138. yandex/cloud/storage/v1/bucket_service_pb2.py +4 -2
  139. yandex/cloud/storage/v1/bucket_service_pb2_grpc.py +43 -0
  140. yandex/cloud/storage/v1/bucket_service_pb2_grpc.pyi +17 -0
  141. yandex/cloud/video/v1/channel_service_pb2.py +34 -28
  142. yandex/cloud/video/v1/episode_service_pb2.py +58 -52
  143. yandex/cloud/video/v1/playlist_pb2.py +14 -5
  144. yandex/cloud/video/v1/playlist_service_pb2.py +36 -30
  145. yandex/cloud/video/v1/stream_line_service_pb2.py +46 -46
  146. yandex/cloud/video/v1/stream_service_pb2.py +50 -44
  147. yandex/cloud/video/v1/subtitle_pb2.pyi +1 -4
  148. yandex/cloud/video/v1/subtitle_service_pb2.py +19 -17
  149. yandex/cloud/video/v1/subtitle_service_pb2.pyi +1 -4
  150. yandex/cloud/video/v1/video_pb2.pyi +1 -1
  151. yandex/cloud/video/v1/video_service_pb2.py +90 -84
  152. yandex/cloud/video/v1/video_service_pb2.pyi +4 -12
  153. yandexcloud/__init__.py +1 -1
  154. yandexcloud/_wrappers/dataproc/__init__.py +10 -2
  155. {yandexcloud-0.349.0.dist-info → yandexcloud-0.351.0.dist-info}/METADATA +1 -1
  156. {yandexcloud-0.349.0.dist-info → yandexcloud-0.351.0.dist-info}/RECORD +160 -160
  157. {yandexcloud-0.349.0.dist-info → yandexcloud-0.351.0.dist-info}/AUTHORS +0 -0
  158. {yandexcloud-0.349.0.dist-info → yandexcloud-0.351.0.dist-info}/LICENSE +0 -0
  159. {yandexcloud-0.349.0.dist-info → yandexcloud-0.351.0.dist-info}/WHEEL +0 -0
  160. {yandexcloud-0.349.0.dist-info → yandexcloud-0.351.0.dist-info}/top_level.txt +0 -0
@@ -314,10 +314,13 @@ class FunctionTool(google.protobuf.message.Message):
314
314
  NAME_FIELD_NUMBER: builtins.int
315
315
  DESCRIPTION_FIELD_NUMBER: builtins.int
316
316
  PARAMETERS_FIELD_NUMBER: builtins.int
317
+ STRICT_FIELD_NUMBER: builtins.int
317
318
  name: builtins.str
318
319
  """The name of the function."""
319
320
  description: builtins.str
320
321
  """A description of the function's purpose or behavior."""
322
+ strict: builtins.bool
323
+ """Enforces strict adherence to the function schema, ensuring only defined parameters are used."""
321
324
  @property
322
325
  def parameters(self) -> google.protobuf.struct_pb2.Struct:
323
326
  """A JSON Schema that defines the expected parameters for the function.
@@ -330,9 +333,10 @@ class FunctionTool(google.protobuf.message.Message):
330
333
  name: builtins.str = ...,
331
334
  description: builtins.str = ...,
332
335
  parameters: google.protobuf.struct_pb2.Struct | None = ...,
336
+ strict: builtins.bool = ...,
333
337
  ) -> None: ...
334
338
  def HasField(self, field_name: typing.Literal["parameters", b"parameters"]) -> builtins.bool: ...
335
- def ClearField(self, field_name: typing.Literal["description", b"description", "name", b"name", "parameters", b"parameters"]) -> None: ...
339
+ def ClearField(self, field_name: typing.Literal["description", b"description", "name", b"name", "parameters", b"parameters", "strict", b"strict"]) -> None: ...
336
340
 
337
341
  global___FunctionTool = FunctionTool
338
342
 
@@ -493,3 +497,60 @@ class JsonSchema(google.protobuf.message.Message):
493
497
  def ClearField(self, field_name: typing.Literal["schema", b"schema"]) -> None: ...
494
498
 
495
499
  global___JsonSchema = JsonSchema
500
+
501
+ @typing.final
502
+ class ToolChoice(google.protobuf.message.Message):
503
+ """Specifies how the model should select which tool (or tools) to use when generating a response."""
504
+
505
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
506
+
507
+ class _ToolChoiceMode:
508
+ ValueType = typing.NewType("ValueType", builtins.int)
509
+ V: typing_extensions.TypeAlias = ValueType
510
+
511
+ class _ToolChoiceModeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[ToolChoice._ToolChoiceMode.ValueType], builtins.type):
512
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
513
+ TOOL_CHOICE_MODE_UNSPECIFIED: ToolChoice._ToolChoiceMode.ValueType # 0
514
+ """The server will choose the default behavior, which is AUTO."""
515
+ NONE: ToolChoice._ToolChoiceMode.ValueType # 1
516
+ """The model will not call any tool and will generate a standard text response."""
517
+ AUTO: ToolChoice._ToolChoiceMode.ValueType # 2
518
+ """The model can choose between generating a text response or calling one or more tools.
519
+ This is the default behavior.
520
+ """
521
+ REQUIRED: ToolChoice._ToolChoiceMode.ValueType # 3
522
+ """The model is required to call one or more tools."""
523
+
524
+ class ToolChoiceMode(_ToolChoiceMode, metaclass=_ToolChoiceModeEnumTypeWrapper):
525
+ """Defines the different modes for tool calling."""
526
+
527
+ TOOL_CHOICE_MODE_UNSPECIFIED: ToolChoice.ToolChoiceMode.ValueType # 0
528
+ """The server will choose the default behavior, which is AUTO."""
529
+ NONE: ToolChoice.ToolChoiceMode.ValueType # 1
530
+ """The model will not call any tool and will generate a standard text response."""
531
+ AUTO: ToolChoice.ToolChoiceMode.ValueType # 2
532
+ """The model can choose between generating a text response or calling one or more tools.
533
+ This is the default behavior.
534
+ """
535
+ REQUIRED: ToolChoice.ToolChoiceMode.ValueType # 3
536
+ """The model is required to call one or more tools."""
537
+
538
+ MODE_FIELD_NUMBER: builtins.int
539
+ FUNCTION_NAME_FIELD_NUMBER: builtins.int
540
+ mode: global___ToolChoice.ToolChoiceMode.ValueType
541
+ """Specifies the overall tool-calling mode."""
542
+ function_name: builtins.str
543
+ """Forces the model to call a specific function.
544
+ The provided string must match the name of a function in the API request.
545
+ """
546
+ def __init__(
547
+ self,
548
+ *,
549
+ mode: global___ToolChoice.ToolChoiceMode.ValueType = ...,
550
+ function_name: builtins.str = ...,
551
+ ) -> None: ...
552
+ def HasField(self, field_name: typing.Literal["ToolChoice", b"ToolChoice", "function_name", b"function_name", "mode", b"mode"]) -> builtins.bool: ...
553
+ def ClearField(self, field_name: typing.Literal["ToolChoice", b"ToolChoice", "function_name", b"function_name", "mode", b"mode"]) -> None: ...
554
+ def WhichOneof(self, oneof_group: typing.Literal["ToolChoice", b"ToolChoice"]) -> typing.Literal["mode", "function_name"] | None: ...
555
+
556
+ global___ToolChoice = ToolChoice
@@ -27,9 +27,10 @@ from yandex.cloud.ai.foundation_models.v1 import text_common_pb2 as yandex_dot_c
27
27
  from yandex.cloud.ai.foundation_models.v1 import batch_inference_task_status_pb2 as yandex_dot_cloud_dot_ai_dot_foundation__models_dot_v1_dot_batch__inference__task__status__pb2
28
28
  from yandex.cloud.api import operation_pb2 as yandex_dot_cloud_dot_api_dot_operation__pb2
29
29
  from yandex.cloud.operation import operation_pb2 as yandex_dot_cloud_dot_operation_dot_operation__pb2
30
+ from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2
30
31
 
31
32
 
32
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\nRyandex/cloud/ai/foundation_models/v1/text_generation/text_generation_service.proto\x12$yandex.cloud.ai.foundation_models.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x36yandex/cloud/ai/foundation_models/v1/text_common.proto\x1a\x46yandex/cloud/ai/foundation_models/v1/batch_inference_task_status.proto\x1a yandex/cloud/api/operation.proto\x1a&yandex/cloud/operation/operation.proto\"\xe9\x02\n\x11\x43ompletionRequest\x12\x11\n\tmodel_uri\x18\x01 \x01(\t\x12S\n\x12\x63ompletion_options\x18\x02 \x01(\x0b\x32\x37.yandex.cloud.ai.foundation_models.v1.CompletionOptions\x12?\n\x08messages\x18\x03 \x03(\x0b\x32-.yandex.cloud.ai.foundation_models.v1.Message\x12\x39\n\x05tools\x18\x04 \x03(\x0b\x32*.yandex.cloud.ai.foundation_models.v1.Tool\x12\x15\n\x0bjson_object\x18\x05 \x01(\x08H\x00\x12G\n\x0bjson_schema\x18\x06 \x01(\x0b\x32\x30.yandex.cloud.ai.foundation_models.v1.JsonSchemaH\x00\x42\x10\n\x0eResponseFormat\"\xb7\x01\n\x12\x43ompletionResponse\x12G\n\x0c\x61lternatives\x18\x01 \x03(\x0b\x32\x31.yandex.cloud.ai.foundation_models.v1.Alternative\x12\x41\n\x05usage\x18\x02 \x01(\x0b\x32\x32.yandex.cloud.ai.foundation_models.v1.ContentUsage\x12\x15\n\rmodel_version\x18\x03 \x01(\t\"\xaf\x01\n\x16\x42\x61tchCompletionRequest\x12\x11\n\tmodel_uri\x18\x01 \x01(\t\x12S\n\x12\x63ompletion_options\x18\x02 \x01(\x0b\x32\x37.yandex.cloud.ai.foundation_models.v1.CompletionOptions\x12\x1b\n\x11source_dataset_id\x18\x03 \x01(\tH\x00\x42\x10\n\x0erequest_format\"\xb1\x01\n\x17\x42\x61tchCompletionMetadata\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12S\n\x0btask_status\x18\x02 \x01(\x0e\x32>.yandex.cloud.ai.foundation_models.v1.BatchInferenceTaskStatus\x12\x19\n\x11\x63ompleted_batches\x18\x03 \x01(\x03\x12\x15\n\rtotal_batches\x18\x04 \x01(\x03\"\x9a\x01\n\x17\x42\x61tchCompletionResponse\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12S\n\x0btask_status\x18\x02 \x01(\x0e\x32>.yandex.cloud.ai.foundation_models.v1.BatchInferenceTaskStatus\x12\x19\n\x11result_dataset_id\x18\x03 \x01(\t\"2\n\x0fTokenizeRequest\x12\x11\n\tmodel_uri\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\"f\n\x10TokenizeResponse\x12;\n\x06tokens\x18\x01 \x03(\x0b\x32+.yandex.cloud.ai.foundation_models.v1.Token\x12\x15\n\rmodel_version\x18\x02 \x01(\t2\xc7\x01\n\x15TextGenerationService\x12\xad\x01\n\nCompletion\x12\x37.yandex.cloud.ai.foundation_models.v1.CompletionRequest\x1a\x38.yandex.cloud.ai.foundation_models.v1.CompletionResponse\"*\x82\xd3\xe4\x93\x02$\"\x1f/foundationModels/v1/completion:\x01*0\x01\x32\xd0\x01\n\x1aTextGenerationAsyncService\x12\xb1\x01\n\nCompletion\x12\x37.yandex.cloud.ai.foundation_models.v1.CompletionRequest\x1a!.yandex.cloud.operation.Operation\"G\xb2\xd2*\x14\x12\x12\x43ompletionResponse\x82\xd3\xe4\x93\x02)\"$/foundationModels/v1/completionAsync:\x01*2\xf3\x01\n\x1aTextGenerationBatchService\x12\xd4\x01\n\nCompletion\x12<.yandex.cloud.ai.foundation_models.v1.BatchCompletionRequest\x1a!.yandex.cloud.operation.Operation\"e\xb2\xd2*2\n\x17\x42\x61tchCompletionMetadata\x12\x17\x42\x61tchCompletionResponse\x82\xd3\xe4\x93\x02)\"$/foundationModels/v1/completionBatch:\x01*2\xf4\x02\n\x10TokenizerService\x12\xa3\x01\n\x08Tokenize\x12\x35.yandex.cloud.ai.foundation_models.v1.TokenizeRequest\x1a\x36.yandex.cloud.ai.foundation_models.v1.TokenizeResponse\"(\x82\xd3\xe4\x93\x02\"\"\x1d/foundationModels/v1/tokenize:\x01*\x12\xb9\x01\n\x12TokenizeCompletion\x12\x37.yandex.cloud.ai.foundation_models.v1.CompletionRequest\x1a\x36.yandex.cloud.ai.foundation_models.v1.TokenizeResponse\"2\x82\xd3\xe4\x93\x02,\"\'/foundationModels/v1/tokenizeCompletion:\x01*B\x96\x01\n(yandex.cloud.api.ai.foundation_models.v1Zjgithub.com/yandex-cloud/go-genproto/yandex/cloud/ai/foundation_models/v1/text_generation;foundation_modelsb\x06proto3')
33
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\nRyandex/cloud/ai/foundation_models/v1/text_generation/text_generation_service.proto\x12$yandex.cloud.ai.foundation_models.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x36yandex/cloud/ai/foundation_models/v1/text_common.proto\x1a\x46yandex/cloud/ai/foundation_models/v1/batch_inference_task_status.proto\x1a yandex/cloud/api/operation.proto\x1a&yandex/cloud/operation/operation.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xe9\x03\n\x11\x43ompletionRequest\x12\x11\n\tmodel_uri\x18\x01 \x01(\t\x12S\n\x12\x63ompletion_options\x18\x02 \x01(\x0b\x32\x37.yandex.cloud.ai.foundation_models.v1.CompletionOptions\x12?\n\x08messages\x18\x03 \x03(\x0b\x32-.yandex.cloud.ai.foundation_models.v1.Message\x12\x39\n\x05tools\x18\x04 \x03(\x0b\x32*.yandex.cloud.ai.foundation_models.v1.Tool\x12\x15\n\x0bjson_object\x18\x05 \x01(\x08H\x00\x12G\n\x0bjson_schema\x18\x06 \x01(\x0b\x32\x30.yandex.cloud.ai.foundation_models.v1.JsonSchemaH\x00\x12\x37\n\x13parallel_tool_calls\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12\x45\n\x0btool_choice\x18\x08 \x01(\x0b\x32\x30.yandex.cloud.ai.foundation_models.v1.ToolChoiceB\x10\n\x0eResponseFormat\"\xb7\x01\n\x12\x43ompletionResponse\x12G\n\x0c\x61lternatives\x18\x01 \x03(\x0b\x32\x31.yandex.cloud.ai.foundation_models.v1.Alternative\x12\x41\n\x05usage\x18\x02 \x01(\x0b\x32\x32.yandex.cloud.ai.foundation_models.v1.ContentUsage\x12\x15\n\rmodel_version\x18\x03 \x01(\t\"\xaf\x01\n\x16\x42\x61tchCompletionRequest\x12\x11\n\tmodel_uri\x18\x01 \x01(\t\x12S\n\x12\x63ompletion_options\x18\x02 \x01(\x0b\x32\x37.yandex.cloud.ai.foundation_models.v1.CompletionOptions\x12\x1b\n\x11source_dataset_id\x18\x03 \x01(\tH\x00\x42\x10\n\x0erequest_format\"\xb1\x01\n\x17\x42\x61tchCompletionMetadata\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12S\n\x0btask_status\x18\x02 \x01(\x0e\x32>.yandex.cloud.ai.foundation_models.v1.BatchInferenceTaskStatus\x12\x19\n\x11\x63ompleted_batches\x18\x03 \x01(\x03\x12\x15\n\rtotal_batches\x18\x04 \x01(\x03\"\x9a\x01\n\x17\x42\x61tchCompletionResponse\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12S\n\x0btask_status\x18\x02 \x01(\x0e\x32>.yandex.cloud.ai.foundation_models.v1.BatchInferenceTaskStatus\x12\x19\n\x11result_dataset_id\x18\x03 \x01(\t\"2\n\x0fTokenizeRequest\x12\x11\n\tmodel_uri\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\"f\n\x10TokenizeResponse\x12;\n\x06tokens\x18\x01 \x03(\x0b\x32+.yandex.cloud.ai.foundation_models.v1.Token\x12\x15\n\rmodel_version\x18\x02 \x01(\t2\xc7\x01\n\x15TextGenerationService\x12\xad\x01\n\nCompletion\x12\x37.yandex.cloud.ai.foundation_models.v1.CompletionRequest\x1a\x38.yandex.cloud.ai.foundation_models.v1.CompletionResponse\"*\x82\xd3\xe4\x93\x02$\"\x1f/foundationModels/v1/completion:\x01*0\x01\x32\xd0\x01\n\x1aTextGenerationAsyncService\x12\xb1\x01\n\nCompletion\x12\x37.yandex.cloud.ai.foundation_models.v1.CompletionRequest\x1a!.yandex.cloud.operation.Operation\"G\xb2\xd2*\x14\x12\x12\x43ompletionResponse\x82\xd3\xe4\x93\x02)\"$/foundationModels/v1/completionAsync:\x01*2\xf3\x01\n\x1aTextGenerationBatchService\x12\xd4\x01\n\nCompletion\x12<.yandex.cloud.ai.foundation_models.v1.BatchCompletionRequest\x1a!.yandex.cloud.operation.Operation\"e\xb2\xd2*2\n\x17\x42\x61tchCompletionMetadata\x12\x17\x42\x61tchCompletionResponse\x82\xd3\xe4\x93\x02)\"$/foundationModels/v1/completionBatch:\x01*2\xf4\x02\n\x10TokenizerService\x12\xa3\x01\n\x08Tokenize\x12\x35.yandex.cloud.ai.foundation_models.v1.TokenizeRequest\x1a\x36.yandex.cloud.ai.foundation_models.v1.TokenizeResponse\"(\x82\xd3\xe4\x93\x02\"\"\x1d/foundationModels/v1/tokenize:\x01*\x12\xb9\x01\n\x12TokenizeCompletion\x12\x37.yandex.cloud.ai.foundation_models.v1.CompletionRequest\x1a\x36.yandex.cloud.ai.foundation_models.v1.TokenizeResponse\"2\x82\xd3\xe4\x93\x02,\"\'/foundationModels/v1/tokenizeCompletion:\x01*B\x96\x01\n(yandex.cloud.api.ai.foundation_models.v1Zjgithub.com/yandex-cloud/go-genproto/yandex/cloud/ai/foundation_models/v1/text_generation;foundation_modelsb\x06proto3')
33
34
 
34
35
  _globals = globals()
35
36
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -47,26 +48,26 @@ if not _descriptor._USE_C_DESCRIPTORS:
47
48
  _globals['_TOKENIZERSERVICE'].methods_by_name['Tokenize']._serialized_options = b'\202\323\344\223\002\"\"\035/foundationModels/v1/tokenize:\001*'
48
49
  _globals['_TOKENIZERSERVICE'].methods_by_name['TokenizeCompletion']._loaded_options = None
49
50
  _globals['_TOKENIZERSERVICE'].methods_by_name['TokenizeCompletion']._serialized_options = b'\202\323\344\223\002,\"\'/foundationModels/v1/tokenizeCompletion:\001*'
50
- _globals['_COMPLETIONREQUEST']._serialized_start=357
51
- _globals['_COMPLETIONREQUEST']._serialized_end=718
52
- _globals['_COMPLETIONRESPONSE']._serialized_start=721
53
- _globals['_COMPLETIONRESPONSE']._serialized_end=904
54
- _globals['_BATCHCOMPLETIONREQUEST']._serialized_start=907
55
- _globals['_BATCHCOMPLETIONREQUEST']._serialized_end=1082
56
- _globals['_BATCHCOMPLETIONMETADATA']._serialized_start=1085
57
- _globals['_BATCHCOMPLETIONMETADATA']._serialized_end=1262
58
- _globals['_BATCHCOMPLETIONRESPONSE']._serialized_start=1265
59
- _globals['_BATCHCOMPLETIONRESPONSE']._serialized_end=1419
60
- _globals['_TOKENIZEREQUEST']._serialized_start=1421
61
- _globals['_TOKENIZEREQUEST']._serialized_end=1471
62
- _globals['_TOKENIZERESPONSE']._serialized_start=1473
63
- _globals['_TOKENIZERESPONSE']._serialized_end=1575
64
- _globals['_TEXTGENERATIONSERVICE']._serialized_start=1578
65
- _globals['_TEXTGENERATIONSERVICE']._serialized_end=1777
66
- _globals['_TEXTGENERATIONASYNCSERVICE']._serialized_start=1780
67
- _globals['_TEXTGENERATIONASYNCSERVICE']._serialized_end=1988
68
- _globals['_TEXTGENERATIONBATCHSERVICE']._serialized_start=1991
69
- _globals['_TEXTGENERATIONBATCHSERVICE']._serialized_end=2234
70
- _globals['_TOKENIZERSERVICE']._serialized_start=2237
71
- _globals['_TOKENIZERSERVICE']._serialized_end=2609
51
+ _globals['_COMPLETIONREQUEST']._serialized_start=389
52
+ _globals['_COMPLETIONREQUEST']._serialized_end=878
53
+ _globals['_COMPLETIONRESPONSE']._serialized_start=881
54
+ _globals['_COMPLETIONRESPONSE']._serialized_end=1064
55
+ _globals['_BATCHCOMPLETIONREQUEST']._serialized_start=1067
56
+ _globals['_BATCHCOMPLETIONREQUEST']._serialized_end=1242
57
+ _globals['_BATCHCOMPLETIONMETADATA']._serialized_start=1245
58
+ _globals['_BATCHCOMPLETIONMETADATA']._serialized_end=1422
59
+ _globals['_BATCHCOMPLETIONRESPONSE']._serialized_start=1425
60
+ _globals['_BATCHCOMPLETIONRESPONSE']._serialized_end=1579
61
+ _globals['_TOKENIZEREQUEST']._serialized_start=1581
62
+ _globals['_TOKENIZEREQUEST']._serialized_end=1631
63
+ _globals['_TOKENIZERESPONSE']._serialized_start=1633
64
+ _globals['_TOKENIZERESPONSE']._serialized_end=1735
65
+ _globals['_TEXTGENERATIONSERVICE']._serialized_start=1738
66
+ _globals['_TEXTGENERATIONSERVICE']._serialized_end=1937
67
+ _globals['_TEXTGENERATIONASYNCSERVICE']._serialized_start=1940
68
+ _globals['_TEXTGENERATIONASYNCSERVICE']._serialized_end=2148
69
+ _globals['_TEXTGENERATIONBATCHSERVICE']._serialized_start=2151
70
+ _globals['_TEXTGENERATIONBATCHSERVICE']._serialized_end=2394
71
+ _globals['_TOKENIZERSERVICE']._serialized_start=2397
72
+ _globals['_TOKENIZERSERVICE']._serialized_end=2769
72
73
  # @@protoc_insertion_point(module_scope)
@@ -8,6 +8,7 @@ import collections.abc
8
8
  import google.protobuf.descriptor
9
9
  import google.protobuf.internal.containers
10
10
  import google.protobuf.message
11
+ import google.protobuf.wrappers_pb2
11
12
  import typing
12
13
  import yandex.cloud.ai.foundation_models.v1.batch_inference_task_status_pb2
13
14
  import yandex.cloud.ai.foundation_models.v1.text_common_pb2
@@ -26,6 +27,8 @@ class CompletionRequest(google.protobuf.message.Message):
26
27
  TOOLS_FIELD_NUMBER: builtins.int
27
28
  JSON_OBJECT_FIELD_NUMBER: builtins.int
28
29
  JSON_SCHEMA_FIELD_NUMBER: builtins.int
30
+ PARALLEL_TOOL_CALLS_FIELD_NUMBER: builtins.int
31
+ TOOL_CHOICE_FIELD_NUMBER: builtins.int
29
32
  model_uri: builtins.str
30
33
  """The [ID of the model](/docs/foundation-models/concepts/yandexgpt/models) to be used for completion generation."""
31
34
  json_object: builtins.bool
@@ -51,6 +54,14 @@ class CompletionRequest(google.protobuf.message.Message):
51
54
  def json_schema(self) -> yandex.cloud.ai.foundation_models.v1.text_common_pb2.JsonSchema:
52
55
  """Enforces a specific JSON structure for the model's response based on a provided schema."""
53
56
 
57
+ @property
58
+ def parallel_tool_calls(self) -> google.protobuf.wrappers_pb2.BoolValue:
59
+ """Controls whether the model can generate multiple tool calls in a single response. Defaults to true."""
60
+
61
+ @property
62
+ def tool_choice(self) -> yandex.cloud.ai.foundation_models.v1.text_common_pb2.ToolChoice:
63
+ """Specifies how the model should select which tool (or tools) to use when generating a response."""
64
+
54
65
  def __init__(
55
66
  self,
56
67
  *,
@@ -60,9 +71,11 @@ class CompletionRequest(google.protobuf.message.Message):
60
71
  tools: collections.abc.Iterable[yandex.cloud.ai.foundation_models.v1.text_common_pb2.Tool] | None = ...,
61
72
  json_object: builtins.bool = ...,
62
73
  json_schema: yandex.cloud.ai.foundation_models.v1.text_common_pb2.JsonSchema | None = ...,
74
+ parallel_tool_calls: google.protobuf.wrappers_pb2.BoolValue | None = ...,
75
+ tool_choice: yandex.cloud.ai.foundation_models.v1.text_common_pb2.ToolChoice | None = ...,
63
76
  ) -> None: ...
64
- def HasField(self, field_name: typing.Literal["ResponseFormat", b"ResponseFormat", "completion_options", b"completion_options", "json_object", b"json_object", "json_schema", b"json_schema"]) -> builtins.bool: ...
65
- def ClearField(self, field_name: typing.Literal["ResponseFormat", b"ResponseFormat", "completion_options", b"completion_options", "json_object", b"json_object", "json_schema", b"json_schema", "messages", b"messages", "model_uri", b"model_uri", "tools", b"tools"]) -> None: ...
77
+ def HasField(self, field_name: typing.Literal["ResponseFormat", b"ResponseFormat", "completion_options", b"completion_options", "json_object", b"json_object", "json_schema", b"json_schema", "parallel_tool_calls", b"parallel_tool_calls", "tool_choice", b"tool_choice"]) -> builtins.bool: ...
78
+ def ClearField(self, field_name: typing.Literal["ResponseFormat", b"ResponseFormat", "completion_options", b"completion_options", "json_object", b"json_object", "json_schema", b"json_schema", "messages", b"messages", "model_uri", b"model_uri", "parallel_tool_calls", b"parallel_tool_calls", "tool_choice", b"tool_choice", "tools", b"tools"]) -> None: ...
66
79
  def WhichOneof(self, oneof_group: typing.Literal["ResponseFormat", b"ResponseFormat"]) -> typing.Literal["json_object", "json_schema"] | None: ...
67
80
 
68
81
  global___CompletionRequest = CompletionRequest
@@ -24,7 +24,7 @@ _sym_db = _symbol_database.Default()
24
24
 
25
25
 
26
26
 
27
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n yandex/cloud/ai/ocr/v1/ocr.proto\x12\x16yandex.cloud.ai.ocr.v1\";\n\x07Polygon\x12\x30\n\x08vertices\x18\x01 \x03(\x0b\x32\x1e.yandex.cloud.ai.ocr.v1.Vertex\"\x1e\n\x06Vertex\x12\t\n\x01x\x18\x01 \x01(\x03\x12\t\n\x01y\x18\x02 \x01(\x03\"\x81\x02\n\x0eTextAnnotation\x12\r\n\x05width\x18\x01 \x01(\x03\x12\x0e\n\x06height\x18\x02 \x01(\x03\x12-\n\x06\x62locks\x18\x03 \x03(\x0b\x32\x1d.yandex.cloud.ai.ocr.v1.Block\x12\x30\n\x08\x65ntities\x18\x04 \x03(\x0b\x32\x1e.yandex.cloud.ai.ocr.v1.Entity\x12-\n\x06tables\x18\x05 \x03(\x0b\x32\x1d.yandex.cloud.ai.ocr.v1.Table\x12\x11\n\tfull_text\x18\x06 \x01(\t\x12-\n\x06rotate\x18\x07 \x01(\x0e\x32\x1d.yandex.cloud.ai.ocr.v1.Angle\"$\n\x06\x45ntity\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\"\x96\x02\n\x05\x42lock\x12\x35\n\x0c\x62ounding_box\x18\x01 \x01(\x0b\x32\x1f.yandex.cloud.ai.ocr.v1.Polygon\x12+\n\x05lines\x18\x02 \x03(\x0b\x32\x1c.yandex.cloud.ai.ocr.v1.Line\x12\x41\n\tlanguages\x18\x03 \x03(\x0b\x32..yandex.cloud.ai.ocr.v1.Block.DetectedLanguage\x12;\n\rtext_segments\x18\x04 \x03(\x0b\x32$.yandex.cloud.ai.ocr.v1.TextSegments\x1a)\n\x10\x44\x65tectedLanguage\x12\x15\n\rlanguage_code\x18\x01 \x01(\t\"\xe9\x01\n\x04Line\x12\x35\n\x0c\x62ounding_box\x18\x01 \x01(\x0b\x32\x1f.yandex.cloud.ai.ocr.v1.Polygon\x12\x0c\n\x04text\x18\x02 \x01(\t\x12+\n\x05words\x18\x03 \x03(\x0b\x32\x1c.yandex.cloud.ai.ocr.v1.Word\x12;\n\rtext_segments\x18\x04 \x03(\x0b\x32$.yandex.cloud.ai.ocr.v1.TextSegments\x12\x32\n\x0borientation\x18\x05 \x01(\x0e\x32\x1d.yandex.cloud.ai.ocr.v1.Angle\"\x9e\x01\n\x04Word\x12\x35\n\x0c\x62ounding_box\x18\x01 \x01(\x0b\x32\x1f.yandex.cloud.ai.ocr.v1.Polygon\x12\x0c\n\x04text\x18\x02 \x01(\t\x12\x14\n\x0c\x65ntity_index\x18\x03 \x01(\x03\x12;\n\rtext_segments\x18\x04 \x03(\x0b\x32$.yandex.cloud.ai.ocr.v1.TextSegments\"3\n\x0cTextSegments\x12\x13\n\x0bstart_index\x18\x01 \x01(\x03\x12\x0e\n\x06length\x18\x02 \x01(\x03\"\x99\x01\n\x05Table\x12\x35\n\x0c\x62ounding_box\x18\x01 \x01(\x0b\x32\x1f.yandex.cloud.ai.ocr.v1.Polygon\x12\x11\n\trow_count\x18\x02 \x01(\x03\x12\x14\n\x0c\x63olumn_count\x18\x03 \x01(\x03\x12\x30\n\x05\x63\x65lls\x18\x04 \x03(\x0b\x32!.yandex.cloud.ai.ocr.v1.TableCell\"\xdd\x01\n\tTableCell\x12\x35\n\x0c\x62ounding_box\x18\x01 \x01(\x0b\x32\x1f.yandex.cloud.ai.ocr.v1.Polygon\x12\x11\n\trow_index\x18\x02 \x01(\x03\x12\x14\n\x0c\x63olumn_index\x18\x03 \x01(\x03\x12\x13\n\x0b\x63olumn_span\x18\x04 \x01(\x03\x12\x10\n\x08row_span\x18\x05 \x01(\x03\x12\x0c\n\x04text\x18\x06 \x01(\t\x12;\n\rtext_segments\x18\x07 \x03(\x0b\x32$.yandex.cloud.ai.ocr.v1.TextSegments*W\n\x05\x41ngle\x12\x15\n\x11\x41NGLE_UNSPECIFIED\x10\x00\x12\x0b\n\x07\x41NGLE_0\x10\x01\x12\x0c\n\x08\x41NGLE_90\x10\x02\x12\r\n\tANGLE_180\x10\x03\x12\r\n\tANGLE_270\x10\x04\x42\\\n\x1ayandex.cloud.api.ai.ocr.v1Z>github.com/yandex-cloud/go-genproto/yandex/cloud/ai/ocr/v1;ocrb\x06proto3')
27
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n yandex/cloud/ai/ocr/v1/ocr.proto\x12\x16yandex.cloud.ai.ocr.v1\";\n\x07Polygon\x12\x30\n\x08vertices\x18\x01 \x03(\x0b\x32\x1e.yandex.cloud.ai.ocr.v1.Vertex\"\x1e\n\x06Vertex\x12\t\n\x01x\x18\x01 \x01(\x03\x12\t\n\x01y\x18\x02 \x01(\x03\"\xc6\x02\n\x0eTextAnnotation\x12\r\n\x05width\x18\x01 \x01(\x03\x12\x0e\n\x06height\x18\x02 \x01(\x03\x12-\n\x06\x62locks\x18\x03 \x03(\x0b\x32\x1d.yandex.cloud.ai.ocr.v1.Block\x12\x30\n\x08\x65ntities\x18\x04 \x03(\x0b\x32\x1e.yandex.cloud.ai.ocr.v1.Entity\x12-\n\x06tables\x18\x05 \x03(\x0b\x32\x1d.yandex.cloud.ai.ocr.v1.Table\x12\x11\n\tfull_text\x18\x06 \x01(\t\x12-\n\x06rotate\x18\x07 \x01(\x0e\x32\x1d.yandex.cloud.ai.ocr.v1.Angle\x12\x10\n\x08markdown\x18\x08 \x01(\t\x12\x31\n\x08pictures\x18\t \x03(\x0b\x32\x1f.yandex.cloud.ai.ocr.v1.Picture\"$\n\x06\x45ntity\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\"\xcf\x02\n\x05\x42lock\x12\x35\n\x0c\x62ounding_box\x18\x01 \x01(\x0b\x32\x1f.yandex.cloud.ai.ocr.v1.Polygon\x12+\n\x05lines\x18\x02 \x03(\x0b\x32\x1c.yandex.cloud.ai.ocr.v1.Line\x12\x41\n\tlanguages\x18\x03 \x03(\x0b\x32..yandex.cloud.ai.ocr.v1.Block.DetectedLanguage\x12;\n\rtext_segments\x18\x04 \x03(\x0b\x32$.yandex.cloud.ai.ocr.v1.TextSegments\x12\x37\n\x0blayout_type\x18\x05 \x01(\x0e\x32\".yandex.cloud.ai.ocr.v1.LayoutType\x1a)\n\x10\x44\x65tectedLanguage\x12\x15\n\rlanguage_code\x18\x01 \x01(\t\"\xe9\x01\n\x04Line\x12\x35\n\x0c\x62ounding_box\x18\x01 \x01(\x0b\x32\x1f.yandex.cloud.ai.ocr.v1.Polygon\x12\x0c\n\x04text\x18\x02 \x01(\t\x12+\n\x05words\x18\x03 \x03(\x0b\x32\x1c.yandex.cloud.ai.ocr.v1.Word\x12;\n\rtext_segments\x18\x04 \x03(\x0b\x32$.yandex.cloud.ai.ocr.v1.TextSegments\x12\x32\n\x0borientation\x18\x05 \x01(\x0e\x32\x1d.yandex.cloud.ai.ocr.v1.Angle\"\x9e\x01\n\x04Word\x12\x35\n\x0c\x62ounding_box\x18\x01 \x01(\x0b\x32\x1f.yandex.cloud.ai.ocr.v1.Polygon\x12\x0c\n\x04text\x18\x02 \x01(\t\x12\x14\n\x0c\x65ntity_index\x18\x03 \x01(\x03\x12;\n\rtext_segments\x18\x04 \x03(\x0b\x32$.yandex.cloud.ai.ocr.v1.TextSegments\"3\n\x0cTextSegments\x12\x13\n\x0bstart_index\x18\x01 \x01(\x03\x12\x0e\n\x06length\x18\x02 \x01(\x03\"\x99\x01\n\x05Table\x12\x35\n\x0c\x62ounding_box\x18\x01 \x01(\x0b\x32\x1f.yandex.cloud.ai.ocr.v1.Polygon\x12\x11\n\trow_count\x18\x02 \x01(\x03\x12\x14\n\x0c\x63olumn_count\x18\x03 \x01(\x03\x12\x30\n\x05\x63\x65lls\x18\x04 \x03(\x0b\x32!.yandex.cloud.ai.ocr.v1.TableCell\"\xdd\x01\n\tTableCell\x12\x35\n\x0c\x62ounding_box\x18\x01 \x01(\x0b\x32\x1f.yandex.cloud.ai.ocr.v1.Polygon\x12\x11\n\trow_index\x18\x02 \x01(\x03\x12\x14\n\x0c\x63olumn_index\x18\x03 \x01(\x03\x12\x13\n\x0b\x63olumn_span\x18\x04 \x01(\x03\x12\x10\n\x08row_span\x18\x05 \x01(\x03\x12\x0c\n\x04text\x18\x06 \x01(\t\x12;\n\rtext_segments\x18\x07 \x03(\x0b\x32$.yandex.cloud.ai.ocr.v1.TextSegments\"O\n\x07Picture\x12\x35\n\x0c\x62ounding_box\x18\x01 \x01(\x0b\x32\x1f.yandex.cloud.ai.ocr.v1.Polygon\x12\r\n\x05score\x18\x02 \x01(\x01*W\n\x05\x41ngle\x12\x15\n\x11\x41NGLE_UNSPECIFIED\x10\x00\x12\x0b\n\x07\x41NGLE_0\x10\x01\x12\x0c\n\x08\x41NGLE_90\x10\x02\x12\r\n\tANGLE_180\x10\x03\x12\r\n\tANGLE_270\x10\x04*\xa1\x02\n\nLayoutType\x12\x1b\n\x17LAYOUT_TYPE_UNSPECIFIED\x10\x00\x12\x17\n\x13LAYOUT_TYPE_UNKNOWN\x10\x01\x12\x14\n\x10LAYOUT_TYPE_TEXT\x10\x02\x12\x16\n\x12LAYOUT_TYPE_HEADER\x10\x03\x12\x1e\n\x1aLAYOUT_TYPE_SECTION_HEADER\x10\x04\x12\x16\n\x12LAYOUT_TYPE_FOOTER\x10\x05\x12\x18\n\x14LAYOUT_TYPE_FOOTNOTE\x10\x06\x12\x17\n\x13LAYOUT_TYPE_PICTURE\x10\x07\x12\x17\n\x13LAYOUT_TYPE_CAPTION\x10\x08\x12\x15\n\x11LAYOUT_TYPE_TITLE\x10\t\x12\x14\n\x10LAYOUT_TYPE_LIST\x10\nB\\\n\x1ayandex.cloud.api.ai.ocr.v1Z>github.com/yandex-cloud/go-genproto/yandex/cloud/ai/ocr/v1;ocrb\x06proto3')
28
28
 
29
29
  _globals = globals()
30
30
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -32,28 +32,32 @@ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'yandex.cloud.ai.ocr.v1.ocr_
32
32
  if not _descriptor._USE_C_DESCRIPTORS:
33
33
  _globals['DESCRIPTOR']._loaded_options = None
34
34
  _globals['DESCRIPTOR']._serialized_options = b'\n\032yandex.cloud.api.ai.ocr.v1Z>github.com/yandex-cloud/go-genproto/yandex/cloud/ai/ocr/v1;ocr'
35
- _globals['_ANGLE']._serialized_start=1562
36
- _globals['_ANGLE']._serialized_end=1649
35
+ _globals['_ANGLE']._serialized_start=1769
36
+ _globals['_ANGLE']._serialized_end=1856
37
+ _globals['_LAYOUTTYPE']._serialized_start=1859
38
+ _globals['_LAYOUTTYPE']._serialized_end=2148
37
39
  _globals['_POLYGON']._serialized_start=60
38
40
  _globals['_POLYGON']._serialized_end=119
39
41
  _globals['_VERTEX']._serialized_start=121
40
42
  _globals['_VERTEX']._serialized_end=151
41
43
  _globals['_TEXTANNOTATION']._serialized_start=154
42
- _globals['_TEXTANNOTATION']._serialized_end=411
43
- _globals['_ENTITY']._serialized_start=413
44
- _globals['_ENTITY']._serialized_end=449
45
- _globals['_BLOCK']._serialized_start=452
46
- _globals['_BLOCK']._serialized_end=730
47
- _globals['_BLOCK_DETECTEDLANGUAGE']._serialized_start=689
48
- _globals['_BLOCK_DETECTEDLANGUAGE']._serialized_end=730
49
- _globals['_LINE']._serialized_start=733
50
- _globals['_LINE']._serialized_end=966
51
- _globals['_WORD']._serialized_start=969
52
- _globals['_WORD']._serialized_end=1127
53
- _globals['_TEXTSEGMENTS']._serialized_start=1129
54
- _globals['_TEXTSEGMENTS']._serialized_end=1180
55
- _globals['_TABLE']._serialized_start=1183
56
- _globals['_TABLE']._serialized_end=1336
57
- _globals['_TABLECELL']._serialized_start=1339
58
- _globals['_TABLECELL']._serialized_end=1560
44
+ _globals['_TEXTANNOTATION']._serialized_end=480
45
+ _globals['_ENTITY']._serialized_start=482
46
+ _globals['_ENTITY']._serialized_end=518
47
+ _globals['_BLOCK']._serialized_start=521
48
+ _globals['_BLOCK']._serialized_end=856
49
+ _globals['_BLOCK_DETECTEDLANGUAGE']._serialized_start=815
50
+ _globals['_BLOCK_DETECTEDLANGUAGE']._serialized_end=856
51
+ _globals['_LINE']._serialized_start=859
52
+ _globals['_LINE']._serialized_end=1092
53
+ _globals['_WORD']._serialized_start=1095
54
+ _globals['_WORD']._serialized_end=1253
55
+ _globals['_TEXTSEGMENTS']._serialized_start=1255
56
+ _globals['_TEXTSEGMENTS']._serialized_end=1306
57
+ _globals['_TABLE']._serialized_start=1309
58
+ _globals['_TABLE']._serialized_end=1462
59
+ _globals['_TABLECELL']._serialized_start=1465
60
+ _globals['_TABLECELL']._serialized_end=1686
61
+ _globals['_PICTURE']._serialized_start=1688
62
+ _globals['_PICTURE']._serialized_end=1767
59
63
  # @@protoc_insertion_point(module_scope)
@@ -40,6 +40,39 @@ ANGLE_180: Angle.ValueType # 3
40
40
  ANGLE_270: Angle.ValueType # 4
41
41
  global___Angle = Angle
42
42
 
43
+ class _LayoutType:
44
+ ValueType = typing.NewType("ValueType", builtins.int)
45
+ V: typing_extensions.TypeAlias = ValueType
46
+
47
+ class _LayoutTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_LayoutType.ValueType], builtins.type):
48
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
49
+ LAYOUT_TYPE_UNSPECIFIED: _LayoutType.ValueType # 0
50
+ LAYOUT_TYPE_UNKNOWN: _LayoutType.ValueType # 1
51
+ LAYOUT_TYPE_TEXT: _LayoutType.ValueType # 2
52
+ LAYOUT_TYPE_HEADER: _LayoutType.ValueType # 3
53
+ LAYOUT_TYPE_SECTION_HEADER: _LayoutType.ValueType # 4
54
+ LAYOUT_TYPE_FOOTER: _LayoutType.ValueType # 5
55
+ LAYOUT_TYPE_FOOTNOTE: _LayoutType.ValueType # 6
56
+ LAYOUT_TYPE_PICTURE: _LayoutType.ValueType # 7
57
+ LAYOUT_TYPE_CAPTION: _LayoutType.ValueType # 8
58
+ LAYOUT_TYPE_TITLE: _LayoutType.ValueType # 9
59
+ LAYOUT_TYPE_LIST: _LayoutType.ValueType # 10
60
+
61
+ class LayoutType(_LayoutType, metaclass=_LayoutTypeEnumTypeWrapper): ...
62
+
63
+ LAYOUT_TYPE_UNSPECIFIED: LayoutType.ValueType # 0
64
+ LAYOUT_TYPE_UNKNOWN: LayoutType.ValueType # 1
65
+ LAYOUT_TYPE_TEXT: LayoutType.ValueType # 2
66
+ LAYOUT_TYPE_HEADER: LayoutType.ValueType # 3
67
+ LAYOUT_TYPE_SECTION_HEADER: LayoutType.ValueType # 4
68
+ LAYOUT_TYPE_FOOTER: LayoutType.ValueType # 5
69
+ LAYOUT_TYPE_FOOTNOTE: LayoutType.ValueType # 6
70
+ LAYOUT_TYPE_PICTURE: LayoutType.ValueType # 7
71
+ LAYOUT_TYPE_CAPTION: LayoutType.ValueType # 8
72
+ LAYOUT_TYPE_TITLE: LayoutType.ValueType # 9
73
+ LAYOUT_TYPE_LIST: LayoutType.ValueType # 10
74
+ global___LayoutType = LayoutType
75
+
43
76
  @typing.final
44
77
  class Polygon(google.protobuf.message.Message):
45
78
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
@@ -89,6 +122,8 @@ class TextAnnotation(google.protobuf.message.Message):
89
122
  TABLES_FIELD_NUMBER: builtins.int
90
123
  FULL_TEXT_FIELD_NUMBER: builtins.int
91
124
  ROTATE_FIELD_NUMBER: builtins.int
125
+ MARKDOWN_FIELD_NUMBER: builtins.int
126
+ PICTURES_FIELD_NUMBER: builtins.int
92
127
  width: builtins.int
93
128
  """Page width in pixels."""
94
129
  height: builtins.int
@@ -97,6 +132,8 @@ class TextAnnotation(google.protobuf.message.Message):
97
132
  """Full text recognized from image."""
98
133
  rotate: global___Angle.ValueType
99
134
  """Angle of image rotation."""
135
+ markdown: builtins.str
136
+ """Full markdown (without pictures inside) from image. Available only in markdown and math-markdown models."""
100
137
  @property
101
138
  def blocks(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Block]:
102
139
  """Recognized text blocks in this page."""
@@ -107,6 +144,10 @@ class TextAnnotation(google.protobuf.message.Message):
107
144
 
108
145
  @property
109
146
  def tables(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Table]: ...
147
+ @property
148
+ def pictures(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Picture]:
149
+ """List of pictures locations from image."""
150
+
110
151
  def __init__(
111
152
  self,
112
153
  *,
@@ -117,8 +158,10 @@ class TextAnnotation(google.protobuf.message.Message):
117
158
  tables: collections.abc.Iterable[global___Table] | None = ...,
118
159
  full_text: builtins.str = ...,
119
160
  rotate: global___Angle.ValueType = ...,
161
+ markdown: builtins.str = ...,
162
+ pictures: collections.abc.Iterable[global___Picture] | None = ...,
120
163
  ) -> None: ...
121
- def ClearField(self, field_name: typing.Literal["blocks", b"blocks", "entities", b"entities", "full_text", b"full_text", "height", b"height", "rotate", b"rotate", "tables", b"tables", "width", b"width"]) -> None: ...
164
+ def ClearField(self, field_name: typing.Literal["blocks", b"blocks", "entities", b"entities", "full_text", b"full_text", "height", b"height", "markdown", b"markdown", "pictures", b"pictures", "rotate", b"rotate", "tables", b"tables", "width", b"width"]) -> None: ...
122
165
 
123
166
  global___TextAnnotation = TextAnnotation
124
167
 
@@ -164,6 +207,9 @@ class Block(google.protobuf.message.Message):
164
207
  LINES_FIELD_NUMBER: builtins.int
165
208
  LANGUAGES_FIELD_NUMBER: builtins.int
166
209
  TEXT_SEGMENTS_FIELD_NUMBER: builtins.int
210
+ LAYOUT_TYPE_FIELD_NUMBER: builtins.int
211
+ layout_type: global___LayoutType.ValueType
212
+ """Block layout type."""
167
213
  @property
168
214
  def bounding_box(self) -> global___Polygon:
169
215
  """Area on the page where the text block is located."""
@@ -187,9 +233,10 @@ class Block(google.protobuf.message.Message):
187
233
  lines: collections.abc.Iterable[global___Line] | None = ...,
188
234
  languages: collections.abc.Iterable[global___Block.DetectedLanguage] | None = ...,
189
235
  text_segments: collections.abc.Iterable[global___TextSegments] | None = ...,
236
+ layout_type: global___LayoutType.ValueType = ...,
190
237
  ) -> None: ...
191
238
  def HasField(self, field_name: typing.Literal["bounding_box", b"bounding_box"]) -> builtins.bool: ...
192
- def ClearField(self, field_name: typing.Literal["bounding_box", b"bounding_box", "languages", b"languages", "lines", b"lines", "text_segments", b"text_segments"]) -> None: ...
239
+ def ClearField(self, field_name: typing.Literal["bounding_box", b"bounding_box", "languages", b"languages", "layout_type", b"layout_type", "lines", b"lines", "text_segments", b"text_segments"]) -> None: ...
193
240
 
194
241
  global___Block = Block
195
242
 
@@ -362,3 +409,26 @@ class TableCell(google.protobuf.message.Message):
362
409
  def ClearField(self, field_name: typing.Literal["bounding_box", b"bounding_box", "column_index", b"column_index", "column_span", b"column_span", "row_index", b"row_index", "row_span", b"row_span", "text", b"text", "text_segments", b"text_segments"]) -> None: ...
363
410
 
364
411
  global___TableCell = TableCell
412
+
413
+ @typing.final
414
+ class Picture(google.protobuf.message.Message):
415
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
416
+
417
+ BOUNDING_BOX_FIELD_NUMBER: builtins.int
418
+ SCORE_FIELD_NUMBER: builtins.int
419
+ score: builtins.float
420
+ """Confidence score of picture location."""
421
+ @property
422
+ def bounding_box(self) -> global___Polygon:
423
+ """Area on the page where the picture is located."""
424
+
425
+ def __init__(
426
+ self,
427
+ *,
428
+ bounding_box: global___Polygon | None = ...,
429
+ score: builtins.float = ...,
430
+ ) -> None: ...
431
+ def HasField(self, field_name: typing.Literal["bounding_box", b"bounding_box"]) -> builtins.bool: ...
432
+ def ClearField(self, field_name: typing.Literal["bounding_box", b"bounding_box", "score", b"score"]) -> None: ...
433
+
434
+ global___Picture = Picture
@@ -849,7 +849,7 @@ class LanguageEstimation(google.protobuf.message.Message):
849
849
  LANGUAGE_CODE_FIELD_NUMBER: builtins.int
850
850
  PROBABILITY_FIELD_NUMBER: builtins.int
851
851
  language_code: builtins.str
852
- """Language code in ISO 639-1 format."""
852
+ """Language tag in IETF BCP 47 format, consisting of ISO 639-1 language code and ISO 3166-1 country code (e.g., en-US, ru-RU)."""
853
853
  probability: builtins.float
854
854
  """Estimation of language probability."""
855
855
  def __init__(
@@ -32,7 +32,7 @@ from yandex.cloud.ai.tuning.v1 import tuning_schedulers_pb2 as yandex_dot_cloud_
32
32
  from yandex.cloud.ai.tuning.v1 import tuning_error_pb2 as yandex_dot_cloud_dot_ai_dot_tuning_dot_v1_dot_tuning__error__pb2
33
33
 
34
34
 
35
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n.yandex/cloud/ai/tuning/v1/tuning_service.proto\x12\x19yandex.cloud.ai.tuning.v1\x1a\x1dyandex/cloud/validation.proto\x1a yandex/cloud/api/operation.proto\x1a&yandex/cloud/operation/operation.proto\x1a+yandex/cloud/ai/tuning/v1/tuning_task.proto\x1a,yandex/cloud/ai/tuning/v1/tuning_types.proto\x1a\x31yandex/cloud/ai/tuning/v1/tuning_optimizers.proto\x1a\x31yandex/cloud/ai/tuning/v1/tuning_schedulers.proto\x1a,yandex/cloud/ai/tuning/v1/tuning_error.proto\"\x92\x01\n\x12ListTuningsRequest\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\x12<\n\x06status\x18\x04 \x01(\x0e\x32,.yandex.cloud.ai.tuning.v1.TuningTask.Status\"k\n\x13ListTuningsResponse\x12;\n\x0ctuning_tasks\x18\x01 \x03(\x0b\x32%.yandex.cloud.ai.tuning.v1.TuningTask\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"5\n\x15\x44\x65scribeTuningRequest\x12\x1c\n\x0etuning_task_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"T\n\x16\x44\x65scribeTuningResponse\x12:\n\x0btuning_task\x18\x01 \x01(\x0b\x32%.yandex.cloud.ai.tuning.v1.TuningTask\"3\n\x13\x43\x61ncelTuningRequest\x12\x1c\n\x0etuning_task_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\".\n\x14\x43\x61ncelTuningResponse\x12\x16\n\x0etuning_task_id\x18\x01 \x01(\t\"\x8c\x01\n\x0eTuningResponse\x12\x16\n\x0etuning_task_id\x18\x03 \x01(\t\x12<\n\x06status\x18\x04 \x01(\x0e\x32,.yandex.cloud.ai.tuning.v1.TuningTask.Status\x12\x18\n\x10target_model_uri\x18\x05 \x01(\tJ\x04\x08\x01\x10\x02J\x04\x08\x02\x10\x03\"\x91\x01\n\x0eTuningMetadata\x12\x16\n\x0etuning_task_id\x18\x01 \x01(\t\x12<\n\x06status\x18\x02 \x01(\x0e\x32,.yandex.cloud.ai.tuning.v1.TuningTask.Status\x12\x13\n\x0btotal_steps\x18\x03 \x01(\x03\x12\x14\n\x0c\x63urrent_step\x18\x04 \x01(\x03\"\xeb\x08\n\rTuningRequest\x12\x1c\n\x0e\x62\x61se_model_uri\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12X\n\x0etrain_datasets\x18\x02 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDatasetB\x06\x82\xc8\x31\x02>0\x12Y\n\x13validation_datasets\x18\x03 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDatasetB\x02\x18\x01\x12T\n\x12validation_dataset\x18\x04 \x01(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDataset\x12O\n\rtest_datasets\x18\x05 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDataset\x12^\n\x17text_to_text_completion\x18\x64 \x01(\x0b\x32;.yandex.cloud.ai.tuning.v1.TextToTextCompletionTuningParamsH\x00\x12g\n\x1etext_classification_multilabel\x18\x65 \x01(\x0b\x32=.yandex.cloud.ai.tuning.v1.TextClassificationMultilabelParamsH\x00\x12g\n\x1etext_classification_multiclass\x18\x66 \x01(\x0b\x32=.yandex.cloud.ai.tuning.v1.TextClassificationMulticlassParamsH\x00\x12X\n\x1atext_embedding_pair_params\x18g \x01(\x0b\x32\x32.yandex.cloud.ai.tuning.v1.TextEmbeddingPairParamsH\x00\x12^\n\x1dtext_embedding_triplet_params\x18h \x01(\x0b\x32\x35.yandex.cloud.ai.tuning.v1.TextEmbeddingTripletParamsH\x00\x12\r\n\x04name\x18\xc8\x01 \x01(\t\x12\x14\n\x0b\x64\x65scription\x18\xc9\x01 \x01(\t\x12\x45\n\x06labels\x18\xca\x01 \x03(\x0b\x32\x34.yandex.cloud.ai.tuning.v1.TuningRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a;\n\x0fWeightedDataset\x12\x18\n\ndataset_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12\x0e\n\x06weight\x18\x02 \x01(\x01\x42\x0f\n\rtuning_paramsJ\x04\x08\x06\x10\x64J\x05\x08i\x10\xc8\x01\"\x89\x06\n TextToTextCompletionTuningParams\x12\x0c\n\x04seed\x18\x01 \x01(\x03\x12\n\n\x02lr\x18\x02 \x01(\x01\x12\x11\n\tn_samples\x18\x03 \x01(\x03\x12\x1c\n\x14\x61\x64\x64itional_arguments\x18\x07 \x01(\t\x12\x39\n\x04lora\x18\x64 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.TuningTypeLoraH\x00\x12\x46\n\x0bprompt_tune\x18\x65 \x01(\x0b\x32/.yandex.cloud.ai.tuning.v1.TuningTypePromptTuneH\x00\x12Y\n\tscheduler\x18\xc8\x01 \x01(\x0b\x32\x45.yandex.cloud.ai.tuning.v1.TextToTextCompletionTuningParams.Scheduler\x12Y\n\toptimizer\x18\xc9\x01 \x01(\x0b\x32\x45.yandex.cloud.ai.tuning.v1.TextToTextCompletionTuningParams.Optimizer\x1a\xed\x01\n\tScheduler\x12<\n\x06linear\x18\x01 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerLinearH\x00\x12@\n\x08\x63onstant\x18\x02 \x01(\x0b\x32,.yandex.cloud.ai.tuning.v1.SchedulerConstantH\x00\x12<\n\x06\x63osine\x18\x03 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerCosineH\x00\x12\x14\n\x0cwarmup_ratio\x18\x65 \x01(\x01\x42\x06\n\x04typeJ\x04\x08\x04\x10\x65\x1aO\n\tOptimizer\x12:\n\x05\x61\x64\x61mw\x18\x01 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.OptimizerAdamwH\x00\x42\x06\n\x04typeB\r\n\x0btuning_typeJ\x04\x08\x04\x10\x07J\x04\x08\x08\x10\x64J\x05\x08\x66\x10\xc8\x01\"\x8f\x06\n\"TextClassificationMultilabelParams\x12\x0c\n\x04seed\x18\x01 \x01(\x03\x12\n\n\x02lr\x18\x02 \x01(\x01\x12\x11\n\tn_samples\x18\x03 \x01(\x03\x12\x1c\n\x14\x61\x64\x64itional_arguments\x18\x07 \x01(\t\x12\x39\n\x04lora\x18\x64 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.TuningTypeLoraH\x00\x12\x46\n\x0bprompt_tune\x18\x65 \x01(\x0b\x32/.yandex.cloud.ai.tuning.v1.TuningTypePromptTuneH\x00\x12[\n\tscheduler\x18\xc8\x01 \x01(\x0b\x32G.yandex.cloud.ai.tuning.v1.TextClassificationMultilabelParams.Scheduler\x12[\n\toptimizer\x18\xc9\x01 \x01(\x0b\x32G.yandex.cloud.ai.tuning.v1.TextClassificationMultilabelParams.Optimizer\x1a\xed\x01\n\tScheduler\x12<\n\x06linear\x18\x01 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerLinearH\x00\x12@\n\x08\x63onstant\x18\x02 \x01(\x0b\x32,.yandex.cloud.ai.tuning.v1.SchedulerConstantH\x00\x12<\n\x06\x63osine\x18\x03 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerCosineH\x00\x12\x14\n\x0cwarmup_ratio\x18\x65 \x01(\x01\x42\x06\n\x04typeJ\x04\x08\x04\x10\x65\x1aO\n\tOptimizer\x12:\n\x05\x61\x64\x61mw\x18\x01 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.OptimizerAdamwH\x00\x42\x06\n\x04typeB\r\n\x0btuning_typeJ\x04\x08\x04\x10\x07J\x04\x08\x08\x10\x64J\x05\x08\x66\x10\xc8\x01\"\x8f\x06\n\"TextClassificationMulticlassParams\x12\x0c\n\x04seed\x18\x01 \x01(\x03\x12\n\n\x02lr\x18\x02 \x01(\x01\x12\x11\n\tn_samples\x18\x03 \x01(\x03\x12\x1c\n\x14\x61\x64\x64itional_arguments\x18\x07 \x01(\t\x12\x39\n\x04lora\x18\x64 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.TuningTypeLoraH\x00\x12\x46\n\x0bprompt_tune\x18\x65 \x01(\x0b\x32/.yandex.cloud.ai.tuning.v1.TuningTypePromptTuneH\x00\x12[\n\tscheduler\x18\xc8\x01 \x01(\x0b\x32G.yandex.cloud.ai.tuning.v1.TextClassificationMulticlassParams.Scheduler\x12[\n\toptimizer\x18\xc9\x01 \x01(\x0b\x32G.yandex.cloud.ai.tuning.v1.TextClassificationMulticlassParams.Optimizer\x1a\xed\x01\n\tScheduler\x12<\n\x06linear\x18\x01 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerLinearH\x00\x12@\n\x08\x63onstant\x18\x02 \x01(\x0b\x32,.yandex.cloud.ai.tuning.v1.SchedulerConstantH\x00\x12<\n\x06\x63osine\x18\x03 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerCosineH\x00\x12\x14\n\x0cwarmup_ratio\x18\x65 \x01(\x01\x42\x06\n\x04typeJ\x04\x08\x04\x10\x65\x1aO\n\tOptimizer\x12:\n\x05\x61\x64\x61mw\x18\x01 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.OptimizerAdamwH\x00\x42\x06\n\x04typeB\r\n\x0btuning_typeJ\x04\x08\x04\x10\x07J\x04\x08\x08\x10\x64J\x05\x08\x66\x10\xc8\x01\"\xa1\x06\n\x17TextEmbeddingPairParams\x12\x0c\n\x04seed\x18\x01 \x01(\x03\x12\n\n\x02lr\x18\x02 \x01(\x01\x12\x11\n\tn_samples\x18\x03 \x01(\x03\x12\x1c\n\x14\x61\x64\x64itional_arguments\x18\x07 \x01(\t\x12\x16\n\x0e\x65mbedding_dims\x18\x08 \x03(\x03\x12\x39\n\x04lora\x18\x64 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.TuningTypeLoraH\x00\x12\x46\n\x0bprompt_tune\x18\x65 \x01(\x0b\x32/.yandex.cloud.ai.tuning.v1.TuningTypePromptTuneH\x00\x12P\n\tscheduler\x18\xc8\x01 \x01(\x0b\x32<.yandex.cloud.ai.tuning.v1.TextEmbeddingPairParams.Scheduler\x12P\n\toptimizer\x18\xc9\x01 \x01(\x0b\x32<.yandex.cloud.ai.tuning.v1.TextEmbeddingPairParams.Optimizer\x1a\x88\x02\n\tScheduler\x12<\n\x06linear\x18\x01 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerLinearH\x00\x12@\n\x08\x63onstant\x18\x02 \x01(\x0b\x32,.yandex.cloud.ai.tuning.v1.SchedulerConstantH\x00\x12<\n\x06\x63osine\x18\x03 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerCosineH\x00\x12\x16\n\x0cwarmup_ratio\x18\x65 \x01(\x01H\x01\x42\x06\n\x04typeB\x17\n\x15optional_warmup_ratioJ\x04\x08\x04\x10\x65\x1aO\n\tOptimizer\x12:\n\x05\x61\x64\x61mw\x18\x01 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.OptimizerAdamwH\x00\x42\x06\n\x04typeB\r\n\x0btuning_typeJ\x04\x08\x04\x10\x07J\x04\x08\t\x10\x64J\x05\x08\x66\x10\xc8\x01\"\xaa\x06\n\x1aTextEmbeddingTripletParams\x12\x0c\n\x04seed\x18\x01 \x01(\x03\x12\n\n\x02lr\x18\x02 \x01(\x01\x12\x11\n\tn_samples\x18\x03 \x01(\x03\x12\x1c\n\x14\x61\x64\x64itional_arguments\x18\x07 \x01(\t\x12\x16\n\x0e\x65mbedding_dims\x18\x08 \x03(\x03\x12\x39\n\x04lora\x18\x64 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.TuningTypeLoraH\x00\x12\x46\n\x0bprompt_tune\x18\x65 \x01(\x0b\x32/.yandex.cloud.ai.tuning.v1.TuningTypePromptTuneH\x00\x12S\n\tscheduler\x18\xc8\x01 \x01(\x0b\x32?.yandex.cloud.ai.tuning.v1.TextEmbeddingTripletParams.Scheduler\x12S\n\toptimizer\x18\xc9\x01 \x01(\x0b\x32?.yandex.cloud.ai.tuning.v1.TextEmbeddingTripletParams.Optimizer\x1a\x88\x02\n\tScheduler\x12<\n\x06linear\x18\x01 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerLinearH\x00\x12@\n\x08\x63onstant\x18\x02 \x01(\x0b\x32,.yandex.cloud.ai.tuning.v1.SchedulerConstantH\x00\x12<\n\x06\x63osine\x18\x03 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerCosineH\x00\x12\x16\n\x0cwarmup_ratio\x18\x65 \x01(\x01H\x01\x42\x06\n\x04typeB\x17\n\x15optional_warmup_ratioJ\x04\x08\x04\x10\x65\x1aO\n\tOptimizer\x12:\n\x05\x61\x64\x61mw\x18\x01 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.OptimizerAdamwH\x00\x42\x06\n\x04typeB\r\n\x0btuning_typeJ\x04\x08\x04\x10\x07J\x04\x08\t\x10\x64J\x05\x08\x66\x10\xc8\x01\"-\n\x14GetMetricsUrlRequest\x12\x15\n\x07task_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\")\n\x15GetMetricsUrlResponse\x12\x10\n\x08load_url\x18\x01 \x01(\t\"*\n\x11GetOptionsRequest\x12\x15\n\x07task_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"\xe9\x05\n\x12GetOptionsResponse\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x16\n\x0e\x62\x61se_model_uri\x18\x02 \x01(\t\x12P\n\x0etrain_datasets\x18\x03 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDataset\x12U\n\x13validation_datasets\x18\x04 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDataset\x12^\n\x17text_to_text_completion\x18\x64 \x01(\x0b\x32;.yandex.cloud.ai.tuning.v1.TextToTextCompletionTuningParamsH\x00\x12g\n\x1etext_classification_multilabel\x18\x65 \x01(\x0b\x32=.yandex.cloud.ai.tuning.v1.TextClassificationMultilabelParamsH\x00\x12g\n\x1etext_classification_multiclass\x18\x66 \x01(\x0b\x32=.yandex.cloud.ai.tuning.v1.TextClassificationMulticlassParamsH\x00\x12X\n\x1atext_embedding_pair_params\x18g \x01(\x0b\x32\x32.yandex.cloud.ai.tuning.v1.TextEmbeddingPairParamsH\x00\x12^\n\x1dtext_embedding_triplet_params\x18h \x01(\x0b\x32\x35.yandex.cloud.ai.tuning.v1.TextEmbeddingTripletParamsH\x00\x42\x0f\n\rtuning_paramsJ\x04\x08\x05\x10\x64\"+\n\x11ListErrorsRequest\x12\x16\n\x0etuning_task_id\x18\x01 \x01(\t\"R\n\x12ListErrorsResponse\x12<\n\x0ctuning_error\x18\x01 \x03(\x0b\x32&.yandex.cloud.ai.tuning.v1.TuningError\"\xb6\x07\n\x18\x43reateTuningDraftRequest\x12\x1c\n\x0e\x62\x61se_model_uri\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12X\n\x0etrain_datasets\x18\x02 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDatasetB\x06\x82\xc8\x31\x02>0\x12U\n\x13validation_datasets\x18\x03 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDataset\x12^\n\x17text_to_text_completion\x18\x64 \x01(\x0b\x32;.yandex.cloud.ai.tuning.v1.TextToTextCompletionTuningParamsH\x00\x12g\n\x1etext_classification_multilabel\x18\x65 \x01(\x0b\x32=.yandex.cloud.ai.tuning.v1.TextClassificationMultilabelParamsH\x00\x12g\n\x1etext_classification_multiclass\x18\x66 \x01(\x0b\x32=.yandex.cloud.ai.tuning.v1.TextClassificationMulticlassParamsH\x00\x12X\n\x1atext_embedding_pair_params\x18g \x01(\x0b\x32\x32.yandex.cloud.ai.tuning.v1.TextEmbeddingPairParamsH\x00\x12^\n\x1dtext_embedding_triplet_params\x18h \x01(\x0b\x32\x35.yandex.cloud.ai.tuning.v1.TextEmbeddingTripletParamsH\x00\x12*\n\x04name\x18\xc8\x01 \x01(\tB\x1b\xf2\xc7\x31\x17^[A-Za-z0-9 _-]{3,100}$\x12\x14\n\x0b\x64\x65scription\x18\xc9\x01 \x01(\t\x12P\n\x06labels\x18\xca\x01 \x03(\x0b\x32?.yandex.cloud.ai.tuning.v1.CreateTuningDraftRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0f\n\rtuning_paramsJ\x04\x08\x04\x10\x64J\x05\x08i\x10\xc8\x01\"3\n\x19\x43reateTuningDraftResponse\x12\x16\n\x0etuning_task_id\x18\x01 \x01(\t\"\xa9\x07\n\x18UpdateTuningDraftRequest\x12\x1c\n\x0etuning_task_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12\x16\n\x0e\x62\x61se_model_uri\x18\x02 \x01(\t\x12P\n\x0etrain_datasets\x18\x03 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDataset\x12U\n\x13validation_datasets\x18\x04 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDataset\x12^\n\x17text_to_text_completion\x18\x64 \x01(\x0b\x32;.yandex.cloud.ai.tuning.v1.TextToTextCompletionTuningParamsH\x00\x12g\n\x1etext_classification_multilabel\x18\x65 \x01(\x0b\x32=.yandex.cloud.ai.tuning.v1.TextClassificationMultilabelParamsH\x00\x12g\n\x1etext_classification_multiclass\x18\x66 \x01(\x0b\x32=.yandex.cloud.ai.tuning.v1.TextClassificationMulticlassParamsH\x00\x12X\n\x1atext_embedding_pair_params\x18g \x01(\x0b\x32\x32.yandex.cloud.ai.tuning.v1.TextEmbeddingPairParamsH\x00\x12^\n\x1dtext_embedding_triplet_params\x18h \x01(\x0b\x32\x35.yandex.cloud.ai.tuning.v1.TextEmbeddingTripletParamsH\x00\x12\r\n\x04name\x18\xc8\x01 \x01(\t\x12\x14\n\x0b\x64\x65scription\x18\xc9\x01 \x01(\t\x12P\n\x06labels\x18\xca\x01 \x03(\x0b\x32?.yandex.cloud.ai.tuning.v1.UpdateTuningDraftRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0f\n\rtuning_paramsJ\x04\x08\x05\x10\x64J\x05\x08i\x10\xc8\x01\"3\n\x19UpdateTuningDraftResponse\x12\x16\n\x0etuning_task_id\x18\x01 \x01(\t\"8\n\x18\x44\x65leteTuningDraftRequest\x12\x1c\n\x0etuning_task_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"3\n\x19\x44\x65leteTuningDraftResponse\x12\x16\n\x0etuning_task_id\x18\x01 \x01(\t\"0\n\x10TuneDraftRequest\x12\x1c\n\x0etuning_task_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x32\x89\n\n\rTuningService\x12y\n\x04Tune\x12(.yandex.cloud.ai.tuning.v1.TuningRequest\x1a!.yandex.cloud.operation.Operation\"$\xb2\xd2* \n\x0eTuningMetadata\x12\x0eTuningResponse\x12\x65\n\x04List\x12-.yandex.cloud.ai.tuning.v1.ListTuningsRequest\x1a..yandex.cloud.ai.tuning.v1.ListTuningsResponse\x12o\n\x08\x44\x65scribe\x12\x30.yandex.cloud.ai.tuning.v1.DescribeTuningRequest\x1a\x31.yandex.cloud.ai.tuning.v1.DescribeTuningResponse\x12i\n\x06\x43\x61ncel\x12..yandex.cloud.ai.tuning.v1.CancelTuningRequest\x1a/.yandex.cloud.ai.tuning.v1.CancelTuningResponse\x12r\n\rGetMetricsUrl\x12/.yandex.cloud.ai.tuning.v1.GetMetricsUrlRequest\x1a\x30.yandex.cloud.ai.tuning.v1.GetMetricsUrlResponse\x12i\n\nGetOptions\x12,.yandex.cloud.ai.tuning.v1.GetOptionsRequest\x1a-.yandex.cloud.ai.tuning.v1.GetOptionsResponse\x12i\n\nListErrors\x12,.yandex.cloud.ai.tuning.v1.ListErrorsRequest\x1a-.yandex.cloud.ai.tuning.v1.ListErrorsResponse\x12x\n\x0b\x43reateDraft\x12\x33.yandex.cloud.ai.tuning.v1.CreateTuningDraftRequest\x1a\x34.yandex.cloud.ai.tuning.v1.CreateTuningDraftResponse\x12x\n\x0bUpdateDraft\x12\x33.yandex.cloud.ai.tuning.v1.UpdateTuningDraftRequest\x1a\x34.yandex.cloud.ai.tuning.v1.UpdateTuningDraftResponse\x12x\n\x0b\x44\x65leteDraft\x12\x33.yandex.cloud.ai.tuning.v1.DeleteTuningDraftRequest\x1a\x34.yandex.cloud.ai.tuning.v1.DeleteTuningDraftResponse\x12\x81\x01\n\tTuneDraft\x12+.yandex.cloud.ai.tuning.v1.TuneDraftRequest\x1a!.yandex.cloud.operation.Operation\"$\xb2\xd2* \n\x0eTuningMetadata\x12\x0eTuningResponseBc\n\x1dyandex.cloud.api.ai.tuning.v1ZBgithub.com/yandex-cloud/go-genproto/yandex/cloud/ai/tuning/v1;fomob\x06proto3')
35
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n.yandex/cloud/ai/tuning/v1/tuning_service.proto\x12\x19yandex.cloud.ai.tuning.v1\x1a\x1dyandex/cloud/validation.proto\x1a yandex/cloud/api/operation.proto\x1a&yandex/cloud/operation/operation.proto\x1a+yandex/cloud/ai/tuning/v1/tuning_task.proto\x1a,yandex/cloud/ai/tuning/v1/tuning_types.proto\x1a\x31yandex/cloud/ai/tuning/v1/tuning_optimizers.proto\x1a\x31yandex/cloud/ai/tuning/v1/tuning_schedulers.proto\x1a,yandex/cloud/ai/tuning/v1/tuning_error.proto\"\x92\x01\n\x12ListTuningsRequest\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\x12<\n\x06status\x18\x04 \x01(\x0e\x32,.yandex.cloud.ai.tuning.v1.TuningTask.Status\"k\n\x13ListTuningsResponse\x12;\n\x0ctuning_tasks\x18\x01 \x03(\x0b\x32%.yandex.cloud.ai.tuning.v1.TuningTask\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"5\n\x15\x44\x65scribeTuningRequest\x12\x1c\n\x0etuning_task_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"T\n\x16\x44\x65scribeTuningResponse\x12:\n\x0btuning_task\x18\x01 \x01(\x0b\x32%.yandex.cloud.ai.tuning.v1.TuningTask\"3\n\x13\x43\x61ncelTuningRequest\x12\x1c\n\x0etuning_task_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\".\n\x14\x43\x61ncelTuningResponse\x12\x16\n\x0etuning_task_id\x18\x01 \x01(\t\"\x8c\x01\n\x0eTuningResponse\x12\x16\n\x0etuning_task_id\x18\x03 \x01(\t\x12<\n\x06status\x18\x04 \x01(\x0e\x32,.yandex.cloud.ai.tuning.v1.TuningTask.Status\x12\x18\n\x10target_model_uri\x18\x05 \x01(\tJ\x04\x08\x01\x10\x02J\x04\x08\x02\x10\x03\"\x91\x01\n\x0eTuningMetadata\x12\x16\n\x0etuning_task_id\x18\x01 \x01(\t\x12<\n\x06status\x18\x02 \x01(\x0e\x32,.yandex.cloud.ai.tuning.v1.TuningTask.Status\x12\x13\n\x0btotal_steps\x18\x03 \x01(\x03\x12\x14\n\x0c\x63urrent_step\x18\x04 \x01(\x03\"\xeb\x08\n\rTuningRequest\x12\x1c\n\x0e\x62\x61se_model_uri\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12X\n\x0etrain_datasets\x18\x02 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDatasetB\x06\x82\xc8\x31\x02>0\x12Y\n\x13validation_datasets\x18\x03 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDatasetB\x02\x18\x01\x12T\n\x12validation_dataset\x18\x04 \x01(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDataset\x12O\n\rtest_datasets\x18\x05 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDataset\x12^\n\x17text_to_text_completion\x18\x64 \x01(\x0b\x32;.yandex.cloud.ai.tuning.v1.TextToTextCompletionTuningParamsH\x00\x12g\n\x1etext_classification_multilabel\x18\x65 \x01(\x0b\x32=.yandex.cloud.ai.tuning.v1.TextClassificationMultilabelParamsH\x00\x12g\n\x1etext_classification_multiclass\x18\x66 \x01(\x0b\x32=.yandex.cloud.ai.tuning.v1.TextClassificationMulticlassParamsH\x00\x12X\n\x1atext_embedding_pair_params\x18g \x01(\x0b\x32\x32.yandex.cloud.ai.tuning.v1.TextEmbeddingPairParamsH\x00\x12^\n\x1dtext_embedding_triplet_params\x18h \x01(\x0b\x32\x35.yandex.cloud.ai.tuning.v1.TextEmbeddingTripletParamsH\x00\x12\r\n\x04name\x18\xc8\x01 \x01(\t\x12\x14\n\x0b\x64\x65scription\x18\xc9\x01 \x01(\t\x12\x45\n\x06labels\x18\xca\x01 \x03(\x0b\x32\x34.yandex.cloud.ai.tuning.v1.TuningRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a;\n\x0fWeightedDataset\x12\x18\n\ndataset_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12\x0e\n\x06weight\x18\x02 \x01(\x01\x42\x0f\n\rtuning_paramsJ\x04\x08\x06\x10\x64J\x05\x08i\x10\xc8\x01\"\x89\x06\n TextToTextCompletionTuningParams\x12\x0c\n\x04seed\x18\x01 \x01(\x03\x12\n\n\x02lr\x18\x02 \x01(\x01\x12\x11\n\tn_samples\x18\x03 \x01(\x03\x12\x1c\n\x14\x61\x64\x64itional_arguments\x18\x07 \x01(\t\x12\x39\n\x04lora\x18\x64 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.TuningTypeLoraH\x00\x12\x46\n\x0bprompt_tune\x18\x65 \x01(\x0b\x32/.yandex.cloud.ai.tuning.v1.TuningTypePromptTuneH\x00\x12Y\n\tscheduler\x18\xc8\x01 \x01(\x0b\x32\x45.yandex.cloud.ai.tuning.v1.TextToTextCompletionTuningParams.Scheduler\x12Y\n\toptimizer\x18\xc9\x01 \x01(\x0b\x32\x45.yandex.cloud.ai.tuning.v1.TextToTextCompletionTuningParams.Optimizer\x1a\xed\x01\n\tScheduler\x12<\n\x06linear\x18\x01 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerLinearH\x00\x12@\n\x08\x63onstant\x18\x02 \x01(\x0b\x32,.yandex.cloud.ai.tuning.v1.SchedulerConstantH\x00\x12<\n\x06\x63osine\x18\x03 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerCosineH\x00\x12\x14\n\x0cwarmup_ratio\x18\x65 \x01(\x01\x42\x06\n\x04typeJ\x04\x08\x04\x10\x65\x1aO\n\tOptimizer\x12:\n\x05\x61\x64\x61mw\x18\x01 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.OptimizerAdamwH\x00\x42\x06\n\x04typeB\r\n\x0btuning_typeJ\x04\x08\x04\x10\x07J\x04\x08\x08\x10\x64J\x05\x08\x66\x10\xc8\x01\"\x8f\x06\n\"TextClassificationMultilabelParams\x12\x0c\n\x04seed\x18\x01 \x01(\x03\x12\n\n\x02lr\x18\x02 \x01(\x01\x12\x11\n\tn_samples\x18\x03 \x01(\x03\x12\x1c\n\x14\x61\x64\x64itional_arguments\x18\x07 \x01(\t\x12\x39\n\x04lora\x18\x64 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.TuningTypeLoraH\x00\x12\x46\n\x0bprompt_tune\x18\x65 \x01(\x0b\x32/.yandex.cloud.ai.tuning.v1.TuningTypePromptTuneH\x00\x12[\n\tscheduler\x18\xc8\x01 \x01(\x0b\x32G.yandex.cloud.ai.tuning.v1.TextClassificationMultilabelParams.Scheduler\x12[\n\toptimizer\x18\xc9\x01 \x01(\x0b\x32G.yandex.cloud.ai.tuning.v1.TextClassificationMultilabelParams.Optimizer\x1a\xed\x01\n\tScheduler\x12<\n\x06linear\x18\x01 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerLinearH\x00\x12@\n\x08\x63onstant\x18\x02 \x01(\x0b\x32,.yandex.cloud.ai.tuning.v1.SchedulerConstantH\x00\x12<\n\x06\x63osine\x18\x03 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerCosineH\x00\x12\x14\n\x0cwarmup_ratio\x18\x65 \x01(\x01\x42\x06\n\x04typeJ\x04\x08\x04\x10\x65\x1aO\n\tOptimizer\x12:\n\x05\x61\x64\x61mw\x18\x01 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.OptimizerAdamwH\x00\x42\x06\n\x04typeB\r\n\x0btuning_typeJ\x04\x08\x04\x10\x07J\x04\x08\x08\x10\x64J\x05\x08\x66\x10\xc8\x01\"\x8f\x06\n\"TextClassificationMulticlassParams\x12\x0c\n\x04seed\x18\x01 \x01(\x03\x12\n\n\x02lr\x18\x02 \x01(\x01\x12\x11\n\tn_samples\x18\x03 \x01(\x03\x12\x1c\n\x14\x61\x64\x64itional_arguments\x18\x07 \x01(\t\x12\x39\n\x04lora\x18\x64 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.TuningTypeLoraH\x00\x12\x46\n\x0bprompt_tune\x18\x65 \x01(\x0b\x32/.yandex.cloud.ai.tuning.v1.TuningTypePromptTuneH\x00\x12[\n\tscheduler\x18\xc8\x01 \x01(\x0b\x32G.yandex.cloud.ai.tuning.v1.TextClassificationMulticlassParams.Scheduler\x12[\n\toptimizer\x18\xc9\x01 \x01(\x0b\x32G.yandex.cloud.ai.tuning.v1.TextClassificationMulticlassParams.Optimizer\x1a\xed\x01\n\tScheduler\x12<\n\x06linear\x18\x01 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerLinearH\x00\x12@\n\x08\x63onstant\x18\x02 \x01(\x0b\x32,.yandex.cloud.ai.tuning.v1.SchedulerConstantH\x00\x12<\n\x06\x63osine\x18\x03 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerCosineH\x00\x12\x14\n\x0cwarmup_ratio\x18\x65 \x01(\x01\x42\x06\n\x04typeJ\x04\x08\x04\x10\x65\x1aO\n\tOptimizer\x12:\n\x05\x61\x64\x61mw\x18\x01 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.OptimizerAdamwH\x00\x42\x06\n\x04typeB\r\n\x0btuning_typeJ\x04\x08\x04\x10\x07J\x04\x08\x08\x10\x64J\x05\x08\x66\x10\xc8\x01\"\xa1\x06\n\x17TextEmbeddingPairParams\x12\x0c\n\x04seed\x18\x01 \x01(\x03\x12\n\n\x02lr\x18\x02 \x01(\x01\x12\x11\n\tn_samples\x18\x03 \x01(\x03\x12\x1c\n\x14\x61\x64\x64itional_arguments\x18\x07 \x01(\t\x12\x16\n\x0e\x65mbedding_dims\x18\x08 \x03(\x03\x12\x39\n\x04lora\x18\x64 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.TuningTypeLoraH\x00\x12\x46\n\x0bprompt_tune\x18\x65 \x01(\x0b\x32/.yandex.cloud.ai.tuning.v1.TuningTypePromptTuneH\x00\x12P\n\tscheduler\x18\xc8\x01 \x01(\x0b\x32<.yandex.cloud.ai.tuning.v1.TextEmbeddingPairParams.Scheduler\x12P\n\toptimizer\x18\xc9\x01 \x01(\x0b\x32<.yandex.cloud.ai.tuning.v1.TextEmbeddingPairParams.Optimizer\x1a\x88\x02\n\tScheduler\x12<\n\x06linear\x18\x01 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerLinearH\x00\x12@\n\x08\x63onstant\x18\x02 \x01(\x0b\x32,.yandex.cloud.ai.tuning.v1.SchedulerConstantH\x00\x12<\n\x06\x63osine\x18\x03 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerCosineH\x00\x12\x16\n\x0cwarmup_ratio\x18\x65 \x01(\x01H\x01\x42\x06\n\x04typeB\x17\n\x15optional_warmup_ratioJ\x04\x08\x04\x10\x65\x1aO\n\tOptimizer\x12:\n\x05\x61\x64\x61mw\x18\x01 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.OptimizerAdamwH\x00\x42\x06\n\x04typeB\r\n\x0btuning_typeJ\x04\x08\x04\x10\x07J\x04\x08\t\x10\x64J\x05\x08\x66\x10\xc8\x01\"\xaa\x06\n\x1aTextEmbeddingTripletParams\x12\x0c\n\x04seed\x18\x01 \x01(\x03\x12\n\n\x02lr\x18\x02 \x01(\x01\x12\x11\n\tn_samples\x18\x03 \x01(\x03\x12\x1c\n\x14\x61\x64\x64itional_arguments\x18\x07 \x01(\t\x12\x16\n\x0e\x65mbedding_dims\x18\x08 \x03(\x03\x12\x39\n\x04lora\x18\x64 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.TuningTypeLoraH\x00\x12\x46\n\x0bprompt_tune\x18\x65 \x01(\x0b\x32/.yandex.cloud.ai.tuning.v1.TuningTypePromptTuneH\x00\x12S\n\tscheduler\x18\xc8\x01 \x01(\x0b\x32?.yandex.cloud.ai.tuning.v1.TextEmbeddingTripletParams.Scheduler\x12S\n\toptimizer\x18\xc9\x01 \x01(\x0b\x32?.yandex.cloud.ai.tuning.v1.TextEmbeddingTripletParams.Optimizer\x1a\x88\x02\n\tScheduler\x12<\n\x06linear\x18\x01 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerLinearH\x00\x12@\n\x08\x63onstant\x18\x02 \x01(\x0b\x32,.yandex.cloud.ai.tuning.v1.SchedulerConstantH\x00\x12<\n\x06\x63osine\x18\x03 \x01(\x0b\x32*.yandex.cloud.ai.tuning.v1.SchedulerCosineH\x00\x12\x16\n\x0cwarmup_ratio\x18\x65 \x01(\x01H\x01\x42\x06\n\x04typeB\x17\n\x15optional_warmup_ratioJ\x04\x08\x04\x10\x65\x1aO\n\tOptimizer\x12:\n\x05\x61\x64\x61mw\x18\x01 \x01(\x0b\x32).yandex.cloud.ai.tuning.v1.OptimizerAdamwH\x00\x42\x06\n\x04typeB\r\n\x0btuning_typeJ\x04\x08\x04\x10\x07J\x04\x08\t\x10\x64J\x05\x08\x66\x10\xc8\x01\"-\n\x14GetMetricsUrlRequest\x12\x15\n\x07task_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\")\n\x15GetMetricsUrlResponse\x12\x10\n\x08load_url\x18\x01 \x01(\t\"*\n\x11GetOptionsRequest\x12\x15\n\x07task_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"\xe9\x05\n\x12GetOptionsResponse\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x16\n\x0e\x62\x61se_model_uri\x18\x02 \x01(\t\x12P\n\x0etrain_datasets\x18\x03 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDataset\x12U\n\x13validation_datasets\x18\x04 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDataset\x12^\n\x17text_to_text_completion\x18\x64 \x01(\x0b\x32;.yandex.cloud.ai.tuning.v1.TextToTextCompletionTuningParamsH\x00\x12g\n\x1etext_classification_multilabel\x18\x65 \x01(\x0b\x32=.yandex.cloud.ai.tuning.v1.TextClassificationMultilabelParamsH\x00\x12g\n\x1etext_classification_multiclass\x18\x66 \x01(\x0b\x32=.yandex.cloud.ai.tuning.v1.TextClassificationMulticlassParamsH\x00\x12X\n\x1atext_embedding_pair_params\x18g \x01(\x0b\x32\x32.yandex.cloud.ai.tuning.v1.TextEmbeddingPairParamsH\x00\x12^\n\x1dtext_embedding_triplet_params\x18h \x01(\x0b\x32\x35.yandex.cloud.ai.tuning.v1.TextEmbeddingTripletParamsH\x00\x42\x0f\n\rtuning_paramsJ\x04\x08\x05\x10\x64\"+\n\x11ListErrorsRequest\x12\x16\n\x0etuning_task_id\x18\x01 \x01(\t\"R\n\x12ListErrorsResponse\x12<\n\x0ctuning_error\x18\x01 \x03(\x0b\x32&.yandex.cloud.ai.tuning.v1.TuningError\"\xb6\x07\n\x18\x43reateTuningDraftRequest\x12\x1c\n\x0e\x62\x61se_model_uri\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12X\n\x0etrain_datasets\x18\x02 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDatasetB\x06\x82\xc8\x31\x02>0\x12U\n\x13validation_datasets\x18\x03 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDataset\x12^\n\x17text_to_text_completion\x18\x64 \x01(\x0b\x32;.yandex.cloud.ai.tuning.v1.TextToTextCompletionTuningParamsH\x00\x12g\n\x1etext_classification_multilabel\x18\x65 \x01(\x0b\x32=.yandex.cloud.ai.tuning.v1.TextClassificationMultilabelParamsH\x00\x12g\n\x1etext_classification_multiclass\x18\x66 \x01(\x0b\x32=.yandex.cloud.ai.tuning.v1.TextClassificationMulticlassParamsH\x00\x12X\n\x1atext_embedding_pair_params\x18g \x01(\x0b\x32\x32.yandex.cloud.ai.tuning.v1.TextEmbeddingPairParamsH\x00\x12^\n\x1dtext_embedding_triplet_params\x18h \x01(\x0b\x32\x35.yandex.cloud.ai.tuning.v1.TextEmbeddingTripletParamsH\x00\x12*\n\x04name\x18\xc8\x01 \x01(\tB\x1b\xf2\xc7\x31\x17^[A-Za-z0-9 _-]{3,100}$\x12\x14\n\x0b\x64\x65scription\x18\xc9\x01 \x01(\t\x12P\n\x06labels\x18\xca\x01 \x03(\x0b\x32?.yandex.cloud.ai.tuning.v1.CreateTuningDraftRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0f\n\rtuning_paramsJ\x04\x08\x04\x10\x64J\x05\x08i\x10\xc8\x01\"3\n\x19\x43reateTuningDraftResponse\x12\x16\n\x0etuning_task_id\x18\x01 \x01(\t\"\xa9\x07\n\x18UpdateTuningDraftRequest\x12\x1c\n\x0etuning_task_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12\x16\n\x0e\x62\x61se_model_uri\x18\x02 \x01(\t\x12P\n\x0etrain_datasets\x18\x03 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDataset\x12U\n\x13validation_datasets\x18\x04 \x03(\x0b\x32\x38.yandex.cloud.ai.tuning.v1.TuningRequest.WeightedDataset\x12^\n\x17text_to_text_completion\x18\x64 \x01(\x0b\x32;.yandex.cloud.ai.tuning.v1.TextToTextCompletionTuningParamsH\x00\x12g\n\x1etext_classification_multilabel\x18\x65 \x01(\x0b\x32=.yandex.cloud.ai.tuning.v1.TextClassificationMultilabelParamsH\x00\x12g\n\x1etext_classification_multiclass\x18\x66 \x01(\x0b\x32=.yandex.cloud.ai.tuning.v1.TextClassificationMulticlassParamsH\x00\x12X\n\x1atext_embedding_pair_params\x18g \x01(\x0b\x32\x32.yandex.cloud.ai.tuning.v1.TextEmbeddingPairParamsH\x00\x12^\n\x1dtext_embedding_triplet_params\x18h \x01(\x0b\x32\x35.yandex.cloud.ai.tuning.v1.TextEmbeddingTripletParamsH\x00\x12\r\n\x04name\x18\xc8\x01 \x01(\t\x12\x14\n\x0b\x64\x65scription\x18\xc9\x01 \x01(\t\x12P\n\x06labels\x18\xca\x01 \x03(\x0b\x32?.yandex.cloud.ai.tuning.v1.UpdateTuningDraftRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0f\n\rtuning_paramsJ\x04\x08\x05\x10\x64J\x05\x08i\x10\xc8\x01\"3\n\x19UpdateTuningDraftResponse\x12\x16\n\x0etuning_task_id\x18\x01 \x01(\t\"8\n\x18\x44\x65leteTuningDraftRequest\x12\x1c\n\x0etuning_task_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"3\n\x19\x44\x65leteTuningDraftResponse\x12\x16\n\x0etuning_task_id\x18\x01 \x01(\t\"0\n\x10TuneDraftRequest\x12\x1c\n\x0etuning_task_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"4\n\x14\x41rchiveTuningRequest\x12\x1c\n\x0etuning_task_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"\x17\n\x15\x41rchiveTuningMetadata\"/\n\x15\x41rchiveTuningResponse\x12\x16\n\x0etuning_task_id\x18\x01 \x01(\t2\x9d\x0b\n\rTuningService\x12y\n\x04Tune\x12(.yandex.cloud.ai.tuning.v1.TuningRequest\x1a!.yandex.cloud.operation.Operation\"$\xb2\xd2* \n\x0eTuningMetadata\x12\x0eTuningResponse\x12\x65\n\x04List\x12-.yandex.cloud.ai.tuning.v1.ListTuningsRequest\x1a..yandex.cloud.ai.tuning.v1.ListTuningsResponse\x12o\n\x08\x44\x65scribe\x12\x30.yandex.cloud.ai.tuning.v1.DescribeTuningRequest\x1a\x31.yandex.cloud.ai.tuning.v1.DescribeTuningResponse\x12i\n\x06\x43\x61ncel\x12..yandex.cloud.ai.tuning.v1.CancelTuningRequest\x1a/.yandex.cloud.ai.tuning.v1.CancelTuningResponse\x12r\n\rGetMetricsUrl\x12/.yandex.cloud.ai.tuning.v1.GetMetricsUrlRequest\x1a\x30.yandex.cloud.ai.tuning.v1.GetMetricsUrlResponse\x12i\n\nGetOptions\x12,.yandex.cloud.ai.tuning.v1.GetOptionsRequest\x1a-.yandex.cloud.ai.tuning.v1.GetOptionsResponse\x12i\n\nListErrors\x12,.yandex.cloud.ai.tuning.v1.ListErrorsRequest\x1a-.yandex.cloud.ai.tuning.v1.ListErrorsResponse\x12x\n\x0b\x43reateDraft\x12\x33.yandex.cloud.ai.tuning.v1.CreateTuningDraftRequest\x1a\x34.yandex.cloud.ai.tuning.v1.CreateTuningDraftResponse\x12x\n\x0bUpdateDraft\x12\x33.yandex.cloud.ai.tuning.v1.UpdateTuningDraftRequest\x1a\x34.yandex.cloud.ai.tuning.v1.UpdateTuningDraftResponse\x12x\n\x0b\x44\x65leteDraft\x12\x33.yandex.cloud.ai.tuning.v1.DeleteTuningDraftRequest\x1a\x34.yandex.cloud.ai.tuning.v1.DeleteTuningDraftResponse\x12\x81\x01\n\tTuneDraft\x12+.yandex.cloud.ai.tuning.v1.TuneDraftRequest\x1a!.yandex.cloud.operation.Operation\"$\xb2\xd2* \n\x0eTuningMetadata\x12\x0eTuningResponse\x12\x91\x01\n\x07\x41rchive\x12/.yandex.cloud.ai.tuning.v1.ArchiveTuningRequest\x1a!.yandex.cloud.operation.Operation\"2\xb2\xd2*.\n\x15\x41rchiveTuningMetadata\x12\x15\x41rchiveTuningResponseBc\n\x1dyandex.cloud.api.ai.tuning.v1ZBgithub.com/yandex-cloud/go-genproto/yandex/cloud/ai/tuning/v1;fomob\x06proto3')
36
36
 
37
37
  _globals = globals()
38
38
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -76,10 +76,14 @@ if not _descriptor._USE_C_DESCRIPTORS:
76
76
  _globals['_DELETETUNINGDRAFTREQUEST'].fields_by_name['tuning_task_id']._serialized_options = b'\350\3071\001'
77
77
  _globals['_TUNEDRAFTREQUEST'].fields_by_name['tuning_task_id']._loaded_options = None
78
78
  _globals['_TUNEDRAFTREQUEST'].fields_by_name['tuning_task_id']._serialized_options = b'\350\3071\001'
79
+ _globals['_ARCHIVETUNINGREQUEST'].fields_by_name['tuning_task_id']._loaded_options = None
80
+ _globals['_ARCHIVETUNINGREQUEST'].fields_by_name['tuning_task_id']._serialized_options = b'\350\3071\001'
79
81
  _globals['_TUNINGSERVICE'].methods_by_name['Tune']._loaded_options = None
80
82
  _globals['_TUNINGSERVICE'].methods_by_name['Tune']._serialized_options = b'\262\322* \n\016TuningMetadata\022\016TuningResponse'
81
83
  _globals['_TUNINGSERVICE'].methods_by_name['TuneDraft']._loaded_options = None
82
84
  _globals['_TUNINGSERVICE'].methods_by_name['TuneDraft']._serialized_options = b'\262\322* \n\016TuningMetadata\022\016TuningResponse'
85
+ _globals['_TUNINGSERVICE'].methods_by_name['Archive']._loaded_options = None
86
+ _globals['_TUNINGSERVICE'].methods_by_name['Archive']._serialized_options = b'\262\322*.\n\025ArchiveTuningMetadata\022\025ArchiveTuningResponse'
83
87
  _globals['_LISTTUNINGSREQUEST']._serialized_start=422
84
88
  _globals['_LISTTUNINGSREQUEST']._serialized_end=568
85
89
  _globals['_LISTTUNINGSRESPONSE']._serialized_start=570
@@ -162,6 +166,12 @@ if not _descriptor._USE_C_DESCRIPTORS:
162
166
  _globals['_DELETETUNINGDRAFTRESPONSE']._serialized_end=9434
163
167
  _globals['_TUNEDRAFTREQUEST']._serialized_start=9436
164
168
  _globals['_TUNEDRAFTREQUEST']._serialized_end=9484
165
- _globals['_TUNINGSERVICE']._serialized_start=9487
166
- _globals['_TUNINGSERVICE']._serialized_end=10776
169
+ _globals['_ARCHIVETUNINGREQUEST']._serialized_start=9486
170
+ _globals['_ARCHIVETUNINGREQUEST']._serialized_end=9538
171
+ _globals['_ARCHIVETUNINGMETADATA']._serialized_start=9540
172
+ _globals['_ARCHIVETUNINGMETADATA']._serialized_end=9563
173
+ _globals['_ARCHIVETUNINGRESPONSE']._serialized_start=9565
174
+ _globals['_ARCHIVETUNINGRESPONSE']._serialized_end=9612
175
+ _globals['_TUNINGSERVICE']._serialized_start=9615
176
+ _globals['_TUNINGSERVICE']._serialized_end=11052
167
177
  # @@protoc_insertion_point(module_scope)
@@ -1055,3 +1055,43 @@ class TuneDraftRequest(google.protobuf.message.Message):
1055
1055
  def ClearField(self, field_name: typing.Literal["tuning_task_id", b"tuning_task_id"]) -> None: ...
1056
1056
 
1057
1057
  global___TuneDraftRequest = TuneDraftRequest
1058
+
1059
+ @typing.final
1060
+ class ArchiveTuningRequest(google.protobuf.message.Message):
1061
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1062
+
1063
+ TUNING_TASK_ID_FIELD_NUMBER: builtins.int
1064
+ tuning_task_id: builtins.str
1065
+ def __init__(
1066
+ self,
1067
+ *,
1068
+ tuning_task_id: builtins.str = ...,
1069
+ ) -> None: ...
1070
+ def ClearField(self, field_name: typing.Literal["tuning_task_id", b"tuning_task_id"]) -> None: ...
1071
+
1072
+ global___ArchiveTuningRequest = ArchiveTuningRequest
1073
+
1074
+ @typing.final
1075
+ class ArchiveTuningMetadata(google.protobuf.message.Message):
1076
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1077
+
1078
+ def __init__(
1079
+ self,
1080
+ ) -> None: ...
1081
+
1082
+ global___ArchiveTuningMetadata = ArchiveTuningMetadata
1083
+
1084
+ @typing.final
1085
+ class ArchiveTuningResponse(google.protobuf.message.Message):
1086
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1087
+
1088
+ TUNING_TASK_ID_FIELD_NUMBER: builtins.int
1089
+ tuning_task_id: builtins.str
1090
+ def __init__(
1091
+ self,
1092
+ *,
1093
+ tuning_task_id: builtins.str = ...,
1094
+ ) -> None: ...
1095
+ def ClearField(self, field_name: typing.Literal["tuning_task_id", b"tuning_task_id"]) -> None: ...
1096
+
1097
+ global___ArchiveTuningResponse = ArchiveTuningResponse