qwak-core 0.4.271__py3-none-any.whl → 0.4.272__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.
@@ -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,
@@ -0,0 +1,77 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: qwak/models/models_query.proto
4
+ """Generated protocol buffer code."""
5
+ from google.protobuf.internal import enum_type_wrapper
6
+ from google.protobuf import descriptor as _descriptor
7
+ from google.protobuf import descriptor_pool as _descriptor_pool
8
+ from google.protobuf import message as _message
9
+ from google.protobuf import reflection as _reflection
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ # @@protoc_insertion_point(imports)
12
+
13
+ _sym_db = _symbol_database.Default()
14
+
15
+
16
+
17
+
18
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1eqwak/models/models_query.proto\x12\x16qwak.models.management\"\x99\x01\n\nSortModels\x12\x31\n\x07sort_by\x18\x01 \x01(\x0e\x32\x1e.qwak.models.management.SortByH\x00\x12\x37\n\nsort_order\x18\x02 \x01(\x0e\x32!.qwak.models.management.SortOrderH\x01\x42\r\n\x0bsort_by_optB\x10\n\x0esort_order_opt\"\xc8\x01\n\x06\x46ilter\x12\x1e\n\x14model_name_substring\x18\x01 \x01(\tH\x00\x12\x19\n\x11model_group_names\x18\x02 \x03(\t\x12V\n\x17\x64\x65ployment_model_status\x18\x03 \x01(\x0e\x32\x33.qwak.models.management.DeploymentModelStatusFilterH\x01\x42\x0c\n\nsearch_optB\x1d\n\x1b\x64\x65ployment_model_status_opt\"<\n\x12PaginationMetadata\x12\x11\n\tpage_size\x18\x01 \x01(\x05\x12\x13\n\x0bnext_cursor\x18\x02 \x01(\t*J\n\x06SortBy\x12\x13\n\x0fSORT_BY_INVALID\x10\x00\x12\x10\n\x0cSORT_BY_NAME\x10\x01\x12\x19\n\x15SORT_BY_CREATION_DATE\x10\x02*L\n\tSortOrder\x12\x16\n\x12SORT_ORDER_INVALID\x10\x00\x12\x12\n\x0eSORT_ORDER_ASC\x10\x01\x12\x13\n\x0fSORT_ORDER_DESC\x10\x02*\xa5\x01\n\x1b\x44\x65ploymentModelStatusFilter\x12*\n&DEPLOYMENT_MODEL_STATUS_FILTER_INVALID\x10\x00\x12+\n\'DEPLOYMENT_MODEL_STATUS_FILTER_DEPLOYED\x10\x01\x12-\n)DEPLOYMENT_MODEL_STATUS_FILTER_UNDEPLOYED\x10\x02\x42\x36\n!com.qwak.ai.management.models.apiB\x0fModelQueryProtoP\x01\x62\x06proto3')
19
+
20
+ _SORTBY = DESCRIPTOR.enum_types_by_name['SortBy']
21
+ SortBy = enum_type_wrapper.EnumTypeWrapper(_SORTBY)
22
+ _SORTORDER = DESCRIPTOR.enum_types_by_name['SortOrder']
23
+ SortOrder = enum_type_wrapper.EnumTypeWrapper(_SORTORDER)
24
+ _DEPLOYMENTMODELSTATUSFILTER = DESCRIPTOR.enum_types_by_name['DeploymentModelStatusFilter']
25
+ DeploymentModelStatusFilter = enum_type_wrapper.EnumTypeWrapper(_DEPLOYMENTMODELSTATUSFILTER)
26
+ SORT_BY_INVALID = 0
27
+ SORT_BY_NAME = 1
28
+ SORT_BY_CREATION_DATE = 2
29
+ SORT_ORDER_INVALID = 0
30
+ SORT_ORDER_ASC = 1
31
+ SORT_ORDER_DESC = 2
32
+ DEPLOYMENT_MODEL_STATUS_FILTER_INVALID = 0
33
+ DEPLOYMENT_MODEL_STATUS_FILTER_DEPLOYED = 1
34
+ DEPLOYMENT_MODEL_STATUS_FILTER_UNDEPLOYED = 2
35
+
36
+
37
+ _SORTMODELS = DESCRIPTOR.message_types_by_name['SortModels']
38
+ _FILTER = DESCRIPTOR.message_types_by_name['Filter']
39
+ _PAGINATIONMETADATA = DESCRIPTOR.message_types_by_name['PaginationMetadata']
40
+ SortModels = _reflection.GeneratedProtocolMessageType('SortModels', (_message.Message,), {
41
+ 'DESCRIPTOR' : _SORTMODELS,
42
+ '__module__' : 'qwak.models.models_query_pb2'
43
+ # @@protoc_insertion_point(class_scope:qwak.models.management.SortModels)
44
+ })
45
+ _sym_db.RegisterMessage(SortModels)
46
+
47
+ Filter = _reflection.GeneratedProtocolMessageType('Filter', (_message.Message,), {
48
+ 'DESCRIPTOR' : _FILTER,
49
+ '__module__' : 'qwak.models.models_query_pb2'
50
+ # @@protoc_insertion_point(class_scope:qwak.models.management.Filter)
51
+ })
52
+ _sym_db.RegisterMessage(Filter)
53
+
54
+ PaginationMetadata = _reflection.GeneratedProtocolMessageType('PaginationMetadata', (_message.Message,), {
55
+ 'DESCRIPTOR' : _PAGINATIONMETADATA,
56
+ '__module__' : 'qwak.models.models_query_pb2'
57
+ # @@protoc_insertion_point(class_scope:qwak.models.management.PaginationMetadata)
58
+ })
59
+ _sym_db.RegisterMessage(PaginationMetadata)
60
+
61
+ if _descriptor._USE_C_DESCRIPTORS == False:
62
+
63
+ DESCRIPTOR._options = None
64
+ DESCRIPTOR._serialized_options = b'\n!com.qwak.ai.management.models.apiB\017ModelQueryProtoP\001'
65
+ _SORTBY._serialized_start=479
66
+ _SORTBY._serialized_end=553
67
+ _SORTORDER._serialized_start=555
68
+ _SORTORDER._serialized_end=631
69
+ _DEPLOYMENTMODELSTATUSFILTER._serialized_start=634
70
+ _DEPLOYMENTMODELSTATUSFILTER._serialized_end=799
71
+ _SORTMODELS._serialized_start=59
72
+ _SORTMODELS._serialized_end=212
73
+ _FILTER._serialized_start=215
74
+ _FILTER._serialized_end=415
75
+ _PAGINATIONMETADATA._serialized_start=417
76
+ _PAGINATIONMETADATA._serialized_end=477
77
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,157 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+ import builtins
6
+ import collections.abc
7
+ import google.protobuf.descriptor
8
+ import google.protobuf.internal.containers
9
+ import google.protobuf.internal.enum_type_wrapper
10
+ import google.protobuf.message
11
+ import sys
12
+ import typing
13
+
14
+ if sys.version_info >= (3, 10):
15
+ import typing as typing_extensions
16
+ else:
17
+ import typing_extensions
18
+
19
+ DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
20
+
21
+ class _SortBy:
22
+ ValueType = typing.NewType("ValueType", builtins.int)
23
+ V: typing_extensions.TypeAlias = ValueType
24
+
25
+ class _SortByEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_SortBy.ValueType], builtins.type): # noqa: F821
26
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
27
+ SORT_BY_INVALID: _SortBy.ValueType # 0
28
+ SORT_BY_NAME: _SortBy.ValueType # 1
29
+ """Sort models by name (default)."""
30
+ SORT_BY_CREATION_DATE: _SortBy.ValueType # 2
31
+ """Sort models by their creation date."""
32
+
33
+ class SortBy(_SortBy, metaclass=_SortByEnumTypeWrapper): ...
34
+
35
+ SORT_BY_INVALID: SortBy.ValueType # 0
36
+ SORT_BY_NAME: SortBy.ValueType # 1
37
+ """Sort models by name (default)."""
38
+ SORT_BY_CREATION_DATE: SortBy.ValueType # 2
39
+ """Sort models by their creation date."""
40
+ global___SortBy = SortBy
41
+
42
+ class _SortOrder:
43
+ ValueType = typing.NewType("ValueType", builtins.int)
44
+ V: typing_extensions.TypeAlias = ValueType
45
+
46
+ class _SortOrderEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_SortOrder.ValueType], builtins.type): # noqa: F821
47
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
48
+ SORT_ORDER_INVALID: _SortOrder.ValueType # 0
49
+ SORT_ORDER_ASC: _SortOrder.ValueType # 1
50
+ """Sort in ascending order (default)."""
51
+ SORT_ORDER_DESC: _SortOrder.ValueType # 2
52
+ """Sort in descending order."""
53
+
54
+ class SortOrder(_SortOrder, metaclass=_SortOrderEnumTypeWrapper): ...
55
+
56
+ SORT_ORDER_INVALID: SortOrder.ValueType # 0
57
+ SORT_ORDER_ASC: SortOrder.ValueType # 1
58
+ """Sort in ascending order (default)."""
59
+ SORT_ORDER_DESC: SortOrder.ValueType # 2
60
+ """Sort in descending order."""
61
+ global___SortOrder = SortOrder
62
+
63
+ class _DeploymentModelStatusFilter:
64
+ ValueType = typing.NewType("ValueType", builtins.int)
65
+ V: typing_extensions.TypeAlias = ValueType
66
+
67
+ class _DeploymentModelStatusFilterEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_DeploymentModelStatusFilter.ValueType], builtins.type): # noqa: F821
68
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
69
+ DEPLOYMENT_MODEL_STATUS_FILTER_INVALID: _DeploymentModelStatusFilter.ValueType # 0
70
+ DEPLOYMENT_MODEL_STATUS_FILTER_DEPLOYED: _DeploymentModelStatusFilter.ValueType # 1
71
+ DEPLOYMENT_MODEL_STATUS_FILTER_UNDEPLOYED: _DeploymentModelStatusFilter.ValueType # 2
72
+
73
+ class DeploymentModelStatusFilter(_DeploymentModelStatusFilter, metaclass=_DeploymentModelStatusFilterEnumTypeWrapper): ...
74
+
75
+ DEPLOYMENT_MODEL_STATUS_FILTER_INVALID: DeploymentModelStatusFilter.ValueType # 0
76
+ DEPLOYMENT_MODEL_STATUS_FILTER_DEPLOYED: DeploymentModelStatusFilter.ValueType # 1
77
+ DEPLOYMENT_MODEL_STATUS_FILTER_UNDEPLOYED: DeploymentModelStatusFilter.ValueType # 2
78
+ global___DeploymentModelStatusFilter = DeploymentModelStatusFilter
79
+
80
+ class SortModels(google.protobuf.message.Message):
81
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
82
+
83
+ SORT_BY_FIELD_NUMBER: builtins.int
84
+ SORT_ORDER_FIELD_NUMBER: builtins.int
85
+ sort_by: global___SortBy.ValueType
86
+ sort_order: global___SortOrder.ValueType
87
+ def __init__(
88
+ self,
89
+ *,
90
+ sort_by: global___SortBy.ValueType = ...,
91
+ sort_order: global___SortOrder.ValueType = ...,
92
+ ) -> None: ...
93
+ def HasField(self, field_name: typing_extensions.Literal["sort_by", b"sort_by", "sort_by_opt", b"sort_by_opt", "sort_order", b"sort_order", "sort_order_opt", b"sort_order_opt"]) -> builtins.bool: ...
94
+ def ClearField(self, field_name: typing_extensions.Literal["sort_by", b"sort_by", "sort_by_opt", b"sort_by_opt", "sort_order", b"sort_order", "sort_order_opt", b"sort_order_opt"]) -> None: ...
95
+ @typing.overload
96
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["sort_by_opt", b"sort_by_opt"]) -> typing_extensions.Literal["sort_by"] | None: ...
97
+ @typing.overload
98
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["sort_order_opt", b"sort_order_opt"]) -> typing_extensions.Literal["sort_order"] | None: ...
99
+
100
+ global___SortModels = SortModels
101
+
102
+ class Filter(google.protobuf.message.Message):
103
+ """Filter models by specific properties using a filter expression.
104
+ The following fields are used to filter the models returned by the query. An AND operation is applied between each of these fields.
105
+ """
106
+
107
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
108
+
109
+ MODEL_NAME_SUBSTRING_FIELD_NUMBER: builtins.int
110
+ MODEL_GROUP_NAMES_FIELD_NUMBER: builtins.int
111
+ DEPLOYMENT_MODEL_STATUS_FIELD_NUMBER: builtins.int
112
+ model_name_substring: builtins.str
113
+ @property
114
+ def model_group_names(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
115
+ """Filter models by one or more model group names.
116
+ Return models that belong to one of the specified model groups.
117
+ Optional field. If not specified, models from all groups are included.
118
+ """
119
+ deployment_model_status: global___DeploymentModelStatusFilter.ValueType
120
+ def __init__(
121
+ self,
122
+ *,
123
+ model_name_substring: builtins.str = ...,
124
+ model_group_names: collections.abc.Iterable[builtins.str] | None = ...,
125
+ deployment_model_status: global___DeploymentModelStatusFilter.ValueType = ...,
126
+ ) -> None: ...
127
+ def HasField(self, field_name: typing_extensions.Literal["deployment_model_status", b"deployment_model_status", "deployment_model_status_opt", b"deployment_model_status_opt", "model_name_substring", b"model_name_substring", "search_opt", b"search_opt"]) -> builtins.bool: ...
128
+ def ClearField(self, field_name: typing_extensions.Literal["deployment_model_status", b"deployment_model_status", "deployment_model_status_opt", b"deployment_model_status_opt", "model_group_names", b"model_group_names", "model_name_substring", b"model_name_substring", "search_opt", b"search_opt"]) -> None: ...
129
+ @typing.overload
130
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["deployment_model_status_opt", b"deployment_model_status_opt"]) -> typing_extensions.Literal["deployment_model_status"] | None: ...
131
+ @typing.overload
132
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["search_opt", b"search_opt"]) -> typing_extensions.Literal["model_name_substring"] | None: ...
133
+
134
+ global___Filter = Filter
135
+
136
+ class PaginationMetadata(google.protobuf.message.Message):
137
+ """Metadata for pagination."""
138
+
139
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
140
+
141
+ PAGE_SIZE_FIELD_NUMBER: builtins.int
142
+ NEXT_CURSOR_FIELD_NUMBER: builtins.int
143
+ page_size: builtins.int
144
+ """Number of items per page."""
145
+ next_cursor: builtins.str
146
+ """Cursor for the next page.
147
+ If there are no more pages, this field will be empty.
148
+ """
149
+ def __init__(
150
+ self,
151
+ *,
152
+ page_size: builtins.int = ...,
153
+ next_cursor: builtins.str = ...,
154
+ ) -> None: ...
155
+ def ClearField(self, field_name: typing_extensions.Literal["next_cursor", b"next_cursor", "page_size", b"page_size"]) -> None: ...
156
+
157
+ global___PaginationMetadata = PaginationMetadata
@@ -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
+
qwak/__init__.py CHANGED
@@ -1,7 +1,7 @@
1
1
  """Top-level package for qwak-core."""
