zenml-nightly 0.70.0.dev20241201__py3-none-any.whl → 0.70.0.dev20241203__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.
zenml/VERSION CHANGED
@@ -1 +1 @@
1
- 0.70.0.dev20241201
1
+ 0.70.0.dev20241203
zenml/cli/__init__.py CHANGED
@@ -1987,7 +1987,7 @@ Secrets management
1987
1987
  ------------------
1988
1988
 
1989
1989
  ZenML offers a way to [securely store secrets associated with your other
1990
- stack components and infrastructure](https://docs.zenml.io/getting-started/deploying-zenml/manage-the-deployed-services/secret-management).
1990
+ stack components and infrastructure](https://docs.zenml.io/getting-started/deploying-zenml/secret-management).
1991
1991
  A ZenML Secret is a collection or grouping of key-value pairs stored by the
1992
1992
  ZenML secrets store. ZenML Secrets are identified by a unique name which
1993
1993
  allows you to fetch or reference them in your pipelines and stacks.
@@ -2083,7 +2083,7 @@ challenge in configuring uninterrupted, secure access to infrastructure
2083
2083
  resources. In ZenML, Service Connectors streamline this process by abstracting
2084
2084
  away the complexity of authentication and help you connect your stack to your
2085
2085
  resources. You can find the full docs on the ZenML service connectors
2086
- [here](https://docs.zenml.io/how-to/auth-management).
2086
+ [here](https://docs.zenml.io/how-to/infrastructure-deployment/auth-management).
2087
2087
 
2088
2088
  The ZenML CLI features a variety of commands to help you manage your service
2089
2089
  connectors. First of all, to explore all the types of service connectors
@@ -2113,7 +2113,7 @@ zenml service-connector register SERVICE_CONNECTOR_NAME \
2113
2113
  ```
2114
2114
 
2115
2115
  For more details on how to create a service connector, please refer to our
2116
- [docs](https://docs.zenml.io/how-to/auth-management).
2116
+ [docs](https://docs.zenml.io/how-to/infrastructure-deployment/auth-management).
2117
2117
 
2118
2118
  To check if your service connector is registered properly, you can `verify` it.
2119
2119
  By doing this, you can both check if it is configured correctly and also, you
@@ -2367,7 +2367,7 @@ defining the pipeline is not in your current directory, the module path consists
2367
2367
  of the full path to the file, separated by dots, e.g.
2368
2368
  `some_directory.some_file.my_pipeline`.
2369
2369
 
2370
- To [build Docker images for your pipeline](https://docs.zenml.io/how-to/customize-docker-builds)
2370
+ To [build Docker images for your pipeline](https://docs.zenml.io/how-to/infrastructure-deployment/customize-docker-builds)
2371
2371
  without actually running the pipeline, use:
2372
2372
 
2373
2373
  ```bash
zenml/cli/base.py CHANGED
@@ -264,7 +264,7 @@ def init(
264
264
  f"will only take effect when you're running ZenML from the initialized "
265
265
  f"repository root, or from a subdirectory. For more information on "
266
266
  f"repositories and configurations, please visit "
267
- f"https://docs.zenml.io/user-guide/starter-guide/understand-stacks."
267
+ f"https://docs.zenml.io/user-guide/production-guide/understand-stacks."
268
268
  )
269
269
 
270
270
 
zenml/cli/pipeline.py CHANGED
@@ -40,6 +40,35 @@ from zenml.utils.yaml_utils import write_yaml
40
40
  logger = get_logger(__name__)
41
41
 
42
42
 
43
+ def _import_pipeline(source: str) -> Pipeline:
44
+ """Import a pipeline.
45
+
46
+ Args:
47
+ source: The pipeline source.
48
+
49
+ Returns:
50
+ The pipeline.
51
+ """
52
+ try:
53
+ pipeline_instance = source_utils.load(source)
54
+ except ModuleNotFoundError as e:
55
+ source_root = source_utils.get_source_root()
56
+ cli_utils.error(
57
+ f"Unable to import module `{e.name}`. Make sure the source path is "
58
+ f"relative to your source root `{source_root}`."
59
+ )
60
+ except AttributeError as e:
61
+ cli_utils.error("Unable to load attribute from module: " + str(e))
62
+
63
+ if not isinstance(pipeline_instance, Pipeline):
64
+ cli_utils.error(
65
+ f"The given source path `{source}` does not resolve to a pipeline "
66
+ "object."
67
+ )
68
+
69
+ return pipeline_instance
70
+
71
+
43
72
  @cli.group(cls=TagGroup, tag=CliCategories.MANAGEMENT_TOOLS)
44
73
  def pipeline() -> None:
45
74
  """Interact with pipelines, runs and schedules."""
@@ -85,22 +114,7 @@ def register_pipeline(
85
114
  "source code root."
86
115
  )
87
116
 
88
- try:
89
- pipeline_instance = source_utils.load(source)
90
- except ModuleNotFoundError as e:
91
- source_root = source_utils.get_source_root()
92
- cli_utils.error(
93
- f"Unable to import module `{e.name}`. Make sure the source path is "
94
- f"relative to your source root `{source_root}`."
95
- )
96
- except AttributeError as e:
97
- cli_utils.error("Unable to load attribute from module: " + str(e))
98
-
99
- if not isinstance(pipeline_instance, Pipeline):
100
- cli_utils.error(
101
- f"The given source path `{source}` does not resolve to a pipeline "
102
- "object."
103
- )
117
+ pipeline_instance = _import_pipeline(source=source)
104
118
 
105
119
  parameters: Dict[str, Any] = {}
106
120
  if parameters_path:
@@ -176,24 +190,9 @@ def build_pipeline(
176
190
  "your source code root."
177
191
  )
178
192
 
179
- try:
180
- pipeline_instance = source_utils.load(source)
181
- except ModuleNotFoundError as e:
182
- source_root = source_utils.get_source_root()
183
- cli_utils.error(
184
- f"Unable to import module `{e.name}`. Make sure the source path is "
185
- f"relative to your source root `{source_root}`."
186
- )
187
- except AttributeError as e:
188
- cli_utils.error("Unable to load attribute from module: " + str(e))
189
-
190
- if not isinstance(pipeline_instance, Pipeline):
191
- cli_utils.error(
192
- f"The given source path `{source}` does not resolve to a pipeline "
193
- "object."
194
- )
195
-
196
193
  with cli_utils.temporary_active_stack(stack_name_or_id=stack_name_or_id):
194
+ pipeline_instance = _import_pipeline(source=source)
195
+
197
196
  pipeline_instance = pipeline_instance.with_options(
198
197
  config_path=config_path
199
198
  )
@@ -277,36 +276,21 @@ def run_pipeline(
277
276
  "your source code root."
278
277
  )
279
278
 
280
- try:
281
- pipeline_instance = source_utils.load(source)
282
- except ModuleNotFoundError as e:
283
- source_root = source_utils.get_source_root()
284
- cli_utils.error(
285
- f"Unable to import module `{e.name}`. Make sure the source path is "
286
- f"relative to your source root `{source_root}`."
287
- )
288
- except AttributeError as e:
289
- cli_utils.error("Unable to load attribute from module: " + str(e))
290
-
291
- if not isinstance(pipeline_instance, Pipeline):
292
- cli_utils.error(
293
- f"The given source path `{source}` does not resolve to a pipeline "
294
- "object."
295
- )
296
-
297
- build: Union[str, PipelineBuildBase, None] = None
298
- if build_path_or_id:
299
- if uuid_utils.is_valid_uuid(build_path_or_id):
300
- build = build_path_or_id
301
- elif os.path.exists(build_path_or_id):
302
- build = PipelineBuildBase.from_yaml(build_path_or_id)
303
- else:
304
- cli_utils.error(
305
- f"The specified build {build_path_or_id} is not a valid UUID "
306
- "or file path."
307
- )
308
-
309
279
  with cli_utils.temporary_active_stack(stack_name_or_id=stack_name_or_id):
280
+ pipeline_instance = _import_pipeline(source=source)
281
+
282
+ build: Union[str, PipelineBuildBase, None] = None
283
+ if build_path_or_id:
284
+ if uuid_utils.is_valid_uuid(build_path_or_id):
285
+ build = build_path_or_id
286
+ elif os.path.exists(build_path_or_id):
287
+ build = PipelineBuildBase.from_yaml(build_path_or_id)
288
+ else:
289
+ cli_utils.error(
290
+ f"The specified build {build_path_or_id} is not a valid UUID "
291
+ "or file path."
292
+ )
293
+
310
294
  pipeline_instance = pipeline_instance.with_options(
311
295
  config_path=config_path,
312
296
  build=build,
@@ -369,24 +353,9 @@ def create_run_template(
369
353
  "init` at your source code root."
370
354
  )
371
355
 
372
- try:
373
- pipeline_instance = source_utils.load(source)
374
- except ModuleNotFoundError as e:
375
- source_root = source_utils.get_source_root()
376
- cli_utils.error(
377
- f"Unable to import module `{e.name}`. Make sure the source path is "
378
- f"relative to your source root `{source_root}`."
379
- )
380
- except AttributeError as e:
381
- cli_utils.error("Unable to load attribute from module: " + str(e))
382
-
383
- if not isinstance(pipeline_instance, Pipeline):
384
- cli_utils.error(
385
- f"The given source path `{source}` does not resolve to a pipeline "
386
- "object."
387
- )
388
-
389
356
  with cli_utils.temporary_active_stack(stack_name_or_id=stack_name_or_id):
357
+ pipeline_instance = _import_pipeline(source=source)
358
+
390
359
  pipeline_instance = pipeline_instance.with_options(
391
360
  config_path=config_path
392
361
  )
@@ -66,7 +66,7 @@ class SecretReferenceMixin(BaseModel):
66
66
  "but future versions of ZenML will require you to pass "
67
67
  "in sensitive information as secrets. Check out the "
68
68
  "documentation on how to configure values with secrets "
69
- "here: https://docs.zenml.io/getting-started/deploying-zenml/manage-the-deployed-services/secret-management"
69
+ "here: https://docs.zenml.io/getting-started/deploying-zenml/secret-management"
70
70
  )
71
71
  continue
72
72
 
@@ -793,7 +793,7 @@ class VertexOrchestrator(ContainerizedOrchestrator, GoogleCredentialsMixin):
793
793
  "set or set to 0. The accelerator type will be ignored. "
794
794
  "To fix this warning, either remove the specified "
795
795
  "accelerator type or set the `gpu_count` using the "
796
- "ResourceSettings (https://docs.zenml.io/how-to/training-with-gpus#specify-resource-requirements-for-steps)."
796
+ "ResourceSettings (https://docs.zenml.io/how-to/advanced-topics/training-with-gpus)."
797
797
  )
798
798
 
799
799
  return dynamic_component
@@ -77,10 +77,12 @@ class NeptuneExperimentTracker(BaseExperimentTracker):
77
77
  NeptuneExperimentTrackerSettings, self.get_settings(info)
78
78
  )
79
79
 
80
- self.run_state.token = self.config.api_token
81
- self.run_state.project = self.config.project
82
- self.run_state.run_name = info.run_name
83
- self.run_state.tags = list(settings.tags)
80
+ self.run_state.initialize(
81
+ project=self.config.project,
82
+ token=self.config.api_token,
83
+ run_name=info.run_name,
84
+ tags=list(settings.tags),
85
+ )
84
86
 
85
87
  def get_step_run_metadata(
86
88
  self, info: "StepRunInfo"
@@ -107,4 +109,4 @@ class NeptuneExperimentTracker(BaseExperimentTracker):
107
109
  """
108
110
  self.run_state.active_run.sync()
109
111
  self.run_state.active_run.stop()
110
- self.run_state.reset_active_run()
112
+ self.run_state.reset()
@@ -20,7 +20,6 @@ import neptune
20
20
 
21
21
  import zenml
22
22
  from zenml.client import Client
23
- from zenml.integrations.constants import NEPTUNE
24
23
  from zenml.utils.singleton import SingletonMetaClass
25
24
 
26
25
  if TYPE_CHECKING:
@@ -29,20 +28,38 @@ if TYPE_CHECKING:
29
28
  _INTEGRATION_VERSION_KEY = "source_code/integrations/zenml"
30
29
 
31
30
 
32
- class InvalidExperimentTrackerSelected(Exception):
33
- """Raised if a Neptune run is fetched while using a different experiment tracker."""
34
-
35
-
36
31
  class RunProvider(metaclass=SingletonMetaClass):
37
32
  """Singleton object used to store and persist a Neptune run state across the pipeline."""
38
33
 
39
34
  def __init__(self) -> None:
40
35
  """Initialize RunProvider. Called with no arguments."""
41
36
  self._active_run: Optional["Run"] = None
42
- self._project: Optional[str]
43
- self._run_name: Optional[str]
44
- self._token: Optional[str]
45
- self._tags: Optional[List[str]]
37
+ self._project: Optional[str] = None
38
+ self._run_name: Optional[str] = None
39
+ self._token: Optional[str] = None
40
+ self._tags: Optional[List[str]] = None
41
+ self._initialized = False
42
+
43
+ def initialize(
44
+ self,
45
+ project: Optional[str] = None,
46
+ token: Optional[str] = None,
47
+ run_name: Optional[str] = None,
48
+ tags: Optional[List[str]] = None,
49
+ ) -> None:
50
+ """Initialize the run state.
51
+
52
+ Args:
53
+ project: The neptune project.
54
+ token: The neptune token.
55
+ run_name: The neptune run name.
56
+ tags: Tags for the neptune run.
57
+ """
58
+ self._project = project
59
+ self._token = token
60
+ self._run_name = run_name
61
+ self._tags = tags
62
+ self._initialized = True
46
63
 
47
64
  @property
48
65
  def project(self) -> Optional[Any]:
@@ -53,15 +70,6 @@ class RunProvider(metaclass=SingletonMetaClass):
53
70
  """
54
71
  return self._project
55
72
 
56
- @project.setter
57
- def project(self, project: str) -> None:
58
- """Setter for project name.
59
-
60
- Args:
61
- project: Neptune project name
62
- """
63
- self._project = project
64
-
65
73
  @property
66
74
  def token(self) -> Optional[Any]:
67
75
  """Getter for API token.
@@ -71,15 +79,6 @@ class RunProvider(metaclass=SingletonMetaClass):
71
79
  """
72
80
  return self._token
73
81
 
74
- @token.setter
75
- def token(self, token: str) -> None:
76
- """Setter for API token.
77
-
78
- Args:
79
- token: Neptune API token
80
- """
81
- self._token = token
82
-
83
82
  @property
84
83
  def run_name(self) -> Optional[Any]:
85
84
  """Getter for run name.
@@ -89,15 +88,6 @@ class RunProvider(metaclass=SingletonMetaClass):
89
88
  """
90
89
  return self._run_name
91
90
 
92
- @run_name.setter
93
- def run_name(self, run_name: str) -> None:
94
- """Setter for run name.
95
-
96
- Args:
97
- run_name: name of the pipeline run
98
- """
99
- self._run_name = run_name
100
-
101
91
  @property
102
92
  def tags(self) -> Optional[Any]:
103
93
  """Getter for run tags.
@@ -107,14 +97,14 @@ class RunProvider(metaclass=SingletonMetaClass):
107
97
  """
108
98
  return self._tags
109
99
 
110
- @tags.setter
111
- def tags(self, tags: List[str]) -> None:
112
- """Setter for run tags.
100
+ @property
101
+ def initialized(self) -> bool:
102
+ """If the run state is initialized.
113
103
 
114
- Args:
115
- tags: list of tags associated with a Neptune run
104
+ Returns:
105
+ If the run state is initialized.
116
106
  """
117
- self._tags = tags
107
+ return self._initialized
118
108
 
119
109
  @property
120
110
  def active_run(self) -> "Run":
@@ -137,9 +127,14 @@ class RunProvider(metaclass=SingletonMetaClass):
137
127
  self._active_run = run
138
128
  return self._active_run
139
129
 
140
- def reset_active_run(self) -> None:
141
- """Resets the active run state to None."""
130
+ def reset(self) -> None:
131
+ """Reset the run state."""
142
132
  self._active_run = None
133
+ self._project = None
134
+ self._run_name = None
135
+ self._token = None
136
+ self._tags = None
137
+ self._initialized = False
143
138
 
144
139
 
145
140
  def get_neptune_run() -> "Run":
@@ -149,14 +144,35 @@ def get_neptune_run() -> "Run":
149
144
  Neptune run object
150
145
 
151
146
  Raises:
152
- InvalidExperimentTrackerSelected: when called while using an experiment tracker other than Neptune
147
+ RuntimeError: When unable to fetch the active neptune run.
153
148
  """
154
- client = Client()
155
- experiment_tracker = client.active_stack.experiment_tracker
156
- if experiment_tracker.flavor == NEPTUNE: # type: ignore
157
- return experiment_tracker.run_state.active_run # type: ignore
158
- raise InvalidExperimentTrackerSelected(
159
- "Fetching a Neptune run works only with the 'neptune' flavor of "
160
- "the experiment tracker. The flavor currently selected is %s"
161
- % experiment_tracker.flavor # type: ignore
149
+ from zenml.integrations.neptune.experiment_trackers import (
150
+ NeptuneExperimentTracker,
162
151
  )
152
+
153
+ experiment_tracker = Client().active_stack.experiment_tracker
154
+
155
+ if not experiment_tracker:
156
+ raise RuntimeError(
157
+ "Unable to get neptune run: Missing experiment tracker in the "
158
+ "active stack."
159
+ )
160
+
161
+ if not isinstance(experiment_tracker, NeptuneExperimentTracker):
162
+ raise RuntimeError(
163
+ "Unable to get neptune run: Experiment tracker in the active "
164
+ f"stack ({experiment_tracker.flavor}) is not a neptune experiment "
165
+ "tracker."
166
+ )
167
+
168
+ run_state = experiment_tracker.run_state
169
+ if not run_state.initialized:
170
+ raise RuntimeError(
171
+ "Unable to get neptune run: The experiment tracker has not been "
172
+ "initialized. To solve this, make sure you use the experiment "
173
+ "tracker in your step. See "
174
+ "https://docs.zenml.io/stack-components/experiment-trackers/neptune#how-do-you-use-it "
175
+ "for more information."
176
+ )
177
+
178
+ return experiment_tracker.run_state.active_run
@@ -111,7 +111,7 @@ class IntegrationRegistry(object):
111
111
  )
112
112
  else:
113
113
  raise KeyError(
114
- f"Version {integration_name} does not exist. "
114
+ f"Integration {integration_name} does not exist. "
115
115
  f"Currently the following integrations are implemented. "
116
116
  f"{self.list_integration_names}"
117
117
  )
@@ -148,7 +148,7 @@ class IntegrationRegistry(object):
148
148
  ].get_uninstall_requirements(target_os=target_os)
149
149
  else:
150
150
  raise KeyError(
151
- f"Version {integration_name} does not exist. "
151
+ f"Integration {integration_name} does not exist. "
152
152
  f"Currently the following integrations are implemented. "
153
153
  f"{self.list_integration_names}"
154
154
  )
@@ -61,7 +61,7 @@ class BaseOrchestratorConfig(StackComponentConfig):
61
61
  "The 'custom_docker_base_image_name' field has been "
62
62
  "deprecated. To use a custom base container image with your "
63
63
  "orchestrators, please use the DockerSettings in your "
64
- "pipeline (see https://docs.zenml.io/how-to/customize-docker-builds)."
64
+ "pipeline (see https://docs.zenml.io/how-to/infrastructure-deployment/customize-docker-builds)."
65
65
  )
