lightning-sdk 0.1.41__py3-none-any.whl → 0.1.43__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 (77) hide show
  1. lightning_sdk/__init__.py +1 -1
  2. lightning_sdk/ai_hub.py +8 -3
  3. lightning_sdk/api/ai_hub_api.py +3 -3
  4. lightning_sdk/api/deployment_api.py +6 -6
  5. lightning_sdk/api/job_api.py +32 -6
  6. lightning_sdk/api/mmt_api.py +59 -19
  7. lightning_sdk/api/studio_api.py +37 -19
  8. lightning_sdk/api/teamspace_api.py +34 -29
  9. lightning_sdk/api/utils.py +46 -34
  10. lightning_sdk/cli/ai_hub.py +3 -3
  11. lightning_sdk/cli/entrypoint.py +3 -1
  12. lightning_sdk/cli/run.py +122 -12
  13. lightning_sdk/cli/serve.py +218 -0
  14. lightning_sdk/deployment/deployment.py +18 -12
  15. lightning_sdk/job/base.py +118 -24
  16. lightning_sdk/job/job.py +98 -9
  17. lightning_sdk/job/v1.py +75 -18
  18. lightning_sdk/job/v2.py +51 -15
  19. lightning_sdk/job/work.py +36 -7
  20. lightning_sdk/lightning_cloud/openapi/__init__.py +12 -0
  21. lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py +215 -5
  22. lightning_sdk/lightning_cloud/openapi/api/lit_logger_service_api.py +218 -0
  23. lightning_sdk/lightning_cloud/openapi/api/models_store_api.py +226 -0
  24. lightning_sdk/lightning_cloud/openapi/api/snowflake_service_api.py +21 -1
  25. lightning_sdk/lightning_cloud/openapi/models/__init__.py +12 -0
  26. lightning_sdk/lightning_cloud/openapi/models/deploymenttemplates_id_body.py +27 -1
  27. lightning_sdk/lightning_cloud/openapi/models/id_visibility_body.py +123 -0
  28. lightning_sdk/lightning_cloud/openapi/models/model_id_versions_body.py +29 -3
  29. lightning_sdk/lightning_cloud/openapi/models/project_id_multimachinejobs_body.py +27 -1
  30. lightning_sdk/lightning_cloud/openapi/models/project_id_snowflake_body.py +15 -67
  31. lightning_sdk/lightning_cloud/openapi/models/query_query_id_body.py +17 -69
  32. lightning_sdk/lightning_cloud/openapi/models/snowflake_export_body.py +29 -81
  33. lightning_sdk/lightning_cloud/openapi/models/snowflake_query_body.py +17 -69
  34. lightning_sdk/lightning_cloud/openapi/models/v1_get_model_file_url_response.py +27 -1
  35. lightning_sdk/lightning_cloud/openapi/models/v1_get_model_files_response.py +17 -17
  36. lightning_sdk/lightning_cloud/openapi/models/v1_get_model_files_url_response.py +149 -0
  37. lightning_sdk/lightning_cloud/openapi/models/v1_get_project_balance_response.py +27 -1
  38. lightning_sdk/lightning_cloud/openapi/models/v1_list_multi_machine_job_events_response.py +123 -0
  39. lightning_sdk/lightning_cloud/openapi/models/v1_metrics_stream.py +27 -1
  40. lightning_sdk/lightning_cloud/openapi/models/v1_model_file.py +175 -0
  41. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job.py +27 -1
  42. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_event.py +331 -0
  43. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_event_type.py +104 -0
  44. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_fault_tolerance.py +149 -0
  45. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_fault_tolerance_strategy.py +105 -0
  46. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_status.py +27 -1
  47. lightning_sdk/lightning_cloud/openapi/models/v1_rule_resource.py +1 -0
  48. lightning_sdk/lightning_cloud/openapi/models/v1_snowflake_data_connection.py +29 -81
  49. lightning_sdk/lightning_cloud/openapi/models/v1_system_metrics.py +29 -3
  50. lightning_sdk/lightning_cloud/openapi/models/v1_trainium_system_metrics.py +175 -0
  51. lightning_sdk/lightning_cloud/openapi/models/v1_update_metrics_stream_visibility_response.py +97 -0
  52. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +27 -53
  53. lightning_sdk/lightning_cloud/openapi/models/v1_validate_deployment_image_request.py +149 -0
  54. lightning_sdk/lightning_cloud/openapi/models/v1_validate_deployment_image_response.py +97 -0
  55. lightning_sdk/lightning_cloud/rest_client.py +2 -0
  56. lightning_sdk/mmt/__init__.py +4 -0
  57. lightning_sdk/mmt/base.py +278 -0
  58. lightning_sdk/mmt/mmt.py +267 -0
  59. lightning_sdk/mmt/v1.py +181 -0
  60. lightning_sdk/mmt/v2.py +188 -0
  61. lightning_sdk/plugin.py +43 -16
  62. lightning_sdk/services/file_endpoint.py +11 -5
  63. lightning_sdk/studio.py +16 -9
  64. lightning_sdk/teamspace.py +21 -8
  65. lightning_sdk/utils/resolve.py +18 -0
  66. {lightning_sdk-0.1.41.dist-info → lightning_sdk-0.1.43.dist-info}/METADATA +4 -1
  67. {lightning_sdk-0.1.41.dist-info → lightning_sdk-0.1.43.dist-info}/RECORD +71 -59
  68. {lightning_sdk-0.1.41.dist-info → lightning_sdk-0.1.43.dist-info}/entry_points.txt +0 -1
  69. lightning_sdk/_mmt/__init__.py +0 -3
  70. lightning_sdk/_mmt/base.py +0 -180
  71. lightning_sdk/_mmt/mmt.py +0 -161
  72. lightning_sdk/_mmt/v1.py +0 -69
  73. lightning_sdk/_mmt/v2.py +0 -141
  74. lightning_sdk/cli/mmt.py +0 -137
  75. {lightning_sdk-0.1.41.dist-info → lightning_sdk-0.1.43.dist-info}/LICENSE +0 -0
  76. {lightning_sdk-0.1.41.dist-info → lightning_sdk-0.1.43.dist-info}/WHEEL +0 -0
  77. {lightning_sdk-0.1.41.dist-info → lightning_sdk-0.1.43.dist-info}/top_level.txt +0 -0
@@ -1,3 +1,4 @@
1
+ import warnings
1
2
  from pathlib import Path
2
3
  from typing import TYPE_CHECKING, List, Optional, Union
3
4
 
@@ -97,23 +98,33 @@ class Teamspace:
97
98
  from lightning_sdk.studio import Studio
98
99
 
99
100
  studios = []
100
- clusters = self._teamspace_api.list_clusters(teamspace_id=self.id)
101
+ clusters = self._teamspace_api.list_cloud_accounts(teamspace_id=self.id)
101
102
  for cl in clusters:
102
- _studios = self._teamspace_api.list_studios(teamspace_id=self.id, cluster_id=cl.cluster_id)
103
+ _studios = self._teamspace_api.list_studios(teamspace_id=self.id, cloud_account=cl.cluster_id)
103
104
  for s in _studios:
104
105
  studios.append(Studio(name=s.name, teamspace=self, cluster=cl.cluster_name, create_ok=False))
105
106
 
106
107
  return studios
107
108
 
108
109
  @property
109
- def default_cluster(self) -> str:
110
+ def default_cloud_account(self) -> str:
110
111
  return self._teamspace.project_settings.preferred_cluster
111
112
 
113
+ @property
114
+ def cloud_accounts(self) -> List[str]:
115
+ """All cloud accounts associated with that teamspace."""
116
+ clusters = self._teamspace_api.list_cloud_accounts(teamspace_id=self.id)
117
+ return [cl.cluster_name for cl in clusters]
118
+
112
119
  @property
113
120
  def clusters(self) -> List[str]:
114
121
  """All clusters associated with that teamspace."""
115
- clusters = self._teamspace_api.list_clusters(teamspace_id=self.id)
116
- return [cl.cluster_name for cl in clusters]
122
+ warnings.warn(
123
+ "The 'clusters' attribute is deprecated and will be removed in the future. "
124
+ "Please use the 'cloud_accounts' attribute instead.",
125
+ DeprecationWarning,
126
+ )
127
+ return self.cloud_accounts
117
128
 
118
129
  def __eq__(self, other: "Teamspace") -> bool:
119
130
  """Checks whether the provided other object is equal to this one."""
@@ -179,7 +190,9 @@ class Teamspace:
179
190
  if not path.exists():
180
191
  raise FileNotFoundError(str(path))
181
192
 
182
- cloud_account = self._teamspace_api._determine_cluster_id(self.id) if cloud_account is None else cloud_account
193
+ cloud_account = (
194
+ self._teamspace_api._determine_cloud_account(self.id) if cloud_account is None else cloud_account
195
+ )
183
196
  filepaths = [path] if path.is_file() else [p for p in path.rglob("*") if p.is_file()]
184
197
 
185
198
  if not filepaths:
@@ -199,14 +212,14 @@ class Teamspace:
199
212
  metadata={"filenames": filenames},
200
213
  private=True,
201
214
  teamspace_id=self.id,
202
- cluster_id=cloud_account,
215
+ cloud_account=cloud_account,
203
216
  )
204
217
  self._teamspace_api.upload_model_files(
205
218
  model_id=model.model_id,
206
219
  version=model.version,
207
220
  root_path=root_path,
208
221
  filepaths=filepaths,
209
- cluster_id=cloud_account,
222
+ cloud_account=cloud_account,
210
223
  teamspace_id=self.id,
211
224
  progress_bar=progress_bar,
212
225
  )