2
2
 
3
3
  __author__ = "Qwak.ai"
4
- __version__ = "0.4.271"
4
+ __version__ = "0.4.272"
5
5
 
6
6
  from qwak.inner.di_configuration import wire_dependencies
7
7
  from qwak.model.experiment_tracking import log_metric, log_param
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: qwak-core
3
- Version: 0.4.271
3
+ Version: 0.4.272
4
4
  Summary: Qwak Core contains the necessary objects and communication tools for using the Qwak Platform
5
5
  License: Apache-2.0
6
6
  Keywords: mlops,ml,deployment,serving,model
@@ -492,9 +492,15 @@ _qwak_proto/qwak/model_descriptor/open_ai_descriptor_pb2_grpc.py,sha256=1oboBPFx
492
492
  _qwak_proto/qwak/model_group/model_group_pb2.py,sha256=fP198ECc5Ca3WccDvRlcaNavZgWeXKrzKyFKZXL52So,3427
493
493
  _qwak_proto/qwak/model_group/model_group_pb2.pyi,sha256=6xP_BE9OccBWV784jfKS5BcBabUcDL22XtrtWq2_hlU,3038
494
494
  _qwak_proto/qwak/model_group/model_group_pb2_grpc.py,sha256=UyRBABlYr-W3uUKUnStENcfnc0mXOtShh8_mjpzpro0,3073