66
66
 
67
67
  return data
@@ -61,13 +61,13 @@ def _raise_specific_cloud_exception_if_needed(
61
61
  container_registries: List[ResourcesInfo],
62
62
  ) -> None:
63
63
  AWS_DOCS = (
64
- "https://docs.zenml.io/how-to/auth-management/aws-service-connector"
64
+ "https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/aws-service-connector"
65
65
  )
66
66
  GCP_DOCS = (
67
- "https://docs.zenml.io/how-to/auth-management/gcp-service-connector"
67
+ "https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/gcp-service-connector"
68
68
  )
69
69
  AZURE_DOCS = (
70
- "https://docs.zenml.io/how-to/auth-management/azure-service-connector"
70
+ "https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/azure-service-connector"
71
71
  )
72
72
 
73
73
  if not artifact_stores:
@@ -102,7 +102,7 @@ class StackComponentConfig(BaseModel, ABC):
102
102
  "in sensitive information as secrets. Check out the "
103
103
  "documentation on how to configure your stack "
104
104
  "components with secrets here: "
105
- "https://docs.zenml.io/getting-started/deploying-zenml/manage-the-deployed-services/secret-management"
105
+ "https://docs.zenml.io/getting-started/deploying-zenml/secret-management"
106
106
  )
107
107
  continue
