qwak-core 0.4.271__py3-none-any.whl → 0.4.273__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 (71) hide show
  1. _qwak_proto/qwak/model_group/model_group_repository_details_pb2.py +86 -0
  2. _qwak_proto/qwak/model_group/model_group_repository_details_pb2.pyi +107 -0
  3. _qwak_proto/qwak/model_group/model_group_repository_details_pb2_grpc.py +4 -0
  4. _qwak_proto/qwak/models/models_pb2.py +102 -81
  5. _qwak_proto/qwak/models/models_pb2.pyi +57 -0
  6. _qwak_proto/qwak/models/models_pb2_grpc.py +34 -0
  7. _qwak_proto/qwak/models/models_query_pb2.py +77 -0
  8. _qwak_proto/qwak/models/models_query_pb2.pyi +157 -0
  9. _qwak_proto/qwak/models/models_query_pb2_grpc.py +4 -0
  10. frogml_storage/__init__.py +1 -0
  11. frogml_storage/artifactory/__init__.py +1 -0
  12. frogml_storage/artifactory/_artifactory_api.py +315 -0
  13. frogml_storage/authentication/login/__init__.py +1 -0
  14. frogml_storage/authentication/login/_login_cli.py +239 -0
  15. frogml_storage/authentication/login/_login_command.py +74 -0
  16. frogml_storage/authentication/models/__init__.py +3 -0
  17. frogml_storage/authentication/models/_auth.py +24 -0
  18. frogml_storage/authentication/models/_auth_config.py +70 -0
  19. frogml_storage/authentication/models/_login.py +22 -0
  20. frogml_storage/authentication/utils/__init__.py +17 -0
  21. frogml_storage/authentication/utils/_authentication_utils.py +281 -0
  22. frogml_storage/authentication/utils/_login_checks_utils.py +114 -0
  23. frogml_storage/base_storage.py +140 -0
  24. frogml_storage/constants.py +56 -0
  25. frogml_storage/exceptions/checksum_verification_error.py +3 -0
  26. frogml_storage/exceptions/validation_error.py +4 -0
  27. frogml_storage/frog_ml.py +668 -0
  28. frogml_storage/http/__init__.py +1 -0
  29. frogml_storage/http/http_client.py +83 -0
  30. frogml_storage/logging/__init__.py +1 -0
  31. frogml_storage/logging/_log_config.py +45 -0
  32. frogml_storage/logging/log_utils.py +21 -0
  33. frogml_storage/models/__init__.py +1 -0
  34. frogml_storage/models/_download_context.py +54 -0
  35. frogml_storage/models/dataset_manifest.py +13 -0
  36. frogml_storage/models/entity_manifest.py +93 -0
  37. frogml_storage/models/frogml_dataset_version.py +21 -0
  38. frogml_storage/models/frogml_entity_type_info.py +50 -0
  39. frogml_storage/models/frogml_entity_version.py +34 -0
  40. frogml_storage/models/frogml_model_version.py +21 -0
  41. frogml_storage/models/model_manifest.py +60 -0
  42. frogml_storage/models/serialization_metadata.py +15 -0
  43. frogml_storage/utils/__init__.py +12 -0
  44. frogml_storage/utils/_environment.py +21 -0
  45. frogml_storage/utils/_input_checks_utility.py +104 -0
  46. frogml_storage/utils/_storage_utils.py +15 -0
  47. frogml_storage/utils/_url_utils.py +27 -0
  48. qwak/__init__.py +1 -1
  49. qwak/clients/instance_template/client.py +6 -4
  50. qwak/clients/prompt_manager/model_descriptor_mapper.py +21 -19
  51. qwak/feature_store/_common/artifact_utils.py +3 -3
  52. qwak/feature_store/data_sources/base.py +4 -4
  53. qwak/feature_store/data_sources/batch/athena.py +3 -3
  54. qwak/feature_store/feature_sets/streaming.py +3 -3
  55. qwak/feature_store/feature_sets/streaming_backfill.py +1 -1
  56. qwak/feature_store/online/client.py +6 -6
  57. qwak/feature_store/sinks/streaming/factory.py +1 -1
  58. qwak/inner/build_logic/phases/phase_010_fetch_model/fetch_strategy_manager/strategy/git/git_strategy.py +3 -3
  59. qwak/inner/di_configuration/account.py +23 -24
  60. qwak/inner/tool/auth.py +2 -2
  61. qwak/llmops/provider/openai/provider.py +3 -3
  62. qwak/model/tools/adapters/output.py +1 -1
  63. qwak/model/utils/feature_utils.py +12 -8
  64. qwak/model_loggers/artifact_logger.py +7 -7
  65. qwak/tools/logger/logger.py +1 -1
  66. qwak_core-0.4.273.dist-info/METADATA +415 -0
  67. {qwak_core-0.4.271.dist-info → qwak_core-0.4.273.dist-info}/RECORD +68 -26
  68. _qwak_proto/__init__.py +0 -0
  69. _qwak_proto/qwak/__init__.py +0 -0
  70. qwak_core-0.4.271.dist-info/METADATA +0 -53
  71. {qwak_core-0.4.271.dist-info → qwak_core-0.4.273.dist-info}/WHEEL +0 -0