495
- _qwak_proto/qwak/models/models_pb2.py,sha256=GfzTIawDHmJS0wUwHkgB_6tQiwObZFz7FQw1mwjkUtg,30090
496
- _qwak_proto/qwak/models/models_pb2.pyi,sha256=ALci3H03JCyHhZM3QYr43xwshfLZvAnujwhL-Tr8XQQ,35787
497
- _qwak_proto/qwak/models/models_pb2_grpc.py,sha256=Iv1z-S7Ju2artlN-LOT6_plKq2aCjB2F7KqPW9LMSRw,19830
495
+ _qwak_proto/qwak/model_group/model_group_repository_details_pb2.py,sha256=t7oUXXLQvgxNuLyrA0qzuyfazRXK-uCIArXD_4s_1J4,5022
496
+ _qwak_proto/qwak/model_group/model_group_repository_details_pb2.pyi,sha256=h5ciIby9peqjZqHosajfrHdmX5kosmzDJiadoCVpTmc,4119
497
+ _qwak_proto/qwak/model_group/model_group_repository_details_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
498
+ _qwak_proto/qwak/models/models_pb2.py,sha256=dypKmBnjqzAmSLkXRPx0QMXiB1D-mUNxRu5pGqxVj68,32093
499
+ _qwak_proto/qwak/models/models_pb2.pyi,sha256=6h6PCqMOwZgSf77CUEx_SiRWX0uTxjiFMysVG_Z0Qvc,39027
500
+ _qwak_proto/qwak/models/models_pb2_grpc.py,sha256=2V7rVTiSaJcjw38OjUgtvYkouHMt6nAVJb0DE22ujE0,21680
501
+ _qwak_proto/qwak/models/models_query_pb2.py,sha256=GlkN0jKFqX2x4fbX1zLnk0Jbr3nlfLNINmSh5_JGqHo,4322
502
+ _qwak_proto/qwak/models/models_query_pb2.pyi,sha256=cZO7EA_JetDIQbC-9hg42G07DJMBC6Adgn6IMhnhhNQ,7456
503
+ _qwak_proto/qwak/models/models_query_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
498
504
  _qwak_proto/qwak/monitoring/v0/alerting_channel_management_service_pb2.py,sha256=Wj1nO5GzAigK3axuY2Qwc3WeENLLwLvCj3FcQ6Zuhpo,10745