108
108
 
@@ -4062,7 +4062,7 @@ class RestZenStore(BaseZenStore):
4062
4062
  "you should use a service account API key to authenticate to "
4063
4063
  "the server instead of temporary CLI login credentials. For "
4064
4064
  "more information, see "
4065
- "https://docs.zenml.io/how-to/connecting-to-zenml/connect-with-a-service-account"
4065
+ "https://docs.zenml.io/how-to/project-setup-and-management/connecting-to-zenml/connect-with-a-service-account"
4066
4066
  )
4067
4067
 
4068
4068
  if api_key is not None:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: zenml-nightly
3
- Version: 0.70.0.dev20241201
3
+ Version: 0.70.0.dev20241203
4
4
  Summary: ZenML: Write production-ready ML code.
5
5
  Home-page: https://zenml.io
6
6
  License: Apache-2.0
@@ -6,7 +6,7 @@ RELEASE_NOTES.md,sha256=DleauURHESDrTrcVzCVLqPiSM9NIAk5vldvEFMc7qlk,389375
6
6
  ROADMAP.md,sha256=hiLSmr16BH8Dfx7SaQM4JcXCGCVl6mFZPFAwJeDTrJU,407
7
7
  SECURITY.md,sha256=9DepA8y03yvCZLHEfcXLTDH4lUyKHquAdukBsccNN7c,682