@@ -0,0 +1,86 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: qwak/model_group/model_group_repository_details.proto
4
+ """Generated protocol buffer code."""
5
+ from google.protobuf import descriptor as _descriptor
6
+ from google.protobuf import descriptor_pool as _descriptor_pool
7
+ from google.protobuf import message as _message
8
+ from google.protobuf import reflection as _reflection
9
+ from google.protobuf import symbol_database as _symbol_database
10
+ # @@protoc_insertion_point(imports)
11
+
12
+ _sym_db = _symbol_database.Default()
13
+
14
+
15
+ from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
16
+
17
+
18
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n5qwak/model_group/model_group_repository_details.proto\x12\x1cqwak.model_groups.management\x1a\x1fgoogle/protobuf/timestamp.proto\"r\n\x11RepositoryDetails\x12\x45\n\x0frepository_type\x18\x01 \x01(\x0b\x32,.qwak.model_groups.management.RepositoryType\x12\x16\n\x0erepository_key\x18\x02 \x01(\t\"\x12\n\x10\x44ockerRepository\"\x13\n\x11\x44\x61tasetRepository\"\x14\n\x12\x41rtifactRepository\"\x17\n\x15HuggingFaceRepository\"\xdd\x02\n\x0eRepositoryType\x12K\n\x11\x64ocker_repository\x18\x01 \x01(\x0b\x32..qwak.model_groups.management.DockerRepositoryH\x00\x12M\n\x12\x64\x61taset_repository\x18\x02 \x01(\x0b\x32/.qwak.model_groups.management.DatasetRepositoryH\x00\x12O\n\x13\x61rtifact_repository\x18\x03 \x01(\x0b\x32\x30.qwak.model_groups.management.ArtifactRepositoryH\x00\x12V\n\x17hugging_face_repository\x18\x04 \x01(\x0b\x32\x33.qwak.model_groups.management.HuggingFaceRepositoryH\x00\x42\x06\n\x04typeBN\n&com.qwak.ai.management.model.group.apiB\"ModelGroupRepositoriesDetailsProtoP\x01\x62\x06proto3')
19
+
20
+
21
+
22
+ _REPOSITORYDETAILS = DESCRIPTOR.message_types_by_name['RepositoryDetails']
23
+ _DOCKERREPOSITORY = DESCRIPTOR.message_types_by_name['DockerRepository']
24
+ _DATASETREPOSITORY = DESCRIPTOR.message_types_by_name['DatasetRepository']
25
+ _ARTIFACTREPOSITORY = DESCRIPTOR.message_types_by_name['ArtifactRepository']
26
+ _HUGGINGFACEREPOSITORY = DESCRIPTOR.message_types_by_name['HuggingFaceRepository']
27
+ _REPOSITORYTYPE = DESCRIPTOR.message_types_by_name['RepositoryType']
28
+ RepositoryDetails = _reflection.GeneratedProtocolMessageType('RepositoryDetails', (_message.Message,), {
29
+ 'DESCRIPTOR' : _REPOSITORYDETAILS,
30
+ '__module__' : 'qwak.model_group.model_group_repository_details_pb2'
31
+ # @@protoc_insertion_point(class_scope:qwak.model_groups.management.RepositoryDetails)
32
+ })
33
+ _sym_db.RegisterMessage(RepositoryDetails)
34
+
35
+ DockerRepository = _reflection.GeneratedProtocolMessageType('DockerRepository', (_message.Message,), {
36
+ 'DESCRIPTOR' : _DOCKERREPOSITORY,
37
+ '__module__' : 'qwak.model_group.model_group_repository_details_pb2'
38
+ # @@protoc_insertion_point(class_scope:qwak.model_groups.management.DockerRepository)
39
+ })
40
+ _sym_db.RegisterMessage(DockerRepository)
41
+
42
+ DatasetRepository = _reflection.GeneratedProtocolMessageType('DatasetRepository', (_message.Message,), {
43
+ 'DESCRIPTOR' : _DATASETREPOSITORY,
44
+ '__module__' : 'qwak.model_group.model_group_repository_details_pb2'
45
+ # @@protoc_insertion_point(class_scope:qwak.model_groups.management.DatasetRepository)
46
+ })
47
+ _sym_db.RegisterMessage(DatasetRepository)
48
+
49
+ ArtifactRepository = _reflection.GeneratedProtocolMessageType('ArtifactRepository', (_message.Message,), {
50
+ 'DESCRIPTOR' : _ARTIFACTREPOSITORY,
51
+ '__module__' : 'qwak.model_group.model_group_repository_details_pb2'
52
+ # @@protoc_insertion_point(class_scope:qwak.model_groups.management.ArtifactRepository)
53
+ })
54
+ _sym_db.RegisterMessage(ArtifactRepository)
55
+
56
+ HuggingFaceRepository = _reflection.GeneratedProtocolMessageType('HuggingFaceRepository', (_message.Message,), {
57
+ 'DESCRIPTOR' : _HUGGINGFACEREPOSITORY,
58
+ '__module__' : 'qwak.model_group.model_group_repository_details_pb2'
59
+ # @@protoc_insertion_point(class_scope:qwak.model_groups.management.HuggingFaceRepository)
60
+ })
61
+ _sym_db.RegisterMessage(HuggingFaceRepository)
62
+
63
+ RepositoryType = _reflection.GeneratedProtocolMessageType('RepositoryType', (_message.Message,), {
64
+ 'DESCRIPTOR' : _REPOSITORYTYPE,
65
+ '__module__' : 'qwak.model_group.model_group_repository_details_pb2'
66
+ # @@protoc_insertion_point(class_scope:qwak.model_groups.management.RepositoryType)
67
+ })
68
+ _sym_db.RegisterMessage(RepositoryType)
69
+
70
+ if _descriptor._USE_C_DESCRIPTORS == False:
71
+
72
+ DESCRIPTOR._options = None
73
+ DESCRIPTOR._serialized_options = b'\n&com.qwak.ai.management.model.group.apiB\"ModelGroupRepositoriesDetailsProtoP\001'
74
+ _REPOSITORYDETAILS._serialized_start=120
75
+ _REPOSITORYDETAILS._serialized_end=234
76
+ _DOCKERREPOSITORY._serialized_start=236
77
+ _DOCKERREPOSITORY._serialized_end=254
78
+ _DATASETREPOSITORY._serialized_start=256
79
+ _DATASETREPOSITORY._serialized_end=275
80
+ _ARTIFACTREPOSITORY._serialized_start=277
81
+ _ARTIFACTREPOSITORY._serialized_end=297
82
+ _HUGGINGFACEREPOSITORY._serialized_start=299
83
+ _HUGGINGFACEREPOSITORY._serialized_end=322
84
+ _REPOSITORYTYPE._serialized_start=325
85
+ _REPOSITORYTYPE._serialized_end=674
86
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,107 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+ import builtins
6
+ import google.protobuf.descriptor
7
+ import google.protobuf.message
8
+ import sys
9
+
10
+ if sys.version_info >= (3, 8):
11
+ import typing as typing_extensions
12
+ else:
13
+ import typing_extensions
14
+
15
+ DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
16
+
17
+ class RepositoryDetails(google.protobuf.message.Message):
18
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
19
+
20
+ REPOSITORY_TYPE_FIELD_NUMBER: builtins.int
21
+ REPOSITORY_KEY_FIELD_NUMBER: builtins.int
22
+ @property
23
+ def repository_type(self) -> global___RepositoryType:
24
+ """The repository type"""
25
+ repository_key: builtins.str
26
+ """The repository key is the full repository path, e.g. <jfrog_project_key><model>-docker-local"""
27
+ def __init__(
28
+ self,
29
+ *,
30
+ repository_type: global___RepositoryType | None = ...,
31
+ repository_key: builtins.str = ...,
32
+ ) -> None: ...
33
+ def HasField(self, field_name: typing_extensions.Literal["repository_type", b"repository_type"]) -> builtins.bool: ...
34
+ def ClearField(self, field_name: typing_extensions.Literal["repository_key", b"repository_key", "repository_type", b"repository_type"]) -> None: ...
35
+
36
+ global___RepositoryDetails = RepositoryDetails
37
+
38
+ class DockerRepository(google.protobuf.message.Message):
39
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
40
+
41
+ def __init__(
42
+ self,
43
+ ) -> None: ...
44
+
45
+ global___DockerRepository = DockerRepository
46
+
47
+ class DatasetRepository(google.protobuf.message.Message):
48
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
49
+
50
+ def __init__(
51
+ self,
52
+ ) -> None: ...
53
+
54
+ global___DatasetRepository = DatasetRepository
55
+
56
+ class ArtifactRepository(google.protobuf.message.Message):
57
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
58
+
59
+ def __init__(
60
+ self,
61
+ ) -> None: ...
62
+
63
+ global___ArtifactRepository = ArtifactRepository
64
+
65
+ class HuggingFaceRepository(google.protobuf.message.Message):
66
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
67
+
68
+ def __init__(
69
+ self,
70
+ ) -> None: ...
71
+
72
+ global___HuggingFaceRepository = HuggingFaceRepository
73
+
74
+ class RepositoryType(google.protobuf.message.Message):
75
+ """The repository type"""
76
+
77
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
78
+
79
+ DOCKER_REPOSITORY_FIELD_NUMBER: builtins.int
80
+ DATASET_REPOSITORY_FIELD_NUMBER: builtins.int
81
+ ARTIFACT_REPOSITORY_FIELD_NUMBER: builtins.int
82
+ HUGGING_FACE_REPOSITORY_FIELD_NUMBER: builtins.int
83
+ @property
84
+ def docker_repository(self) -> global___DockerRepository:
85
+ """Docker repository"""
86
+ @property
87
+ def dataset_repository(self) -> global___DatasetRepository:
88
+ """Dataset repository"""
89
+ @property
90
+ def artifact_repository(self) -> global___ArtifactRepository:
91
+ """Artifact repository"""
92
+ @property
93
+ def hugging_face_repository(self) -> global___HuggingFaceRepository:
94
+ """HuggingFace repository"""
95
+ def __init__(
96
+ self,
97
+ *,
98
+ docker_repository: global___DockerRepository | None = ...,
99
+ dataset_repository: global___DatasetRepository | None = ...,
100
+ artifact_repository: global___ArtifactRepository | None = ...,
101
+ hugging_face_repository: global___HuggingFaceRepository | None = ...,
102
+ ) -> None: ...
103
+ def HasField(self, field_name: typing_extensions.Literal["artifact_repository", b"artifact_repository", "dataset_repository", b"dataset_repository", "docker_repository", b"docker_repository", "hugging_face_repository", b"hugging_face_repository", "type", b"type"]) -> builtins.bool: ...
104
+ def ClearField(self, field_name: typing_extensions.Literal["artifact_repository", b"artifact_repository", "dataset_repository", b"dataset_repository", "docker_repository", b"docker_repository", "hugging_face_repository", b"hugging_face_repository", "type", b"type"]) -> None: ...
105
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["type", b"type"]) -> typing_extensions.Literal["docker_repository", "dataset_repository", "artifact_repository", "hugging_face_repository"] | None: ...
106
+
107
+ global___RepositoryType = RepositoryType
@@ -0,0 +1,4 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+
@@ -16,12 +16,13 @@ _sym_db = _symbol_database.Default()
16
16
  from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
17
17
  from _qwak_proto.qwak.builds import builds_pb2 as qwak_dot_builds_dot_builds__pb2