@@ -46,6 +46,24 @@ def _resolve_deprecated_cloud_compute(machine: Machine, cloud_compute: Optional[
46
46
  return machine
47
47
 
48
48
 
49
+ def _resolve_deprecated_cluster(cloud_account: Optional[str], cluster: Optional[str]) -> Optional[str]:
50
+ if cluster is not None:
51
+ if cloud_account is not None:
52
+ raise ValueError(
53
+ "Cannot use both 'cluster' and 'cloud_account' at the same time."
54
+ "Please don't set the 'cluster' as it will be deprecated!"
55
+ )
56
+
57
+ warnings.warn(
58
+ "The 'cluster' argument will be deprecated in the future! "
59
+ "Please consider using the 'cloud_account' argument instead!",
60
+ DeprecationWarning,
61
+ )
62
+ return cluster
63
+
64
+ return cloud_account
65
+
66
+
49
67
  def _resolve_org_name(name: Optional[str]) -> Optional[str]:
50
68
  if name is None:
51
69
  name = os.environ.get("LIGHTNING_ORG", "") or None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lightning_sdk
3
- Version: 0.1.41
3
+ Version: 0.1.43
4
4
  Summary: SDK to develop using Lightning AI Studios
5
5
  Author-email: Lightning-AI <justus@lightning.ai>
6
6
  License: MIT License
@@ -45,6 +45,9 @@ Requires-Dist: tqdm
45
45
  Requires-Dist: fire
46
46
  Requires-Dist: simple-term-menu
47
47
  Requires-Dist: lightning-utilities
48
+ Provides-Extra: serve
49
+ Requires-Dist: litserve>=0.2.5; extra == "serve"
50
+ Requires-Dist: docker; extra == "serve"
48
51
 
49
52
  # Lightning SDK
50
53
 
@@ -1,60 +1,55 @@
1
1
  docs/source/conf.py,sha256=r8yX20eC-4mHhMTd0SbQb5TlSWHhO6wnJ0VJ_FBFpag,13249
2
- lightning_sdk/__init__.py,sha256=kZV-7GsoG1m1X8jgFx1-3YckfRna5g-B7B1vG-h6T1I,925
2
+ lightning_sdk/__init__.py,sha256=je3-DFVBfoAqqPLrFLZmVZGWPNda7886O9-BrY6dvlQ,925
3
3
  lightning_sdk/agents.py,sha256=ly6Ma1j0ZgGPFyvPvMN28JWiB9dATIstFa5XM8pMi6I,1577
4
- lightning_sdk/ai_hub.py,sha256=V651b07qzxZmU6vKOs_GLkYZ_g1FY0iz-GlacPBCgPk,6526
4
+ lightning_sdk/ai_hub.py,sha256=kBjtmrzVHPCgqtV_TrSNkuf4oT2DLm8SYRTz4iTQmmY,6624
5
5
  lightning_sdk/constants.py,sha256=ztl1PTUBULnqTf3DyKUSJaV_O20hNtUYT6XvAYIrmIk,749
6
6
  lightning_sdk/helpers.py,sha256=RnQwUquc_YPotjh6YXOoJvZs8krX_QFhd7kGv4U_spQ,1844
7
7
  lightning_sdk/machine.py,sha256=VdFXStR6ilYBEYuxgGWzcAw2TtW-nEQVsh6hz-2aaEw,750
8
8
  lightning_sdk/models.py,sha256=d27VAYUcbWKd4kuL_CqwCi3IguyjmKUR9EVWfXWTwmc,5606
9
9
  lightning_sdk/organization.py,sha256=WCfzdgjtvY1_A07DnxOpp74V2JR2gQwtXbIEcFDnoVU,1232
10
10
  lightning_sdk/owner.py,sha256=t5svD2it4C9pbSpVuG9WJL46CYi37JXNziwnXxhiU5U,1361
11
- lightning_sdk/plugin.py,sha256=2OgP8YtcLo2K1T0pypLGj3dkIaytTw6N11CHHQmRupY,13591
11
+ lightning_sdk/plugin.py,sha256=cDvXaQWyove0IdEZYkvlKiaKuQoyjmcUJ8WdZkZ61Z0,14512
12
12
  lightning_sdk/status.py,sha256=kLDhN4-zdsGuZM577JMl1BbUIoF61bUOadW89ZAATFA,219
13
- lightning_sdk/studio.py,sha256=wvZrk07ZuG6Bf6c4XK8gMBumyiz_90JUScczdiWq1rU,16763
14
- lightning_sdk/teamspace.py,sha256=SY5BGZhQVG_Lp9-wc7yCvYznv_7VS4xio10zLsWs2Rg,11060
13
+ lightning_sdk/studio.py,sha256=lezGs111RUFejLWgp4Urov5l6uiUmYJjtRK8D8EYFU8,17198
14
+ lightning_sdk/teamspace.py,sha256=dKT-WrYF2xGP1C1bjOY2aYlEpkrvYkz2fXvtYVgogwo,11508
15
15
  lightning_sdk/user.py,sha256=vdn8pZqkAZO0-LoRsBdg0TckRKtd_H3QF4gpiZcl4iY,1130
16
- lightning_sdk/_mmt/__init__.py,sha256=rOzSMWgpNGUmJNj_BYbOrwYKA2BrafCR6fVxfcx1KTE,58
17
- lightning_sdk/_mmt/base.py,sha256=doPGpOPD2igRryXYr_MlON4wvt7Dj8nihnNxQ-qpP3o,6029
18
- lightning_sdk/_mmt/mmt.py,sha256=bs-5HdK4afIJvouna6F7H9D9Pw1UGaoLw4T-pT-mTjc,4906
19
- lightning_sdk/_mmt/v1.py,sha256=xv520HpKqrs75Gde3opCcfCOqEVg60PLo9I_JM3zvic,1841
20
- lightning_sdk/_mmt/v2.py,sha256=Y6Jdxrct084JrisxN8bXAF73nodFCBuky3cIX1OqilY,4777
21
16
  lightning_sdk/api/__init__.py,sha256=Qn2VVRvir_gO7w4yxGLkZY-R3T7kdiTPKgQ57BhIA9k,413
22
17
  lightning_sdk/api/agents_api.py,sha256=G47TbFo9kYqnBMqdw2RW-lfS1VAUBSXDmzs6fpIEMUs,4059
23
- lightning_sdk/api/ai_hub_api.py,sha256=_7BFcKYS7uYgCi5Q0Yzfz0mcm5LxezeZvgcDVRvsO9M,5571
24
- lightning_sdk/api/deployment_api.py,sha256=LJGbpDPM2ZgP71Ja8rCTwsj2m9gruT91jLQ62a1emRc,21427
25
- lightning_sdk/api/job_api.py,sha256=jDbnsnIjClE2zQpi-VpzzaRihrkd5jFcks6GcLqIfWA,8840
26
- lightning_sdk/api/mmt_api.py,sha256=_qJXdFbzWOYnJtjTgDiyEgBm4tsfd3QwKqx8I3E-0hU,5364
18
+ lightning_sdk/api/ai_hub_api.py,sha256=CYQLFLA89m3xQ-6Ss3UX4TDK6ZWRwmPGA5DjyJqW3RM,5578
19
+ lightning_sdk/api/deployment_api.py,sha256=T480Nej7LqmtkAx8SBkPGQ5JxeyQ-GVIDqUCc7Z1yfk,21448
20
+ lightning_sdk/api/job_api.py,sha256=I90j2DAhokqbHoyORKI0-dgrsZLvUaFHa8pT49IM60c,9683
21
+ lightning_sdk/api/mmt_api.py,sha256=texQJqSjbQNpfLLrumpvZ0MauPjmBlJAc8oSk3i46wk,6569
27
22
  lightning_sdk/api/org_api.py,sha256=Ze3z_ATVrukobujV5YdC42DKj45Vuwl7X52q_Vr-o3U,803
28
- lightning_sdk/api/studio_api.py,sha256=ypgTAUJhwfdsEOJHfog4JsgZiLp9ZQA0KggSjLiI0ZA,26143
29
- lightning_sdk/api/teamspace_api.py,sha256=ZIIWMwIvFdfH4PgquikXIoFx98uieNBbhVJn1Ll0H8I,9999
23
+ lightning_sdk/api/studio_api.py,sha256=Cfsq8HFc4uUsj8hncnhnD_TLhw0cg-ryclGowj8S6Y0,26374
24
+ lightning_sdk/api/teamspace_api.py,sha256=NYhD-Br2NIIn-1Noc8Q94TzWxEwFM1qCkf9RZhOqQu0,10321
30
25
  lightning_sdk/api/user_api.py,sha256=sL7RIjjtmZmvCZWx7BBZslhj1BeNh4Idn-RVcdmf7M0,2598
31
- lightning_sdk/api/utils.py,sha256=GVFyTOo4PS0qAADGMlX7W76eo_AlMgS3E85BlZSYxB4,21695
26
+ lightning_sdk/api/utils.py,sha256=iGMi5mabu4NyY9EPZv6HpbbgR5qzLUq8XSyX2zWy7l8,22193
32
27
  lightning_sdk/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
33
- lightning_sdk/cli/ai_hub.py,sha256=XcvTgAhm0eX8a5daQyF94pJooNwnygN5WzDTo35iSN0,1613
28
+ lightning_sdk/cli/ai_hub.py,sha256=8oy6TogDiWnHuLT3cv33XEW7vPqXPA0dDMds8kX3Z4g,1649
34
29
  lightning_sdk/cli/download.py,sha256=nyQN3q1vZ0fg4_cfit8cKaokQ9VUd46l_TNcAQWkLwU,5996
35
- lightning_sdk/cli/entrypoint.py,sha256=yCcRvmvZ9Lrkkq5AOWSVXMDtwU7ov2T6O9QYiVQLBwA,1385
30
+ lightning_sdk/cli/entrypoint.py,sha256=Hl2Lm7-OS0kx_pyJyGe7Nii0Soc6HYe4r4xXKeJuC_o,1507
36
31
  lightning_sdk/cli/exceptions.py,sha256=QUF3OMAMZwBikvlusimSHSBjb6ywvHpfAumJBEaodSw,169
37
32
  lightning_sdk/cli/legacy.py,sha256=ocTVNwlsLRS5aMjbMkwFPjT3uEYvS8C40CJ0PeRRv8g,4707
38
- lightning_sdk/cli/mmt.py,sha256=TbAvc5SMlCp2TPiYMSSRMg14_OxnB9QED0gUp_lpDrE,6223
39
- lightning_sdk/cli/run.py,sha256=rAgCdSZaU30pRIL3oNp3nHkl0_8-x8_qQd-WyW_gizw,5026
33
+ lightning_sdk/cli/run.py,sha256=B6ttd9SKg373ngug-lj74CEcuEoxwz-P6nUBVnQeijI,10836
34
+ lightning_sdk/cli/serve.py,sha256=UaXhGHU6nbAzrnVigSKOTrMjLwSs-sjyhuJCdVUBwzc,8722
40
35
  lightning_sdk/cli/studios_menu.py,sha256=0kQGqGel8gAbpdJtjOM1a6NEat_TnIqRNprNn8QiK58,3236
41
36
  lightning_sdk/cli/upload.py,sha256=H9OyipYTYAQ9Mzy2e8jtoaa-B34-uXHbTQTzY2Vmhv4,9078
42
37
  lightning_sdk/deployment/__init__.py,sha256=BLu7_cVLp97TYxe6qe-J1zKUSZXAVcvCjgcA7plV2k4,497
43
- lightning_sdk/deployment/deployment.py,sha256=47-aga7g8emJWrEkqr4FzfhMaNnsWhTSoinOl7FAMI0,15035
38
+ lightning_sdk/deployment/deployment.py,sha256=Dp15pn8rFAfMfaDhKn0v3bphFuvLgkPFs3KSNxW6eyc,15472
44
39
  lightning_sdk/job/__init__.py,sha256=1MxjQ6rHkyUHCypSW9RuXuVMVH11WiqhIXcU2LCFMwE,64
45
- lightning_sdk/job/base.py,sha256=RnfmzP6q8Inot5a5F8mVaOl_Sh9aw3ECbfRa7OYCp0U,6431
46
- lightning_sdk/job/job.py,sha256=cUg8UZiYrzy96FhZYEdYCkZtgG3bim6IOvQtD2E2gG4,4854
47
- lightning_sdk/job/v1.py,sha256=fZGMM6WzIrgZblbHKrkAslc-2evHIjMzdiSHQrish4Q,6069
48
- lightning_sdk/job/v2.py,sha256=ZwGdfXqcG00Gz9HCUBMCKdmQbmzwpiXHgynXrpt6KOE,5063
49
- lightning_sdk/job/work.py,sha256=JNuFp6TaNvO-V-YoO4tDu8e8AFAkHZj3vzt_tqlD6KE,969
40
+ lightning_sdk/job/base.py,sha256=I4-iWyiKp1KUkxDy97zJYbwbdQ_7cu6FqCayKwXDloQ,13000
41
+ lightning_sdk/job/job.py,sha256=pT9rkSsK5BHu6dSyHpAlYfGXvaF0s_XtrjjhOSAVFWU,11070
42
+ lightning_sdk/job/v1.py,sha256=zIcngaM2_c-2thcKiCOPoWGUuIKc4tasJEwEFJv6bAA,8953
43
+ lightning_sdk/job/v2.py,sha256=oq54VFInuVV_L-nUO_dnBbn4TxPWiBuIqmdFpNN1LmU,8057
44
+ lightning_sdk/job/work.py,sha256=PYopS_6c556I2o8ouSXmzb4FGQflzCe06GpqJiCdedw,1604
50
45
  lightning_sdk/lightning_cloud/__init__.py,sha256=o91SMAlwr4Ke5ESe8fHjqXcj31_h7rT-MlFoXA-n2EI,173
51
46
  lightning_sdk/lightning_cloud/__version__.py,sha256=lOfmWHtjmiuSG28TbKQqd2B3nwmSGOlKVFwhaj_cRJk,23
52
47
  lightning_sdk/lightning_cloud/env.py,sha256=XZXpF4sD9jlB8DY0herTy_8XiUJuDVjxy5APjRD2_aU,1379
53
48
  lightning_sdk/lightning_cloud/login.py,sha256=NSC53eJ24g59dySI9zRDl_-antxiflKDknYKxUNcwzQ,7307
54
- lightning_sdk/lightning_cloud/rest_client.py,sha256=i4jbW36PrNT3YBEwSsIgKnlldHm8ftkwGWzlYhrz1Aw,6557
49
+ lightning_sdk/lightning_cloud/rest_client.py,sha256=m8O8VQ6y2JM8G09KOqd8VsJwIQW0RD1kfK1jvnLM5vg,6601
55
50
  lightning_sdk/lightning_cloud/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
56
51
  lightning_sdk/lightning_cloud/cli/__main__.py,sha256=aHrigVV0qIp74MuYTdN6uO8a9Xp6E1aOwdR8w1fG-7c,688
57
- lightning_sdk/lightning_cloud/openapi/__init__.py,sha256=hkkb53sQOUHYyMHieLcwMCqICinfD0iNco3oyIFI30w,84027
52
+ lightning_sdk/lightning_cloud/openapi/__init__.py,sha256=Gm5xm6H_bQMYT5xQpvR5JhnZ_kTdnwTzNelgETY1q_8,85452
58
53
  lightning_sdk/lightning_cloud/openapi/api_client.py,sha256=pUTQMNcZmH4BhpnuAXuT7wnegaxaX26bzdEWjdoLeTo,25630
59
54
  lightning_sdk/lightning_cloud/openapi/configuration.py,sha256=H4PTkRz1QAonxKHbx3LG-gDEtdQPAxMO-bVfMfbUfJg,8306
60
55
  lightning_sdk/lightning_cloud/openapi/rest.py,sha256=ZPPr6ZkBp6LtuAsiUU7D8Pz8Dt9ECbEM_26Ov74tdpw,13322
@@ -72,25 +67,25 @@ lightning_sdk/lightning_cloud/openapi/api/deployment_templates_service_api.py,sh
72
67
  lightning_sdk/lightning_cloud/openapi/api/endpoint_service_api.py,sha256=IgERziSMhxLxK5ATpsNpNs5Ybpu577mCH7f6yBCr7uw,113191
73
68
  lightning_sdk/lightning_cloud/openapi/api/experiments_service_api.py,sha256=lYQt6nvbaqFnRsWFf-jL3Fou-A7Hx6qgrpRgHI3eARQ,9844
74
69
  lightning_sdk/lightning_cloud/openapi/api/file_system_service_api.py,sha256=9ZS5ADZj9Oxz3Al6YyTZxCMBduQuQSYxCVyx9lDSKkU,29878
75
- lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py,sha256=RSxJAlxi6NTExjp5nntGRl2XvFpHoMkTailCDpILPEA,154487
70
+ lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py,sha256=dTIfytMp_azUb4-fzu2zrYXrCs3JLvjB4yf-28DquMk,163638
76
71
  lightning_sdk/lightning_cloud/openapi/api/lightningapp_instance_service_api.py,sha256=Y9_XweSozZL_a8qCZTOgqW9cwIOx7FTMMU-ZX0eAJqs,77205
77
72
  lightning_sdk/lightning_cloud/openapi/api/lightningapp_v2_service_api.py,sha256=hORPARfDsJLtJOgieRzI_OWKMF9wEhET141vl6FPEBs,12909
78
73
  lightning_sdk/lightning_cloud/openapi/api/lightningwork_service_api.py,sha256=dXKzbr4I7TDW-PFsqgiaaw4RtYrzB1X6NZB_hxgMnts,43747
79
- lightning_sdk/lightning_cloud/openapi/api/lit_logger_service_api.py,sha256=Fo2TsyFV2if4dGuesvQPJFZXw96Wr2hh_bTX8ocRwIE,67154
74
+ lightning_sdk/lightning_cloud/openapi/api/lit_logger_service_api.py,sha256=lpEo-LECmEMMM5EHFqFRFUtVRBmZgMhc0Zt3vZ5tmuE,76631
80
75
  lightning_sdk/lightning_cloud/openapi/api/lit_page_service_api.py,sha256=xf48UmWpzjs3woKVfFeyyqCLN13NA_qDepIwMw2SRUg,20457
81
- lightning_sdk/lightning_cloud/openapi/api/models_store_api.py,sha256=Vryodif29iGgzFMhYPwwtfRp3ODeJHTds-bGA0U9fWM,82684
76
+ lightning_sdk/lightning_cloud/openapi/api/models_store_api.py,sha256=JlBPgAPnP_4uzN3orcp21VdRxMYkL7m4IbSnLqGZEsw,93092
82
77
  lightning_sdk/lightning_cloud/openapi/api/organizations_service_api.py,sha256=8xYTFSC4yDs32CTcEoWR1ycXX8chLQWRCsKAXJlOCls,88781
83
78
  lightning_sdk/lightning_cloud/openapi/api/profiler_service_api.py,sha256=hM2vTawBBuOYZrxN1SjZ6mU5ldvB_jUXRcLb0as0F4M,28286
84
79
  lightning_sdk/lightning_cloud/openapi/api/projects_service_api.py,sha256=a0x8UcufASV-CZzmIu-37iJiwhTlzalB07uctELD48Q,85065
85
80
  lightning_sdk/lightning_cloud/openapi/api/quest_service_api.py,sha256=IQppAcHoy8J99xdnZVDfyr-yzmFIkolMN3caF-wm7D0,16318
86
81
  lightning_sdk/lightning_cloud/openapi/api/secret_service_api.py,sha256=-oTJJ_XbfGAKle82anvK2XKSYE9OxRedCmUfJFjB9O0,41339
87
82
  lightning_sdk/lightning_cloud/openapi/api/slurm_jobs_user_service_api.py,sha256=UptEcOYxTbX48zm2PLcYP7f04fvn2yi5h-2k7L2LEP8,36562
88
- lightning_sdk/lightning_cloud/openapi/api/snowflake_service_api.py,sha256=s_6WUU0BQz2qvbeRu27bTia2WRXfrM_tDXH-IXQB2PY,28956
83
+ lightning_sdk/lightning_cloud/openapi/api/snowflake_service_api.py,sha256=C-gEj9pz_Rp3Yo9KnSEsOqNUi2FwzKMsCaPJugpIyLM,29981
89
84
  lightning_sdk/lightning_cloud/openapi/api/ssh_public_key_service_api.py,sha256=z-CQmVfinxsv8KDfghVokdL8kbeu95EAtX2kBA0apS8,24595
90
85
  lightning_sdk/lightning_cloud/openapi/api/storage_service_api.py,sha256=4SCpucxSLULv26jHjFJWoLXM7bySp2YeJnQayXZLWDU,47660
91
86
  lightning_sdk/lightning_cloud/openapi/api/studio_jobs_service_api.py,sha256=VJ7VcSvdmGbPkgmQZhaOSR47olcNPMzRlmT5J5uKsng,27877
92
87
  lightning_sdk/lightning_cloud/openapi/api/user_service_api.py,sha256=wjdWKwf3zPIyaV7RpwB6QSqDHFX_sMh4ZD2DpfSujV8,66572
93
- lightning_sdk/lightning_cloud/openapi/models/__init__.py,sha256=jb6VFDpR0vD1bjc2NEf93kwS2uAH-NRMDvbkfUSc5cg,79170
88
+ lightning_sdk/lightning_cloud/openapi/models/__init__.py,sha256=9LKJE-Fcz6YiK1ABd3v1pjpCK7mSzunRaA0OrdmkviY,80595
94
89
  lightning_sdk/lightning_cloud/openapi/models/affiliatelinks_id_body.py,sha256=X087AkCafKp2g8E2MR5ghU3pxCNNcoehZJttvuVfdC8,4274
95
90
  lightning_sdk/lightning_cloud/openapi/models/agentmanagedendpoints_id_body.py,sha256=NzKKkTs2PtMSIJJYxeh3aDBj-djBrI_qATGz7n5Oqdk,9234
96
91
  lightning_sdk/lightning_cloud/openapi/models/agents_id_body.py,sha256=iQsLbzMMvWhWMShSCA-pTIqZvfjJkUyb_mVnvVqgcXg,19633
@@ -123,7 +118,7 @@ lightning_sdk/lightning_cloud/openapi/models/create_deployment_request_defines_a
123
118
  lightning_sdk/lightning_cloud/openapi/models/data_connection_mount_data_connection_mount_copy_status.py,sha256=ytC9VwBzQMvpOSZJ78uekfrMmwGRaTOclX5XC3a-dMs,3343
124
119
  lightning_sdk/lightning_cloud/openapi/models/datasets_id_body.py,sha256=OcNzTWEbLGF36eY-yImNCmTwY4ZMX2P8yPuHAvc6KSk,5533
125
120
  lightning_sdk/lightning_cloud/openapi/models/deployments_id_body.py,sha256=mEe9T0HtHANAqoqJNb37zW-RcKBnB1NATVc3BVdmNOw,15964
126
- lightning_sdk/lightning_cloud/openapi/models/deploymenttemplates_id_body.py,sha256=EArK3mYX042fcQHcw6vmyRD5l1YThwi-NNxHD0_9lkw,14978
121
+ lightning_sdk/lightning_cloud/openapi/models/deploymenttemplates_id_body.py,sha256=Q-5xLj7_Rt6xt5uPLGzeyQCLiwd98PpaNrY5fMr0Dog,15829
127
122
  lightning_sdk/lightning_cloud/openapi/models/endpoints_id_body.py,sha256=-Nv94Q8XoAT3tfYVhcjutpihfoNS2b2STbTHJr1gomo,12309
128
123
  lightning_sdk/lightning_cloud/openapi/models/experiment_name_variant_name_body.py,sha256=f-pBOnWAd03BreivwAA0D1P1wEBGq2jaC1nK-GtGxVA,3910
129
124
  lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py,sha256=lb1yiusZDbKaT1V_VRq0IHgMG_QCih8Ln0a0g1XgJoA,29247
@@ -159,6 +154,7 @@ lightning_sdk/lightning_cloud/openapi/models/id_start_body.py,sha256=qySSqwn-O3p
159
154
  lightning_sdk/lightning_cloud/openapi/models/id_storage_body.py,sha256=am89naxDX9PxhWQk9hLkuFlVb0WZp9UXmi0hSj5OP9I,4920
160
155
  lightning_sdk/lightning_cloud/openapi/models/id_uploads_body.py,sha256=4fKv6N6q5me42n6x9CXnVPlYjQ9uUj9N-kOSe71cXQw,3651
161
156
  lightning_sdk/lightning_cloud/openapi/models/id_uploads_body1.py,sha256=NqIds1ra2paAdJpjdMG4D4_z7RNx-omRpXdBTx6_ukc,5232
157
+ lightning_sdk/lightning_cloud/openapi/models/id_visibility_body.py,sha256=rONXWmM-TvpznZrdEAm8Kzcnl5nk1N2uFs8RFzjm6yo,3823
162
158
  lightning_sdk/lightning_cloud/openapi/models/jobs_id_body.py,sha256=ogFJ-q4pH_r1u82ywp2koVLyDuFe2I8AX0hQN67SQOs,7715
163
159
  lightning_sdk/lightning_cloud/openapi/models/jobs_id_body1.py,sha256=Z8JsEoe1XLXVIH8H5ZhH4YtAFMzpbMiKXAqcLPW0McI,4347
164
160
  lightning_sdk/lightning_cloud/openapi/models/jobs_id_body2.py,sha256=ESSqHkNRBx9llPrCFF71u6OgSjBqRoxvmecpyKzN-lw,3571
@@ -170,7 +166,7 @@ lightning_sdk/lightning_cloud/openapi/models/metrics_stream_id_loggerartifacts_b
170
166
  lightning_sdk/lightning_cloud/openapi/models/metricsstream_create_body.py,sha256=4xaorYmlhnHkKsnPIj38w7OqvG6oPzhu4DZwbNRWWws,11404
171
167
  lightning_sdk/lightning_cloud/openapi/models/metricsstream_delete_body.py,sha256=9Ftuk903BxyRqdByfAfpGlSyhftspbw8qnRkvY3X9fU,3687
172
168
  lightning_sdk/lightning_cloud/openapi/models/metricsstream_id_body.py,sha256=gSojEmMRu66kSpE5bKs8_p882N9BiiRVAc26sad_qmw,5287
173
- lightning_sdk/lightning_cloud/openapi/models/model_id_versions_body.py,sha256=QApxdSI1Gz6MO-0vOL4TpsjQFOnAaUaE0IE1Ps7O-CE,3750
169
+ lightning_sdk/lightning_cloud/openapi/models/model_id_versions_body.py,sha256=TOkX8A0NaecNHAqmp90pp638LI9m2zhAZhpkEglozEQ,4439
174
170
  lightning_sdk/lightning_cloud/openapi/models/model_id_visibility_body.py,sha256=lCGbi9c1wFFCc23aTwxwbKjJSls7RQJg1tOaFg-2B5o,3873
175
171
  lightning_sdk/lightning_cloud/openapi/models/models_model_id_body.py,sha256=4LgGgZYBg6Iabem0LrhTtS3nzNo6L6Ghanj-dQyvvlA,4378
176
172
  lightning_sdk/lightning_cloud/openapi/models/multimachinejobs_id_body.py,sha256=Xjk_5CETlmOKvvRXDwGckxqY7UPk-wQLBZqsS-ql8PY,3954
@@ -192,16 +188,16 @@ lightning_sdk/lightning_cloud/openapi/models/project_id_invite_body.py,sha256=rO
192
188
  lightning_sdk/lightning_cloud/openapi/models/project_id_jobs_body.py,sha256=IGZaQYimwiS2j1h-rt4qQCnARTwN3Fv06ouUjMZ0BfY,5011
193
189
  lightning_sdk/lightning_cloud/openapi/models/project_id_memberships_body.py,sha256=h9ROMHHPwk2zScssMD93JIDHkurxhzbz3hyg627H_S4,5946
194
190
  lightning_sdk/lightning_cloud/openapi/models/project_id_models_body.py,sha256=u5msnl06gwYwCBOpwJ92EsbyO4WPaAHitLEG88inqlE,6663
195
- lightning_sdk/lightning_cloud/openapi/models/project_id_multimachinejobs_body.py,sha256=6CyMjfpFapeM08Oh6padL8BVMZM5t1qNM47chyGtkUc,5973
191
+ lightning_sdk/lightning_cloud/openapi/models/project_id_multimachinejobs_body.py,sha256=98YWVtnWAZfx8ydzWjmhm2qGOIcasXrNOO7LGRxZf0o,7029
196
192
  lightning_sdk/lightning_cloud/openapi/models/project_id_projectclustersbindings_body.py,sha256=TcewvPRwyAZ5puCB06dAdLUGvdAdnJY77XQoejdQp1A,4656
197
193
  lightning_sdk/lightning_cloud/openapi/models/project_id_secrets_body.py,sha256=jV7ztO03VzSC55pGFNGFsjRZEyIMOXvTIBcu4zNFXg8,4981
198
194
  lightning_sdk/lightning_cloud/openapi/models/project_id_serviceexecution_body.py,sha256=TLV2FM_8gld89PvYc9TpatyEEz7CIyNXy4ixAK9WOvY,5666
199
- lightning_sdk/lightning_cloud/openapi/models/project_id_snowflake_body.py,sha256=1Vsk--ChPoNx7DVPWgJYKyXzNFFhk0YaqEEX57AnJqc,5163
195
+ lightning_sdk/lightning_cloud/openapi/models/project_id_snowflake_body.py,sha256=GvWXA_I6HvvCszRlKefxVDk29Mbxk1Ka2VbVCVsbgw8,3840
200
196
  lightning_sdk/lightning_cloud/openapi/models/project_id_storage_body.py,sha256=oMEADoLKa6P4v_v-81TvUjrcHcJe1aV-qRqZw0Bvpeg,5126
201
197
  lightning_sdk/lightning_cloud/openapi/models/projects_id_body.py,sha256=49PxMLIBwfQBDAgyAKquFjui23Vn2OnY9Zpbwg3BCu0,8728
202
198
  lightning_sdk/lightning_cloud/openapi/models/projects_project_id_body.py,sha256=9KEoSAXY-v0XckFv6K0Kfk12BkoMK1kObPKQS52bjPE,5139
203
199
  lightning_sdk/lightning_cloud/openapi/models/protobuf_any.py,sha256=I4a5W5zqZprIP8eTbU-LdYvIj7b2r2B4qPMNIgSCEwk,7143
204
- lightning_sdk/lightning_cloud/openapi/models/query_query_id_body.py,sha256=Quaux8qkRLk6XKS1LnNzDrYPHcsUftM-E39zl9X01K0,6488
200
+ lightning_sdk/lightning_cloud/openapi/models/query_query_id_body.py,sha256=N33Q2glfHsqcMS4cuFjygVx3hBV1cPt800SOocXErw8,5213
205
201
  lightning_sdk/lightning_cloud/openapi/models/rpc_status.py,sha256=H6kd_K1f4TVLpY6-PtPOnolIxU13G4d3xKO04gOOF8o,5865
206
202
  lightning_sdk/lightning_cloud/openapi/models/secrets_id_body.py,sha256=KumAq6hfKkV6JHYYo66OimHvwssXBPpRfQwCK5qROP0,3591
207
203
  lightning_sdk/lightning_cloud/openapi/models/secrets_id_body1.py,sha256=buEAJmT2ZAc3CUYZg1aUds7ltjWPaTuzBeSQXriVF8c,3601
@@ -210,8 +206,8 @@ lightning_sdk/lightning_cloud/openapi/models/service_artifact_artifact_kind.py,s
210
206
  lightning_sdk/lightning_cloud/openapi/models/service_health_service_status.py,sha256=AvLUZ5iHK9ZuqMbJ6O0N-sMSRfryKDU8djk4xaK9g5A,3196
211
207
  lightning_sdk/lightning_cloud/openapi/models/serviceexecution_id_body.py,sha256=_-jU6n4JExbtPpHQwqiLc3iXeSQ7alk-GKUJiVK2dqs,10757
212
208
  lightning_sdk/lightning_cloud/openapi/models/slurm_jobs_body.py,sha256=bhq4Txf2UALD-AabsJpoxgLWXkj8InzgtySKb2hCgOg,9334
213
- lightning_sdk/lightning_cloud/openapi/models/snowflake_export_body.py,sha256=AJPZ5MwsthL1IXljUbpBbaHVoVoba1umhrUibMJlmxg,10280
214
- lightning_sdk/lightning_cloud/openapi/models/snowflake_query_body.py,sha256=6IT60t9IvhG21gl5bptnWhd5pj63_zgb0D4LNr57Nf0,6540
209
+ lightning_sdk/lightning_cloud/openapi/models/snowflake_export_body.py,sha256=Avax7cvfkHiSez0JtV0Q2sxh8h9bf_xc4KicaguIP9M,8981
210
+ lightning_sdk/lightning_cloud/openapi/models/snowflake_query_body.py,sha256=6_DTSiTjRxxroBaC6gWJbztCVdVF2nYMOcT6lIxZYsI,5249
215
211
  lightning_sdk/lightning_cloud/openapi/models/spec_lightningapp_instance_id_works_body.py,sha256=dEI8pgLEkjFn1qy85Wb8cssJLWY6q0ERVbWlU4RvoU4,5432
216
212
  lightning_sdk/lightning_cloud/openapi/models/storage_complete_body.py,sha256=3OL3VqMUCNhwIvI7Q51-xwpBs4C6pyZYVUPGsaPuiPU,6824
217
213
  lightning_sdk/lightning_cloud/openapi/models/stream_result_of_v1_conversation_response_chunk.py,sha256=4MA1NbHpLqP5uuzHIm8FqwMhzzYbCGGK-QoXrkmH0E4,4808
@@ -476,10 +472,11 @@ lightning_sdk/lightning_cloud/openapi/models/v1_get_lit_page_response.py,sha256=
476
472
  lightning_sdk/lightning_cloud/openapi/models/v1_get_logger_metrics_response.py,sha256=81PlJoPv7MX3tpgfjH-SUMV4RgcHwBTEwV7zlLgMDA0,4066
477
473
  lightning_sdk/lightning_cloud/openapi/models/v1_get_long_running_command_in_cloud_space_response.py,sha256=mD0tIapepk6mLh1HEVpIrYM98oJdhFOrdiP1zng5a70,4735
478
474
  lightning_sdk/lightning_cloud/openapi/models/v1_get_model_file_upload_urls_response.py,sha256=ied_an8aqenvWYlVcMNRwkpWFicL6_djyCFvImLmuZs,3845
479
- lightning_sdk/lightning_cloud/openapi/models/v1_get_model_file_url_response.py,sha256=xcCN8HMYcnQXk9GT73vrTtOnI21bnQDAhzSul6CQkqw,4324
480
- lightning_sdk/lightning_cloud/openapi/models/v1_get_model_files_response.py,sha256=LA49WyaaQJwBOMRF4VZFUM2HotT1luZ1diBmSa_ubzA,8415
475
+ lightning_sdk/lightning_cloud/openapi/models/v1_get_model_file_url_response.py,sha256=FudS_hPc0gg67VmK3LQd7r0SiQ044R_DTbEPOLIpwA0,5057
476
+ lightning_sdk/lightning_cloud/openapi/models/v1_get_model_files_response.py,sha256=BnGG3YKupjtd_u_01wjgvLcuUWRAyBH6GV8LUuCzsc8,8383
477
+ lightning_sdk/lightning_cloud/openapi/models/v1_get_model_files_url_response.py,sha256=vAesNxx_7fWySv9XmGtD6Qc9eyx7pip9YoJJWr0skag,4502
481
478
  lightning_sdk/lightning_cloud/openapi/models/v1_get_project_artifact_response.py,sha256=rEdK3p6nxpkzhTNawWAtJnVx47ZRtQ2EisXb9u2KHoI,3701
482
- lightning_sdk/lightning_cloud/openapi/models/v1_get_project_balance_response.py,sha256=cTGzfhKQM32KoGDji3s9HzwPma-uie0n_kEvoDwvxNY,6260
479
+ lightning_sdk/lightning_cloud/openapi/models/v1_get_project_balance_response.py,sha256=Zd-ItVVWm2TdVsyoZZ_tE1bc8IamJny7w_d3FMxlc50,7387
483
480
  lightning_sdk/lightning_cloud/openapi/models/v1_get_project_compute_usage_response.py,sha256=vg_GbMoOXHa0AaU1ivnH2e7LKu2HL_EiuZfxw4GEcI0,5356
484
481
  lightning_sdk/lightning_cloud/openapi/models/v1_get_project_storage_metadata_response.py,sha256=ko_ulUHZm6mZ6gwwcI0jM_-QyU8JPTEIZxw5iCNWY7E,13592
485
482
  lightning_sdk/lightning_cloud/openapi/models/v1_get_service_execution_status_response.py,sha256=gjYCDHcnneoLAP-6KwfJo5amQeojVkGd1FBEkcCnRvE,5563
@@ -592,6 +589,7 @@ lightning_sdk/lightning_cloud/openapi/models/v1_list_memberships_response.py,sha
592
589
  lightning_sdk/lightning_cloud/openapi/models/v1_list_metrics_streams_response.py,sha256=ys6EH3Bio7Gd8ccrjHHEvyCk83tOF6QZN4PVCQBDKmQ,4048
593
590
  lightning_sdk/lightning_cloud/openapi/models/v1_list_model_versions_response.py,sha256=LLwYjH6gRL_YhexJNfrve0ZmHHVOiS0MsRK9Qq6c0z0,3935
594
591
  lightning_sdk/lightning_cloud/openapi/models/v1_list_models_response.py,sha256=uZN-BXNU0N3xmw6lDhZvIDfoIHk5ffmKc1zEAWOFjzs,3741
592
+ lightning_sdk/lightning_cloud/openapi/models/v1_list_multi_machine_job_events_response.py,sha256=JlBroT0HWdAw_7pwtXTMAr9N5AOF39dbcazELQEYfho,3981
595
593
  lightning_sdk/lightning_cloud/openapi/models/v1_list_multi_machine_jobs_response.py,sha256=wi7C8w02TTjggLH5SY9AN3fGauDxfslyIIa7yFbRbXg,4139
596
594
  lightning_sdk/lightning_cloud/openapi/models/v1_list_new_features_for_user_response.py,sha256=SxINsjQ3v3yKUgbzLA45EQlzNrj6jziH8NF3AvfIOx0,3931
597
595
  lightning_sdk/lightning_cloud/openapi/models/v1_list_org_members_response.py,sha256=NaeyuYPbLWx7P5MYxeMU9g1eQeJliMavNfkPliyQR2E,3825
@@ -642,15 +640,20 @@ lightning_sdk/lightning_cloud/openapi/models/v1_message_content_type.py,sha256=4
642
640
  lightning_sdk/lightning_cloud/openapi/models/v1_metadata.py,sha256=j7q08UriG1bIxg8e-hURab5Fd83rF1HIVR5423kGrm0,16136
643
641
  lightning_sdk/lightning_cloud/openapi/models/v1_metric_value.py,sha256=CI8X9UrCK42CXGhAzx2VNvJuIcQzZGMtyw0miwQ3qMM,4962
644
642
  lightning_sdk/lightning_cloud/openapi/models/v1_metrics.py,sha256=dFyPDXpq71deECNFodkHDaGdZ0Hkp2lKnI9pBEOSMQ0,5143
645
- lightning_sdk/lightning_cloud/openapi/models/v1_metrics_stream.py,sha256=o3hETtUxZradW3vB4jRnap4Im2lSnEsK1XhJMO1JsYg,21996
643
+ lightning_sdk/lightning_cloud/openapi/models/v1_metrics_stream.py,sha256=JYdwxzFmOfNQ26WhY9CiUNA4j0V2lhtzBx2VTQ7JCyA,22831
646
644
  lightning_sdk/lightning_cloud/openapi/models/v1_metrics_tags.py,sha256=pqSxM8PtvGzL8YShurjbOaSVSr45XuhrpINWom40i5Y,5557
647
645
  lightning_sdk/lightning_cloud/openapi/models/v1_metrics_tracker.py,sha256=b6ihJRbKPrIuN8SUnTRqNwlBbz45vxlIOtMEmWnl2cg,10996
648
646
  lightning_sdk/lightning_cloud/openapi/models/v1_model.py,sha256=eCB-tr1-a6pj8q2MCUEa2nGriRE93Z_lEZty_xpaTDY,13433
647
+ lightning_sdk/lightning_cloud/openapi/models/v1_model_file.py,sha256=MWdpC7lfwFWioi2yL2Ajdnz4yYwWBWxdiQiXYADcfqg,4805
649
648
  lightning_sdk/lightning_cloud/openapi/models/v1_model_version_archive.py,sha256=dZ_SM_IKbyRxjRSAmfdBWkLEMIWAGLQxYxBmwIjEUcM,12857
650
649
  lightning_sdk/lightning_cloud/openapi/models/v1_mount_target.py,sha256=7hWm0_z3weM2V6j900nUpCMceF3q-hXH1tVI1rama2U,5823
651
- lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job.py,sha256=f6QHwSEG0AnRWxOpGy01dRC3jW4oK-ooHXi0-vYYbnE,12441
650
+ lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job.py,sha256=JuaaYSbNwOunCUU6OMkNrN9eDaqX3WGdevMNu-hzfXQ,13449
651
+ lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_event.py,sha256=lO8qRgRHfGukeZdvyVkanYIihffblggmOg-LjS46u30,9632
652
+ lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_event_type.py,sha256=HMBQuVSxwwbhbDQAAAMF8k99drvllwifjwjqEQrrDaQ,3248
653
+ lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_fault_tolerance.py,sha256=5Q0mZ3FM6yRi81mVCnYcyYh84loK4LVZTIv-2GgAy1I,4863
654
+ lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_fault_tolerance_strategy.py,sha256=FQ8qqDLfpguNtMqEETybXre4IArM32_vFuLrrUOcHb4,3539
652
655
  lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_state.py,sha256=0Rh4GKRQcdfI0ccGeVt0PxTbC7e7QwaIWYUy1rCnVhE,3349
653
- lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_status.py,sha256=x_q3EoAcUK77tENFP0HbjoegkP8u1g2TQe0P62Ed-xY,8835
656
+ lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_status.py,sha256=yoOMJoszmdfEoUP7mzjl3PTK9dq6JUi8yXrxJljrY-0,9540
654
657
  lightning_sdk/lightning_cloud/openapi/models/v1_named_get_logger_metrics.py,sha256=VygKKjSPGIbWT9RxbmJfOSlNR-Fq12yKj8wT_SHd2ZQ,3966
655
658
  lightning_sdk/lightning_cloud/openapi/models/v1_network_config.py,sha256=bHDZVIsqgiSi7eBf72RunvrLR-d-4b9S7oDMAZFBvCM,5476
656
659
  lightning_sdk/lightning_cloud/openapi/models/v1_new_feature.py,sha256=FMsA5E3T_94-IoZ7Dv-8N3agoZwmP7wTeFO443L_2Jw,10716
@@ -720,7 +723,7 @@ lightning_sdk/lightning_cloud/openapi/models/v1_rule.py,sha256=35UHmQVEVAiE2kF9q
720
723
  lightning_sdk/lightning_cloud/openapi/models/v1_rule_action.py,sha256=yebZDL5MKUiNwPysT6HzB9JrHPSCg3W4kVta8yjAgl4,3221
721
724
  lightning_sdk/lightning_cloud/openapi/models/v1_rule_condition.py,sha256=nE-VbhbyaLswY514acnjljeJRxnVICCTKWVe4cKFQ8w,5320
722
725
  lightning_sdk/lightning_cloud/openapi/models/v1_rule_effect.py,sha256=WqpSW3YL7UPkIXJDIusIk-PfUn6Vo3Jqv3CNFhJ_C48,3085
723
- lightning_sdk/lightning_cloud/openapi/models/v1_rule_resource.py,sha256=cPI5MM9Rg1eAXlHkhys9zFCcMeU2biKFozl0BvLA1Nc,4245
726
+ lightning_sdk/lightning_cloud/openapi/models/v1_rule_resource.py,sha256=92HpEsZVz8KwGMJJvco_nD0rBOkSFBuwgMv26KrejjA,4273
724
727
  lightning_sdk/lightning_cloud/openapi/models/v1_s3_folder_data_connection.py,sha256=VmokLg1mjerYS4aRU0dAtGel3wT-VwGDyMw6E1Ut2rY,3721
725
728
  lightning_sdk/lightning_cloud/openapi/models/v1_search_job_logs_response.py,sha256=SIoZOP_UDvybzADuo8rCRcAtie7-GIbw-TyKJ00XKWQ,4591
726
729
  lightning_sdk/lightning_cloud/openapi/models/v1_search_user.py,sha256=L2omKao6RHEWdKmLyTWHkJJB-PrichTJ8SqSJE68MAM,11623
@@ -740,7 +743,7 @@ lightning_sdk/lightning_cloud/openapi/models/v1_slurm_node.py,sha256=6sTWksnYtWb
740
743
  lightning_sdk/lightning_cloud/openapi/models/v1_slurm_v1.py,sha256=fCvSuH3PV0F1Bvy2ySQomwcML3tFKFYsvwP0oFk-2wk,3610
741
744
  lightning_sdk/lightning_cloud/openapi/models/v1_slurm_v1_job_status.py,sha256=2hr16NFxKl3FVlfThHhG3nsRibUfcZmziS-St1c9Qng,7461
742
745
  lightning_sdk/lightning_cloud/openapi/models/v1_slurm_v1_status.py,sha256=Is3hBQyd2mW899qZj5jUJaktT58iwZxF5maG_b9PeOM,4368
743
- lightning_sdk/lightning_cloud/openapi/models/v1_snowflake_data_connection.py,sha256=NnSOlOXsL7BqtDsTgpny9Jt2zkHIEZNCcTUBfkDNWh0,9389
746
+ lightning_sdk/lightning_cloud/openapi/models/v1_snowflake_data_connection.py,sha256=Lh-eRXYitj5RLEQFGPH0ISJdNXSXGlv-V3y0GgIZHjU,7625
744
747
  lightning_sdk/lightning_cloud/openapi/models/v1_source_type.py,sha256=vfr8Y771DVzERWAp2BaPDid4aH-P7Gx-ak0sWRb-pMk,3073
745
748
  lightning_sdk/lightning_cloud/openapi/models/v1_ssh_key_pair.py,sha256=efa6VNtM3UaSdm2yhpcax9Cxk1JToGSe4e7JLrC23Zg,5582
746
749
  lightning_sdk/lightning_cloud/openapi/models/v1_ssh_public_key.py,sha256=fRXbHIpFYcM5Bif1o0emSBNY6bsnGUbiiW97yaIOdW8,7876
@@ -754,10 +757,11 @@ lightning_sdk/lightning_cloud/openapi/models/v1_studio_job.py,sha256=is546lvrZ5_
754
757
  lightning_sdk/lightning_cloud/openapi/models/v1_studio_job_app.py,sha256=hGyIOxVrDicwzrq4SnvoeB84Do1f5XzbnopEWCBWsRE,3218
755
758
  lightning_sdk/lightning_cloud/openapi/models/v1_switch_cloud_space_instance_response.py,sha256=D3MIVrzeQAWWwlyNWXtF1hPWJ_8nw623qG4bChZPxqE,3094
756
759
  lightning_sdk/lightning_cloud/openapi/models/v1_system_info.py,sha256=Xd7EVD-EslEE0FhbPFg40nCjOjI6C1yLPTEyPV3LQDw,18476
757
- lightning_sdk/lightning_cloud/openapi/models/v1_system_metrics.py,sha256=pxqJYZGogX0iTgb3Klw0eVVj0vt1Vy7wSrVOOwp2zAs,5910
760
+ lightning_sdk/lightning_cloud/openapi/models/v1_system_metrics.py,sha256=wLGYHHls7wKRv98FSKH2KzY-oE5Y_v1wHXoXqX2dcs8,6759
758
761
  lightning_sdk/lightning_cloud/openapi/models/v1_system_metrics_list.py,sha256=sKU7Ue8dpeF7p-QkHADZkumfJYx00ambGqCRsiR4EV0,4613
759
762
  lightning_sdk/lightning_cloud/openapi/models/v1_telemetry.py,sha256=IH3Mdpt2NnnKpBuYSqEC_bAv2mfmD4lgE27wuPPrnQ0,9470
760
763
  lightning_sdk/lightning_cloud/openapi/models/v1_timestamp_code_telemetry.py,sha256=WCU6lxiRku2-WjWc0OyFAN0aaLXEieKBSGi09Bmu_J8,4193
764
+ lightning_sdk/lightning_cloud/openapi/models/v1_trainium_system_metrics.py,sha256=LHopRblwZngTqeDY7gZDFU4AvxhLcPzh7l2Zhq-hn3o,5399
761
765
  lightning_sdk/lightning_cloud/openapi/models/v1_transaction.py,sha256=9hjOdPQqsJAzrSP-pYl41HeOqEajFHS67EMkHWRwewQ,5746
762
766
  lightning_sdk/lightning_cloud/openapi/models/v1_transfer_org_balance_response.py,sha256=JwOdIGUAeer5zkOpHR74eAFywyJIwBff6sCCB4IWX_g,3058
763
767
  lightning_sdk/lightning_cloud/openapi/models/v1_transfer_project_balance_response.py,sha256=xVuBpaOiAzIla2KiWS6WF6M9t8Dg_6yK7eS_N8xH4rE,5062
@@ -774,6 +778,7 @@ lightning_sdk/lightning_cloud/openapi/models/v1_update_cluster_accelerators_resp
774
778
  lightning_sdk/lightning_cloud/openapi/models/v1_update_cluster_availability_request.py,sha256=E8htNmxp_YBjhqK3HLV42a3tdu5F07-Iv0wtEFTPRjg,6603
775
779
  lightning_sdk/lightning_cloud/openapi/models/v1_update_index_response.py,sha256=ZZFoJkImB3Kv8aamaSr2NdL4382XnQzvy0z59EPMElg,3016
776
780
  lightning_sdk/lightning_cloud/openapi/models/v1_update_lit_page_response.py,sha256=_wp-nvU-UQarSzQW9-350OXaVslfeWhgDQ0dj8zuZ60,3786
781
+ lightning_sdk/lightning_cloud/openapi/models/v1_update_metrics_stream_visibility_response.py,sha256=NyG_fUoC0E1U4531xpW6C5DGdpkJ59mRjtPZZbBSw_k,3124
777
782
  lightning_sdk/lightning_cloud/openapi/models/v1_update_model_visibility_response.py,sha256=Dw1wFjDbpaR6441qlTj5PqJoQ3uV_rCfbUAJxgNoJBc,3076
778
783
  lightning_sdk/lightning_cloud/openapi/models/v1_update_project_cluster_accelerators_response.py,sha256=9NujcwHJzLFuj66q_AZVdyyZrFiy7_5pwOx89eFdS_U,3142
779
784
  lightning_sdk/lightning_cloud/openapi/models/v1_update_shared_metrics_stream_response.py,sha256=mQaPeGjhJ6EohqmF9MFqRR1NKqvznWmvzBAXgMKlW98,3100
@@ -796,13 +801,15 @@ lightning_sdk/lightning_cloud/openapi/models/v1_upstream_open_ai.py,sha256=jt1qQ
796
801
  lightning_sdk/lightning_cloud/openapi/models/v1_usage.py,sha256=RhhnH9ygScZyExg06WhvMNPPRLSe8FYkIftqF-D9NIU,13408
797
802
  lightning_sdk/lightning_cloud/openapi/models/v1_usage_details.py,sha256=U7qC698Xj5tb3D93ZskG6sDf3lTXE13UTlGeDTvtRU4,14062
798
803
  lightning_sdk/lightning_cloud/openapi/models/v1_usage_report.py,sha256=iH67BcONBSLYzcZpGpKWSOzJTCpuqYt7FU4OUs8BJ9k,6076
799
- lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py,sha256=ghblGjlsWPjrMU1HZ1MCFJOJx6Alzqkhyveb7O3EIXQ,75812
804
+ lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py,sha256=lSQG5aDr8A2_sw3wUwLbjlwTTBY3HzMGSrQsw6lJtg8,74818
800
805
  lightning_sdk/lightning_cloud/openapi/models/v1_user_requested_compute_config.py,sha256=3jeJfpbBpYY2B2Ao2j2N93CMO2CnvmPqndE4Lw3ZfMA,13056
801
806
  lightning_sdk/lightning_cloud/openapi/models/v1_user_requested_flow_compute_config.py,sha256=3WpZ-lf7xPwuYyQDMdP7Uc6-dh3vf5TaaUlcMfesfMk,5208
802
807
  lightning_sdk/lightning_cloud/openapi/models/v1_user_slurm_job_action_response.py,sha256=BdNzXH8Vsf5PHjl9Rd-TVkpAgx1YC9rf8LD0js-ba20,3058
803
808
  lightning_sdk/lightning_cloud/openapi/models/v1_validate_assistant_status_response.py,sha256=3xmSCc2Mipr2I1FsksoFg0FJVuKRxqY_OJ1tSj-jE6M,5007
804
809
  lightning_sdk/lightning_cloud/openapi/models/v1_validate_auto_join_domain_response.py,sha256=xdu6JsdlI3noKRgJR4hZix7vz0K29Im2K9MMqDMCC4I,3082
805
810
  lightning_sdk/lightning_cloud/openapi/models/v1_validate_data_connection_response.py,sha256=kRXkbFCOskylDjPqcNGeFKX9fGVO69FOCyIJoQzNi6E,7141
811
+ lightning_sdk/lightning_cloud/openapi/models/v1_validate_deployment_image_request.py,sha256=rMIqbG5vp7rf_kZIa6QgSuUQMFweC1kAEP2BIW3gy3w,4502
812
+ lightning_sdk/lightning_cloud/openapi/models/v1_validate_deployment_image_response.py,sha256=PbPPG_y1kHylTWu_WUvkpj_5RJTEKwTkdjBt6JebkS4,3088
806
813
  lightning_sdk/lightning_cloud/openapi/models/v1_validate_managed_endpoint_request.py,sha256=k7tGGr12edn9NG7571mEDDj89T9PfLPoTXsHANDdLQg,5281
807
814
  lightning_sdk/lightning_cloud/openapi/models/v1_validate_managed_endpoint_response.py,sha256=bqHRir7_BNlzwUqsEJf_bzfpsfTSlOpkOfAz65JRXCg,3797
808
815
  lightning_sdk/lightning_cloud/openapi/models/v1_validate_managed_model_response.py,sha256=LshfheXdKDqRYgg5Sa5dV0L9CW3BVfFts_f2qqmnH7k,3767
@@ -826,17 +833,22 @@ lightning_sdk/lightning_cloud/utils/data_connection.py,sha256=VN-Gs0a4g3tA9TQCwP
826
833
  lightning_sdk/lightning_cloud/utils/dataset.py,sha256=4nUspe8iAaRPgSYpXA2uAQCgydm78kJzhOIx3C9qKls,2011
827
834
  lightning_sdk/lightning_cloud/utils/name_generator.py,sha256=MkciuA10332V0mcE2PxLIiwWomWE0Fm_gNGK01vwRr4,58046
828
835
  lightning_sdk/lightning_cloud/utils/network.py,sha256=axPgl8rhyPcPjxiztDxyksfxax3VNg2OXL5F5Uc81b4,406
836
+ lightning_sdk/mmt/__init__.py,sha256=ExMu90-96bGBnyp5h0CErQszUGB1-PcjC4-R8_NYbeY,117
837
+ lightning_sdk/mmt/base.py,sha256=lUB8pAKXTjn_WD6vcJIUMxtZQwrzwxYnaPJbaiPPtMw,12548
838
+ lightning_sdk/mmt/mmt.py,sha256=vMAoR3qjb0VRwCXpKpAMxeTEMALmQB9_RK064fTHM8M,11922
839
+ lightning_sdk/mmt/v1.py,sha256=8LjZnMSGgsGLeajuPto3gknJwVRvsGfkYVoo5A_UlO8,7917
840
+ lightning_sdk/mmt/v2.py,sha256=TsJ8PNluyU0WnNdHvEKWkpJxMwjmyFFJZIaJKCgugIM,8201
829
841
  lightning_sdk/services/__init__.py,sha256=gSWUjccEhMI9CIWL_nbrFHUK2S6TM2725mEzrLMfK1Y,225
830
- lightning_sdk/services/file_endpoint.py,sha256=zDRAglvRwwwf0gwKfzSLj-geyAjYodEvCf14qlCJ8II,7567
842
+ lightning_sdk/services/file_endpoint.py,sha256=we5HC_o74J4Y6fSP_31jIizi_I_1FO_Rb2qblspD9eE,7855
831
843
  lightning_sdk/services/utilities.py,sha256=IeOx8hc3F8ZevHeKBysh08BXhJliTNzvKp1gwpEfdik,4087
832
844
  lightning_sdk/services/finetune/__init__.py,sha256=5ewjo_bsk5hwvhGoLRdHBv1nP6LeoXDm5_0DOfzqTXQ,1091
833
845
  lightning_sdk/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
834
846
  lightning_sdk/utils/dynamic.py,sha256=glUTO1JC9APtQ6Gr9SO02a3zr56-sPAXM5C3NrTpgyQ,1959
835
847
  lightning_sdk/utils/enum.py,sha256=h2JRzqoBcSlUdanFHmkj_j5DleBHAu1esQYUsdNI-hU,4106
836
- lightning_sdk/utils/resolve.py,sha256=gU3MSko9Y7rE4jcnVwstNBaW83OFnSgvM-N44Ibrc_A,5148
837
- lightning_sdk-0.1.41.dist-info/LICENSE,sha256=uFIuZwj5z-4TeF2UuacPZ1o17HkvKObT8fY50qN84sg,1064
838
- lightning_sdk-0.1.41.dist-info/METADATA,sha256=TCh-fxl243X8vh1N7ZfoMZoTsDT9J73I8xiNDdmGWwM,3920
839
- lightning_sdk-0.1.41.dist-info/WHEEL,sha256=P9jw-gEje8ByB7_hXoICnHtVCrEwMQh-630tKvQWehc,91
840
- lightning_sdk-0.1.41.dist-info/entry_points.txt,sha256=ye4ni8VbtyMXt6e0f5xIL6Liucg4Wrl02DEfLjiMte0,106
841
- lightning_sdk-0.1.41.dist-info/top_level.txt,sha256=ps8doKILFXmN7F1mHncShmnQoTxKBRPIcchC8TpoBw4,19
842
- lightning_sdk-0.1.41.dist-info/RECORD,,
848
+ lightning_sdk/utils/resolve.py,sha256=RWvlOWLHjaHhR0W0zT3mN719cbzhFfYCKBss38zfv3k,5783
849
+ lightning_sdk-0.1.43.dist-info/LICENSE,sha256=uFIuZwj5z-4TeF2UuacPZ1o17HkvKObT8fY50qN84sg,1064
850
+ lightning_sdk-0.1.43.dist-info/METADATA,sha256=qsepNbeCeaApc3hDy1vhjhXs-sIoKUwYfMVK_MaKVUA,4031
851
+ lightning_sdk-0.1.43.dist-info/WHEEL,sha256=P9jw-gEje8ByB7_hXoICnHtVCrEwMQh-630tKvQWehc,91
852
+ lightning_sdk-0.1.43.dist-info/entry_points.txt,sha256=msB9PJWIJ784dX-OP8by51d4IbKYH3Fj1vCuA9oXjHY,68
853
+ lightning_sdk-0.1.43.dist-info/top_level.txt,sha256=ps8doKILFXmN7F1mHncShmnQoTxKBRPIcchC8TpoBw4,19
854
+ lightning_sdk-0.1.43.dist-info/RECORD,,
@@ -1,3 +1,2 @@
1
1
  [console_scripts]
2
- _mmt = lightning_sdk.cli.mmt:main_cli
3
2
  lightning = lightning_sdk.cli.entrypoint:main_cli
@@ -1,3 +0,0 @@
1
- from lightning_sdk._mmt.mmt import MMT
2
-
3
- __all__ = ["MMT"]
@@ -1,180 +0,0 @@
1
- from abc import abstractmethod
2
- from typing import TYPE_CHECKING, Dict, Optional, Tuple, Union
3
-
4
- if TYPE_CHECKING:
5
- from lightning_sdk.machine import Machine
6
- from lightning_sdk.organization import Organization
7
- from lightning_sdk.status import Status
8
- from lightning_sdk.studio import Studio
9
- from lightning_sdk.teamspace import Teamspace
10
- from lightning_sdk.user import User
11
-
12
- from lightning_sdk.job.base import _BaseJob
13
- from lightning_sdk.job.job import Job
14
-
15
-
16
- class _BaseMMT(_BaseJob):
17
- @classmethod
18
- def run(
19
- cls,
20
- name: str,
21
- machine: "Machine",
22
- num_machines: int,
23
- command: Optional[str] = None,
24
- studio: Union["Studio", str, None] = None,
25
- image: Optional[str] = None,
26
- teamspace: Union[str, "Teamspace", None] = None,
27
- org: Union[str, "Organization", None] = None,
28
- user: Union[str, "User", None] = None,
29
- cluster: Optional[str] = None,
30
- env: Optional[Dict[str, str]] = None,
31
- interruptible: bool = False,
32
- image_credentials: Optional[str] = None,
33
- cluster_auth: bool = False,
34
- artifacts_local: Optional[str] = None,
35
- artifacts_remote: Optional[str] = None,
36
- ) -> "_BaseMMT":
37
- from lightning_sdk.studio import Studio
38
-
39
- if num_machines <= 1:
40
- raise ValueError("Multi-Machine training cannot be run with less than 2 Machines")
41
-
42
- if not name:
43
- raise ValueError("A job needs to have a name!")
44
-
45
- if image is None:
46
- if not isinstance(studio, Studio):
47
- studio = Studio(name=studio, teamspace=teamspace, org=org, user=user, cluster=cluster, create_ok=False)
48
-
49
- # studio is a Studio instance at this point
50
- if teamspace is None:
51
- teamspace = studio.teamspace
52
- else:
53
- teamspace_name = teamspace if isinstance(teamspace, str) else teamspace.name
54
-
55
- if studio.teamspace.name != teamspace_name:
56
- raise ValueError(
57
- "Studio teamspace does not match provided teamspace. "
58
- "Can only run jobs with Studio envs in the teamspace of that Studio."
59
- )
60
-
61
- if cluster is None:
62
- cluster = studio.cluster
63
-
64
- if cluster != studio.cluster:
65
- raise ValueError(
66
- "Studio cluster does not match provided cluster. "
67
- "Can only run jobs with Studio envs in the same cluster."
68
- )
69
-
70
- if image_credentials is not None:
71
- raise ValueError("image_credentials is only supported when using a custom image")
72
-
73
- if cluster_auth:
74
- raise ValueError("cluster_auth is only supported when using a custom image")
75
-
76
- if artifacts_local is not None or artifacts_remote is not None:
77
- raise ValueError(
78
- "Specifying artifacts persistence is supported for docker images only. "
79
- "Other jobs will automatically persist artifacts to the teamspace distributed filesystem."
80
- )
81
-
82
- else:
83
- if studio is not None:
84
- raise RuntimeError(
85
- "image and studio are mutually exclusive as both define the environment to run the job in"
86
- )
87
-
88
- # they either need to specified both or none of them
89
- if bool(artifacts_local) != bool(artifacts_remote):
90
- raise ValueError("Artifact persistence requires both artifacts_local and artifacts_remote to be set")
91
-
92
- if artifacts_remote and len(artifacts_remote.split(":")) != 3:
93
- raise ValueError(
94
- "Artifact persistence requires exactly three arguments separated by colon of kind "
95
- f"<CONNECTION_TYPE>:<CONNECTION_NAME>:<PATH_WITHIN_CONNECTION>, got {artifacts_local}"
96
- )
97
-
98
- inst = cls(name=name, teamspace=teamspace, org=org, user=user, _fetch_job=False)
99
- inst._submit(
100
- num_machines=num_machines,
101
- machine=machine,
102
- cluster=cluster,
103
- command=command,
104
- studio=studio,
105
- image=image,
106
- env=env,
107
- interruptible=interruptible,
108
- image_credentials=image_credentials,
109
- cluster_auth=cluster_auth,
110
- artifacts_local=artifacts_local,
111
- artifacts_remote=artifacts_remote,
112
- )
113
- return inst
114
-
115
- @abstractmethod
116
- def _submit(
117
- self,
118
- num_machines: int,
119
- machine: "Machine",
120
- command: Optional[str] = None,
121
- studio: Optional["Studio"] = None,
122
- image: Optional[str] = None,
123
- env: Optional[Dict[str, str]] = None,
124
- interruptible: bool = False,
125
- cluster: Optional[str] = None,
126
- image_credentials: Optional[str] = None,
127
- cluster_auth: bool = False,
128
- artifacts_local: Optional[str] = None,
129
- artifacts_remote: Optional[str] = None,
130
- ) -> None:
131
- """Submits a job and updates the internal _job attribute as well as the _name attribute."""
132
-
133
- @property
134
- @abstractmethod
135
- def machines(self) -> Tuple["Job", ...]:
136
- pass
137
-
138
- @property
139
- @abstractmethod
140
- def machine(self) -> "Machine":
141
- pass
142
-
143
- @abstractmethod
144
- def stop(self) -> None:
145
- pass
146
-
147
- @abstractmethod
148
- def delete(self) -> None:
149
- pass
150
-
151
- @property
152
- @abstractmethod
153
- def status(self) -> "Status":
154
- pass
155
-
156
- @property
157
- @abstractmethod
158
- def artifact_path(self) -> Optional[str]:
159
- pass
160
-
161
- @property
162
- @abstractmethod
163
- def snapshot_path(self) -> Optional[str]:
164
- pass
165
-
166
- @property
167
- def share_path(self) -> Optional[str]:
168
- return None
169
-
170
- @abstractmethod
171
- def _update_internal_job(self) -> None:
172
- pass
173
-
174
- @property
175
- def name(self) -> str:
176
- return self._name
177
-
178
- @property
179
- def teamspace(self) -> "Teamspace":
180
- return self._teamspace