lightning-sdk 0.1.39__py3-none-any.whl → 0.1.41__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 (48) hide show
  1. lightning_sdk/__init__.py +1 -1
  2. lightning_sdk/_mmt/__init__.py +3 -0
  3. lightning_sdk/_mmt/base.py +180 -0
  4. lightning_sdk/_mmt/mmt.py +161 -0
  5. lightning_sdk/_mmt/v1.py +69 -0
  6. lightning_sdk/_mmt/v2.py +141 -0
  7. lightning_sdk/api/mmt_api.py +148 -0
  8. lightning_sdk/api/teamspace_api.py +0 -9
  9. lightning_sdk/api/utils.py +2 -1
  10. lightning_sdk/cli/mmt.py +137 -0
  11. lightning_sdk/job/base.py +2 -3
  12. lightning_sdk/job/v1.py +2 -1
  13. lightning_sdk/job/v2.py +6 -9
  14. lightning_sdk/lightning_cloud/openapi/__init__.py +8 -3
  15. lightning_sdk/lightning_cloud/openapi/api/assistants_service_api.py +90 -284
  16. lightning_sdk/lightning_cloud/openapi/api/models_store_api.py +118 -1
  17. lightning_sdk/lightning_cloud/openapi/api/secret_service_api.py +5 -1
  18. lightning_sdk/lightning_cloud/openapi/models/__init__.py +8 -3
  19. lightning_sdk/lightning_cloud/openapi/models/create_deployment_request_defines_a_spec_for_the_job_that_allows_for_autoscaling_jobs.py +27 -1
  20. lightning_sdk/lightning_cloud/openapi/models/deployments_id_body.py +27 -1
  21. lightning_sdk/lightning_cloud/openapi/models/model_id_visibility_body.py +123 -0
  22. lightning_sdk/lightning_cloud/openapi/models/v1_aws_direct_v1.py +27 -1
  23. lightning_sdk/lightning_cloud/openapi/models/{project_id_agentmanagedmodels_body.py → v1_body.py} +21 -47
  24. lightning_sdk/lightning_cloud/openapi/models/v1_deployment.py +27 -1
  25. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_api.py +227 -0
  26. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_spec.py +27 -1
  27. lightning_sdk/lightning_cloud/openapi/models/v1_get_model_files_response.py +27 -1
  28. lightning_sdk/lightning_cloud/openapi/models/v1_header.py +175 -0
  29. lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +27 -1
  30. lightning_sdk/lightning_cloud/openapi/models/v1_managed_model.py +55 -3
  31. lightning_sdk/lightning_cloud/openapi/models/v1_managed_model_abilities.py +175 -0
  32. lightning_sdk/lightning_cloud/openapi/models/v1_model.py +29 -3
  33. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job.py +27 -1
  34. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_state.py +1 -0
  35. lightning_sdk/lightning_cloud/openapi/models/v1_query_param.py +175 -0
  36. lightning_sdk/lightning_cloud/openapi/models/{v1_list_managed_models_response.py → v1_resource_visibility.py} +23 -23
  37. lightning_sdk/lightning_cloud/openapi/models/v1_rule_resource.py +1 -0
  38. lightning_sdk/lightning_cloud/openapi/models/v1_secret_type.py +1 -0
  39. lightning_sdk/lightning_cloud/openapi/models/{v1_delete_managed_model_response.py → v1_update_model_visibility_response.py} +6 -6
  40. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +41 -15
  41. lightning_sdk/models.py +29 -8
  42. lightning_sdk/teamspace.py +17 -15
  43. {lightning_sdk-0.1.39.dist-info → lightning_sdk-0.1.41.dist-info}/METADATA +1 -1
  44. {lightning_sdk-0.1.39.dist-info → lightning_sdk-0.1.41.dist-info}/RECORD +48 -36
  45. {lightning_sdk-0.1.39.dist-info → lightning_sdk-0.1.41.dist-info}/entry_points.txt +1 -0
  46. {lightning_sdk-0.1.39.dist-info → lightning_sdk-0.1.41.dist-info}/LICENSE +0 -0
  47. {lightning_sdk-0.1.39.dist-info → lightning_sdk-0.1.41.dist-info}/WHEEL +0 -0
  48. {lightning_sdk-0.1.39.dist-info → lightning_sdk-0.1.41.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,175 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ external/v1/auth_service.proto
5
+
6
+ No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501
7
+
8
+ OpenAPI spec version: version not set
9
+
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+
12
+ NOTE
13
+ ----
14
+ standard swagger-codegen-cli for this python client has been modified
15
+ by custom templates. The purpose of these templates is to include
16
+ typing information in the API and Model code. Please refer to the
17
+ main grid repository for more info
18
+ """
19
+
20
+ import pprint
21
+ import re # noqa: F401
22
+
23
+ from typing import TYPE_CHECKING
24
+
25
+ import six
26
+
27
+ if TYPE_CHECKING:
28
+ from datetime import datetime
29
+ from lightning_sdk.lightning_cloud.openapi.models import *
30
+
31
+ class V1Header(object):
32
+ """NOTE: This class is auto generated by the swagger code generator program.
33
+
34
+ Do not edit the class manually.
35
+ """
36
+ """
37
+ Attributes:
38
+ swagger_types (dict): The key is attribute name
39
+ and the value is attribute type.
40
+ attribute_map (dict): The key is attribute name
41
+ and the value is json key in definition.
42
+ """
43
+ swagger_types = {
44
+ 'description': 'str',
45
+ 'key': 'str',
46
+ 'value': 'str'
47
+ }
48
+
49
+ attribute_map = {
50
+ 'description': 'description',
51
+ 'key': 'key',
52
+ 'value': 'value'
53
+ }
54
+
55
+ def __init__(self, description: 'str' =None, key: 'str' =None, value: 'str' =None): # noqa: E501
56
+ """V1Header - a model defined in Swagger""" # noqa: E501
57
+ self._description = None
58
+ self._key = None
59
+ self._value = None
60
+ self.discriminator = None
61
+ if description is not None:
62
+ self.description = description
63
+ if key is not None:
64
+ self.key = key
65
+ if value is not None:
66
+ self.value = value
67
+
68
+ @property
69
+ def description(self) -> 'str':
70
+ """Gets the description of this V1Header. # noqa: E501
71
+
72
+
73
+ :return: The description of this V1Header. # noqa: E501
74
+ :rtype: str
75
+ """
76
+ return self._description
77
+
78
+ @description.setter
79
+ def description(self, description: 'str'):
80
+ """Sets the description of this V1Header.
81
+
82
+
83
+ :param description: The description of this V1Header. # noqa: E501
84
+ :type: str
85
+ """
86
+
87
+ self._description = description
88
+
89
+ @property
90
+ def key(self) -> 'str':
91
+ """Gets the key of this V1Header. # noqa: E501
92
+
93
+
94
+ :return: The key of this V1Header. # noqa: E501
95
+ :rtype: str
96
+ """
97
+ return self._key
98
+
99
+ @key.setter
100
+ def key(self, key: 'str'):
101
+ """Sets the key of this V1Header.
102
+
103
+
104
+ :param key: The key of this V1Header. # noqa: E501
105
+ :type: str
106
+ """
107
+
108
+ self._key = key
109
+
110
+ @property
111
+ def value(self) -> 'str':
112
+ """Gets the value of this V1Header. # noqa: E501
113
+
114
+
115
+ :return: The value of this V1Header. # noqa: E501
116
+ :rtype: str
117
+ """
118
+ return self._value
119
+
120
+ @value.setter
121
+ def value(self, value: 'str'):
122
+ """Sets the value of this V1Header.
123
+
124
+
125
+ :param value: The value of this V1Header. # noqa: E501
126
+ :type: str
127
+ """
128
+
129
+ self._value = value
130
+
131
+ def to_dict(self) -> dict:
132
+ """Returns the model properties as a dict"""
133
+ result = {}
134
+
135
+ for attr, _ in six.iteritems(self.swagger_types):
136
+ value = getattr(self, attr)
137
+ if isinstance(value, list):
138
+ result[attr] = list(map(
139
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
140
+ value
141
+ ))
142
+ elif hasattr(value, "to_dict"):
143
+ result[attr] = value.to_dict()
144
+ elif isinstance(value, dict):
145
+ result[attr] = dict(map(
146
+ lambda item: (item[0], item[1].to_dict())
147
+ if hasattr(item[1], "to_dict") else item,
148
+ value.items()
149
+ ))
150
+ else:
151
+ result[attr] = value
152
+ if issubclass(V1Header, dict):
153
+ for key, value in self.items():
154
+ result[key] = value
155
+
156
+ return result
157
+
158
+ def to_str(self) -> str:
159
+ """Returns the string representation of the model"""
160
+ return pprint.pformat(self.to_dict())
161
+
162
+ def __repr__(self) -> str:
163
+ """For `print` and `pprint`"""
164
+ return self.to_str()
165
+
166
+ def __eq__(self, other: 'V1Header') -> bool:
167
+ """Returns true if both objects are equal"""
168
+ if not isinstance(other, V1Header):
169
+ return False
170
+
171
+ return self.__dict__ == other.__dict__
172
+
173
+ def __ne__(self, other: 'V1Header') -> bool:
174
+ """Returns true if both objects are not equal"""
175
+ return not self == other
@@ -57,6 +57,7 @@ class V1JobSpec(object):
57
57
  'instance_type': 'str',
58
58
  'modified_volume': 'bool',
59
59
  'readiness_probe': 'V1JobHealthCheckConfig',
60
+ 'regions': 'list[str]',
60
61
  'resources': 'V1Resources',
61
62
  'restart_policy': 'str',
62
63
  'run_id': 'str',
@@ -81,6 +82,7 @@ class V1JobSpec(object):
81
82
  'instance_type': 'instanceType',
82
83
  'modified_volume': 'modifiedVolume',
83
84
  'readiness_probe': 'readinessProbe',
85
+ 'regions': 'regions',
84
86
  'resources': 'resources',
85
87
  'restart_policy': 'restartPolicy',
86
88
  'run_id': 'runId',
@@ -88,7 +90,7 @@ class V1JobSpec(object):
88
90
  'volumes': 'volumes'
89
91
  }
90
92
 
91
- def __init__(self, artifacts_destination: 'str' =None, artifacts_source: 'str' =None, cloudspace_id: 'str' =None, cluster_id: 'str' =None, command: 'str' =None, data_paths: 'list[V1DataPath]' =None, entrypoint: 'str' =None, env: 'list[V1EnvVar]' =None, image: 'str' =None, image_cluster_credentials: 'bool' =None, image_secret_ref: 'str' =None, include_credentials: 'bool' =None, instance_name: 'str' =None, instance_type: 'str' =None, modified_volume: 'bool' =None, readiness_probe: 'V1JobHealthCheckConfig' =None, resources: 'V1Resources' =None, restart_policy: 'str' =None, run_id: 'str' =None, spot: 'bool' =None, volumes: 'list[V1Volume]' =None): # noqa: E501
93
+ def __init__(self, artifacts_destination: 'str' =None, artifacts_source: 'str' =None, cloudspace_id: 'str' =None, cluster_id: 'str' =None, command: 'str' =None, data_paths: 'list[V1DataPath]' =None, entrypoint: 'str' =None, env: 'list[V1EnvVar]' =None, image: 'str' =None, image_cluster_credentials: 'bool' =None, image_secret_ref: 'str' =None, include_credentials: 'bool' =None, instance_name: 'str' =None, instance_type: 'str' =None, modified_volume: 'bool' =None, readiness_probe: 'V1JobHealthCheckConfig' =None, regions: 'list[str]' =None, resources: 'V1Resources' =None, restart_policy: 'str' =None, run_id: 'str' =None, spot: 'bool' =None, volumes: 'list[V1Volume]' =None): # noqa: E501
92
94
  """V1JobSpec - a model defined in Swagger""" # noqa: E501
93
95
  self._artifacts_destination = None
94
96
  self._artifacts_source = None
@@ -106,6 +108,7 @@ class V1JobSpec(object):
106
108
  self._instance_type = None
107
109
  self._modified_volume = None
108
110
  self._readiness_probe = None
111
+ self._regions = None
109
112
  self._resources = None
110
113
  self._restart_policy = None
111
114
  self._run_id = None
@@ -144,6 +147,8 @@ class V1JobSpec(object):
144
147
  self.modified_volume = modified_volume
145
148
  if readiness_probe is not None:
146
149
  self.readiness_probe = readiness_probe
150
+ if regions is not None:
151
+ self.regions = regions
147
152
  if resources is not None:
148
153
  self.resources = resources
149
154
  if restart_policy is not None:
@@ -491,6 +496,27 @@ class V1JobSpec(object):
491
496
 
492
497
  self._readiness_probe = readiness_probe
493
498
 
499
+ @property
500
+ def regions(self) -> 'list[str]':
501
+ """Gets the regions of this V1JobSpec. # noqa: E501
502
+
503
+
504
+ :return: The regions of this V1JobSpec. # noqa: E501
505
+ :rtype: list[str]
506
+ """
507
+ return self._regions
508
+
509
+ @regions.setter
510
+ def regions(self, regions: 'list[str]'):
511
+ """Sets the regions of this V1JobSpec.
512
+
513
+
514
+ :param regions: The regions of this V1JobSpec. # noqa: E501
515
+ :type: list[str]
516
+ """
517
+
518
+ self._regions = regions
519
+
494
520
  @property
495
521
  def resources(self) -> 'V1Resources':
496
522
  """Gets the resources of this V1JobSpec. # noqa: E501
@@ -41,32 +41,40 @@ class V1ManagedModel(object):
41
41
  and the value is json key in definition.
42
42
  """
43
43
  swagger_types = {
44
+ 'abilities': 'V1ManagedModelAbilities',
44
45
  'completion_token_price': 'float',
45
46
  'description': 'str',
46
47
  'endpoint_id': 'str',
47
48
  'id': 'str',
48
49
  'name': 'str',
49
- 'prompt_token_price': 'float'
50
+ 'prompt_token_price': 'float',
51
+ 'status': 'V1AssistantModelStatus'
50
52
  }
51
53
 
52
54
  attribute_map = {
55
+ 'abilities': 'abilities',
53
56
  'completion_token_price': 'completionTokenPrice',
54
57
  'description': 'description',
55
58
  'endpoint_id': 'endpointId',
56
59
  'id': 'id',
57
60
  'name': 'name',
58
- 'prompt_token_price': 'promptTokenPrice'
61
+ 'prompt_token_price': 'promptTokenPrice',
62
+ 'status': 'status'
59
63
  }
60
64
 
61
- def __init__(self, completion_token_price: 'float' =None, description: 'str' =None, endpoint_id: 'str' =None, id: 'str' =None, name: 'str' =None, prompt_token_price: 'float' =None): # noqa: E501
65
+ def __init__(self, abilities: 'V1ManagedModelAbilities' =None, completion_token_price: 'float' =None, description: 'str' =None, endpoint_id: 'str' =None, id: 'str' =None, name: 'str' =None, prompt_token_price: 'float' =None, status: 'V1AssistantModelStatus' =None): # noqa: E501
62
66
  """V1ManagedModel - a model defined in Swagger""" # noqa: E501
67
+ self._abilities = None
63
68
  self._completion_token_price = None
64
69
  self._description = None
65
70
  self._endpoint_id = None
66
71
  self._id = None
67
72
  self._name = None
68
73
  self._prompt_token_price = None
74
+ self._status = None
69
75
  self.discriminator = None
76
+ if abilities is not None:
77
+ self.abilities = abilities
70
78
  if completion_token_price is not None:
71
79
  self.completion_token_price = completion_token_price
72
80
  if description is not None:
@@ -79,6 +87,29 @@ class V1ManagedModel(object):
79
87
  self.name = name
80
88
  if prompt_token_price is not None:
81
89
  self.prompt_token_price = prompt_token_price
90
+ if status is not None:
91
+ self.status = status
92
+
93
+ @property
94
+ def abilities(self) -> 'V1ManagedModelAbilities':
95
+ """Gets the abilities of this V1ManagedModel. # noqa: E501
96
+
97
+
98
+ :return: The abilities of this V1ManagedModel. # noqa: E501
99
+ :rtype: V1ManagedModelAbilities
100
+ """
101
+ return self._abilities
102
+
103
+ @abilities.setter
104
+ def abilities(self, abilities: 'V1ManagedModelAbilities'):
105
+ """Sets the abilities of this V1ManagedModel.
106
+
107
+
108
+ :param abilities: The abilities of this V1ManagedModel. # noqa: E501
109
+ :type: V1ManagedModelAbilities
110
+ """
111
+
112
+ self._abilities = abilities
82
113
 
83
114
  @property
84
115
  def completion_token_price(self) -> 'float':
@@ -206,6 +237,27 @@ class V1ManagedModel(object):
206
237
 
207
238
  self._prompt_token_price = prompt_token_price
208
239
 
240
+ @property
241
+ def status(self) -> 'V1AssistantModelStatus':
242
+ """Gets the status of this V1ManagedModel. # noqa: E501
243
+
244
+
245
+ :return: The status of this V1ManagedModel. # noqa: E501
246
+ :rtype: V1AssistantModelStatus
247
+ """
248
+ return self._status
249
+
250
+ @status.setter
251
+ def status(self, status: 'V1AssistantModelStatus'):
252
+ """Sets the status of this V1ManagedModel.
253
+
254
+
255
+ :param status: The status of this V1ManagedModel. # noqa: E501
256
+ :type: V1AssistantModelStatus
257
+ """
258
+
259
+ self._status = status
260
+
209
261
  def to_dict(self) -> dict:
210
262
  """Returns the model properties as a dict"""
211
263
  result = {}
@@ -0,0 +1,175 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ external/v1/auth_service.proto
5
+
6
+ No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501
7
+
8
+ OpenAPI spec version: version not set
9
+
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+
12
+ NOTE
13
+ ----
14
+ standard swagger-codegen-cli for this python client has been modified
15
+ by custom templates. The purpose of these templates is to include
16
+ typing information in the API and Model code. Please refer to the
17
+ main grid repository for more info
18
+ """
19
+
20
+ import pprint
21
+ import re # noqa: F401
22
+
23
+ from typing import TYPE_CHECKING
24
+
25
+ import six
26
+
27
+ if TYPE_CHECKING:
28
+ from datetime import datetime
29
+ from lightning_sdk.lightning_cloud.openapi.models import *
30
+
31
+ class V1ManagedModelAbilities(object):
32
+ """NOTE: This class is auto generated by the swagger code generator program.
33
+
34
+ Do not edit the class manually.
35
+ """
36
+ """
37
+ Attributes:
38
+ swagger_types (dict): The key is attribute name
39
+ and the value is attribute type.
40
+ attribute_map (dict): The key is attribute name
41
+ and the value is json key in definition.
42
+ """
43
+ swagger_types = {
44
+ 'can_call_hub_deployment': 'bool',
45
+ 'can_receive_files': 'bool',
46
+ 'can_receive_images': 'bool'
47
+ }
48
+
49
+ attribute_map = {
50
+ 'can_call_hub_deployment': 'canCallHubDeployment',
51
+ 'can_receive_files': 'canReceiveFiles',
52
+ 'can_receive_images': 'canReceiveImages'
53
+ }
54
+
55
+ def __init__(self, can_call_hub_deployment: 'bool' =None, can_receive_files: 'bool' =None, can_receive_images: 'bool' =None): # noqa: E501
56
+ """V1ManagedModelAbilities - a model defined in Swagger""" # noqa: E501
57
+ self._can_call_hub_deployment = None
58
+ self._can_receive_files = None
59
+ self._can_receive_images = None
60
+ self.discriminator = None
61
+ if can_call_hub_deployment is not None:
62
+ self.can_call_hub_deployment = can_call_hub_deployment
63
+ if can_receive_files is not None:
64
+ self.can_receive_files = can_receive_files
65
+ if can_receive_images is not None:
66
+ self.can_receive_images = can_receive_images
67
+
68
+ @property
69
+ def can_call_hub_deployment(self) -> 'bool':
70
+ """Gets the can_call_hub_deployment of this V1ManagedModelAbilities. # noqa: E501
71
+
72
+
73
+ :return: The can_call_hub_deployment of this V1ManagedModelAbilities. # noqa: E501
74
+ :rtype: bool
75
+ """
76
+ return self._can_call_hub_deployment
77
+
78
+ @can_call_hub_deployment.setter
79
+ def can_call_hub_deployment(self, can_call_hub_deployment: 'bool'):
80
+ """Sets the can_call_hub_deployment of this V1ManagedModelAbilities.
81
+
82
+
83
+ :param can_call_hub_deployment: The can_call_hub_deployment of this V1ManagedModelAbilities. # noqa: E501
84
+ :type: bool
85
+ """
86
+
87
+ self._can_call_hub_deployment = can_call_hub_deployment
88
+
89
+ @property
90
+ def can_receive_files(self) -> 'bool':
91
+ """Gets the can_receive_files of this V1ManagedModelAbilities. # noqa: E501
92
+
93
+
94
+ :return: The can_receive_files of this V1ManagedModelAbilities. # noqa: E501
95
+ :rtype: bool
96
+ """
97
+ return self._can_receive_files
98
+
99
+ @can_receive_files.setter
100
+ def can_receive_files(self, can_receive_files: 'bool'):
101
+ """Sets the can_receive_files of this V1ManagedModelAbilities.
102
+
103
+
104
+ :param can_receive_files: The can_receive_files of this V1ManagedModelAbilities. # noqa: E501
105
+ :type: bool
106
+ """
107
+
108
+ self._can_receive_files = can_receive_files
109
+
110
+ @property
111
+ def can_receive_images(self) -> 'bool':
112
+ """Gets the can_receive_images of this V1ManagedModelAbilities. # noqa: E501
113
+
114
+
115
+ :return: The can_receive_images of this V1ManagedModelAbilities. # noqa: E501
116
+ :rtype: bool
117
+ """
118
+ return self._can_receive_images
119
+
120
+ @can_receive_images.setter
121
+ def can_receive_images(self, can_receive_images: 'bool'):
122
+ """Sets the can_receive_images of this V1ManagedModelAbilities.
123
+
124
+
125
+ :param can_receive_images: The can_receive_images of this V1ManagedModelAbilities. # noqa: E501
126
+ :type: bool
127
+ """
128
+
129
+ self._can_receive_images = can_receive_images
130
+
131
+ def to_dict(self) -> dict:
132
+ """Returns the model properties as a dict"""
133
+ result = {}
134
+
135
+ for attr, _ in six.iteritems(self.swagger_types):
136
+ value = getattr(self, attr)
137
+ if isinstance(value, list):
138
+ result[attr] = list(map(
139
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
140
+ value
141
+ ))
142
+ elif hasattr(value, "to_dict"):
143
+ result[attr] = value.to_dict()
144
+ elif isinstance(value, dict):
145
+ result[attr] = dict(map(
146
+ lambda item: (item[0], item[1].to_dict())
147
+ if hasattr(item[1], "to_dict") else item,
148
+ value.items()
149
+ ))
150
+ else:
151
+ result[attr] = value
152
+ if issubclass(V1ManagedModelAbilities, dict):
153
+ for key, value in self.items():
154
+ result[key] = value
155
+
156
+ return result
157
+
158
+ def to_str(self) -> str:
159
+ """Returns the string representation of the model"""
160
+ return pprint.pformat(self.to_dict())
161
+
162
+ def __repr__(self) -> str:
163
+ """For `print` and `pprint`"""
164
+ return self.to_str()
165
+
166
+ def __eq__(self, other: 'V1ManagedModelAbilities') -> bool:
167
+ """Returns true if both objects are equal"""
168
+ if not isinstance(other, V1ManagedModelAbilities):
169
+ return False
170
+
171
+ return self.__dict__ == other.__dict__
172
+
173
+ def __ne__(self, other: 'V1ManagedModelAbilities') -> bool:
174
+ """Returns true if both objects are not equal"""
175
+ return not self == other
@@ -54,7 +54,8 @@ class V1Model(object):
54
54
  'project_id': 'str',
55
55
  'tags': 'list[str]',
56
56
  'updated_at': 'datetime',
57
- 'user_id': 'str'
57
+ 'user_id': 'str',
58
+ 'visibility': 'V1ResourceVisibility'
58
59
  }