18
18
  from _qwak_proto.qwak.projects import jfrog_project_spec_pb2 as qwak_dot_projects_dot_jfrog__project__spec__pb2
19
+ from _qwak_proto.qwak.models import models_query_pb2 as qwak_dot_models_dot_models__query__pb2
19
20
  from _qwak_proto.qwak.audience.v1 import audience_pb2 as qwak_dot_audience_dot_v1_dot_audience__pb2
20
21
  from _qwak_proto.qwak.deployment import deployment_pb2 as qwak_dot_deployment_dot_deployment__pb2
21
22
  from _qwak_proto.qwak.build.v1 import build_pb2 as qwak_dot_build_dot_v1_dot_build__pb2
22
23
 
23
24
 
24
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18qwak/models/models.proto\x12\x16qwak.models.management\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x18qwak/builds/builds.proto\x1a&qwak/projects/jfrog_project_spec.proto\x1a\x1fqwak/audience/v1/audience.proto\x1a qwak/deployment/deployment.proto\x1a\x19qwak/build/v1/build.proto\"\x9b\x01\n\x12\x43reateModelRequest\x12\x35\n\nmodel_spec\x18\x01 \x01(\x0b\x32!.qwak.models.management.ModelSpec\x12N\n\x12jfrog_project_spec\x18\x02 \x01(\x0b\x32\x32.qwak.projects.management.ModelRepositoryJFrogSpec\"\'\n\x13\x43reateModelResponse\x12\x10\n\x08model_id\x18\x01 \x01(\t\"\'\n\x11ListModelsRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\"C\n\x12ListModelsResponse\x12-\n\x06models\x18\x01 \x03(\x0b\x32\x1d.qwak.models.management.Model\"I\n\x0fGetModelRequest\x12\x12\n\x08model_id\x18\x01 \x01(\tH\x00\x12\x14\n\nmodel_uuid\x18\x02 \x01(\tH\x00\x42\x0c\n\nidentifier\"@\n\x10GetModelResponse\x12,\n\x05model\x18\x01 \x01(\x0b\x32\x1d.qwak.models.management.Model\":\n\x12\x44\x65leteModelRequest\x12\x10\n\x08model_id\x18\x01 \x01(\t\x12\x12\n\nproject_id\x18\x02 \x01(\t\"\x15\n\x13\x44\x65leteModelResponse\"q\n\x12UpdateModelRequest\x12\x10\n\x08model_id\x18\x01 \x01(\t\x12I\n\x11model_spec_config\x18\x02 \x01(\x0b\x32..qwak.models.management.ModelSpecConfiguration\"L\n\x13UpdateModelResponse\x12\x35\n\nmodel_spec\x18\x01 \x01(\x0b\x32!.qwak.models.management.ModelSpec\"<\n\x13\x43reateBranchRequest\x12\x10\n\x08model_id\x18\x01 \x01(\t\x12\x13\n\x0b\x62ranch_name\x18\x02 \x01(\t\")\n\x14\x43reateBranchResponse\x12\x11\n\tbranch_id\x18\x01 \x01(\t\"(\n\x13\x44\x65leteBranchRequest\x12\x11\n\tbranch_id\x18\x01 \x01(\t\"\x16\n\x14\x44\x65leteBranchResponse\"N\n\x14IsModelExistsRequest\x12\x12\n\x08model_id\x18\x01 \x01(\tH\x00\x12\x14\n\nmodel_uuid\x18\x02 \x01(\tH\x00\x42\x0c\n\nidentifier\"\'\n\x15IsModelExistsResponse\x12\x0e\n\x06\x65xists\x18\x01 \x01(\x08\"\xda\x01\n\tModelSpec\x12\x16\n\x0emodel_named_id\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x14\n\nproject_id\x18\x03 \x01(\tH\x00\x12\x16\n\x0cproject_name\x18\x06 \x01(\tH\x00\x12\x19\n\x11model_description\x18\x04 \x01(\t\x12@\n\x10model_build_type\x18\x05 \x01(\x0b\x32&.qwak.models.management.ModelBuildTypeB\x14\n\x12project_identifier\"\xc7\x02\n\nModelBrief\x12\x10\n\x08model_id\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12.\n\ncreated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x34\n\x10last_modified_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x18\n\x10last_modified_by\x18\x05 \x01(\t\x12\x12\n\ncreated_by\x18\x06 \x01(\t\x12\x19\n\x11model_description\x18\x08 \x01(\t\x12\x12\n\nproject_id\x18\t \x01(\t\x12N\n\x17\x64\x65ployment_model_status\x18\n \x01(\x0e\x32-.qwak.models.management.DeploymentModelStatus\"3\n\x16ModelSpecConfiguration\x12\x19\n\x11model_description\x18\x04 \x01(\t\"\xf4\x04\n\x05Model\x12\x10\n\x08model_id\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12.\n\ncreated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x34\n\x10last_modified_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x18\n\x10last_modified_by\x18\x05 \x01(\t\x12\x12\n\ncreated_by\x18\x06 \x01(\t\x12\x39\n\x0cmodel_status\x18\x07 \x01(\x0e\x32#.qwak.models.management.ModelStatus\x12\x19\n\x11model_description\x18\x08 \x01(\t\x12\x12\n\nproject_id\x18\t \x01(\t\x12\x30\n\x08\x62ranches\x18\n \x03(\x0b\x32\x1e.qwak.models.management.Branch\x12N\n\x17\x64\x65ployment_model_status\x18\x0b \x01(\x0e\x32-.qwak.models.management.DeploymentModelStatus\x12\x0c\n\x04uuid\x18\x0c \x01(\t\x12\x42\n\nmodel_type\x18\r \x01(\x0e\x32..qwak.deployment.management.KubeDeploymentType\x12\x14\n\x0cproject_name\x18\x0e \x01(\t\x12@\n\x10model_build_type\x18\x0f \x01(\x0b\x32&.qwak.models.management.ModelBuildType\x12\x19\n\x11jfrog_project_key\x18\x10 \x01(\t\"\x96\x01\n\x0eModelBuildType\x12\x30\n\x06source\x18\x01 \x01(\x0b\x32\x1e.qwak.models.management.SourceH\x00\x12J\n\x14model_registry_image\x18\x02 \x01(\x0b\x32*.qwak.models.management.ModelRegistryImageH\x00\x42\x06\n\x04type\"\x08\n\x06Source\"3\n\x12ModelRegistryImage\x12\x1d\n\x15last_image_identifier\x18\x01 \x01(\t\"\xeb\x01\n\x06\x42ranch\x12\x11\n\tbranch_id\x18\x01 \x01(\t\x12\x13\n\x0b\x62ranch_name\x18\x02 \x01(\t\x12\x42\n\rbranch_status\x18\x04 \x01(\x0e\x32+.qwak.models.management.Branch.BranchStatus\x12\x10\n\x08model_id\x18\x05 \x01(\t\x12\x1d\n\x11\x64\x65ployed_build_id\x18\x06 \x01(\tB\x02\x18\x01\"D\n\x0c\x42ranchStatus\x12\x0b\n\x07INVALID\x10\x00\x12\n\n\x06\x41\x43TIVE\x10\x03\x12\r\n\tSUSPENDED\x10\x02\x12\x0c\n\x08\x44ISABLED\x10\x01\"B\n\x1bGetDeploymentDetailsRequest\x12\x10\n\x08model_id\x18\x01 \x01(\t\x12\x11\n\tbranch_id\x18\x02 \x01(\t\"e\n\x1cGetDeploymentDetailsResponse\x12\x45\n\x12\x64\x65ployment_details\x18\x01 \x01(\x0b\x32).qwak.models.management.DeploymentDetails\"\x93\x02\n\x11\x44\x65ploymentDetails\x12\x31\n\rlast_deployed\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x10\n\x08\x62uild_id\x18\x02 \x01(\t\x12\x16\n\x0enumber_of_pods\x18\x03 \x01(\x05\x12\x14\n\x0c\x63pu_fraction\x18\x04 \x01(\x02\x12\x15\n\rmemory_amount\x18\x05 \x01(\x05\x12\x38\n\x0cmemory_units\x18\x06 \x01(\x0e\x32\".qwak.models.management.MemoryUnit\x12\x19\n\x11number_of_workers\x18\x07 \x01(\x05\x12\x1f\n\x17http_request_timeout_ms\x18\x08 \x01(\x05\"/\n\x19ListModelsMetadataRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\"[\n\x1aListModelsMetadataResponse\x12=\n\x0emodel_metadata\x18\x01 \x03(\x0b\x32%.qwak.models.management.ModelMetadata\"+\n\x17GetModelMetadataRequest\x12\x10\n\x08model_id\x18\x01 \x01(\t\"Y\n\x18GetModelMetadataResponse\x12=\n\x0emodel_metadata\x18\x01 \x01(\x0b\x32%.qwak.models.management.ModelMetadata\"h\n\x11\x45nvironmentRoutes\x12\x13\n\x0b\x65nvironment\x18\x01 \x01(\t\x12>\n\x0f\x61udience_routes\x18\x02 \x03(\x0b\x32%.qwak.audience.v1.AudienceRoutesEntry\"\xb8\x05\n\rModelMetadata\x12,\n\x05model\x18\x01 \x01(\x0b\x32\x1d.qwak.models.management.Model\x12I\n\x12\x64\x65ployment_details\x18\x02 \x03(\x0b\x32-.qwak.deployment.management.DeploymentDetails\x12r\n\x1e\x61udience_routes_by_environment\x18\x03 \x03(\x0b\x32\x46.qwak.models.management.ModelMetadata.AudienceRoutesByEnvironmentEntryB\x02\x18\x01\x12\x30\n\x05\x62uild\x18\x04 \x03(\x0b\x32\x1d.qwak.builds.management.BuildB\x02\x18\x01\x12}\n&audience_routes_grouped_by_environment\x18\x05 \x03(\x0b\x32M.qwak.models.management.ModelMetadata.AudienceRoutesGroupedByEnvironmentEntry\x12(\n\x06\x62uilds\x18\x06 \x03(\x0b\x32\x18.com.qwak.build.v1.Build\x1ai\n AudienceRoutesByEnvironmentEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x34\n\x05value\x18\x02 \x01(\x0b\x32%.qwak.audience.v1.AudienceRoutesEntry:\x02\x38\x01\x1at\n\'AudienceRoutesGroupedByEnvironmentEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x38\n\x05value\x18\x02 \x01(\x0b\x32).qwak.models.management.EnvironmentRoutes:\x02\x38\x01*O\n\x15\x44\x65ploymentModelStatus\x12\x1d\n\x19\x44\x45PLOYMENT_STATUS_INVALID\x10\x00\x12\n\n\x06ONLINE\x10\x01\x12\x0b\n\x07OFFLINE\x10\x02*C\n\x0bModelStatus\x12\x0b\n\x07INVALID\x10\x00\x12\n\n\x06\x41\x43TIVE\x10\x03\x12\r\n\tSUSPENDED\x10\x02\x12\x0c\n\x08\x44ISABLED\x10\x01*7\n\nMemoryUnit\x12\x17\n\x13MEMORY_UNIT_UNKNOWN\x10\x00\x12\x07\n\x03MIB\x10\x01\x12\x07\n\x03GIB\x10\x02\x32\xe0\t\n\x17ModelsManagementService\x12\x66\n\x0b\x43reateModel\x12*.qwak.models.management.CreateModelRequest\x1a+.qwak.models.management.CreateModelResponse\x12\x63\n\nListModels\x12).qwak.models.management.ListModelsRequest\x1a*.qwak.models.management.ListModelsResponse\x12]\n\x08GetModel\x12\'.qwak.models.management.GetModelRequest\x1a(.qwak.models.management.GetModelResponse\x12\x66\n\x0b\x44\x65leteModel\x12*.qwak.models.management.DeleteModelRequest\x1a+.qwak.models.management.DeleteModelResponse\x12\x66\n\x0bUpdateModel\x12*.qwak.models.management.UpdateModelRequest\x1a+.qwak.models.management.UpdateModelResponse\x12n\n\x0c\x43reateBranch\x12+.qwak.models.management.CreateBranchRequest\x1a,.qwak.models.management.CreateBranchResponse\"\x03\x88\x02\x01\x12n\n\x0c\x44\x65leteBranch\x12+.qwak.models.management.DeleteBranchRequest\x1a,.qwak.models.management.DeleteBranchResponse\"\x03\x88\x02\x01\x12\x86\x01\n\x14GetDeploymentDetails\x12\x33.qwak.models.management.GetDeploymentDetailsRequest\x1a\x34.qwak.models.management.GetDeploymentDetailsResponse\"\x03\x88\x02\x01\x12l\n\rIsModelExists\x12,.qwak.models.management.IsModelExistsRequest\x1a-.qwak.models.management.IsModelExistsResponse\x12{\n\x12ListModelsMetadata\x12\x31.qwak.models.management.ListModelsMetadataRequest\x1a\x32.qwak.models.management.ListModelsMetadataResponse\x12u\n\x10GetModelMetadata\x12/.qwak.models.management.GetModelMetadataRequest\x1a\x30.qwak.models.management.GetModelMetadataResponseB%\n!com.qwak.ai.management.models.apiP\x01\x62\x06proto3')
25
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18qwak/models/models.proto\x12\x16qwak.models.management\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x18qwak/builds/builds.proto\x1a&qwak/projects/jfrog_project_spec.proto\x1a\x1eqwak/models/models_query.proto\x1a\x1fqwak/audience/v1/audience.proto\x1a qwak/deployment/deployment.proto\x1a\x19qwak/build/v1/build.proto\"\x9b\x01\n\x12\x43reateModelRequest\x12\x35\n\nmodel_spec\x18\x01 \x01(\x0b\x32!.qwak.models.management.ModelSpec\x12N\n\x12jfrog_project_spec\x18\x02 \x01(\x0b\x32\x32.qwak.projects.management.ModelRepositoryJFrogSpec\"\'\n\x13\x43reateModelResponse\x12\x10\n\x08model_id\x18\x01 \x01(\t\"\'\n\x11ListModelsRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\"C\n\x12ListModelsResponse\x12-\n\x06models\x18\x01 \x03(\x0b\x32\x1d.qwak.models.management.Model\"\xf0\x01\n\x1aListModelsPaginatedRequest\x12\x13\n\tpage_size\x18\x01 \x01(\x05H\x00\x12\x10\n\x06\x63ursor\x18\x02 \x01(\tH\x01\x12\x39\n\x0bsort_models\x18\x03 \x01(\x0b\x32\".qwak.models.management.SortModelsH\x02\x12\x30\n\x06\x66ilter\x18\x04 \x01(\x0b\x32\x1e.qwak.models.management.FilterH\x03\x42\x0f\n\rpage_size_optB\x0c\n\ncursor_optB\x11\n\x0fsort_models_optB\x0c\n\nfilter_opt\"\x8a\x01\n\x1bListModelsPaginatedResponse\x12-\n\x06models\x18\x01 \x03(\x0b\x32\x1d.qwak.models.management.Model\x12<\n\x08metadata\x18\x02 \x01(\x0b\x32*.qwak.models.management.PaginationMetadata\"I\n\x0fGetModelRequest\x12\x12\n\x08model_id\x18\x01 \x01(\tH\x00\x12\x14\n\nmodel_uuid\x18\x02 \x01(\tH\x00\x42\x0c\n\nidentifier\"@\n\x10GetModelResponse\x12,\n\x05model\x18\x01 \x01(\x0b\x32\x1d.qwak.models.management.Model\":\n\x12\x44\x65leteModelRequest\x12\x10\n\x08model_id\x18\x01 \x01(\t\x12\x12\n\nproject_id\x18\x02 \x01(\t\"\x15\n\x13\x44\x65leteModelResponse\"q\n\x12UpdateModelRequest\x12\x10\n\x08model_id\x18\x01 \x01(\t\x12I\n\x11model_spec_config\x18\x02 \x01(\x0b\x32..qwak.models.management.ModelSpecConfiguration\"L\n\x13UpdateModelResponse\x12\x35\n\nmodel_spec\x18\x01 \x01(\x0b\x32!.qwak.models.management.ModelSpec\"<\n\x13\x43reateBranchRequest\x12\x10\n\x08model_id\x18\x01 \x01(\t\x12\x13\n\x0b\x62ranch_name\x18\x02 \x01(\t\")\n\x14\x43reateBranchResponse\x12\x11\n\tbranch_id\x18\x01 \x01(\t\"(\n\x13\x44\x65leteBranchRequest\x12\x11\n\tbranch_id\x18\x01 \x01(\t\"\x16\n\x14\x44\x65leteBranchResponse\"N\n\x14IsModelExistsRequest\x12\x12\n\x08model_id\x18\x01 \x01(\tH\x00\x12\x14\n\nmodel_uuid\x18\x02 \x01(\tH\x00\x42\x0c\n\nidentifier\"\'\n\x15IsModelExistsResponse\x12\x0e\n\x06\x65xists\x18\x01 \x01(\x08\"\xda\x01\n\tModelSpec\x12\x16\n\x0emodel_named_id\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x14\n\nproject_id\x18\x03 \x01(\tH\x00\x12\x16\n\x0cproject_name\x18\x06 \x01(\tH\x00\x12\x19\n\x11model_description\x18\x04 \x01(\t\x12@\n\x10model_build_type\x18\x05 \x01(\x0b\x32&.qwak.models.management.ModelBuildTypeB\x14\n\x12project_identifier\"\xc7\x02\n\nModelBrief\x12\x10\n\x08model_id\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12.\n\ncreated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x34\n\x10last_modified_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x18\n\x10last_modified_by\x18\x05 \x01(\t\x12\x12\n\ncreated_by\x18\x06 \x01(\t\x12\x19\n\x11model_description\x18\x08 \x01(\t\x12\x12\n\nproject_id\x18\t \x01(\t\x12N\n\x17\x64\x65ployment_model_status\x18\n \x01(\x0e\x32-.qwak.models.management.DeploymentModelStatus\"3\n\x16ModelSpecConfiguration\x12\x19\n\x11model_description\x18\x04 \x01(\t\"\xf4\x04\n\x05Model\x12\x10\n\x08model_id\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12.\n\ncreated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x34\n\x10last_modified_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x18\n\x10last_modified_by\x18\x05 \x01(\t\x12\x12\n\ncreated_by\x18\x06 \x01(\t\x12\x39\n\x0cmodel_status\x18\x07 \x01(\x0e\x32#.qwak.models.management.ModelStatus\x12\x19\n\x11model_description\x18\x08 \x01(\t\x12\x12\n\nproject_id\x18\t \x01(\t\x12\x30\n\x08\x62ranches\x18\n \x03(\x0b\x32\x1e.qwak.models.management.Branch\x12N\n\x17\x64\x65ployment_model_status\x18\x0b \x01(\x0e\x32-.qwak.models.management.DeploymentModelStatus\x12\x0c\n\x04uuid\x18\x0c \x01(\t\x12\x42\n\nmodel_type\x18\r \x01(\x0e\x32..qwak.deployment.management.KubeDeploymentType\x12\x14\n\x0cproject_name\x18\x0e \x01(\t\x12@\n\x10model_build_type\x18\x0f \x01(\x0b\x32&.qwak.models.management.ModelBuildType\x12\x19\n\x11jfrog_project_key\x18\x10 \x01(\t\"\x96\x01\n\x0eModelBuildType\x12\x30\n\x06source\x18\x01 \x01(\x0b\x32\x1e.qwak.models.management.SourceH\x00\x12J\n\x14model_registry_image\x18\x02 \x01(\x0b\x32*.qwak.models.management.ModelRegistryImageH\x00\x42\x06\n\x04type\"\x08\n\x06Source\"3\n\x12ModelRegistryImage\x12\x1d\n\x15last_image_identifier\x18\x01 \x01(\t\"\xeb\x01\n\x06\x42ranch\x12\x11\n\tbranch_id\x18\x01 \x01(\t\x12\x13\n\x0b\x62ranch_name\x18\x02 \x01(\t\x12\x42\n\rbranch_status\x18\x04 \x01(\x0e\x32+.qwak.models.management.Branch.BranchStatus\x12\x10\n\x08model_id\x18\x05 \x01(\t\x12\x1d\n\x11\x64\x65ployed_build_id\x18\x06 \x01(\tB\x02\x18\x01\"D\n\x0c\x42ranchStatus\x12\x0b\n\x07INVALID\x10\x00\x12\n\n\x06\x41\x43TIVE\x10\x03\x12\r\n\tSUSPENDED\x10\x02\x12\x0c\n\x08\x44ISABLED\x10\x01\"B\n\x1bGetDeploymentDetailsRequest\x12\x10\n\x08model_id\x18\x01 \x01(\t\x12\x11\n\tbranch_id\x18\x02 \x01(\t\"e\n\x1cGetDeploymentDetailsResponse\x12\x45\n\x12\x64\x65ployment_details\x18\x01 \x01(\x0b\x32).qwak.models.management.DeploymentDetails\"\x93\x02\n\x11\x44\x65ploymentDetails\x12\x31\n\rlast_deployed\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x10\n\x08\x62uild_id\x18\x02 \x01(\t\x12\x16\n\x0enumber_of_pods\x18\x03 \x01(\x05\x12\x14\n\x0c\x63pu_fraction\x18\x04 \x01(\x02\x12\x15\n\rmemory_amount\x18\x05 \x01(\x05\x12\x38\n\x0cmemory_units\x18\x06 \x01(\x0e\x32\".qwak.models.management.MemoryUnit\x12\x19\n\x11number_of_workers\x18\x07 \x01(\x05\x12\x1f\n\x17http_request_timeout_ms\x18\x08 \x01(\x05\"/\n\x19ListModelsMetadataRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\"[\n\x1aListModelsMetadataResponse\x12=\n\x0emodel_metadata\x18\x01 \x03(\x0b\x32%.qwak.models.management.ModelMetadata\"+\n\x17GetModelMetadataRequest\x12\x10\n\x08model_id\x18\x01 \x01(\t\"Y\n\x18GetModelMetadataResponse\x12=\n\x0emodel_metadata\x18\x01 \x01(\x0b\x32%.qwak.models.management.ModelMetadata\"h\n\x11\x45nvironmentRoutes\x12\x13\n\x0b\x65nvironment\x18\x01 \x01(\t\x12>\n\x0f\x61udience_routes\x18\x02 \x03(\x0b\x32%.qwak.audience.v1.AudienceRoutesEntry\"\xb8\x05\n\rModelMetadata\x12,\n\x05model\x18\x01 \x01(\x0b\x32\x1d.qwak.models.management.Model\x12I\n\x12\x64\x65ployment_details\x18\x02 \x03(\x0b\x32-.qwak.deployment.management.DeploymentDetails\x12r\n\x1e\x61udience_routes_by_environment\x18\x03 \x03(\x0b\x32\x46.qwak.models.management.ModelMetadata.AudienceRoutesByEnvironmentEntryB\x02\x18\x01\x12\x30\n\x05\x62uild\x18\x04 \x03(\x0b\x32\x1d.qwak.builds.management.BuildB\x02\x18\x01\x12}\n&audience_routes_grouped_by_environment\x18\x05 \x03(\x0b\x32M.qwak.models.management.ModelMetadata.AudienceRoutesGroupedByEnvironmentEntry\x12(\n\x06\x62uilds\x18\x06 \x03(\x0b\x32\x18.com.qwak.build.v1.Build\x1ai\n AudienceRoutesByEnvironmentEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x34\n\x05value\x18\x02 \x01(\x0b\x32%.qwak.audience.v1.AudienceRoutesEntry:\x02\x38\x01\x1at\n\'AudienceRoutesGroupedByEnvironmentEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x38\n\x05value\x18\x02 \x01(\x0b\x32).qwak.models.management.EnvironmentRoutes:\x02\x38\x01*O\n\x15\x44\x65ploymentModelStatus\x12\x1d\n\x19\x44\x45PLOYMENT_STATUS_INVALID\x10\x00\x12\n\n\x06ONLINE\x10\x01\x12\x0b\n\x07OFFLINE\x10\x02*C\n\x0bModelStatus\x12\x0b\n\x07INVALID\x10\x00\x12\n\n\x06\x41\x43TIVE\x10\x03\x12\r\n\tSUSPENDED\x10\x02\x12\x0c\n\x08\x44ISABLED\x10\x01*7\n\nMemoryUnit\x12\x17\n\x13MEMORY_UNIT_UNKNOWN\x10\x00\x12\x07\n\x03MIB\x10\x01\x12\x07\n\x03GIB\x10\x02\x32\xe0\n\n\x17ModelsManagementService\x12\x66\n\x0b\x43reateModel\x12*.qwak.models.management.CreateModelRequest\x1a+.qwak.models.management.CreateModelResponse\x12\x63\n\nListModels\x12).qwak.models.management.ListModelsRequest\x1a*.qwak.models.management.ListModelsResponse\x12~\n\x13ListModelsPaginated\x12\x32.qwak.models.management.ListModelsPaginatedRequest\x1a\x33.qwak.models.management.ListModelsPaginatedResponse\x12]\n\x08GetModel\x12\'.qwak.models.management.GetModelRequest\x1a(.qwak.models.management.GetModelResponse\x12\x66\n\x0b\x44\x65leteModel\x12*.qwak.models.management.DeleteModelRequest\x1a+.qwak.models.management.DeleteModelResponse\x12\x66\n\x0bUpdateModel\x12*.qwak.models.management.UpdateModelRequest\x1a+.qwak.models.management.UpdateModelResponse\x12n\n\x0c\x43reateBranch\x12+.qwak.models.management.CreateBranchRequest\x1a,.qwak.models.management.CreateBranchResponse\"\x03\x88\x02\x01\x12n\n\x0c\x44\x65leteBranch\x12+.qwak.models.management.DeleteBranchRequest\x1a,.qwak.models.management.DeleteBranchResponse\"\x03\x88\x02\x01\x12\x86\x01\n\x14GetDeploymentDetails\x12\x33.qwak.models.management.GetDeploymentDetailsRequest\x1a\x34.qwak.models.management.GetDeploymentDetailsResponse\"\x03\x88\x02\x01\x12l\n\rIsModelExists\x12,.qwak.models.management.IsModelExistsRequest\x1a-.qwak.models.management.IsModelExistsResponse\x12{\n\x12ListModelsMetadata\x12\x31.qwak.models.management.ListModelsMetadataRequest\x1a\x32.qwak.models.management.ListModelsMetadataResponse\x12u\n\x10GetModelMetadata\x12/.qwak.models.management.GetModelMetadataRequest\x1a\x30.qwak.models.management.GetModelMetadataResponseB%\n!com.qwak.ai.management.models.apiP\x01\x62\x06proto3')
25
26
 
