lightning-sdk 0.1.3__py3-none-any.whl → 0.1.46__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 (498) hide show
  1. lightning_sdk/__init__.py +12 -2
  2. lightning_sdk/agents.py +46 -0
  3. lightning_sdk/ai_hub.py +185 -0
  4. lightning_sdk/api/__init__.py +4 -0
  5. lightning_sdk/api/agents_api.py +107 -0
  6. lightning_sdk/api/ai_hub_api.py +130 -0
  7. lightning_sdk/api/deployment_api.py +574 -0
  8. lightning_sdk/api/job_api.py +308 -0
  9. lightning_sdk/api/mmt_api.py +188 -0
  10. lightning_sdk/api/org_api.py +1 -3
  11. lightning_sdk/api/studio_api.py +172 -81
  12. lightning_sdk/api/teamspace_api.py +219 -20
  13. lightning_sdk/api/user_api.py +24 -9
  14. lightning_sdk/api/utils.py +429 -48
  15. lightning_sdk/cli/ai_hub.py +49 -0
  16. lightning_sdk/cli/download.py +132 -0
  17. lightning_sdk/cli/entrypoint.py +11 -3
  18. lightning_sdk/cli/run.py +206 -0
  19. lightning_sdk/cli/serve.py +218 -0
  20. lightning_sdk/cli/studios_menu.py +78 -0
  21. lightning_sdk/cli/upload.py +79 -89
  22. lightning_sdk/constants.py +29 -1
  23. lightning_sdk/deployment/__init__.py +25 -0
  24. lightning_sdk/deployment/deployment.py +389 -0
  25. lightning_sdk/helpers.py +49 -0
  26. lightning_sdk/job/__init__.py +5 -0
  27. lightning_sdk/job/base.py +295 -0
  28. lightning_sdk/job/job.py +266 -0
  29. lightning_sdk/job/v1.py +241 -0
  30. lightning_sdk/job/v2.py +193 -0
  31. lightning_sdk/job/work.py +72 -0
  32. lightning_sdk/lightning_cloud/__version__.py +1 -1
  33. lightning_sdk/lightning_cloud/cli/__main__.py +15 -13
  34. lightning_sdk/lightning_cloud/env.py +1 -0
  35. lightning_sdk/lightning_cloud/login.py +12 -8
  36. lightning_sdk/lightning_cloud/openapi/__init__.py +288 -42
  37. lightning_sdk/lightning_cloud/openapi/api/__init__.py +10 -0
  38. lightning_sdk/lightning_cloud/openapi/api/analytics_service_api.py +141 -0
  39. lightning_sdk/lightning_cloud/openapi/api/assistants_service_api.py +1075 -227
  40. lightning_sdk/lightning_cloud/openapi/api/billing_service_api.py +9 -1
  41. lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +992 -233
  42. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +883 -120
  43. lightning_sdk/lightning_cloud/openapi/api/data_connection_service_api.py +10 -5
  44. lightning_sdk/lightning_cloud/openapi/api/deployment_templates_service_api.py +756 -0
  45. lightning_sdk/lightning_cloud/openapi/api/endpoint_service_api.py +422 -1
  46. lightning_sdk/lightning_cloud/openapi/api/experiments_service_api.py +242 -0
  47. lightning_sdk/lightning_cloud/openapi/api/file_system_service_api.py +674 -0
  48. lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py +3823 -0
  49. lightning_sdk/lightning_cloud/openapi/api/lightningapp_instance_service_api.py +158 -594
  50. lightning_sdk/lightning_cloud/openapi/api/lightningapp_v2_service_api.py +0 -1086
  51. lightning_sdk/lightning_cloud/openapi/api/lightningwork_service_api.py +113 -0
  52. lightning_sdk/lightning_cloud/openapi/api/lit_logger_service_api.py +1753 -0
  53. lightning_sdk/lightning_cloud/openapi/api/lit_registry_service_api.py +242 -0
  54. lightning_sdk/lightning_cloud/openapi/api/models_store_api.py +1423 -108
  55. lightning_sdk/lightning_cloud/openapi/api/organizations_service_api.py +421 -1
  56. lightning_sdk/lightning_cloud/openapi/api/profiler_service_api.py +663 -0
  57. lightning_sdk/lightning_cloud/openapi/api/projects_service_api.py +5 -1
  58. lightning_sdk/lightning_cloud/openapi/api/secret_service_api.py +478 -1
  59. lightning_sdk/lightning_cloud/openapi/api/slurm_jobs_user_service_api.py +9 -5
  60. lightning_sdk/lightning_cloud/openapi/api/snowflake_service_api.py +686 -0
  61. lightning_sdk/lightning_cloud/openapi/api/storage_service_api.py +1094 -0
  62. lightning_sdk/lightning_cloud/openapi/api/studio_jobs_service_api.py +4 -4
  63. lightning_sdk/lightning_cloud/openapi/api/user_service_api.py +1081 -34
  64. lightning_sdk/lightning_cloud/openapi/models/__init__.py +278 -40
  65. lightning_sdk/lightning_cloud/openapi/models/affiliatelinks_id_body.py +149 -0
  66. lightning_sdk/lightning_cloud/openapi/models/agentmanagedendpoints_id_body.py +305 -0
  67. lightning_sdk/lightning_cloud/openapi/models/{assistants_id_body.py → agents_id_body.py} +201 -71
  68. lightning_sdk/lightning_cloud/openapi/models/app_id_works_body.py +149 -0
  69. lightning_sdk/lightning_cloud/openapi/models/approveautojoindomain_domain_body.py +123 -0
  70. lightning_sdk/lightning_cloud/openapi/models/apps_id_body1.py +107 -3
  71. lightning_sdk/lightning_cloud/openapi/models/assistant_id_conversations_body.py +1 -27
  72. lightning_sdk/lightning_cloud/openapi/models/{v1_get_cluster_health_response.py → captures_id_body.py} +16 -16
  73. lightning_sdk/lightning_cloud/openapi/models/cloud_space_id_versionpublications_body1.py +27 -1
  74. lightning_sdk/lightning_cloud/openapi/models/cloudspace_id_runs_body.py +27 -1
  75. lightning_sdk/lightning_cloud/openapi/models/cloudspaces_id_body.py +58 -6
  76. lightning_sdk/lightning_cloud/openapi/models/cluster_id_capacityblock_body.py +253 -0
  77. lightning_sdk/lightning_cloud/openapi/models/cluster_id_capacityreservations_body.py +55 -3
  78. lightning_sdk/lightning_cloud/openapi/models/cluster_id_proxies_body.py +123 -0
  79. lightning_sdk/lightning_cloud/openapi/models/create.py +157 -1
  80. lightning_sdk/lightning_cloud/openapi/models/create_deployment_request_defines_a_spec_for_the_job_that_allows_for_autoscaling_jobs.py +383 -0
  81. lightning_sdk/lightning_cloud/openapi/models/deployments_id_body.py +565 -0
  82. lightning_sdk/lightning_cloud/openapi/models/deploymenttemplates_id_body.py +513 -0
  83. lightning_sdk/lightning_cloud/openapi/models/endpoints_id_body.py +43 -17
  84. lightning_sdk/lightning_cloud/openapi/models/experiment_name_variant_name_body.py +123 -0
  85. lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py +107 -1
  86. lightning_sdk/lightning_cloud/openapi/models/externalv1_lightningapp_instance.py +27 -1
  87. lightning_sdk/lightning_cloud/openapi/models/externalv1_user_status.py +27 -1
  88. lightning_sdk/lightning_cloud/openapi/models/fileendpoints_id_body.py +79 -1
  89. lightning_sdk/lightning_cloud/openapi/models/id_codeconfig_body.py +29 -55
  90. lightning_sdk/lightning_cloud/openapi/models/id_engage_body.py +3 -29
  91. lightning_sdk/lightning_cloud/openapi/models/id_engage_body1.py +149 -0
  92. lightning_sdk/lightning_cloud/openapi/models/id_execute_body.py +3 -55
  93. lightning_sdk/lightning_cloud/openapi/models/id_execute_body1.py +175 -0
  94. lightning_sdk/lightning_cloud/openapi/models/id_get_body.py +133 -3
  95. lightning_sdk/lightning_cloud/openapi/models/id_index_body.py +67 -15
  96. lightning_sdk/lightning_cloud/openapi/models/id_index_body2.py +123 -0
  97. lightning_sdk/lightning_cloud/openapi/models/id_index_body3.py +175 -0
  98. lightning_sdk/lightning_cloud/openapi/models/id_reportlogsactivity_body.py +123 -0
  99. lightning_sdk/lightning_cloud/openapi/models/id_start_body.py +29 -3
  100. lightning_sdk/lightning_cloud/openapi/models/id_storage_body.py +52 -26
  101. lightning_sdk/lightning_cloud/openapi/models/id_visibility_body.py +123 -0
  102. lightning_sdk/lightning_cloud/openapi/models/jobs_id_body1.py +27 -1
  103. lightning_sdk/lightning_cloud/openapi/models/jobs_id_body2.py +17 -43
  104. lightning_sdk/lightning_cloud/openapi/models/jobs_id_body3.py +149 -0
  105. lightning_sdk/lightning_cloud/openapi/models/litloggermetrics_id_body.py +175 -0
  106. lightning_sdk/lightning_cloud/openapi/models/litpages_id_body.py +27 -1
  107. lightning_sdk/lightning_cloud/openapi/models/loggermetrics_id_body.py +123 -0
  108. lightning_sdk/lightning_cloud/openapi/models/metrics_stream_id_loggerartifacts_body.py +123 -0
  109. lightning_sdk/lightning_cloud/openapi/models/metricsstream_create_body.py +383 -0
  110. lightning_sdk/lightning_cloud/openapi/models/{v1_cloud_space_id_list.py → metricsstream_delete_body.py} +10 -10
  111. lightning_sdk/lightning_cloud/openapi/models/metricsstream_id_body.py +175 -0
  112. lightning_sdk/lightning_cloud/openapi/models/{v1_upload_model_response.py → model_id_versions_body.py} +25 -51
  113. lightning_sdk/lightning_cloud/openapi/models/model_id_visibility_body.py +123 -0
  114. lightning_sdk/lightning_cloud/openapi/models/models_model_id_body.py +149 -0
  115. lightning_sdk/lightning_cloud/openapi/models/multimachinejobs_id_body.py +123 -0
  116. lightning_sdk/lightning_cloud/openapi/models/org_id_memberships_body.py +27 -1
  117. lightning_sdk/lightning_cloud/openapi/models/orgs_id_body.py +183 -1
  118. lightning_sdk/lightning_cloud/openapi/models/profiler_captures_body.py +279 -0
  119. lightning_sdk/lightning_cloud/openapi/models/profiler_enabled_body.py +149 -0
  120. lightning_sdk/lightning_cloud/openapi/models/project_id_agentmanagedendpoints_body.py +149 -0
  121. lightning_sdk/lightning_cloud/openapi/models/{project_id_assistants_body.py → project_id_agents_body.py} +159 -55
  122. lightning_sdk/lightning_cloud/openapi/models/project_id_cloudspaces_body.py +71 -19
  123. lightning_sdk/lightning_cloud/openapi/models/project_id_fileendpoints_body.py +27 -1
  124. lightning_sdk/lightning_cloud/openapi/models/project_id_jobs_body.py +175 -0
  125. lightning_sdk/lightning_cloud/openapi/models/project_id_litregistry_body.py +123 -0
  126. lightning_sdk/lightning_cloud/openapi/models/project_id_memberships_body.py +53 -1
  127. lightning_sdk/lightning_cloud/openapi/models/{v1_upload_model_request.py → project_id_models_body.py} +70 -70
  128. lightning_sdk/lightning_cloud/openapi/models/project_id_multimachinejobs_body.py +227 -0
  129. lightning_sdk/lightning_cloud/openapi/models/project_id_secrets_body.py +27 -1
  130. lightning_sdk/lightning_cloud/openapi/models/project_id_snowflake_body.py +123 -0
  131. lightning_sdk/lightning_cloud/openapi/models/projects_id_body.py +29 -3
  132. lightning_sdk/lightning_cloud/openapi/models/query_query_id_body.py +175 -0
  133. lightning_sdk/lightning_cloud/openapi/models/secrets_id_body1.py +123 -0
  134. lightning_sdk/lightning_cloud/openapi/models/servers_server_id_body.py +123 -0
  135. lightning_sdk/lightning_cloud/openapi/models/service_artifact_artifact_kind.py +104 -0
  136. lightning_sdk/lightning_cloud/openapi/models/serviceexecution_id_body.py +43 -43
  137. lightning_sdk/lightning_cloud/openapi/models/slurm_jobs_body.py +79 -1
  138. lightning_sdk/lightning_cloud/openapi/models/snowflake_export_body.py +305 -0
  139. lightning_sdk/lightning_cloud/openapi/models/{v1_download_model_response.py → snowflake_query_body.py} +51 -51
  140. lightning_sdk/lightning_cloud/openapi/models/storage_complete_body.py +27 -1
  141. lightning_sdk/lightning_cloud/openapi/models/update.py +105 -1
  142. lightning_sdk/lightning_cloud/openapi/models/upload_id_complete_body.py +149 -0
  143. lightning_sdk/lightning_cloud/openapi/models/upload_id_parts_body.py +149 -0
  144. lightning_sdk/lightning_cloud/openapi/models/user_id_affiliatelinks_body.py +149 -0
  145. lightning_sdk/lightning_cloud/openapi/models/v1_accelerator_quota_info.py +201 -0
  146. lightning_sdk/lightning_cloud/openapi/models/v1_ack_user_storage_violation_response.py +97 -0
  147. lightning_sdk/lightning_cloud/openapi/models/v1_add_job_timing_response.py +97 -0
  148. lightning_sdk/lightning_cloud/openapi/models/v1_affiliate_link.py +435 -0
  149. lightning_sdk/lightning_cloud/openapi/models/v1_agent_job.py +131 -1
  150. lightning_sdk/lightning_cloud/openapi/models/v1_api_pricing_spec.py +149 -0
  151. lightning_sdk/lightning_cloud/openapi/models/v1_app_type.py +104 -0
  152. lightning_sdk/lightning_cloud/openapi/models/v1_append_logger_metrics_response.py +97 -0
  153. lightning_sdk/lightning_cloud/openapi/models/v1_approve_auto_join_domain_response.py +123 -0
  154. lightning_sdk/lightning_cloud/openapi/models/v1_assign_variant_response.py +97 -0
  155. lightning_sdk/lightning_cloud/openapi/models/v1_assistant.py +131 -1
  156. lightning_sdk/lightning_cloud/openapi/models/v1_assistant_knowledge_item_status.py +253 -0
  157. lightning_sdk/lightning_cloud/openapi/models/v1_assistant_knowledge_status.py +123 -0
  158. lightning_sdk/lightning_cloud/openapi/models/v1_assistant_model_status.py +104 -0
  159. lightning_sdk/lightning_cloud/openapi/models/v1_auto_join_domain_validation.py +175 -0
  160. lightning_sdk/lightning_cloud/openapi/models/v1_auto_join_org_response.py +149 -0
  161. lightning_sdk/lightning_cloud/openapi/models/v1_autoscaling_spec.py +305 -0
  162. lightning_sdk/lightning_cloud/openapi/models/v1_autoscaling_target_metric.py +149 -0
  163. lightning_sdk/lightning_cloud/openapi/models/v1_aws_direct_v1.py +133 -3
  164. lightning_sdk/lightning_cloud/openapi/models/v1_batch_update_lightningwork_response.py +97 -0
  165. lightning_sdk/lightning_cloud/openapi/models/v1_body.py +123 -0
  166. lightning_sdk/lightning_cloud/openapi/models/v1_cancellation_metadata.py +149 -0
  167. lightning_sdk/lightning_cloud/openapi/models/v1_capacity_block_offering.py +383 -0
  168. lightning_sdk/lightning_cloud/openapi/models/v1_check_snowflake_connection_response.py +123 -0
  169. lightning_sdk/lightning_cloud/openapi/models/v1_checkbox.py +201 -0
  170. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space.py +136 -6
  171. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_code_version.py +27 -1
  172. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_instance_config.py +1 -53
  173. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_instance_startup_status.py +79 -1
  174. lightning_sdk/lightning_cloud/openapi/models/{v1_cluster_log_service.py → v1_cloud_space_session.py} +49 -49
  175. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_version.py +53 -1
  176. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_accelerator.py +445 -3
  177. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_capacity_reservation.py +55 -3
  178. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_names.py +123 -0
  179. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_proxy.py +201 -0
  180. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_resource_tag.py +149 -0
  181. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_security_options.py +357 -0
  182. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +157 -107
  183. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_state.py +1 -0
  184. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_status.py +17 -43
  185. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_tagging_options.py +175 -0
  186. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_type.py +0 -1
  187. lightning_sdk/lightning_cloud/openapi/models/v1_command_argument.py +79 -1
  188. lightning_sdk/lightning_cloud/openapi/models/v1_complete_model_upload_response.py +97 -0
  189. lightning_sdk/lightning_cloud/openapi/models/v1_complete_multi_part_upload_response.py +97 -0
  190. lightning_sdk/lightning_cloud/openapi/models/v1_completed_part.py +149 -0
  191. lightning_sdk/lightning_cloud/openapi/models/v1_conversation.py +15 -15
  192. lightning_sdk/lightning_cloud/openapi/models/v1_conversation_response_chunk.py +26 -26
  193. lightning_sdk/lightning_cloud/openapi/models/v1_count_metrics_streams_response.py +123 -0
  194. lightning_sdk/lightning_cloud/openapi/models/v1_create_checkout_session_request.py +53 -1
  195. lightning_sdk/lightning_cloud/openapi/models/v1_create_cluster_request.py +27 -1
  196. lightning_sdk/lightning_cloud/openapi/models/v1_create_deployment_template_request.py +539 -0
  197. lightning_sdk/lightning_cloud/openapi/models/v1_create_multi_part_upload_response.py +123 -0
  198. lightning_sdk/lightning_cloud/openapi/models/v1_create_organization_request.py +159 -3
  199. lightning_sdk/lightning_cloud/openapi/models/v1_create_project_request.py +27 -1
  200. lightning_sdk/lightning_cloud/openapi/models/v1_create_shared_metrics_stream_request.py +201 -0
  201. lightning_sdk/lightning_cloud/openapi/models/v1_create_shared_metrics_stream_response.py +123 -0
  202. lightning_sdk/lightning_cloud/openapi/models/v1_create_snowflake_connection_response.py +123 -0
  203. lightning_sdk/lightning_cloud/openapi/models/v1_create_user_secret_request.py +149 -0
  204. lightning_sdk/lightning_cloud/openapi/models/v1_data_connection.py +365 -1
  205. lightning_sdk/lightning_cloud/openapi/models/{v1_cluster_performance_profile.py → v1_data_connection_state.py} +11 -9
  206. lightning_sdk/lightning_cloud/openapi/models/v1_data_path.py +201 -0
  207. lightning_sdk/lightning_cloud/openapi/models/v1_delete_affiliate_link_response.py +97 -0
  208. lightning_sdk/lightning_cloud/openapi/models/v1_delete_cloud_space_session_response.py +97 -0
  209. lightning_sdk/lightning_cloud/openapi/models/v1_delete_cluster_proxy_response.py +97 -0
  210. lightning_sdk/lightning_cloud/openapi/models/v1_delete_deployment_release_response.py +97 -0
  211. lightning_sdk/lightning_cloud/openapi/models/{v1_azure_cluster_driver_status.py → v1_delete_deployment_response.py} +6 -6
  212. lightning_sdk/lightning_cloud/openapi/models/v1_delete_index_response.py +97 -0
  213. lightning_sdk/lightning_cloud/openapi/models/{v1_byom_cluster_driver.py → v1_delete_job_response.py} +6 -6
  214. lightning_sdk/lightning_cloud/openapi/models/{v1_delete_lightningapp_v2_response.py → v1_delete_logger_artifact_response.py} +6 -6
  215. lightning_sdk/lightning_cloud/openapi/models/v1_delete_managed_endpoint_response.py +97 -0
  216. lightning_sdk/lightning_cloud/openapi/models/v1_delete_metrics_stream_response.py +97 -0
  217. lightning_sdk/lightning_cloud/openapi/models/v1_delete_multi_machine_job_response.py +97 -0
  218. lightning_sdk/lightning_cloud/openapi/models/v1_delete_profiler_capture_response.py +97 -0
  219. lightning_sdk/lightning_cloud/openapi/models/{v1_delete_lightningapp_release_response.py → v1_delete_shared_metrics_stream_response.py} +6 -6
  220. lightning_sdk/lightning_cloud/openapi/models/v1_deployment.py +617 -0
  221. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_api.py +227 -0
  222. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_event.py +357 -0
  223. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_event_type.py +104 -0
  224. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_metrics.py +149 -0
  225. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_performance.py +305 -0
  226. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_release.py +331 -0
  227. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_spec.py +201 -0
  228. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_state.py +105 -0
  229. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_status.py +279 -0
  230. lightning_sdk/lightning_cloud/openapi/models/{appsv2_id_body.py → v1_deployment_strategy.py} +39 -39
  231. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template.py +721 -0
  232. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_engagement_response.py +97 -0
  233. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_gallery_response.py +591 -0
  234. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_parameter.py +435 -0
  235. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_parameter_placement.py +106 -0
  236. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_parameter_type.py +106 -0
  237. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_summary.py +591 -0
  238. lightning_sdk/lightning_cloud/openapi/models/{instance_type_availability.py → v1_deployment_template_type.py} +10 -10
  239. lightning_sdk/lightning_cloud/openapi/models/{v1_get_lightningapp_source_code_download_url_response.py → v1_download_job_logs_response.py} +10 -10
  240. lightning_sdk/lightning_cloud/openapi/models/v1_download_service_execution_artifact_response.py +175 -0
  241. lightning_sdk/lightning_cloud/openapi/models/v1_ebs.py +279 -0
  242. lightning_sdk/lightning_cloud/openapi/models/v1_efs_config.py +201 -0
  243. lightning_sdk/lightning_cloud/openapi/models/v1_endpoint.py +53 -27
  244. lightning_sdk/lightning_cloud/openapi/models/v1_endpoint_auth.py +27 -1
  245. lightning_sdk/lightning_cloud/openapi/models/v1_endpoint_type.py +104 -0
  246. lightning_sdk/lightning_cloud/openapi/models/v1_execute_cloud_space_command_response.py +29 -3
  247. lightning_sdk/lightning_cloud/openapi/models/v1_execute_in_cloud_space_session_response.py +97 -0
  248. lightning_sdk/lightning_cloud/openapi/models/v1_execute_snowflake_query_response.py +149 -0
  249. lightning_sdk/lightning_cloud/openapi/models/v1_experiment.py +409 -0
  250. lightning_sdk/lightning_cloud/openapi/models/v1_export_snowflake_query_response.py +123 -0
  251. lightning_sdk/lightning_cloud/openapi/models/v1_file_endpoint.py +79 -1
  252. lightning_sdk/lightning_cloud/openapi/models/{v1_instance_spec.py → v1_filesystem_app.py} +85 -59
  253. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_cloud_space.py +149 -0
  254. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_dataset.py +123 -0
  255. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_job.py +175 -0
  256. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_slurm_job.py +149 -0
  257. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_snowflake_connection.py +123 -0
  258. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_work.py +149 -0
  259. lightning_sdk/lightning_cloud/openapi/models/v1_find_capacity_block_offering_response.py +123 -0
  260. lightning_sdk/lightning_cloud/openapi/models/v1_gcp_data_connection.py +27 -1
  261. lightning_sdk/lightning_cloud/openapi/models/v1_gcs_folder_data_connection.py +123 -0
  262. lightning_sdk/lightning_cloud/openapi/models/v1_get_affiliate_link_response.py +123 -0
  263. lightning_sdk/lightning_cloud/openapi/models/{v1_list_cluster_instance_types_response.py → v1_get_deployment_routing_telemetry_aggregated_response.py} +23 -23
  264. lightning_sdk/lightning_cloud/openapi/models/v1_get_deployment_routing_telemetry_response.py +123 -0
  265. lightning_sdk/lightning_cloud/openapi/models/v1_get_folder_index_response.py +27 -1
  266. lightning_sdk/lightning_cloud/openapi/models/{v1_cluster_driver_status.py → v1_get_job_stats_response.py} +39 -39
  267. lightning_sdk/lightning_cloud/openapi/models/v1_get_job_system_metrics_response.py +123 -0
  268. lightning_sdk/lightning_cloud/openapi/models/v1_get_lightningapp_instance_open_ports_response.py +123 -0
  269. lightning_sdk/lightning_cloud/openapi/models/v1_get_logger_metrics_response.py +123 -0
  270. lightning_sdk/lightning_cloud/openapi/models/v1_get_model_file_upload_urls_response.py +123 -0
  271. lightning_sdk/lightning_cloud/openapi/models/v1_get_model_file_url_response.py +175 -0
  272. lightning_sdk/lightning_cloud/openapi/models/v1_get_model_files_response.py +279 -0
  273. lightning_sdk/lightning_cloud/openapi/models/v1_get_model_files_url_response.py +149 -0
  274. lightning_sdk/lightning_cloud/openapi/models/{v1_lightningwork_cluster_driver.py → v1_get_project_artifact_response.py} +33 -14
  275. lightning_sdk/lightning_cloud/openapi/models/v1_get_project_balance_response.py +27 -1
  276. lightning_sdk/lightning_cloud/openapi/models/v1_get_project_storage_metadata_response.py +383 -0
  277. lightning_sdk/lightning_cloud/openapi/models/v1_get_service_execution_status_response.py +67 -15
  278. lightning_sdk/lightning_cloud/openapi/models/v1_get_snowflake_query_response.py +149 -0
  279. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_balance_response.py +27 -1
  280. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_response.py +105 -1
  281. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_storage_breakdown_response.py +279 -0
  282. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_storage_response.py +201 -0
  283. lightning_sdk/lightning_cloud/openapi/models/v1_google_cloud_direct_v1.py +163 -3
  284. lightning_sdk/lightning_cloud/openapi/models/v1_google_cloud_direct_v1_status.py +123 -0
  285. lightning_sdk/lightning_cloud/openapi/models/v1_header.py +175 -0
  286. lightning_sdk/lightning_cloud/openapi/models/{v1_external_kubeconfig.py → v1_health_check_exec.py} +21 -21
  287. lightning_sdk/lightning_cloud/openapi/models/v1_health_check_http_get.py +149 -0
  288. lightning_sdk/lightning_cloud/openapi/models/v1_ids_logger_metrics.py +123 -0
  289. lightning_sdk/lightning_cloud/openapi/models/v1_input.py +175 -0
  290. lightning_sdk/lightning_cloud/openapi/models/v1_interrupt_server_response.py +97 -0
  291. lightning_sdk/lightning_cloud/openapi/models/v1_job.py +697 -0
  292. lightning_sdk/lightning_cloud/openapi/models/v1_job_health_check_config.py +253 -0
  293. lightning_sdk/lightning_cloud/openapi/models/v1_job_log_entry.py +175 -0
  294. lightning_sdk/lightning_cloud/openapi/models/v1_job_logs_page.py +227 -0
  295. lightning_sdk/lightning_cloud/openapi/models/v1_job_logs_response.py +149 -0
  296. lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +669 -0
  297. lightning_sdk/lightning_cloud/openapi/models/v1_job_timing.py +201 -0
  298. lightning_sdk/lightning_cloud/openapi/models/v1_joinable_organization.py +331 -0
  299. lightning_sdk/lightning_cloud/openapi/models/v1_knowledge_configuration.py +279 -0
  300. lightning_sdk/lightning_cloud/openapi/models/v1_lambda_labs_direct_v1.py +125 -0
  301. lightning_sdk/lightning_cloud/openapi/models/v1_lightning_run.py +27 -1
  302. lightning_sdk/lightning_cloud/openapi/models/v1_lightningapp_instance_spec.py +105 -27
  303. lightning_sdk/lightning_cloud/openapi/models/v1_lightningapp_instance_status.py +53 -1
  304. lightning_sdk/lightning_cloud/openapi/models/v1_lightningwork_spec.py +27 -27
  305. lightning_sdk/lightning_cloud/openapi/models/v1_lightningwork_status.py +81 -3
  306. lightning_sdk/lightning_cloud/openapi/models/v1_list_affiliate_links_response.py +123 -0
  307. lightning_sdk/lightning_cloud/openapi/models/v1_list_cloud_space_python_versions_response.py +123 -0
  308. lightning_sdk/lightning_cloud/openapi/models/v1_list_cloud_space_sessions_response.py +123 -0
  309. lightning_sdk/lightning_cloud/openapi/models/v1_list_cloud_space_tags_response.py +6 -6
  310. lightning_sdk/lightning_cloud/openapi/models/v1_list_cluster_availabilities_response.py +123 -0
  311. lightning_sdk/lightning_cloud/openapi/models/v1_list_cluster_proxies_response.py +123 -0
  312. lightning_sdk/lightning_cloud/openapi/models/v1_list_deployment_events_response.py +123 -0
  313. lightning_sdk/lightning_cloud/openapi/models/v1_list_deployment_releases_response.py +123 -0
  314. lightning_sdk/lightning_cloud/openapi/models/v1_list_deployment_tags_response.py +123 -0
  315. lightning_sdk/lightning_cloud/openapi/models/v1_list_deployment_templates_response.py +175 -0
  316. lightning_sdk/lightning_cloud/openapi/models/v1_list_deployments_response.py +123 -0
  317. lightning_sdk/lightning_cloud/openapi/models/v1_list_experiments_response.py +149 -0
  318. lightning_sdk/lightning_cloud/openapi/models/v1_list_filesystem_apps_response.py +123 -0
  319. lightning_sdk/lightning_cloud/openapi/models/v1_list_filesystem_cloud_spaces_response.py +123 -0
  320. lightning_sdk/lightning_cloud/openapi/models/v1_list_filesystem_datasets_response.py +123 -0
  321. lightning_sdk/lightning_cloud/openapi/models/v1_list_filesystem_jobs_response.py +123 -0
  322. lightning_sdk/lightning_cloud/openapi/models/v1_list_filesystem_slurm_jobs_response.py +123 -0
  323. lightning_sdk/lightning_cloud/openapi/models/v1_list_filesystem_snowflake_response.py +123 -0
  324. lightning_sdk/lightning_cloud/openapi/models/{v1_list_lightningapps_v2_response.py → v1_list_jobs_response.py} +31 -31
  325. lightning_sdk/lightning_cloud/openapi/models/v1_list_joinable_organizations_response.py +123 -0
  326. lightning_sdk/lightning_cloud/openapi/models/v1_list_logger_artifact_response.py +123 -0
  327. lightning_sdk/lightning_cloud/openapi/models/v1_list_metrics_streams_response.py +123 -0
  328. lightning_sdk/lightning_cloud/openapi/models/v1_list_multi_machine_job_events_response.py +123 -0
  329. lightning_sdk/lightning_cloud/openapi/models/v1_list_multi_machine_jobs_response.py +123 -0
  330. lightning_sdk/lightning_cloud/openapi/models/v1_list_new_features_for_user_response.py +123 -0
  331. lightning_sdk/lightning_cloud/openapi/models/v1_list_profiler_captures_response.py +123 -0
  332. lightning_sdk/lightning_cloud/openapi/models/v1_list_project_locked_resources_response.py +123 -0
  333. lightning_sdk/lightning_cloud/openapi/models/v1_list_published_cloud_spaces_response.py +3 -29
  334. lightning_sdk/lightning_cloud/openapi/models/v1_list_published_deployment_templates_response.py +175 -0
  335. lightning_sdk/lightning_cloud/openapi/models/v1_list_service_execution_lightningapp_instances_response.py +175 -0
  336. lightning_sdk/lightning_cloud/openapi/models/v1_lit_page.py +27 -1
  337. lightning_sdk/lightning_cloud/openapi/models/v1_lit_registry_project.py +227 -0
  338. lightning_sdk/lightning_cloud/openapi/models/v1_lit_repository.py +279 -0
  339. lightning_sdk/lightning_cloud/openapi/models/v1_locked_resource.py +227 -0
  340. lightning_sdk/lightning_cloud/openapi/models/v1_logger_artifact.py +227 -0
  341. lightning_sdk/lightning_cloud/openapi/models/v1_machines_selector.py +149 -0
  342. lightning_sdk/lightning_cloud/openapi/models/v1_magic_link_login_request.py +81 -3
  343. lightning_sdk/lightning_cloud/openapi/models/v1_magic_link_login_response.py +53 -1
  344. lightning_sdk/lightning_cloud/openapi/models/v1_managed_endpoint.py +175 -19
  345. lightning_sdk/lightning_cloud/openapi/models/v1_managed_model.py +305 -0
  346. lightning_sdk/lightning_cloud/openapi/models/v1_managed_model_abilities.py +175 -0
  347. lightning_sdk/lightning_cloud/openapi/models/v1_membership.py +79 -1
  348. lightning_sdk/lightning_cloud/openapi/models/v1_message.py +138 -8
  349. lightning_sdk/lightning_cloud/openapi/models/v1_message_content.py +6 -6
  350. lightning_sdk/lightning_cloud/openapi/models/v1_message_content_type.py +103 -0
  351. lightning_sdk/lightning_cloud/openapi/models/v1_metadata.py +131 -1
  352. lightning_sdk/lightning_cloud/openapi/models/v1_metric_value.py +175 -0
  353. lightning_sdk/lightning_cloud/openapi/models/v1_metrics.py +175 -0
  354. lightning_sdk/lightning_cloud/openapi/models/v1_metrics_stream.py +799 -0
  355. lightning_sdk/lightning_cloud/openapi/models/v1_metrics_tags.py +201 -0
  356. lightning_sdk/lightning_cloud/openapi/models/v1_metrics_tracker.py +383 -0
  357. lightning_sdk/lightning_cloud/openapi/models/v1_model.py +95 -17
  358. lightning_sdk/lightning_cloud/openapi/models/v1_model_file.py +175 -0
  359. lightning_sdk/lightning_cloud/openapi/models/v1_model_version_archive.py +131 -1
  360. lightning_sdk/lightning_cloud/openapi/models/v1_mount_target.py +201 -0
  361. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job.py +487 -0
  362. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_event.py +331 -0
  363. lightning_sdk/lightning_cloud/openapi/models/{get_cluster_health_response_health_status.py → v1_multi_machine_job_event_type.py} +9 -9
  364. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_fault_tolerance.py +149 -0
  365. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_fault_tolerance_strategy.py +105 -0
  366. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_state.py +108 -0
  367. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_status.py +305 -0
  368. lightning_sdk/lightning_cloud/openapi/models/v1_named_get_logger_metrics.py +123 -0
  369. lightning_sdk/lightning_cloud/openapi/models/v1_new_feature.py +383 -0
  370. lightning_sdk/lightning_cloud/openapi/models/v1_onboarding_event_request.py +175 -0
  371. lightning_sdk/lightning_cloud/openapi/models/v1_onboarding_event_response.py +97 -0
  372. lightning_sdk/lightning_cloud/openapi/models/v1_organization.py +209 -1
  373. lightning_sdk/lightning_cloud/openapi/models/v1_parameterization_spec.py +227 -0
  374. lightning_sdk/lightning_cloud/openapi/models/v1_path_telemetry.py +123 -0
  375. lightning_sdk/lightning_cloud/openapi/models/v1_phase_type.py +104 -0
  376. lightning_sdk/lightning_cloud/openapi/models/v1_profiler_capture.py +357 -0
  377. lightning_sdk/lightning_cloud/openapi/models/v1_profiler_enabled_response.py +123 -0
  378. lightning_sdk/lightning_cloud/openapi/models/v1_project.py +131 -1
  379. lightning_sdk/lightning_cloud/openapi/models/v1_project_membership.py +263 -3
  380. lightning_sdk/lightning_cloud/openapi/models/v1_project_settings.py +29 -3
  381. lightning_sdk/lightning_cloud/openapi/models/v1_project_storage.py +279 -0
  382. lightning_sdk/lightning_cloud/openapi/models/v1_published_cloud_space_response.py +188 -6
  383. lightning_sdk/lightning_cloud/openapi/models/v1_purchase_capacity_block_response.py +175 -0
  384. lightning_sdk/lightning_cloud/openapi/models/v1_query_param.py +175 -0
  385. lightning_sdk/lightning_cloud/openapi/models/v1_query_result.py +123 -0
  386. lightning_sdk/lightning_cloud/openapi/models/v1_query_result_row.py +123 -0
  387. lightning_sdk/lightning_cloud/openapi/models/v1_refresh_path_response.py +97 -0
  388. lightning_sdk/lightning_cloud/openapi/models/v1_regional_load_balancer.py +149 -0
  389. lightning_sdk/lightning_cloud/openapi/models/v1_report_logs_activity_response.py +97 -0
  390. lightning_sdk/lightning_cloud/openapi/models/v1_request_cluster_access_request.py +175 -0
  391. lightning_sdk/lightning_cloud/openapi/models/v1_request_cluster_access_response.py +97 -0
  392. lightning_sdk/lightning_cloud/openapi/models/{v1_cloud_space_tag.py → v1_resource_tag.py} +18 -18
  393. lightning_sdk/lightning_cloud/openapi/models/v1_resource_visibility.py +123 -0
  394. lightning_sdk/lightning_cloud/openapi/models/v1_resources.py +37 -11
  395. lightning_sdk/lightning_cloud/openapi/models/v1_restore_deployment_release_response.py +97 -0
  396. lightning_sdk/lightning_cloud/openapi/models/v1_rolling_update_strategy.py +149 -0
  397. lightning_sdk/lightning_cloud/openapi/models/v1_rule_condition.py +29 -3
  398. lightning_sdk/lightning_cloud/openapi/models/v1_rule_resource.py +11 -0
  399. lightning_sdk/lightning_cloud/openapi/models/v1_s3_folder_data_connection.py +123 -0
  400. lightning_sdk/lightning_cloud/openapi/models/v1_search_job_logs_response.py +149 -0
  401. lightning_sdk/lightning_cloud/openapi/models/v1_secret.py +107 -3
  402. lightning_sdk/lightning_cloud/openapi/models/{v1_lightningapp_cluster_driver.py → v1_secret_type.py} +10 -9
  403. lightning_sdk/lightning_cloud/openapi/models/v1_select.py +149 -0
  404. lightning_sdk/lightning_cloud/openapi/models/v1_server_check_in_response.py +97 -0
  405. lightning_sdk/lightning_cloud/openapi/models/v1_service_artifact.py +201 -0
  406. lightning_sdk/lightning_cloud/openapi/models/v1_service_execution.py +43 -43
  407. lightning_sdk/lightning_cloud/openapi/models/v1_should_start_syncing_response.py +123 -0
  408. lightning_sdk/lightning_cloud/openapi/models/v1_signed_url.py +149 -0
  409. lightning_sdk/lightning_cloud/openapi/models/v1_slurm_job.py +131 -1
  410. lightning_sdk/lightning_cloud/openapi/models/v1_slurm_node.py +53 -1
  411. lightning_sdk/lightning_cloud/openapi/models/v1_slurm_v1.py +27 -1
  412. lightning_sdk/lightning_cloud/openapi/models/v1_snowflake_data_connection.py +253 -0
  413. lightning_sdk/lightning_cloud/openapi/models/v1_status_code_telemetry.py +123 -0
  414. lightning_sdk/lightning_cloud/openapi/models/v1_storage_asset.py +253 -0
  415. lightning_sdk/lightning_cloud/openapi/models/v1_storage_asset_type.py +105 -0
  416. lightning_sdk/lightning_cloud/openapi/models/v1_studio_job_app.py +1 -0
  417. lightning_sdk/lightning_cloud/openapi/models/v1_system_info.py +617 -0
  418. lightning_sdk/lightning_cloud/openapi/models/v1_telemetry.py +331 -0
  419. lightning_sdk/lightning_cloud/openapi/models/v1_timestamp_code_telemetry.py +123 -0
  420. lightning_sdk/lightning_cloud/openapi/models/v1_transaction.py +27 -1
  421. lightning_sdk/lightning_cloud/openapi/models/v1_transfer_user_balance_request.py +27 -1
  422. lightning_sdk/lightning_cloud/openapi/models/v1_update_billing_subscription_request.py +27 -1
  423. lightning_sdk/lightning_cloud/openapi/models/v1_update_cluster_accelerators_request.py +149 -0
  424. lightning_sdk/lightning_cloud/openapi/models/v1_update_index_response.py +97 -0
  425. lightning_sdk/lightning_cloud/openapi/models/v1_update_metrics_stream_visibility_response.py +97 -0
  426. lightning_sdk/lightning_cloud/openapi/models/v1_update_model_visibility_response.py +97 -0
  427. lightning_sdk/lightning_cloud/openapi/models/v1_update_shared_metrics_stream_response.py +97 -0
  428. lightning_sdk/lightning_cloud/openapi/models/v1_update_snowflake_query_response.py +97 -0
  429. lightning_sdk/lightning_cloud/openapi/models/v1_update_user_request.py +53 -1
  430. lightning_sdk/lightning_cloud/openapi/models/v1_update_user_viewed_new_features_request.py +123 -0
  431. lightning_sdk/lightning_cloud/openapi/models/v1_update_user_viewed_new_features_response.py +97 -0
  432. lightning_sdk/lightning_cloud/openapi/models/v1_upstream_cloud_space.py +97 -19
  433. lightning_sdk/lightning_cloud/openapi/models/v1_upstream_job.py +227 -0
  434. lightning_sdk/lightning_cloud/openapi/models/v1_usage.py +27 -1
  435. lightning_sdk/lightning_cloud/openapi/models/v1_usage_details.py +107 -3
  436. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +1006 -330
  437. lightning_sdk/lightning_cloud/openapi/models/v1_user_requested_compute_config.py +45 -45
  438. lightning_sdk/lightning_cloud/openapi/models/v1_user_requested_flow_compute_config.py +29 -29
  439. lightning_sdk/lightning_cloud/openapi/models/v1_validate_assistant_status_response.py +149 -0
  440. lightning_sdk/lightning_cloud/openapi/models/v1_validate_auto_join_domain_response.py +97 -0
  441. lightning_sdk/lightning_cloud/openapi/models/v1_validate_data_connection_response.py +107 -3
  442. lightning_sdk/lightning_cloud/openapi/models/v1_validate_deployment_image_request.py +149 -0
  443. lightning_sdk/lightning_cloud/openapi/models/v1_validate_deployment_image_response.py +97 -0
  444. lightning_sdk/lightning_cloud/openapi/models/v1_validate_managed_endpoint_request.py +175 -0
  445. lightning_sdk/lightning_cloud/openapi/models/v1_validate_managed_endpoint_response.py +123 -0
  446. lightning_sdk/lightning_cloud/openapi/models/v1_validate_managed_model_response.py +123 -0
  447. lightning_sdk/lightning_cloud/openapi/models/v1_volume.py +175 -0
  448. lightning_sdk/lightning_cloud/openapi/models/v1_vultr_direct_v1.py +125 -0
  449. lightning_sdk/lightning_cloud/openapi/models/validate.py +97 -19
  450. lightning_sdk/lightning_cloud/openapi/models/validateautojoindomain_domain_body.py +123 -0
  451. lightning_sdk/lightning_cloud/openapi/models/version_uploads_body.py +123 -0
  452. lightning_sdk/lightning_cloud/rest_client.py +47 -23
  453. lightning_sdk/lightning_cloud/source_code/logs_socket_api.py +1 -1
  454. lightning_sdk/lightning_cloud/source_code/tar.py +1 -3
  455. lightning_sdk/lightning_cloud/utils/data_connection.py +145 -7
  456. lightning_sdk/machine.py +17 -4
  457. lightning_sdk/mmt/__init__.py +4 -0
  458. lightning_sdk/mmt/base.py +288 -0
  459. lightning_sdk/mmt/mmt.py +282 -0
  460. lightning_sdk/mmt/v1.py +185 -0
  461. lightning_sdk/mmt/v2.py +193 -0
  462. lightning_sdk/models.py +153 -0
  463. lightning_sdk/organization.py +1 -1
  464. lightning_sdk/plugin.py +207 -41
  465. lightning_sdk/services/__init__.py +2 -1
  466. lightning_sdk/services/file_endpoint.py +116 -213
  467. lightning_sdk/services/finetune/__init__.py +13 -15
  468. lightning_sdk/services/utilities.py +99 -26
  469. lightning_sdk/status.py +2 -1
  470. lightning_sdk/studio.py +90 -17
  471. lightning_sdk/teamspace.py +189 -11
  472. lightning_sdk/user.py +1 -1
  473. lightning_sdk/utils/__init__.py +0 -0
  474. lightning_sdk/utils/dynamic.py +61 -0
  475. lightning_sdk/utils/enum.py +116 -0
  476. lightning_sdk/{utils.py → utils/resolve.py} +41 -4
  477. lightning_sdk-0.1.46.dist-info/LICENSE +21 -0
  478. {lightning_sdk-0.1.3.dist-info → lightning_sdk-0.1.46.dist-info}/METADATA +30 -4
  479. {lightning_sdk-0.1.3.dist-info → lightning_sdk-0.1.46.dist-info}/RECORD +482 -204
  480. {lightning_sdk-0.1.3.dist-info → lightning_sdk-0.1.46.dist-info}/WHEEL +1 -1
  481. lightning_sdk/lightning_cloud/openapi/models/app_id_releases_body.py +0 -541
  482. lightning_sdk/lightning_cloud/openapi/models/id_endpoint_body.py +0 -409
  483. lightning_sdk/lightning_cloud/openapi/models/id_get_body1.py +0 -333
  484. lightning_sdk/lightning_cloud/openapi/models/project_id_appsv2_body.py +0 -201
  485. lightning_sdk/lightning_cloud/openapi/models/v1_aws_cluster_driver_spec.py +0 -1039
  486. lightning_sdk/lightning_cloud/openapi/models/v1_aws_cluster_secondary_region_spec.py +0 -253
  487. lightning_sdk/lightning_cloud/openapi/models/v1_azure_cluster_driver_spec.py +0 -227
  488. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_driver.py +0 -175
  489. lightning_sdk/lightning_cloud/openapi/models/v1_container_resources.py +0 -201
  490. lightning_sdk/lightning_cloud/openapi/models/v1_eks_custer_driver_status.py +0 -387
  491. lightning_sdk/lightning_cloud/openapi/models/v1_instance_type.py +0 -305
  492. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_cluster_driver.py +0 -359
  493. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_cluster_status.py +0 -279
  494. lightning_sdk/lightning_cloud/openapi/models/v1_lightningapp_release.py +0 -697
  495. lightning_sdk/lightning_cloud/openapi/models/v1_lightningapp_v2.py +0 -331
  496. lightning_sdk/services/uploader.py +0 -123
  497. {lightning_sdk-0.1.3.dist-info → lightning_sdk-0.1.46.dist-info}/entry_points.txt +0 -0
  498. {lightning_sdk-0.1.3.dist-info → lightning_sdk-0.1.46.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,308 @@
1
+ import time
2
+ from typing import TYPE_CHECKING, Dict, List, Optional
3
+ from urllib.request import urlopen
4
+
5
+ from lightning_sdk.api.utils import (
6
+ _COMPUTE_NAME_TO_MACHINE,
7
+ _MACHINE_TO_COMPUTE_NAME,
8
+ _create_app,
9
+ remove_datetime_prefix,
10
+ )
11
+ from lightning_sdk.api.utils import (
12
+ _get_cloud_url as _cloud_url,
13
+ )
14
+ from lightning_sdk.constants import __GLOBAL_LIGHTNING_UNIQUE_IDS_STORE__
15
+ from lightning_sdk.lightning_cloud.openapi import (
16
+ AppinstancesIdBody,
17
+ Externalv1LightningappInstance,
18
+ Externalv1Lightningwork,
19
+ JobsIdBody1,
20
+ ProjectIdJobsBody,
21
+ V1CloudSpace,
22
+ V1ComputeConfig,
23
+ V1DownloadJobLogsResponse,
24
+ V1DownloadLightningappInstanceLogsResponse,
25
+ V1EnvVar,
26
+ V1Job,
27
+ V1JobSpec,
28
+ V1LightningappInstanceSpec,
29
+ V1LightningappInstanceState,
30
+ V1LightningappInstanceStatus,
31
+ V1LightningworkSpec,
32
+ V1LightningworkState,
33
+ V1ListLightningworkResponse,
34
+ V1UserRequestedComputeConfig,
35
+ )
36
+ from lightning_sdk.lightning_cloud.rest_client import LightningClient
37
+ from lightning_sdk.machine import Machine
38
+
39
+ if TYPE_CHECKING:
40
+ from lightning_sdk.status import Status
41
+
42
+
43
+ class JobApiV1:
44
+ def __init__(self) -> None:
45
+ self._cloud_url = _cloud_url()
46
+ self._client = LightningClient(max_tries=7)
47
+
48
+ def get_job(self, job_name: str, teamspace_id: str) -> Externalv1LightningappInstance:
49
+ try:
50
+ return self._client.lightningapp_instance_service_find_lightningapp_instance(
51
+ project_id=teamspace_id, name=job_name
52
+ )
53
+
54
+ except Exception:
55
+ raise ValueError(f"Job {job_name} does not exist") from None
56
+
57
+ def get_job_status(self, job_id: str, teamspace_id: str) -> V1LightningappInstanceState:
58
+ instance = self._client.lightningapp_instance_service_get_lightningapp_instance(
59
+ project_id=teamspace_id, id=job_id
60
+ )
61
+
62
+ status: V1LightningappInstanceStatus = instance.status
63
+
64
+ if status is not None:
65
+ return status.phase
66
+ return None
67
+
68
+ def stop_job(self, job_id: str, teamspace_id: str) -> None:
69
+ body = AppinstancesIdBody(spec=V1LightningappInstanceSpec(desired_state=V1LightningappInstanceState.STOPPED))
70
+ self._client.lightningapp_instance_service_update_lightningapp_instance(
71
+ project_id=teamspace_id,
72
+ id=job_id,
73
+ body=body,
74
+ )
75
+
76
+ # wait for job to be stopped
77
+ while True:
78
+ status = self.get_job_status(job_id, teamspace_id)
79
+ if status in (
80
+ V1LightningappInstanceState.STOPPED,
81
+ V1LightningappInstanceState.FAILED,
82
+ V1LightningappInstanceState.COMPLETED,
83
+ ):
84
+ break
85
+ time.sleep(1)
86
+
87
+ def delete_job(self, job_id: str, teamspace_id: str) -> None:
88
+ self._client.lightningapp_instance_service_delete_lightningapp_instance(project_id=teamspace_id, id=job_id)
89
+
90
+ def list_works(self, job_id: str, teamspace_id: str) -> List[Externalv1Lightningwork]:
91
+ resp: V1ListLightningworkResponse = self._client.lightningwork_service_list_lightningwork(
92
+ project_id=teamspace_id, app_id=job_id
93
+ )
94
+ return resp.lightningworks
95
+
96
+ def get_work(self, job_id: str, teamspace_id: str, work_id: str) -> Externalv1Lightningwork:
97
+ return self._client.lightningwork_service_get_lightningwork(project_id=teamspace_id, app_id=job_id, id=work_id)
98
+
99
+ def get_machine_from_work(self, work: Externalv1Lightningwork) -> Machine:
100
+ spec: V1LightningworkSpec = work.spec
101
+ # prefer user-requested config if specified
102
+ compute_config: V1UserRequestedComputeConfig = spec.user_requested_compute_config
103
+ compute: str = compute_config.name
104
+ if compute:
105
+ return _COMPUTE_NAME_TO_MACHINE[compute]
106
+ compute_config: V1ComputeConfig = spec.compute_config
107
+ compute: str = compute_config.instance_type
108
+ return _COMPUTE_NAME_TO_MACHINE[compute]
109
+
110
+ def get_studio_name(self, job: Externalv1LightningappInstance) -> str:
111
+ cs: V1CloudSpace = self._client.cloud_space_service_get_cloud_space(
112
+ project_id=job.project_id, id=job.spec.cloud_space_id
113
+ )
114
+ return cs.name
115
+
116
+ def submit_job(
117
+ self,
118
+ name: str,
119
+ command: str,
120
+ studio_id: str,
121
+ teamspace_id: str,
122
+ cloud_account: str,
123
+ machine: Machine,
124
+ interruptible: bool,
125
+ ) -> Externalv1LightningappInstance:
126
+ """Creates an arbitrary app."""
127
+ return _create_app(
128
+ self._client,
129
+ studio_id=studio_id,
130
+ teamspace_id=teamspace_id,
131
+ cloud_account=cloud_account,
132
+ plugin_type="job",
133
+ compute=_MACHINE_TO_COMPUTE_NAME[machine],
134
+ name=name,
135
+ entrypoint=command,
136
+ interruptible=interruptible,
137
+ )
138
+
139
+ def get_status_from_work(self, work: Externalv1Lightningwork) -> "Status":
140
+ from lightning_sdk.status import Status
141
+
142
+ internal_status = work.status.phase
143
+
144
+ if internal_status in (
145
+ V1LightningworkState.UNSPECIFIED,
146
+ V1LightningworkState.IMAGE_BUILDING,
147
+ V1LightningworkState.PENDING,
148
+ V1LightningworkState.NOT_STARTED,
149
+ V1LightningworkState.DELETED,
150
+ ):
151
+ return Status.Pending
152
+
153
+ if internal_status == V1LightningworkState.RUNNING:
154
+ return Status.Running
155
+
156
+ if internal_status == V1LightningworkState.STOPPED:
157
+ return Status.Stopped
158
+
159
+ if internal_status == V1LightningworkState.FAILED:
160
+ return Status.Failed
161
+
162
+ return Status.Pending
163
+
164
+ def get_logs_finished(self, job_id: str, work_id: str, teamspace_id: str) -> str:
165
+ resp: (
166
+ V1DownloadLightningappInstanceLogsResponse
167
+ ) = self._client.lightningapp_instance_service_download_lightningapp_instance_logs(
168
+ project_id=teamspace_id, id=job_id, work_id=work_id
169
+ )
170
+
171
+ data = urlopen(resp.url).read().decode("utf-8")
172
+ return remove_datetime_prefix(str(data))
173
+
174
+
175
+ class JobApiV2:
176
+ v2_job_state_pending = "pending"
177
+ v2_job_state_running = "running"
178
+ v2_job_state_stopped = "stopped"
179
+ v2_job_state_completed = "completed"
180
+ v2_job_state_failed = "failed"
181
+ v2_job_state_stopping = "stopping"
182
+
183
+ def __init__(self) -> None:
184
+ self._cloud_url = _cloud_url()
185
+ self._client = LightningClient(max_tries=7)
186
+
187
+ def submit_job(
188
+ self,
189
+ name: str,
190
+ command: Optional[str],
191
+ cloud_account: Optional[str],
192
+ teamspace_id: str,
193
+ studio_id: Optional[str],
194
+ image: Optional[str],
195
+ machine: Machine,
196
+ interruptible: bool,
197
+ env: Optional[Dict[str, str]],
198
+ image_credentials: Optional[str],
199
+ cloud_account_auth: bool,
200
+ artifacts_local: Optional[str],
201
+ artifacts_remote: Optional[str],
202
+ ) -> V1Job:
203
+ env_vars = []
204
+ if env is not None:
205
+ for k, v in env.items():
206
+ env_vars.append(V1EnvVar(name=k, value=v))
207
+
208
+ instance_name = _MACHINE_TO_COMPUTE_NAME[machine]
209
+
210
+ run_id = __GLOBAL_LIGHTNING_UNIQUE_IDS_STORE__[studio_id] if studio_id is not None else ""
211
+
212
+ spec = V1JobSpec(
213
+ cloudspace_id=studio_id or "",
214
+ cluster_id=cloud_account or "",
215
+ command=command or "",
216
+ env=env_vars,
217
+ image=image or "",
218
+ instance_name=instance_name,
219
+ run_id=run_id,
220
+ spot=interruptible,
221
+ image_cluster_credentials=cloud_account_auth,
222
+ image_secret_ref=image_credentials or "",
223
+ artifacts_source=artifacts_local or "",
224
+ artifacts_destination=artifacts_remote or "",
225
+ )
226
+ body = ProjectIdJobsBody(name=name, spec=spec)
227
+
228
+ job: V1Job = self._client.jobs_service_create_job(project_id=teamspace_id, body=body)
229
+ return job
230
+
231
+ def get_job_by_name(self, name: str, teamspace_id: str) -> V1Job:
232
+ job: V1Job = self._client.jobs_service_find_job(project_id=teamspace_id, name=name)
233
+ return job
234
+
235
+ def get_job(self, job_id: str, teamspace_id: str) -> V1Job:
236
+ job: V1Job = self._client.jobs_service_get_job(project_id=teamspace_id, id=job_id)
237
+ return job
238
+
239
+ def stop_job(self, job_id: str, teamspace_id: str) -> None:
240
+ from lightning_sdk.status import Status
241
+
242
+ current_job = self.get_job(job_id=job_id, teamspace_id=teamspace_id)
243
+
244
+ current_state = self._job_state_to_external(current_job.state)
245
+
246
+ if current_state in (
247
+ Status.Stopped,
248
+ Status.Completed,
249
+ Status.Failed,
250
+ ):
251
+ return
252
+
253
+ if current_state != Status.Stopping:
254
+ update_body = JobsIdBody1(cloudspace_id=current_job.spec.cloudspace_id, state=self.v2_job_state_stopped)
255
+ self._client.jobs_service_update_job(body=update_body, project_id=teamspace_id, id=job_id)
256
+
257
+ while True:
258
+ current_job = self.get_job(job_id=job_id, teamspace_id=teamspace_id)
259
+ if self._job_state_to_external(current_job.state) in (
260
+ Status.Stopped,
261
+ Status.Completed,
262
+ Status.Stopped,
263
+ Status.Failed,
264
+ ):
265
+ break
266
+ time.sleep(1)
267
+
268
+ def delete_job(self, job_id: str, teamspace_id: str, cloudspace_id: Optional[str]) -> None:
269
+ self._client.jobs_service_delete_job(project_id=teamspace_id, id=job_id, cloudspace_id=cloudspace_id or "")
270
+
271
+ def get_logs_finished(self, job_id: str, teamspace_id: str) -> str:
272
+ resp: V1DownloadJobLogsResponse = self._client.jobs_service_download_job_logs(
273
+ project_id=teamspace_id, id=job_id
274
+ )
275
+
276
+ data = urlopen(resp.url).read().decode("utf-8")
277
+ return remove_datetime_prefix(str(data))
278
+
279
+ def get_studio_name(self, job: V1Job) -> str:
280
+ cs: V1CloudSpace = self._client.cloud_space_service_get_cloud_space(
281
+ project_id=job.project_id, id=job.spec.cloudspace_id
282
+ )
283
+ return cs.name
284
+
285
+ def _job_state_to_external(self, state: str) -> "Status":
286
+ from lightning_sdk.status import Status
287
+
288
+ if state == self.v2_job_state_pending:
289
+ return Status.Pending
290
+ if state == self.v2_job_state_running:
291
+ return Status.Running
292
+ if state == self.v2_job_state_stopped:
293
+ return Status.Stopped
294
+ if state == self.v2_job_state_completed:
295
+ return Status.Completed
296
+ if state == self.v2_job_state_failed:
297
+ return Status.Failed
298
+ if state == self.v2_job_state_stopping:
299
+ return Status.Stopping
300
+ return Status.Pending
301
+
302
+ def _get_job_machine_from_spec(self, spec: V1JobSpec) -> "Machine":
303
+ instance_name = spec.instance_name
304
+ instance_type = spec.instance_type
305
+
306
+ return _COMPUTE_NAME_TO_MACHINE.get(
307
+ instance_type, _COMPUTE_NAME_TO_MACHINE.get(instance_name, instance_type or instance_name)
308
+ )
@@ -0,0 +1,188 @@
1
+ import json
2
+ import time
3
+ from typing import TYPE_CHECKING, Dict, List, Optional
4
+
5
+ from lightning_sdk.api.job_api import JobApiV1
6
+ from lightning_sdk.api.utils import (
7
+ _COMPUTE_NAME_TO_MACHINE,
8
+ _MACHINE_TO_COMPUTE_NAME,
9
+ _create_app,
10
+ )
11
+ from lightning_sdk.api.utils import (
12
+ _get_cloud_url as _cloud_url,
13
+ )
14
+ from lightning_sdk.constants import __GLOBAL_LIGHTNING_UNIQUE_IDS_STORE__
15
+ from lightning_sdk.lightning_cloud.openapi import (
16
+ Externalv1LightningappInstance,
17
+ MultimachinejobsIdBody,
18
+ ProjectIdMultimachinejobsBody,
19
+ V1EnvVar,
20
+ V1Job,
21
+ V1JobSpec,
22
+ V1MultiMachineJob,
23
+ V1MultiMachineJobState,
24
+ )
25
+ from lightning_sdk.lightning_cloud.rest_client import LightningClient
26
+ from lightning_sdk.machine import Machine
27
+
28
+ if TYPE_CHECKING:
29
+ from lightning_sdk.status import Status
30
+
31
+
32
+ class MMTApiV1(JobApiV1):
33
+ def __init__(self) -> None:
34
+ self._cloud_url = _cloud_url()
35
+ self._client = LightningClient(max_tries=7)
36
+
37
+ def submit_job(
38
+ self,
39
+ name: str,
40
+ num_machines: int,
41
+ command: Optional[str],
42
+ cloud_account: Optional[str],
43
+ teamspace_id: str,
44
+ studio_id: str,
45
+ machine: Machine,
46
+ interruptible: bool,
47
+ strategy: str,
48
+ ) -> Externalv1LightningappInstance:
49
+ """Creates a multi-machine job with given commands."""
50
+ distributed_args = {
51
+ "cloud_compute": _MACHINE_TO_COMPUTE_NAME[machine],
52
+ "num_instances": num_machines,
53
+ "strategy": strategy,
54
+ }
55
+ return _create_app(
56
+ client=self._client,
57
+ studio_id=studio_id,
58
+ teamspace_id=teamspace_id,
59
+ cloud_account=cloud_account or "",
60
+ plugin_type="distributed_plugin",
61
+ entrypoint=command,
62
+ name=name,
63
+ distributedArguments=json.dumps(distributed_args),
64
+ interruptible=interruptible,
65
+ )
66
+
67
+
68
+ class MMTApiV2:
69
+ def __init__(self) -> None:
70
+ self._cloud_url = _cloud_url()
71
+ self._client = LightningClient(max_tries=7)
72
+
73
+ def submit_job(
74
+ self,
75
+ name: str,
76
+ num_machines: int,
77
+ command: Optional[str],
78
+ cloud_account: Optional[str],
79
+ teamspace_id: str,
80
+ studio_id: Optional[str],
81
+ image: Optional[str],
82
+ machine: Machine,
83
+ interruptible: bool,
84
+ env: Optional[Dict[str, str]],
85
+ image_credentials: Optional[str],
86
+ cloud_account_auth: bool,
87
+ artifacts_local: Optional[str],
88
+ artifacts_remote: Optional[str],
89
+ ) -> V1MultiMachineJob:
90
+ env_vars = []
91
+ if env is not None:
92
+ for k, v in env.items():
93
+ env_vars.append(V1EnvVar(name=k, value=v))
94
+
95
+ instance_name = _MACHINE_TO_COMPUTE_NAME[machine]
96
+
97
+ run_id = __GLOBAL_LIGHTNING_UNIQUE_IDS_STORE__[studio_id] if studio_id is not None else ""
98
+
99
+ spec = V1JobSpec(
100
+ cloudspace_id=studio_id or "",
101
+ cluster_id=cloud_account or "",
102
+ command=command or "",
103
+ entrypoint="sh -c",
104
+ env=env_vars,
105
+ image=image or "",
106
+ instance_name=instance_name,
107
+ run_id=run_id,
108
+ spot=interruptible,
109
+ image_cluster_credentials=cloud_account_auth,
110
+ image_secret_ref=image_credentials or "",
111
+ artifacts_source=artifacts_local or "",
112
+ artifacts_destination=artifacts_remote or "",
113
+ )
114
+ body = ProjectIdMultimachinejobsBody(
115
+ name=name, spec=spec, cluster_id=cloud_account or "", machines=num_machines
116
+ )
117
+
118
+ job: V1MultiMachineJob = self._client.jobs_service_create_multi_machine_job(project_id=teamspace_id, body=body)
119
+ return job
120
+
121
+ def get_job_by_name(self, name: str, teamspace_id: str) -> V1MultiMachineJob:
122
+ job: V1MultiMachineJob = self._client.jobs_service_get_multi_machine_job_by_name(
123
+ project_id=teamspace_id, name=name
124
+ )
125
+ return job
126
+
127
+ def get_job(self, job_id: str, teamspace_id: str) -> V1MultiMachineJob:
128
+ job: V1MultiMachineJob = self._client.jobs_service_get_multi_machine_job(project_id=teamspace_id, id=job_id)
129
+ return job
130
+
131
+ def stop_job(self, job_id: str, teamspace_id: str) -> None:
132
+ from lightning_sdk.status import Status
133
+
134
+ current_job = self.get_job(job_id=job_id, teamspace_id=teamspace_id)
135
+
136
+ current_state = self._job_state_to_external(current_job.desired_state)
137
+
138
+ if current_state in (
139
+ Status.Stopped,
140
+ Status.Completed,
141
+ Status.Failed,
142
+ ):
143
+ return
144
+
145
+ if current_state != Status.Stopped:
146
+ update_body = MultimachinejobsIdBody(desired_state=V1MultiMachineJobState.STOPPED)
147
+ self._client.jobs_service_update_multi_machine_job(body=update_body, project_id=teamspace_id, id=job_id)
148
+
149
+ while True:
150
+ current_job = self.get_job(job_id=job_id, teamspace_id=teamspace_id)
151
+ if self._job_state_to_external(current_job.desired_state) in (
152
+ Status.Stopped,
153
+ Status.Completed,
154
+ Status.Stopped,
155
+ Status.Failed,
156
+ ):
157
+ break
158
+ time.sleep(1)
159
+
160
+ def delete_job(self, job_id: str, teamspace_id: str) -> None:
161
+ self._client.jobs_service_delete_multi_machine_job(project_id=teamspace_id, id=job_id)
162
+
163
+ def list_mmt_subjobs(self, job_id: str, teamspace_id: str) -> List[V1Job]:
164
+ jobs_resp = self._client.jobs_service_list_jobs(project_id=teamspace_id, multi_machine_job_id=job_id)
165
+ return jobs_resp.jobs
166
+
167
+ def _job_state_to_external(self, state: V1MultiMachineJobState) -> "Status":
168
+ from lightning_sdk.status import Status
169
+
170
+ if str(state) == V1MultiMachineJobState.UNSPECIFIED:
171
+ return Status.Pending
172
+ if str(state) == V1MultiMachineJobState.RUNNING:
173
+ return Status.Running
174
+ if str(state) == V1MultiMachineJobState.STOPPED:
175
+ return Status.Stopped
176
+ if str(state) == V1MultiMachineJobState.COMPLETED:
177
+ return Status.Completed
178
+ if str(state) == V1MultiMachineJobState.FAILED:
179
+ return Status.Failed
180
+ return Status.Pending
181
+
182
+ def _get_job_machine_from_spec(self, spec: V1JobSpec) -> "Machine":
183
+ instance_name = spec.instance_name
184
+ instance_type = spec.instance_type
185
+
186
+ return _COMPUTE_NAME_TO_MACHINE.get(
187
+ instance_type, _COMPUTE_NAME_TO_MACHINE.get(instance_name, instance_type or instance_name)
188
+ )
@@ -8,9 +8,7 @@ class OrgApi:
8
8
  """Internal API client for org requests (mainly http requests)."""
9
9
 
10
10
  def __init__(self) -> None:
11
- super().__init__()
12
-
13
- self._client = LightningClient(max_tries=3)
11
+ self._client = LightningClient(max_tries=7)
14
12
 
15
13
  def get_org(self, name: str) -> V1Organization:
16
14
  """Gets the organization from the given name."""