8
8
  zenml/README.md,sha256=827dekbOWAs1BpW7VF1a4d7EbwPbjwccX-2zdXBENZo,1777
9
- zenml/VERSION,sha256=QD_a5XnUmIWet3io-lXcLvx6b9GpqpmqpRjmLGrmzLg,19
9
+ zenml/VERSION,sha256=X1k6h9fTwNJHLhvwMrbIeu0zyNdWZlpq_FOYVzRDLMg,19
10
10
  zenml/__init__.py,sha256=SkMObQA41ajqdZqGErN00S1Vf3KAxpLvbZ-OBy5uYoo,2130
11
11
  zenml/actions/__init__.py,sha256=mrt6wPo73iKRxK754_NqsGyJ3buW7RnVeIGXr1xEw8Y,681
12
12
  zenml/actions/base_action.py,sha256=UcaHev6BTuLDwuswnyaPjdA8AgUqB5xPZ-lRtuvf2FU,25553
@@ -33,11 +33,11 @@ zenml/artifacts/external_artifact_config.py,sha256=P172p0JOu8Xx1F8RCQut1dnRpt5lp
33
33
  zenml/artifacts/preexisting_data_materializer.py,sha256=dcahDcHUD3Lvn0-6zE2BG84bkyo_ydAgzBWxtbyJJZQ,3325