26
27
  _DEPLOYMENTMODELSTATUS = DESCRIPTOR.enum_types_by_name['DeploymentModelStatus']
27
28
  DeploymentModelStatus = enum_type_wrapper.EnumTypeWrapper(_DEPLOYMENTMODELSTATUS)
@@ -45,6 +46,8 @@ _CREATEMODELREQUEST = DESCRIPTOR.message_types_by_name['CreateModelRequest']
45
46
  _CREATEMODELRESPONSE = DESCRIPTOR.message_types_by_name['CreateModelResponse']
46
47
  _LISTMODELSREQUEST = DESCRIPTOR.message_types_by_name['ListModelsRequest']
47
48
  _LISTMODELSRESPONSE = DESCRIPTOR.message_types_by_name['ListModelsResponse']
49
+ _LISTMODELSPAGINATEDREQUEST = DESCRIPTOR.message_types_by_name['ListModelsPaginatedRequest']
50
+ _LISTMODELSPAGINATEDRESPONSE = DESCRIPTOR.message_types_by_name['ListModelsPaginatedResponse']
48
51
  _GETMODELREQUEST = DESCRIPTOR.message_types_by_name['GetModelRequest']
49
52
  _GETMODELRESPONSE = DESCRIPTOR.message_types_by_name['GetModelResponse']