59
60
 
60
61
  attribute_map = {
@@ -71,10 +72,11 @@ class V1Model(object):
71
72
  'project_id': 'projectId',
72
73
  'tags': 'tags',
73
74
  'updated_at': 'updatedAt',
74
- 'user_id': 'userId'
75
+ 'user_id': 'userId',
76
+ 'visibility': 'visibility'
75
77
  }
76
78
 
77
- def __init__(self, categories: 'list[str]' =None, created_at: 'datetime' =None, description: 'str' =None, downloads: 'str' =None, id: 'str' =None, latest_version: 'V1ModelVersionArchive' =None, license: 'str' =None, model_metadata: 'dict(str, str)' =None, name: 'str' =None, private: 'bool' =None, project_id: 'str' =None, tags: 'list[str]' =None, updated_at: 'datetime' =None, user_id: 'str' =None): # noqa: E501
79
+ def __init__(self, categories: 'list[str]' =None, created_at: 'datetime' =None, description: 'str' =None, downloads: 'str' =None, id: 'str' =None, latest_version: 'V1ModelVersionArchive' =None, license: 'str' =None, model_metadata: 'dict(str, str)' =None, name: 'str' =None, private: 'bool' =None, project_id: 'str' =None, tags: 'list[str]' =None, updated_at: 'datetime' =None, user_id: 'str' =None, visibility: 'V1ResourceVisibility' =None): # noqa: E501
78
80
  """V1Model - a model defined in Swagger""" # noqa: E501