34
34
  zenml/artifacts/unmaterialized_artifact.py,sha256=JNPKq_sNifQx5wP8jEw7TGBEi26zwKirPGlWX9uxbJI,1300
35
35
  zenml/artifacts/utils.py,sha256=k4BNl03CQhvC4BMFeXk6TBcF47ca7AtQcVh6t_fn7xY,35132
36
- zenml/cli/__init__.py,sha256=qfFkdj5CLKarKxpjQh7N_1TC6RSPvwHAgFGC6gUHj1c,75617
36
+ zenml/cli/__init__.py,sha256=d239fhufu48sglF4_WJpcvfWTAjHblL9NR75yjQ7AXw,75666
37
37
  zenml/cli/annotator.py,sha256=tEdducGdFn57DFLJVZQ-MyXH1auTGFueRmDc78N-vPQ,6970
38
38
  zenml/cli/artifact.py,sha256=7lsAS52DroBTFkFWxkyb-lIDOGP5jPL_Se_RDG_2jgg,9564
39
39
  zenml/cli/authorized_device.py,sha256=_1PzE3BM2SmwtuzRliEMStvbBRKWQmg_lbwCRtn8dBg,4324
40
- zenml/cli/base.py,sha256=LAiTO3l6K0dCGlVYurjwIrOTNxuyi9ZBMJWeZjsWjYs,28240
40
+ zenml/cli/base.py,sha256=kFG3d6IaYyrJXYgafsJNDJmIPIKL6rY_ScT6AjVppE0,28243
41
41
  zenml/cli/cli.py,sha256=Pnq468IZ4oqzluA_gZ5PsrdnSPEyHcasIH-xI1_8Y_Q,5454
42
42
  zenml/cli/code_repository.py,sha256=7DNJMc7RL8GaU8DwX0mDSViLH9oclqhsX2AU-VWOKb8,6979
43
43
  zenml/cli/config.py,sha256=UI_j0a_zRgEUd2q0zuOi4UgbjiCYjMJ_Y9iSg-wi8Oo,2768
@@ -48,7 +48,7 @@ zenml/cli/integration.py,sha256=O-JbkDMyJfwrzwm--Ddh41siLZ8lDuXwIiCaZvjdCt4,1620
48
48
  zenml/cli/login.py,sha256=xZdDiTbFiHvzvd5o08VRL01Oim5-0NSeKlxpBayAvss,35232
49
49
  zenml/cli/model.py,sha256=hXRXkMUOOf0eTo07WnQHNeeDDQLiH0m76E-xypFLYF0,22993
50
50
  zenml/cli/model_registry.py,sha256=cNAZ3iBa0ofdMD8inQil05yLJq7rWKgadSKMmVdlHOQ,20806
51
- zenml/cli/pipeline.py,sha256=-i9fqMrkm5mYGLJMSoxo1enEkZuGMcVnMuumSCncpK4,20632
51
+ zenml/cli/pipeline.py,sha256=ZK_J_GE1OGZkLCBsdTiHnSh7BBp29QiigtxvQNifxAc,19228
52
52
  zenml/cli/secret.py,sha256=2WxDYg6iodnAVSbVJQvQEYWEgcy0oytcSBVnnyN0JOw,20135