50
53
  _DELETEMODELREQUEST = DESCRIPTOR.message_types_by_name['DeleteModelRequest']
@@ -105,6 +108,20 @@ ListModelsResponse = _reflection.GeneratedProtocolMessageType('ListModelsRespons
105
108
  })
106
109
  _sym_db.RegisterMessage(ListModelsResponse)
107
110
 
111
+ ListModelsPaginatedRequest = _reflection.GeneratedProtocolMessageType('ListModelsPaginatedRequest', (_message.Message,), {
112
+ 'DESCRIPTOR' : _LISTMODELSPAGINATEDREQUEST,
113
+ '__module__' : 'qwak.models.models_pb2'
114
+ # @@protoc_insertion_point(class_scope:qwak.models.management.ListModelsPaginatedRequest)
115
+ })
116
+ _sym_db.RegisterMessage(ListModelsPaginatedRequest)
117
+
118
+ ListModelsPaginatedResponse = _reflection.GeneratedProtocolMessageType('ListModelsPaginatedResponse', (_message.Message,), {
119
+ 'DESCRIPTOR' : _LISTMODELSPAGINATEDRESPONSE,
120
+ '__module__' : 'qwak.models.models_pb2'
121
+ # @@protoc_insertion_point(class_scope:qwak.models.management.ListModelsPaginatedResponse)
122
+ })
123
+ _sym_db.RegisterMessage(ListModelsPaginatedResponse)
124
+
108
125
  GetModelRequest = _reflection.GeneratedProtocolMessageType('GetModelRequest', (_message.Message,), {
109
126
  'DESCRIPTOR' : _GETMODELREQUEST,
110
127
  '__module__' : 'qwak.models.models_pb2'
@@ -345,84 +362,88 @@ if _descriptor._USE_C_DESCRIPTORS == False:
345
362
  _MODELSMANAGEMENTSERVICE.methods_by_name['DeleteBranch']._serialized_options = b'\210\002\001'
346
363
  _MODELSMANAGEMENTSERVICE.methods_by_name['GetDeploymentDetails']._options = None
347
364
  _MODELSMANAGEMENTSERVICE.methods_by_name['GetDeploymentDetails']._serialized_options = b'\210\002\001'
348
- _DEPLOYMENTMODELSTATUS._serialized_start=4484
349
- _DEPLOYMENTMODELSTATUS._serialized_end=4563
350
- _MODELSTATUS._serialized_start=4565
351
- _MODELSTATUS._serialized_end=4632
352
- _MEMORYUNIT._serialized_start=4634
353
- _MEMORYUNIT._serialized_end=4689
354
- _CREATEMODELREQUEST._serialized_start=246
355
- _CREATEMODELREQUEST._serialized_end=401
356
- _CREATEMODELRESPONSE._serialized_start=403
357
- _CREATEMODELRESPONSE._serialized_end=442
358
- _LISTMODELSREQUEST._serialized_start=444
359
- _LISTMODELSREQUEST._serialized_end=483
360
- _LISTMODELSRESPONSE._serialized_start=485
361
- _LISTMODELSRESPONSE._serialized_end=552
362
- _GETMODELREQUEST._serialized_start=554
363
- _GETMODELREQUEST._serialized_end=627
364
- _GETMODELRESPONSE._serialized_start=629
365
- _GETMODELRESPONSE._serialized_end=693
366
- _DELETEMODELREQUEST._serialized_start=695
367
- _DELETEMODELREQUEST._serialized_end=753
368
- _DELETEMODELRESPONSE._serialized_start=755
369
- _DELETEMODELRESPONSE._serialized_end=776
370
- _UPDATEMODELREQUEST._serialized_start=778
371
- _UPDATEMODELREQUEST._serialized_end=891
372
- _UPDATEMODELRESPONSE._serialized_start=893
373
- _UPDATEMODELRESPONSE._serialized_end=969
374
- _CREATEBRANCHREQUEST._serialized_start=971
375
- _CREATEBRANCHREQUEST._serialized_end=1031
376
- _CREATEBRANCHRESPONSE._serialized_start=1033
377
- _CREATEBRANCHRESPONSE._serialized_end=1074
378
- _DELETEBRANCHREQUEST._serialized_start=1076
379
- _DELETEBRANCHREQUEST._serialized_end=1116
380
- _DELETEBRANCHRESPONSE._serialized_start=1118
381
- _DELETEBRANCHRESPONSE._serialized_end=1140
382
- _ISMODELEXISTSREQUEST._serialized_start=1142
383
- _ISMODELEXISTSREQUEST._serialized_end=1220
384
- _ISMODELEXISTSRESPONSE._serialized_start=1222
385
- _ISMODELEXISTSRESPONSE._serialized_end=1261
386
- _MODELSPEC._serialized_start=1264
387
- _MODELSPEC._serialized_end=1482
388
- _MODELBRIEF._serialized_start=1485
389
- _MODELBRIEF._serialized_end=1812
390
- _MODELSPECCONFIGURATION._serialized_start=1814
391
- _MODELSPECCONFIGURATION._serialized_end=1865
392
- _MODEL._serialized_start=1868
393
- _MODEL._serialized_end=2496
394
- _MODELBUILDTYPE._serialized_start=2499
395
- _MODELBUILDTYPE._serialized_end=2649
396
- _SOURCE._serialized_start=2651
397
- _SOURCE._serialized_end=2659
398
- _MODELREGISTRYIMAGE._serialized_start=2661
399
- _MODELREGISTRYIMAGE._serialized_end=2712
400
- _BRANCH._serialized_start=2715
401
- _BRANCH._serialized_end=2950
402
- _BRANCH_BRANCHSTATUS._serialized_start=2882
403
- _BRANCH_BRANCHSTATUS._serialized_end=2950
404
- _GETDEPLOYMENTDETAILSREQUEST._serialized_start=2952
405
- _GETDEPLOYMENTDETAILSREQUEST._serialized_end=3018
406
- _GETDEPLOYMENTDETAILSRESPONSE._serialized_start=3020
407
- _GETDEPLOYMENTDETAILSRESPONSE._serialized_end=3121
408
- _DEPLOYMENTDETAILS._serialized_start=3124
409
- _DEPLOYMENTDETAILS._serialized_end=3399
410
- _LISTMODELSMETADATAREQUEST._serialized_start=3401
411
- _LISTMODELSMETADATAREQUEST._serialized_end=3448
412
- _LISTMODELSMETADATARESPONSE._serialized_start=3450
413
- _LISTMODELSMETADATARESPONSE._serialized_end=3541
414
- _GETMODELMETADATAREQUEST._serialized_start=3543
415
- _GETMODELMETADATAREQUEST._serialized_end=3586
416
- _GETMODELMETADATARESPONSE._serialized_start=3588
417
- _GETMODELMETADATARESPONSE._serialized_end=3677
418
- _ENVIRONMENTROUTES._serialized_start=3679
419
- _ENVIRONMENTROUTES._serialized_end=3783
420
- _MODELMETADATA._serialized_start=3786
421
- _MODELMETADATA._serialized_end=4482
422
- _MODELMETADATA_AUDIENCEROUTESBYENVIRONMENTENTRY._serialized_start=4259
423
- _MODELMETADATA_AUDIENCEROUTESBYENVIRONMENTENTRY._serialized_end=4364
424
- _MODELMETADATA_AUDIENCEROUTESGROUPEDBYENVIRONMENTENTRY._serialized_start=4366
425
- _MODELMETADATA_AUDIENCEROUTESGROUPEDBYENVIRONMENTENTRY._serialized_end=4482
426
- _MODELSMANAGEMENTSERVICE._serialized_start=4692
427
- _MODELSMANAGEMENTSERVICE._serialized_end=5940
365
+ _DEPLOYMENTMODELSTATUS._serialized_start=4900
366
+ _DEPLOYMENTMODELSTATUS._serialized_end=4979
367
+ _MODELSTATUS._serialized_start=4981
368
+ _MODELSTATUS._serialized_end=5048
369
+ _MEMORYUNIT._serialized_start=5050
370
+ _MEMORYUNIT._serialized_end=5105
371
+ _CREATEMODELREQUEST._serialized_start=278
372
+ _CREATEMODELREQUEST._serialized_end=433
373
+ _CREATEMODELRESPONSE._serialized_start=435
374
+ _CREATEMODELRESPONSE._serialized_end=474
375
+ _LISTMODELSREQUEST._serialized_start=476
376
+ _LISTMODELSREQUEST._serialized_end=515
377
+ _LISTMODELSRESPONSE._serialized_start=517
378
+ _LISTMODELSRESPONSE._serialized_end=584
379
+ _LISTMODELSPAGINATEDREQUEST._serialized_start=587
380
+ _LISTMODELSPAGINATEDREQUEST._serialized_end=827
381
+ _LISTMODELSPAGINATEDRESPONSE._serialized_start=830
382
+ _LISTMODELSPAGINATEDRESPONSE._serialized_end=968
383
+ _GETMODELREQUEST._serialized_start=970
384
+ _GETMODELREQUEST._serialized_end=1043
385
+ _GETMODELRESPONSE._serialized_start=1045
386
+ _GETMODELRESPONSE._serialized_end=1109
387
+ _DELETEMODELREQUEST._serialized_start=1111
388
+ _DELETEMODELREQUEST._serialized_end=1169
389
+ _DELETEMODELRESPONSE._serialized_start=1171
390
+ _DELETEMODELRESPONSE._serialized_end=1192
391
+ _UPDATEMODELREQUEST._serialized_start=1194
392
+ _UPDATEMODELREQUEST._serialized_end=1307
393
+ _UPDATEMODELRESPONSE._serialized_start=1309
394
+ _UPDATEMODELRESPONSE._serialized_end=1385
395
+ _CREATEBRANCHREQUEST._serialized_start=1387
396
+ _CREATEBRANCHREQUEST._serialized_end=1447
397
+ _CREATEBRANCHRESPONSE._serialized_start=1449
398
+ _CREATEBRANCHRESPONSE._serialized_end=1490
399
+ _DELETEBRANCHREQUEST._serialized_start=1492
400
+ _DELETEBRANCHREQUEST._serialized_end=1532
401
+ _DELETEBRANCHRESPONSE._serialized_start=1534
402
+ _DELETEBRANCHRESPONSE._serialized_end=1556
403
+ _ISMODELEXISTSREQUEST._serialized_start=1558
404
+ _ISMODELEXISTSREQUEST._serialized_end=1636
405
+ _ISMODELEXISTSRESPONSE._serialized_start=1638
406
+ _ISMODELEXISTSRESPONSE._serialized_end=1677
407
+ _MODELSPEC._serialized_start=1680
408
+ _MODELSPEC._serialized_end=1898
409
+ _MODELBRIEF._serialized_start=1901
410
+ _MODELBRIEF._serialized_end=2228
411
+ _MODELSPECCONFIGURATION._serialized_start=2230
412
+ _MODELSPECCONFIGURATION._serialized_end=2281
413
+ _MODEL._serialized_start=2284
414
+ _MODEL._serialized_end=2912
415
+ _MODELBUILDTYPE._serialized_start=2915
416
+ _MODELBUILDTYPE._serialized_end=3065
417
+ _SOURCE._serialized_start=3067
418
+ _SOURCE._serialized_end=3075
419
+ _MODELREGISTRYIMAGE._serialized_start=3077
420
+ _MODELREGISTRYIMAGE._serialized_end=3128
421
+ _BRANCH._serialized_start=3131
422
+ _BRANCH._serialized_end=3366
423
+ _BRANCH_BRANCHSTATUS._serialized_start=3298
424
+ _BRANCH_BRANCHSTATUS._serialized_end=3366
425
+ _GETDEPLOYMENTDETAILSREQUEST._serialized_start=3368
426
+ _GETDEPLOYMENTDETAILSREQUEST._serialized_end=3434
427
+ _GETDEPLOYMENTDETAILSRESPONSE._serialized_start=3436
428
+ _GETDEPLOYMENTDETAILSRESPONSE._serialized_end=3537
429
+ _DEPLOYMENTDETAILS._serialized_start=3540
430
+ _DEPLOYMENTDETAILS._serialized_end=3815
431
+ _LISTMODELSMETADATAREQUEST._serialized_start=3817
432
+ _LISTMODELSMETADATAREQUEST._serialized_end=3864
433
+ _LISTMODELSMETADATARESPONSE._serialized_start=3866
434
+ _LISTMODELSMETADATARESPONSE._serialized_end=3957
435
+ _GETMODELMETADATAREQUEST._serialized_start=3959
436
+ _GETMODELMETADATAREQUEST._serialized_end=4002
437
+ _GETMODELMETADATARESPONSE._serialized_start=4004
438
+ _GETMODELMETADATARESPONSE._serialized_end=4093
439
+ _ENVIRONMENTROUTES._serialized_start=4095
440
+ _ENVIRONMENTROUTES._serialized_end=4199
441
+ _MODELMETADATA._serialized_start=4202
442
+ _MODELMETADATA._serialized_end=4898
443
+ _MODELMETADATA_AUDIENCEROUTESBYENVIRONMENTENTRY._serialized_start=4675
444
+ _MODELMETADATA_AUDIENCEROUTESBYENVIRONMENTENTRY._serialized_end=4780
445
+ _MODELMETADATA_AUDIENCEROUTESGROUPEDBYENVIRONMENTENTRY._serialized_start=4782
446
+ _MODELMETADATA_AUDIENCEROUTESGROUPEDBYENVIRONMENTENTRY._serialized_end=4898
447
+ _MODELSMANAGEMENTSERVICE._serialized_start=5108
448
+ _MODELSMANAGEMENTSERVICE._serialized_end=6484
428
449
  # @@protoc_insertion_point(module_scope)
@@ -13,6 +13,7 @@ import qwak.audience.v1.audience_pb2
13
13
  import qwak.build.v1.build_pb2
14
14
  import qwak.builds.builds_pb2
15
15
  import qwak.deployment.deployment_pb2
16
+ import qwak.models.models_query_pb2
16
17
  import qwak.projects.jfrog_project_spec_pb2
17
18
  import sys
18
19
  import typing
@@ -150,6 +151,62 @@ class ListModelsResponse(google.protobuf.message.Message):
150
151
 
151
152
  global___ListModelsResponse = ListModelsResponse
152
153
 
154
+ class ListModelsPaginatedRequest(google.protobuf.message.Message):
155
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
156
+
157
+ PAGE_SIZE_FIELD_NUMBER: builtins.int
158
+ CURSOR_FIELD_NUMBER: builtins.int
159
+ SORT_MODELS_FIELD_NUMBER: builtins.int
160
+ FILTER_FIELD_NUMBER: builtins.int
161
+ page_size: builtins.int
162
+ cursor: builtins.str
163
+ @property
164
+ def sort_models(self) -> qwak.models.models_query_pb2.SortModels: ...
165
+ @property
166
+ def filter(self) -> qwak.models.models_query_pb2.Filter: ...
167
+ def __init__(
168
+ self,
169
+ *,
170
+ page_size: builtins.int = ...,
171
+ cursor: builtins.str = ...,
172
+ sort_models: qwak.models.models_query_pb2.SortModels | None = ...,
173
+ filter: qwak.models.models_query_pb2.Filter | None = ...,
174
+ ) -> None: ...
175
+ def HasField(self, field_name: typing_extensions.Literal["cursor", b"cursor", "cursor_opt", b"cursor_opt", "filter", b"filter", "filter_opt", b"filter_opt", "page_size", b"page_size", "page_size_opt", b"page_size_opt", "sort_models", b"sort_models", "sort_models_opt", b"sort_models_opt"]) -> builtins.bool: ...
176
+ def ClearField(self, field_name: typing_extensions.Literal["cursor", b"cursor", "cursor_opt", b"cursor_opt", "filter", b"filter", "filter_opt", b"filter_opt", "page_size", b"page_size", "page_size_opt", b"page_size_opt", "sort_models", b"sort_models", "sort_models_opt", b"sort_models_opt"]) -> None: ...
177
+ @typing.overload
178
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["cursor_opt", b"cursor_opt"]) -> typing_extensions.Literal["cursor"] | None: ...
179
+ @typing.overload
180
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["filter_opt", b"filter_opt"]) -> typing_extensions.Literal["filter"] | None: ...
181
+ @typing.overload
182
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["page_size_opt", b"page_size_opt"]) -> typing_extensions.Literal["page_size"] | None: ...
183
+ @typing.overload
184
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["sort_models_opt", b"sort_models_opt"]) -> typing_extensions.Literal["sort_models"] | None: ...
185
+
186
+ global___ListModelsPaginatedRequest = ListModelsPaginatedRequest
187
+
188
+ class ListModelsPaginatedResponse(google.protobuf.message.Message):
189
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
190
+
191
+ MODELS_FIELD_NUMBER: builtins.int
192
+ METADATA_FIELD_NUMBER: builtins.int
193
+ @property
194
+ def models(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Model]:
195
+ """List of models matching the query criteria."""
196
+ @property
197
+ def metadata(self) -> qwak.models.models_query_pb2.PaginationMetadata:
198
+ """Pagination information about the result set."""
199
+ def __init__(
200
+ self,
201
+ *,
202
+ models: collections.abc.Iterable[global___Model] | None = ...,
203
+ metadata: qwak.models.models_query_pb2.PaginationMetadata | None = ...,
204
+ ) -> None: ...
205
+ def HasField(self, field_name: typing_extensions.Literal["metadata", b"metadata"]) -> builtins.bool: ...
206
+ def ClearField(self, field_name: typing_extensions.Literal["metadata", b"metadata", "models", b"models"]) -> None: ...
207
+
208
+ global___ListModelsPaginatedResponse = ListModelsPaginatedResponse
209
+
153
210
  class GetModelRequest(google.protobuf.message.Message):