79
81
  self._categories = None
80
82
  self._created_at = None
@@ -90,6 +92,7 @@ class V1Model(object):
90
92
  self._tags = None
91
93
  self._updated_at = None
92
94
  self._user_id = None
95
+ self._visibility = None
93
96
  self.discriminator = None
94
97
  if categories is not None:
95
98
  self.categories = categories
@@ -119,6 +122,8 @@ class V1Model(object):
119
122
  self.updated_at = updated_at
120
123
  if user_id is not None:
121
124
  self.user_id = user_id
125
+ if visibility is not None:
126
+ self.visibility = visibility
122
127
 
123
128
  @property
124
129
  def categories(self) -> 'list[str]':
@@ -414,6 +419,27 @@ class V1Model(object):
414
419
 
415
420
  self._user_id = user_id
416
421
 
422
+ @property
423
+ def visibility(self) -> 'V1ResourceVisibility':
424
+ """Gets the visibility of this V1Model. # noqa: E501
425
+
426
+
427
+ :return: The visibility of this V1Model. # noqa: E501
428
+ :rtype: V1ResourceVisibility
429
+ """
430
+ return self._visibility
431
+
432
+ @visibility.setter
433
+ def visibility(self, visibility: 'V1ResourceVisibility'):
434
+ """Sets the visibility of this V1Model.
435
+
436
+
437
+ :param visibility: The visibility of this V1Model. # noqa: E501
438
+ :type: V1ResourceVisibility
439
+ """
440
+
441
+ self._visibility = visibility
442
+
417
443
  def to_dict(self) -> dict:
418
444
  """Returns the model properties as a dict"""
419
445
  result = {}
@@ -50,6 +50,7 @@ class V1MultiMachineJob(object):
50
50
  'name': 'str',
51
51
  'project_id': 'str',
52
52
  'spec': 'V1JobSpec',
53
+ 'state': 'V1MultiMachineJobState',
53
54
  'status': 'V1MultiMachineJobStatus',
54
55
  'updated_at': 'datetime',
55
56
  'user_id': 'str'
@@ -65,12 +66,13 @@ class V1MultiMachineJob(object):
65
66
  'name': 'name',
66
67
  'project_id': 'projectId',
67
68
  'spec': 'spec',
69
+ 'state': 'state',
68
70
  'status': 'status',
69
71
  'updated_at': 'updatedAt',
70
72
  'user_id': 'userId'
71
73
  }
72
74
 
73
- def __init__(self, cloudspace_id: 'str' =None, created_at: 'datetime' =None, desired_state: 'V1MultiMachineJobState' =None, id: 'str' =None, machines: 'int' =None, message: 'str' =None, name: 'str' =None, project_id: 'str' =None, spec: 'V1JobSpec' =None, status: 'V1MultiMachineJobStatus' =None, updated_at: 'datetime' =None, user_id: 'str' =None): # noqa: E501
75
+ def __init__(self, cloudspace_id: 'str' =None, created_at: 'datetime' =None, desired_state: 'V1MultiMachineJobState' =None, id: 'str' =None, machines: 'int' =None, message: 'str' =None, name: 'str' =None, project_id: 'str' =None, spec: 'V1JobSpec' =None, state: 'V1MultiMachineJobState' =None, status: 'V1MultiMachineJobStatus' =None, updated_at: 'datetime' =None, user_id: 'str' =None): # noqa: E501
74
76
  """V1MultiMachineJob - a model defined in Swagger""" # noqa: E501