53
53
  zenml/cli/served_model.py,sha256=3w1UcAbg6Geu37fr7ej1_81GBCt3fF7j3Ge799YE4Mc,14974
54
54
  zenml/cli/server.py,sha256=vmNThi0nwNQoNAmLkA_kwcudoNrqR2wVcWNA7y7vfSI,25519
@@ -82,7 +82,7 @@ zenml/config/pipeline_spec.py,sha256=uWpiIfznJvXAiKs1yMIUDT1h1tYEFNO-RDVTYcIv9CE
82
82
  zenml/config/resource_settings.py,sha256=bl3xahx--XS9p1CsTDSuvkZX9Oxb-Zj85UpefR8WrYs,3899
83
83
  zenml/config/retry_config.py,sha256=4UH1xqw0G6fSEbXSNKfmiFEkwadxQef9BGMe3JBm6NI,929
84
84
  zenml/config/schedule.py,sha256=QdezLjIONnEAVPrWFekbetNvkclx_5eJyhza0Prl5Y0,4944
85
- zenml/config/secret_reference_mixin.py,sha256=y2D85qFsJYiZGOVAqqS2qizb0hqaCPviKo6Ss_5pqzg,5891
85
+ zenml/config/secret_reference_mixin.py,sha256=6DOgOH_w1_coNs1NasMjY8SOv0MqzWQZxwrWsfncsgs,5862
86
86
  zenml/config/secrets_store_config.py,sha256=y05zqyQhr_DGrs3IfBGa_FRoZ043hSYRT5wzrx-zHTU,2818
87
87
  zenml/config/server_config.py,sha256=na4muBGzT25vdsaHvy69xSzYEPBCh7PZViZxVGQnjgc,25744
88
88
  zenml/config/settings_resolver.py,sha256=PR9BRm_x1dy7nVKa9UqpeFdck8IEATSW6aWT8FKd-DI,4278
@@ -270,7 +270,7 @@ zenml/integrations/gcp/google_credentials_mixin.py,sha256=bPy3JYCCcyuTmPiVFqbY81
270
270
  zenml/integrations/gcp/image_builders/__init__.py,sha256=2IvTL6U2YpUoxGQXeXew-6WFoL5hHIxkqr4DaA5Ez9w,786
271
271
  zenml/integrations/gcp/image_builders/gcp_image_builder.py,sha256=dNpMJa1TITUOHSn5nj1gWTFwVNmvWz321A_JoTMOqCM,9114
272
272
  zenml/integrations/gcp/orchestrators/__init__.py,sha256=6xLFJKZKQk73fHPF-XdpbQO87zjQNGTsNHjJjLfG_Kg,805
273
- zenml/integrations/gcp/orchestrators/vertex_orchestrator.py,sha256=2C8pMXiyk3DFSCSZxEzYews_uHvmzRmeEHx9vWAkTJA,36947
273
+ zenml/integrations/gcp/orchestrators/vertex_orchestrator.py,sha256=7O-Wh-LTGKOWpjARtbE0eWG_vpq6eSI3UERgUoNwzHA,36923
274
274
  zenml/integrations/gcp/service_connectors/__init__.py,sha256=fdydawaor8KAtMYvRZieiTuA1i5QATxXXgI-yV1lsn8,788
275
275
  zenml/integrations/gcp/service_connectors/gcp_service_connector.py,sha256=E0OIF_6Godw1GCOsiYB_RvqpIZhPbnsY7WqTuIZ90Ec,94875
276
276
  zenml/integrations/gcp/step_operators/__init__.py,sha256=iPkob2LtPIQ-OHszhbNz_ojhoovL6SprmTx37It4EJ8,808
@@ -403,8 +403,8 @@ zenml/integrations/modal/step_operators/__init__.py,sha256=8NYCXe7aNPnldCI9IjcHz
403
403
  zenml/integrations/modal/step_operators/modal_step_operator.py,sha256=J2HiNaGnlP6kDLBnQKz8mQKaoaQLitFkjHhOP_XRWgI,8543
404
404
  zenml/integrations/neptune/__init__.py,sha256=FUaMxVC9uPryIY7reWdzfMcMdsf5T3HjBZ1QjpjEX4Q,1717
405
405
  zenml/integrations/neptune/experiment_trackers/__init__.py,sha256=DJi7lk7NXYrRg3VGPPSEsMycKECDfXL-h2V0A0r7z8Y,833
406
- zenml/integrations/neptune/experiment_trackers/neptune_experiment_tracker.py,sha256=c5CigxkeYGBadcchTOSjZPaDAtAkSzNM9EnaE2dOgc8,3730
407
- zenml/integrations/neptune/experiment_trackers/run_state.py,sha256=fubrQp4LMKvwVCdW-ZapQfY9xcRFZR5CBddssmte2z4,4803
406
+ zenml/integrations/neptune/experiment_trackers/neptune_experiment_tracker.py,sha256=hqEOgyBEQhjcnxvgw2oC2WZ0FAv1ez4VAqa_fJAHeCw,3716
407
+ zenml/integrations/neptune/experiment_trackers/run_state.py,sha256=W-3mnjoVT-lZNVxGm4982jvMYbxC9WNiQ9_0vd4f9SM,5411
408
408
  zenml/integrations/neptune/flavors/__init__.py,sha256=NzORpmtI3Vu7yH1maj5pYd_2gQoN4QR2ZZLy1uPr6uw,975
409
409
  zenml/integrations/neptune/flavors/neptune_experiment_tracker_flavor.py,sha256=dGlRmnPjG5qG1RlcpEmpANDKAigh1N4hE86jvmaC968,3634