154
211
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
155
212
 
@@ -24,6 +24,11 @@ class ModelsManagementServiceStub(object):
24
24
  request_serializer=qwak_dot_models_dot_models__pb2.ListModelsRequest.SerializeToString,
25
25
  response_deserializer=qwak_dot_models_dot_models__pb2.ListModelsResponse.FromString,
26
26
  )
27
+ self.ListModelsPaginated = channel.unary_unary(
28
+ '/qwak.models.management.ModelsManagementService/ListModelsPaginated',
29
+ request_serializer=qwak_dot_models_dot_models__pb2.ListModelsPaginatedRequest.SerializeToString,
30
+ response_deserializer=qwak_dot_models_dot_models__pb2.ListModelsPaginatedResponse.FromString,
31
+ )
27
32
  self.GetModel = channel.unary_unary(
28
33
  '/qwak.models.management.ModelsManagementService/GetModel',
29
34
  request_serializer=qwak_dot_models_dot_models__pb2.GetModelRequest.SerializeToString,
@@ -88,6 +93,13 @@ class ModelsManagementServiceServicer(object):
88
93
  context.set_details('Method not implemented!')
89
94
  raise NotImplementedError('Method not implemented!')
90
95
 
96
+ def ListModelsPaginated(self, request, context):
97
+ """Retrieves a paginated list of models based on the provided filters and pagination parameters.
98
+ """
99
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
100
+ context.set_details('Method not implemented!')
101
+ raise NotImplementedError('Method not implemented!')
102
+
91
103
  def GetModel(self, request, context):
92
104
  """Get model
93
105
  """
@@ -159,6 +171,11 @@ def add_ModelsManagementServiceServicer_to_server(servicer, server):
159
171
  request_deserializer=qwak_dot_models_dot_models__pb2.ListModelsRequest.FromString,
160
172
  response_serializer=qwak_dot_models_dot_models__pb2.ListModelsResponse.SerializeToString,
161
173
  ),