499
505
  _qwak_proto/qwak/monitoring/v0/alerting_channel_management_service_pb2.pyi,sha256=0l-75-C7DniOm1DOY8y9DbxKuU4_930V6KS6bjCrM2c,6790
500
506
  _qwak_proto/qwak/monitoring/v0/alerting_channel_management_service_pb2_grpc.py,sha256=YuYQU-wACkHV0h9aBlXJ8qFFT2p85LGXswfkme74_s0,13657
@@ -597,7 +603,7 @@ _qwak_proto/qwak/workspace/workspace_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXH
597
603
  _qwak_proto/qwak/workspace/workspace_service_pb2.py,sha256=AB3C9S_AbOD7Nx1Ni4j1rW6PNtYTV1zjiqFQk-goQ74,21429
598
604
  _qwak_proto/qwak/workspace/workspace_service_pb2.pyi,sha256=nKKCHwnovZhsy8TSVmdz-Vtl0nviOOoX56HD-41Xo08,13726
599
605
  _qwak_proto/qwak/workspace/workspace_service_pb2_grpc.py,sha256=yKGuexxTBza99Ihe0DSTniV2ZSd_AG47inHenqfi890,27193
600
- qwak/__init__.py,sha256=wxAAnibibQd9a_ou8R3oQLaW971nla69UEwpsWsoEc4,587
606
+ qwak/__init__.py,sha256=8jN3thTv7G9Gdxw5tA7nuf_YCiVmgBUIxZDTgvG2Mew,587
601
607
  qwak/automations/__init__.py,sha256=qFZRvCxUUn8gcxkJR0v19ulHW2oJ0x6-Rif7HiheDP4,1522