410
410
  zenml/integrations/neptune/neptune_constants.py,sha256=-VddhrALS1HMBhGtFiGDKaRahC-qhG0JAF2zAuc3lMM,746
@@ -448,7 +448,7 @@ zenml/integrations/pytorch/utils.py,sha256=IbJTsMb5zYcGlxZj0xKIFQuPHdnizWMd_zmeM
448
448
  zenml/integrations/pytorch_lightning/__init__.py,sha256=tk1Io7xI6HbwHkUauvXMs9xQRb1oploneHCmRIcbeAE,1177
449
449
  zenml/integrations/pytorch_lightning/materializers/__init__.py,sha256=zZsRri9X8YMJy4_h-8_Uss5RHjkFkd-RGF9zKnd713Q,814
450
450
  zenml/integrations/pytorch_lightning/materializers/pytorch_lightning_materializer.py,sha256=dmNXbGLAzbiaFEa2K9ctOiOoyuQ2GNVsDfgcvdV14Is,1245
451
- zenml/integrations/registry.py,sha256=f4_kdSUZFYCO9T7hIMAGVTruo2VaQPclzRE1_CT-poc,7156
451
+ zenml/integrations/registry.py,sha256=L43KXOAW5vi736Ox7mJJgQN3lVrtbf0TwUHA-Gao31o,7164
452
452
  zenml/integrations/s3/__init__.py,sha256=Q7v4V4YuPDcGwHVkbJSX6MDBJoaaC65A16Gy2PQ4xLc,2215
453
453
  zenml/integrations/s3/artifact_stores/__init__.py,sha256=xK8pbJIg66f7BXlJfyCKVRgxxD7KmdAxiuXGtFvenVQ,793
454
454
  zenml/integrations/s3/artifact_stores/s3_artifact_store.py,sha256=0KD2b2-Fi3w5I4tnVh2XnmczwIcsNIjkOHCWGRO3KZE,18059
@@ -674,7 +674,7 @@ zenml/models/v2/misc/service_connector_type.py,sha256=jGJLvIsBB87ZIEeZCLLueUf28H
674
674
  zenml/models/v2/misc/stack_deployment.py,sha256=PgQevLjvHTpsecY_rzrXesr7jiGms7rH_QbFtI2ZIaA,3768
675
675
  zenml/models/v2/misc/user_auth.py,sha256=1-yafNA9qK4wL8ToROjaklTVI7Mj9va0t80_4wm7w3U,6988
676
676
  zenml/orchestrators/__init__.py,sha256=p4Y9Ni7Lp33fZ6UrjgI7qu-rrg8LrlyafCM-K1WC81w,1961
677
- zenml/orchestrators/base_orchestrator.py,sha256=wPsuhMn_KxonBx3ywIRALfaQVImdxI1EFTrXszQS6MQ,12241
677
+ zenml/orchestrators/base_orchestrator.py,sha256=rKC76EVovOIRyRM5x3Y6gNOhnrCLan_vM_d9CU71i68,12267
678
678
  zenml/orchestrators/cache_utils.py,sha256=J5sMmgy-qRJVtTWt5hDjSAR6vPPulOhMJu0m-Y1onO8,4327
679
679
  zenml/orchestrators/containerized_orchestrator.py,sha256=rdebgBW0Bk--JcHcT0NpLkAbyhY0VS5xO1uwWEgkLpA,3230
680
680
  zenml/orchestrators/dag_runner.py,sha256=0F0zOy90ZHad_YUiwG_47JiH7KEVFQ5tLen0kGPvppk,6940
@@ -712,7 +712,7 @@ zenml/service_connectors/__init__.py,sha256=gIBAVUPBZtdO6JtEBCixy9YG4wZRA1mnaxaG
712
712
  zenml/service_connectors/docker_service_connector.py,sha256=_6WPqYCcSUf8JPakipbkJRvaN2ghhY7zCr38WCHG0SI,13218
713
713
  zenml/service_connectors/service_connector.py,sha256=HW8dTE826ZSD1vWQlqQRm8XYq08v7tDZQ8ORnJ5rTcE,55351
714
714
  zenml/service_connectors/service_connector_registry.py,sha256=mCabyKAr7Y6bcAbIFXbir9YrHczDe1ZJ8Bks5bOQouk,9658
715
- zenml/service_connectors/service_connector_utils.py,sha256=h3wfVSPO0sQnARVRnih3l8P7LwkCmAgijThuHp2Z53E,18026
715
+ zenml/service_connectors/service_connector_utils.py,sha256=JlpfqpjftTjQvUSlamg4eSoaWBhDGips0DnJnNb8lwo,18104
716
716
  zenml/services/__init__.py,sha256=8aSLtYlX9EVLB1Se1I4dbhZdTqrjNrAfsn1d_RCc_nk,2800
717
717
  zenml/services/container/__init__.py,sha256=dFHcmlXgNXjUaCR18oGQJ19-I_6f3UeAUURHjqldjTs,668
718
718
  zenml/services/container/container_service.py,sha256=DJIK7DD53Q_mgZByM0oeIyAgkrwN12T5E3QCWjubkLs,18383
@@ -732,7 +732,7 @@ zenml/stack/authentication_mixin.py,sha256=sg7GkpB-Ao9Gsa7Po0jxMn-_mVYUB42etmspZ
732
732
  zenml/stack/flavor.py,sha256=F60xxZaqsNRK51K1g-SIWAK9dFxRQXaIErtr3evQ-ng,9775