174
+ 'ListModelsPaginated': grpc.unary_unary_rpc_method_handler(
175
+ servicer.ListModelsPaginated,
176
+ request_deserializer=qwak_dot_models_dot_models__pb2.ListModelsPaginatedRequest.FromString,
177
+ response_serializer=qwak_dot_models_dot_models__pb2.ListModelsPaginatedResponse.SerializeToString,
178
+ ),
162
179
  'GetModel': grpc.unary_unary_rpc_method_handler(
163
180
  servicer.GetModel,
164
181
  request_deserializer=qwak_dot_models_dot_models__pb2.GetModelRequest.FromString,
@@ -248,6 +265,23 @@ class ModelsManagementService(object):
248
265
  options, channel_credentials,
249
266
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
250
267
 
268
+ @staticmethod
269
+ def ListModelsPaginated(request,
270
+ target,
271
+ options=(),
272
+ channel_credentials=None,
273
+ call_credentials=None,
274
+ insecure=False,
275
+ compression=None,
276
+ wait_for_ready=None,
277
+ timeout=None,
278
+ metadata=None):
279
+ return grpc.experimental.unary_unary(request, target, '/qwak.models.management.ModelsManagementService/ListModelsPaginated',
280
+ qwak_dot_models_dot_models__pb2.ListModelsPaginatedRequest.SerializeToString,
281
+ qwak_dot_models_dot_models__pb2.ListModelsPaginatedResponse.FromString,
282
+ options, channel_credentials,
283
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
284
+
251
285
  @staticmethod
252
286
  def GetModel(request,
253
287
  target,