602
608
  qwak/automations/automation_executions.py,sha256=5MeH_epYYWb8NKXgAozwT_jPyyUDednBHG7izloi7RY,3228
603
609
  qwak/automations/automations.py,sha256=3yx8e2v0uSKDnXbqyknasyEoQ5vxGni6K40Hbi1_zkk,12599
@@ -1071,6 +1077,6 @@ qwak_services_mock/mocks/workspace_manager_service_mock.py,sha256=O9ZSwln4T4kHVk
1071
1077
  qwak_services_mock/services_mock.py,sha256=zXtHcX8a_acz7ynxuCBxxVpHpde7aAGjIn6Uw52LY1s,19593
1072
1078
  qwak_services_mock/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1073
1079
  qwak_services_mock/utils/service_utils.py,sha256=ZlB0CnB1J6oBn6_m7fQO2U8tKoboHdUa6ljjkRMYNXU,265
1074
- qwak_core-0.4.271.dist-info/METADATA,sha256=C7H0qvdne7wdmwwtEoZaKXRHDJozbsvnTNkxBnfKGk0,2549
1075
- qwak_core-0.4.271.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
1076
- qwak_core-0.4.271.dist-info/RECORD,,
1080
+ qwak_core-0.4.272.dist-info/METADATA,sha256=6QwKVVwymTNEAzfNvoarcqgRNGXTLFTD_K_GJ_ZSP7I,2549
1081
+ qwak_core-0.4.272.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
1082
+ qwak_core-0.4.272.dist-info/RECORD,,