733
733
  zenml/stack/flavor_registry.py,sha256=IL0fRrxxQJ9YkCYCeADP7nwWEQo4XBElJY4owMjKGbQ,6108
734
734
  zenml/stack/stack.py,sha256=zpFQ7aOusTKBIwMG4B-chxISEranUo8tvlPu2tMUjPc,32905
735
- zenml/stack/stack_component.py,sha256=sDMpC_vAws1_GeEFhGNEJ6J4EQ9P2Ez18uAd-pO9lmc,29526
735
+ zenml/stack/stack_component.py,sha256=4V111uBLpmsPaNffaQS-fLuz163WFEjsmIFzb_lq7is,29497
736
736
  zenml/stack/stack_validator.py,sha256=hWbvvGIeWLj6NwSsF4GCc6RAxAWvxHXTcBZL9nJvcak,3111
737
737
  zenml/stack/utils.py,sha256=qHMFi8SVMSDFeZTFO4KkvaLUbF-l3B0_JZ5SSMxYrwI,6406
738
738
  zenml/stack_deployments/__init__.py,sha256=-7593cQ_ZgRn774Ol-8AKXXQquIU4DSiaThVEr6TfWM,644
@@ -1230,7 +1230,7 @@ zenml/zen_stores/migrations/versions/ec6307720f92_simplify_model_version_links.p
1230
1230
  zenml/zen_stores/migrations/versions/f3b3964e3a0f_add_oauth_devices.py,sha256=2CR4R-7Vx6j_AXxo-e5Guy6OX-ZnS47HSKSGfqlO-y0,3065
1231
1231
  zenml/zen_stores/migrations/versions/f49904a80aa7_increase_length_of_artifact_table_sources.py,sha256=kLgfDUnQdAb5_SyFx3VKXDLC0YbuBKf9iXRDNeBin7Q,1618
1232
1232
  zenml/zen_stores/migrations/versions/fbd7f18ced1e_increase_step_run_field_lengths.py,sha256=kn-ng5EHe_mmLfffIFbz7T59z-to3oMx8III_4wOsz4,1956
1233
- zenml/zen_stores/rest_zen_store.py,sha256=0gnuy7iz_5mGVYsTs0NY9qlljTvAG9FaT9Fq70INwjk,157455
1233
+ zenml/zen_stores/rest_zen_store.py,sha256=WPgXQdeYUJ853tEKCzDkCHuPKnrwVxpXWQD6s7ypB3I,157484
1234
1234
  zenml/zen_stores/schemas/__init__.py,sha256=vMb0Pyf94aMWZDWpPKuRaxNoMsTp9DZNKSQScm9Vd5I,4339
1235
1235
  zenml/zen_stores/schemas/action_schemas.py,sha256=vNnDF4zRy0eWgNwtcU7yY0JXyqe4I3Nns2LHRHWwiDs,6293
1236
1236
  zenml/zen_stores/schemas/api_key_schemas.py,sha256=pCvoTSXSHz-im6aRt-opSBnmIhw3wDRIsi-NJP5WtCQ,7243
@@ -1276,8 +1276,8 @@ zenml/zen_stores/secrets_stores/sql_secrets_store.py,sha256=Bq1djrUP9saoD7vECjS7
1276
1276
  zenml/zen_stores/sql_zen_store.py,sha256=gq7hwCqXuvABUGHoo6J_fOdf4PGuN88BFWE84KK_-UM,408283
1277
1277
  zenml/zen_stores/template_utils.py,sha256=EKYBgmDLTS_PSMWaIO5yvHPLiQvMqHcsAe6NUCrv-i4,9068
1278
1278
  zenml/zen_stores/zen_store_interface.py,sha256=vf2gKBWfUUPtcGZC35oQB6pPNVzWVyQC8nWxVLjfrxM,92692
1279
- zenml_nightly-0.70.0.dev20241201.dist-info/LICENSE,sha256=wbnfEnXnafPbqwANHkV6LUsPKOtdpsd-SNw37rogLtc,11359
1280
- zenml_nightly-0.70.0.dev20241201.dist-info/METADATA,sha256=HaOhkNuvqdETuCUALytGQxU-vmEIvY37Hm8sbYpQI_s,21208
1281
- zenml_nightly-0.70.0.dev20241201.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
1282
- zenml_nightly-0.70.0.dev20241201.dist-info/entry_points.txt,sha256=QK3ETQE0YswAM2mWypNMOv8TLtr7EjnqAFq1br_jEFE,43
1283
- zenml_nightly-0.70.0.dev20241201.dist-info/RECORD,,
1279
+ zenml_nightly-0.70.0.dev20241203.dist-info/LICENSE,sha256=wbnfEnXnafPbqwANHkV6LUsPKOtdpsd-SNw37rogLtc,11359
1280
+ zenml_nightly-0.70.0.dev20241203.dist-info/METADATA,sha256=qZZHNrbpj8dGXfo9ZYuePjmJKt5XXOo3rsZpQKioRSA,21208
1281
+ zenml_nightly-0.70.0.dev20241203.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
1282
+ zenml_nightly-0.70.0.dev20241203.dist-info/entry_points.txt,sha256=QK3ETQE0YswAM2mWypNMOv8TLtr7EjnqAFq1br_jEFE,43
1283
+ zenml_nightly-0.70.0.dev20241203.dist-info/RECORD,,