75
77
  self._cloudspace_id = None
76
78
  self._created_at = None
@@ -81,6 +83,7 @@ class V1MultiMachineJob(object):
81
83
  self._name = None
82
84
  self._project_id = None
83
85
  self._spec = None
86
+ self._state = None
84
87
  self._status = None
85
88
  self._updated_at = None
86
89
  self._user_id = None
@@ -103,6 +106,8 @@ class V1MultiMachineJob(object):
103
106
  self.project_id = project_id
104
107
  if spec is not None:
105
108
  self.spec = spec
109
+ if state is not None:
110
+ self.state = state
106
111
  if status is not None:
107
112
  self.status = status
108
113
  if updated_at is not None:
@@ -299,6 +304,27 @@ class V1MultiMachineJob(object):
299
304
 
300
305
  self._spec = spec
301
306
 
307
+ @property
308
+ def state(self) -> 'V1MultiMachineJobState':
309
+ """Gets the state of this V1MultiMachineJob. # noqa: E501
310
+
311
+
312
+ :return: The state of this V1MultiMachineJob. # noqa: E501
313
+ :rtype: V1MultiMachineJobState
314
+ """
315
+ return self._state
316
+
317
+ @state.setter
318
+ def state(self, state: 'V1MultiMachineJobState'):
319
+ """Sets the state of this V1MultiMachineJob.
320
+
321
+
322
+ :param state: The state of this V1MultiMachineJob. # noqa: E501
323
+ :type: V1MultiMachineJobState
324
+ """
325
+
326
+ self._state = state
327
+
302
328
  @property
303
329
  def status(self) -> 'V1MultiMachineJobStatus':
304
330
  """Gets the status of this V1MultiMachineJob. # noqa: E501
@@ -42,6 +42,7 @@ class V1MultiMachineJobState(object):
42
42
  STOPPED = "MultiMachineJob_STATE_STOPPED"
43
43
  DELETED = "MultiMachineJob_STATE_DELETED"
44
44
  FAILED = "MultiMachineJob_STATE_FAILED"
45
+ COMPLETED = "MultiMachineJob_STATE_COMPLETED"
45
46
  """
46
47
  Attributes:
47
48
  swagger_types (dict): The key is attribute name