zenml-nightly 0.80.0.dev20250327__py3-none-any.whl → 0.80.0.dev20250328__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 (28) hide show
  1. zenml/VERSION +1 -1
  2. zenml/cli/project.py +5 -1
  3. zenml/integrations/databricks/__init__.py +6 -3
  4. zenml/integrations/deepchecks/__init__.py +5 -2
  5. zenml/integrations/evidently/__init__.py +5 -2
  6. zenml/integrations/facets/__init__.py +5 -2
  7. zenml/integrations/feast/__init__.py +4 -2
  8. zenml/integrations/great_expectations/__init__.py +4 -2
  9. zenml/integrations/huggingface/__init__.py +4 -2
  10. zenml/integrations/integration.py +6 -1
  11. zenml/integrations/langchain/materializers/openai_embedding_materializer.py +5 -9
  12. zenml/integrations/langchain/materializers/vector_store_materializer.py +3 -7
  13. zenml/integrations/llama_index/materializers/document_materializer.py +2 -6
  14. zenml/integrations/llama_index/materializers/gpt_index_materializer.py +2 -7
  15. zenml/integrations/mlflow/__init__.py +15 -4
  16. zenml/integrations/seldon/__init__.py +4 -2
  17. zenml/integrations/tensorboard/__init__.py +3 -1
  18. zenml/integrations/tensorflow/__init__.py +4 -3
  19. zenml/integrations/whylogs/__init__.py +4 -2
  20. zenml/utils/requirements_utils.py +12 -3
  21. zenml/zen_server/template_execution/utils.py +14 -5
  22. zenml/zen_stores/rest_zen_store.py +1 -3
  23. zenml/zen_stores/sql_zen_store.py +1 -5
  24. {zenml_nightly-0.80.0.dev20250327.dist-info → zenml_nightly-0.80.0.dev20250328.dist-info}/METADATA +1 -1
  25. {zenml_nightly-0.80.0.dev20250327.dist-info → zenml_nightly-0.80.0.dev20250328.dist-info}/RECORD +28 -28
  26. {zenml_nightly-0.80.0.dev20250327.dist-info → zenml_nightly-0.80.0.dev20250328.dist-info}/LICENSE +0 -0
  27. {zenml_nightly-0.80.0.dev20250327.dist-info → zenml_nightly-0.80.0.dev20250328.dist-info}/WHEEL +0 -0
  28. {zenml_nightly-0.80.0.dev20250327.dist-info → zenml_nightly-0.80.0.dev20250328.dist-info}/entry_points.txt +0 -0
zenml/VERSION CHANGED
@@ -1 +1 @@
1
- 0.80.0.dev20250327
1
+ 0.80.0.dev20250328
zenml/cli/project.py CHANGED
@@ -50,10 +50,14 @@ def list_projects(ctx: click.Context, /, **kwargs: Any) -> None:
50
50
  with console.status("Listing projects...\n"):
51
51
  projects = client.list_projects(**kwargs)
52
52
  if projects:
53
+ try:
54
+ active_project = [client.active_project]
55
+ except Exception:
56
+ active_project = []
53
57
  cli_utils.print_pydantic_models(
54
58
  projects,
55
59
  exclude_columns=["id", "created", "updated"],
56
- active_models=[Client().active_project],
60
+ active_models=active_project,
57
61
  show_active=not is_sorted_or_filtered(ctx),
58
62
  )
59
63
  else:
@@ -34,11 +34,14 @@ class DatabricksIntegration(Integration):
34
34
  REQUIREMENTS_IGNORED_ON_UNINSTALL = ["numpy", "pandas"]
35
35
 
36
36
  @classmethod
37
- def get_requirements(cls, target_os: Optional[str] = None) -> List[str]:
37
+ def get_requirements(
38
+ cls, target_os: Optional[str] = None, python_version: Optional[str] = None
39
+ ) -> List[str]:
38
40
  """Method to get the requirements for the integration.
39
41
 
40
42
  Args:
41
43
  target_os: The target operating system to get the requirements for.
44
+ python_version: The Python version to use for the requirements.
42
45
 
43
46
  Returns:
44
47
  A list of requirements.
@@ -47,8 +50,8 @@ class DatabricksIntegration(Integration):
47
50
  from zenml.integrations.pandas import PandasIntegration
48
51
 
49
52
  return cls.REQUIREMENTS + \
50
- NumpyIntegration.get_requirements(target_os=target_os) + \
51
- PandasIntegration.get_requirements(target_os=target_os)
53
+ NumpyIntegration.get_requirements(target_os=target_os, python_version=python_version) + \
54
+ PandasIntegration.get_requirements(target_os=target_os, python_version=python_version)
52
55
 
53
56
  @classmethod
54
57
  def flavors(cls) -> List[Type[Flavor]]:
@@ -58,11 +58,14 @@ class DeepchecksIntegration(Integration):
58
58
  from zenml.integrations.deepchecks import materializers # noqa
59
59
 
60
60
  @classmethod
61
- def get_requirements(cls, target_os: Optional[str] = None) -> List[str]:
61
+ def get_requirements(
62
+ cls, target_os: Optional[str] = None, python_version: Optional[str] = None
63
+ ) -> List[str]:
62
64
  """Method to get the requirements for the integration.
63
65
 
64
66
  Args:
65
67
  target_os: The target operating system to get the requirements for.
68
+ python_version: The Python version to use for the requirements.
66
69
 
67
70
  Returns:
68
71
  A list of requirements.
@@ -70,7 +73,7 @@ class DeepchecksIntegration(Integration):
70
73
  from zenml.integrations.pandas import PandasIntegration
71
74
 
72
75
  return cls.REQUIREMENTS + \
73
- PandasIntegration.get_requirements(target_os=target_os)
76
+ PandasIntegration.get_requirements(target_os=target_os, python_version=python_version)
74
77
 
75
78
  @classmethod
76
79
  def flavors(cls) -> List[Type[Flavor]]:
@@ -60,11 +60,14 @@ class EvidentlyIntegration(Integration):
60
60
  REQUIREMENTS_IGNORED_ON_UNINSTALL = ["tenacity", "pandas"]
61
61
 
62
62
  @classmethod
63
- def get_requirements(cls, target_os: Optional[str] = None) -> List[str]:
63
+ def get_requirements(
64
+ cls, target_os: Optional[str] = None, python_version: Optional[str] = None
65
+ ) -> List[str]:
64
66
  """Method to get the requirements for the integration.
65
67
 
66
68
  Args:
67
69
  target_os: The target operating system to get the requirements for.
70
+ python_version: The Python version to use for the requirements.
68
71
 
69
72
  Returns:
70
73
  A list of requirements.
@@ -72,7 +75,7 @@ class EvidentlyIntegration(Integration):
72
75
  from zenml.integrations.pandas import PandasIntegration
73
76
 
74
77
  return cls.REQUIREMENTS + \
75
- PandasIntegration.get_requirements(target_os=target_os)
78
+ PandasIntegration.get_requirements(target_os=target_os, python_version=python_version)
76
79
 
77
80
  @classmethod
78
81
  def flavors(cls) -> List[Type[Flavor]]:
@@ -31,11 +31,14 @@ class FacetsIntegration(Integration):
31
31
  from zenml.integrations.facets import materializers # noqa
32
32
 
33
33
  @classmethod
34
- def get_requirements(cls, target_os: Optional[str] = None) -> List[str]:
34
+ def get_requirements(
35
+ cls, target_os: Optional[str] = None, python_version: Optional[str] = None
36
+ ) -> List[str]:
35
37
  """Method to get the requirements for the integration.
36
38
 
37
39
  Args:
38
40
  target_os: The target operating system to get the requirements for.
41
+ python_version: The Python version to use for the requirements.
39
42
 
40
43
  Returns:
41
44
  A list of requirements.
@@ -43,5 +46,5 @@ class FacetsIntegration(Integration):
43
46
  from zenml.integrations.pandas import PandasIntegration
44
47
 
45
48
  return cls.REQUIREMENTS + \
46
- PandasIntegration.get_requirements(target_os=target_os)
49
+ PandasIntegration.get_requirements(target_os=target_os, python_version=python_version)
47
50
 
@@ -46,11 +46,13 @@ class FeastIntegration(Integration):
46
46
  return [FeastFeatureStoreFlavor]
47
47
 
48
48
  @classmethod
49
- def get_requirements(cls, target_os: Optional[str] = None) -> List[str]:
49
+ def get_requirements(cls, target_os: Optional[str] = None, python_version: Optional[str] = None
50
+ ) -> List[str]:
50
51
  """Method to get the requirements for the integration.
51
52
 
52
53
  Args:
53
54
  target_os: The target operating system to get the requirements for.
55
+ python_version: The Python version to use for the requirements.
54
56
 
55
57
  Returns:
56
58
  A list of requirements.
@@ -58,5 +60,5 @@ class FeastIntegration(Integration):
58
60
  from zenml.integrations.pandas import PandasIntegration
59
61
 
60
62
  return cls.REQUIREMENTS + \
61
- PandasIntegration.get_requirements(target_os=target_os)
63
+ PandasIntegration.get_requirements(target_os=target_os, python_version=python_version)
62
64
 
@@ -53,11 +53,13 @@ class GreatExpectationsIntegration(Integration):
53
53
  return [GreatExpectationsDataValidatorFlavor]
54
54
 
55
55
  @classmethod
56
- def get_requirements(cls, target_os: Optional[str] = None) -> List[str]:
56
+ def get_requirements(cls, target_os: Optional[str] = None, python_version: Optional[str] = None
57
+ ) -> List[str]:
57
58
  """Method to get the requirements for the integration.
58
59
 
59
60
  Args:
60
61
  target_os: The target operating system to get the requirements for.
62
+ python_version: The Python version to use for the requirements.
61
63
 
62
64
  Returns:
63
65
  A list of requirements.
@@ -65,4 +67,4 @@ class GreatExpectationsIntegration(Integration):
65
67
  from zenml.integrations.pandas import PandasIntegration
66
68
 
67
69
  return cls.REQUIREMENTS + \
68
- PandasIntegration.get_requirements(target_os=target_os)
70
+ PandasIntegration.get_requirements(target_os=target_os, python_version=python_version)
@@ -37,11 +37,13 @@ class HuggingfaceIntegration(Integration):
37
37
  from zenml.integrations.huggingface import services
38
38
 
39
39
  @classmethod
40
- def get_requirements(cls, target_os: Optional[str] = None) -> List[str]:
40
+ def get_requirements(cls, target_os: Optional[str] = None, python_version: Optional[str] = None
41
+ ) -> List[str]:
41
42
  """Defines platform specific requirements for the integration.
42
43
 
43
44
  Args:
44
45
  target_os: The target operating system.
46
+ python_version: The Python version to use for the requirements.
45
47
 
46
48
  Returns:
47
49
  A list of requirements.
@@ -59,7 +61,7 @@ class HuggingfaceIntegration(Integration):
59
61
  from zenml.integrations.pandas import PandasIntegration
60
62
 
61
63
  return requirements + \
62
- PandasIntegration.get_requirements(target_os=target_os)
64
+ PandasIntegration.get_requirements(target_os=target_os, python_version=python_version)
63
65
 
64
66
  @classmethod
65
67
  def flavors(cls) -> List[Type[Flavor]]:
@@ -133,11 +133,16 @@ class Integration(metaclass=IntegrationMeta):
133
133
  return True
134
134
 
135
135
  @classmethod
136
- def get_requirements(cls, target_os: Optional[str] = None) -> List[str]:
136
+ def get_requirements(
137
+ cls,
138
+ target_os: Optional[str] = None,
139
+ python_version: Optional[str] = None,
140
+ ) -> List[str]:
137
141
  """Method to get the requirements for the integration.
138
142
 
139
143
  Args:
140
144
  target_os: The target operating system to get the requirements for.
145
+ python_version: The Python version to use for the requirements.
141
146
 
142
147
  Returns:
143
148
  A list of requirements.
@@ -13,21 +13,17 @@
13
13
  # permissions and limitations under the License.
14
14
  """Implementation of the Langchain OpenAI embedding materializer."""
15
15
 
16
- import sys
17
- from typing import TYPE_CHECKING, Any, ClassVar, Tuple, Type
16
+ from typing import Any, ClassVar, Tuple, Type
17
+
18
+ from langchain_community.embeddings import (
19
+ OpenAIEmbeddings,
20
+ )
18
21
 
19
22
  from zenml.enums import ArtifactType
20
23
  from zenml.materializers.cloudpickle_materializer import (
21
24
  CloudpickleMaterializer,
22
25
  )
23
26
 
24
- if TYPE_CHECKING and sys.version_info < (3, 8):
25
- OpenAIEmbeddings = Any
26
- else:
27
- from langchain_community.embeddings import (
28
- OpenAIEmbeddings,
29
- )
30
-
31
27
 
32
28
  class LangchainOpenaiEmbeddingMaterializer(CloudpickleMaterializer):
33
29
  """Materializer for Langchain OpenAI Embeddings."""
@@ -13,19 +13,15 @@
13
13
  # permissions and limitations under the License.
14
14
  """Implementation of the langchain vector store materializer."""
15
15
 
16
- import sys
17
- from typing import TYPE_CHECKING, Any, ClassVar, Tuple, Type
16
+ from typing import Any, ClassVar, Tuple, Type
17
+
18
+ from langchain.vectorstores.base import VectorStore
18
19
 
19
20
  from zenml.enums import ArtifactType
20
21
  from zenml.materializers.cloudpickle_materializer import (
21
22
  CloudpickleMaterializer,
22
23
  )
23
24
 
24
- if TYPE_CHECKING and sys.version_info < (3, 8):
25
- VectorStore = Any
26
- else:
27
- from langchain.vectorstores.base import VectorStore
28
-
29
25
 
30
26
  class LangchainVectorStoreMaterializer(CloudpickleMaterializer):
31
27
  """Handle langchain vector store objects."""
@@ -25,12 +25,8 @@
25
25
  # from zenml.metadata.metadata_types import MetadataType
26
26
 
27
27
 
28
- # if TYPE_CHECKING and sys.version_info < (3, 8):
29
- # Document = Any
30
- # LCDocument = Any
31
- # else:
32
- # from langchain.docstore.document import Document as LCDocument
33
- # from llama_index.readers.schema.base import Document
28
+ # from langchain.docstore.document import Document as LCDocument
29
+ # from llama_index.readers.schema.base import Document
34
30
 
35
31
 
36
32
  # class LlamaIndexDocumentMaterializer(LangchainDocumentMaterializer):
@@ -34,13 +34,8 @@
34
34
  # DEFAULT_FILENAME = "index.json"
35
35
  # DEFAULT_FAISS_FILENAME = "faiss_index.json"
36
36
 
37
- # if TYPE_CHECKING and sys.version_info < (3, 8):
38
- # BaseGPTIndex = Any
39
- # GPTFaissIndex = Any
40
- # T = TypeVar("T", bound=Any)
41
- # else:
42
- # from llama_index.indices.base import BaseGPTIndex
43
- # from llama_index.indices.vector_store import GPTFaissIndex
37
+ # from llama_index.indices.base import BaseGPTIndex
38
+ # from llama_index.indices.vector_store import GPTFaissIndex
44
39
 
45
40
  # T = TypeVar("T", bound=BaseGPTIndex[Any])
46
41
 
@@ -16,6 +16,7 @@
16
16
  The MLflow integrations currently enables you to use MLflow tracking as a
17
17
  convenient way to visualize your experiment runs within the MLflow UI.
18
18
  """
19
+ from packaging import version
19
20
  from typing import List, Type, Optional
20
21
 
21
22
  from zenml.integrations.constants import MLFLOW
@@ -45,17 +46,21 @@ class MlflowIntegration(Integration):
45
46
  ]
46
47
 
47
48
  @classmethod
48
- def get_requirements(cls, target_os: Optional[str] = None) -> List[str]:
49
+ def get_requirements(
50
+ cls, target_os: Optional[str] = None, python_version: Optional[str] = None
51
+ ) -> List[str]:
49
52
  """Method to get the requirements for the integration.
50
53
 
51
54
  Args:
52
55
  target_os: The target operating system to get the requirements for.
56
+ python_version: The Python version to use for the requirements.
53
57
 
54
58
  Returns:
55
59
  A list of requirements.
56
60
  """
57
61
  from zenml.integrations.numpy import NumpyIntegration
58
62
  from zenml.integrations.pandas import PandasIntegration
63
+
59
64
 
60
65
  reqs = [
61
66
  "mlflow>=2.1.1,<2.21.0",
@@ -71,7 +76,13 @@ class MlflowIntegration(Integration):
71
76
  # downgrade will not happen.
72
77
  "pydantic>=2.8.0,<2.9.0",
73
78
  ]
74
- if sys.version_info.minor >= 12:
79
+
80
+ if python_version:
81
+ version_minor = version.parse(python_version).minor
82
+ else:
83
+ version_minor = sys.version_info.minor
84
+
85
+ if version_minor >= 12:
75
86
  logger.debug(
76
87
  "The MLflow integration on Python 3.12 and above is not yet "
77
88
  "fully supported: The extra dependencies 'mlserver' and "
@@ -83,8 +94,8 @@ class MlflowIntegration(Integration):
83
94
  "mlserver-mlflow>=1.3.3",
84
95
  ])
85
96
 
86
- reqs.extend(NumpyIntegration.get_requirements(target_os=target_os))
87
- reqs.extend(PandasIntegration.get_requirements(target_os=target_os))
97
+ reqs.extend(NumpyIntegration.get_requirements(target_os=target_os, python_version=python_version))
98
+ reqs.extend(PandasIntegration.get_requirements(target_os=target_os, python_version=python_version))
88
99
  return reqs
89
100
 
90
101
  @classmethod
@@ -53,11 +53,13 @@ class SeldonIntegration(Integration):
53
53
  return [SeldonModelDeployerFlavor]
54
54
 
55
55
  @classmethod
56
- def get_requirements(cls, target_os: Optional[str] = None) -> List[str]:
56
+ def get_requirements(cls, target_os: Optional[str] = None, python_version: Optional[str] = None
57
+ ) -> List[str]:
57
58
  """Method to get the requirements for the integration.
58
59
 
59
60
  Args:
60
61
  target_os: The target operating system to get the requirements for.
62
+ python_version: The Python version to use for the requirements.
61
63
 
62
64
  Returns:
63
65
  A list of requirements.
@@ -65,5 +67,5 @@ class SeldonIntegration(Integration):
65
67
  from zenml.integrations.numpy import NumpyIntegration
66
68
 
67
69
  return cls.REQUIREMENTS + \
68
- NumpyIntegration.get_requirements(target_os=target_os)
70
+ NumpyIntegration.get_requirements(target_os=target_os, python_version=python_version)
69
71
 
@@ -25,11 +25,13 @@ class TensorBoardIntegration(Integration):
25
25
  REQUIREMENTS = []
26
26
 
27
27
  @classmethod
28
- def get_requirements(cls, target_os: Optional[str] = None) -> List[str]:
28
+ def get_requirements(cls, target_os: Optional[str] = None, python_version: Optional[str] = None
29
+ ) -> List[str]:
29
30
  """Defines platform specific requirements for the integration.
30
31
 
31
32
  Args:
32
33
  target_os: The target operating system.
34
+ python_version: The Python version to use for the requirements.
33
35
 
34
36
  Returns:
35
37
  A list of requirements.
@@ -41,11 +41,13 @@ class TensorflowIntegration(Integration):
41
41
  from zenml.integrations.tensorflow import materializers # noqa
42
42
 
43
43
  @classmethod
44
- def get_requirements(cls, target_os: Optional[str] = None) -> List[str]:
44
+ def get_requirements(cls, target_os: Optional[str] = None, python_version: Optional[str] = None
45
+ ) -> List[str]:
45
46
  """Defines platform specific requirements for the integration.
46
47
 
47
48
  Args:
48
49
  target_os: The target operating system.
50
+ python_version: The Python version to use for the requirements.
49
51
 
50
52
  Returns:
51
53
  A list of requirements.
@@ -60,7 +62,6 @@ class TensorflowIntegration(Integration):
60
62
  "tensorflow>=2.12,<2.15",
61
63
  "tensorflow_io>=0.24.0",
62
64
  ]
63
- if sys.version_info.minor == 8:
64
- requirements.append("typing-extensions>=4.6.1")
65
+
65
66
  return requirements
66
67
 
@@ -50,11 +50,13 @@ class WhylogsIntegration(Integration):
50
50
  return [WhylogsDataValidatorFlavor]
51
51
 
52
52
  @classmethod
53
- def get_requirements(cls, target_os: Optional[str] = None) -> List[str]:
53
+ def get_requirements(cls, target_os: Optional[str] = None, python_version: Optional[str] = None
54
+ ) -> List[str]:
54
55
  """Method to get the requirements for the integration.
55
56
 
56
57
  Args:
57
58
  target_os: The target operating system to get the requirements for.
59
+ python_version: The Python version to use for the requirements.
58
60
 
59
61
  Returns:
60
62
  A list of requirements.
@@ -62,6 +64,6 @@ class WhylogsIntegration(Integration):
62
64
  from zenml.integrations.pandas import PandasIntegration
63
65
 
64
66
  return cls.REQUIREMENTS + \
65
- PandasIntegration.get_requirements(target_os=target_os)
67
+ PandasIntegration.get_requirements(target_os=target_os, python_version=python_version)
66
68
 
67
69
 
@@ -13,7 +13,7 @@
13
13
  # permissions and limitations under the License.
14
14
  """Requirement utils."""
15
15
 
16
- from typing import TYPE_CHECKING, List, Set, Tuple
16
+ from typing import TYPE_CHECKING, List, Optional, Set, Tuple
17
17
 
18
18
  from zenml.integrations.utils import get_integration_for_module
19
19
 
@@ -23,11 +23,13 @@ if TYPE_CHECKING:
23
23
 
24
24
  def get_requirements_for_stack(
25
25
  stack: "StackResponse",
26
+ python_version: Optional[str] = None,
26
27
  ) -> Tuple[List[str], List[str]]:
27
28
  """Get requirements for a stack model.
28
29
 
29
30
  Args:
30
31
  stack: The stack for which to get the requirements.
32
+ python_version: The Python version to use for the requirements.
31
33
 
32
34
  Returns:
33
35
  Tuple of PyPI and APT requirements of the stack.
@@ -41,7 +43,10 @@ def get_requirements_for_stack(
41
43
  (
42
44
  component_pypi_requirements,
43
45
  component_apt_packages,
44
- ) = get_requirements_for_component(component=component)
46
+ ) = get_requirements_for_component(
47
+ component=component,
48
+ python_version=python_version,
49
+ )
45
50
  pypi_requirements = pypi_requirements.union(
46
51
  component_pypi_requirements
47
52
  )
@@ -52,11 +57,13 @@ def get_requirements_for_stack(
52
57
 
53
58
  def get_requirements_for_component(
54
59
  component: "ComponentResponse",
60
+ python_version: Optional[str] = None,
55
61
  ) -> Tuple[List[str], List[str]]:
56
62
  """Get requirements for a component model.
57
63
 
58
64
  Args:
59
65
  component: The component for which to get the requirements.
66
+ python_version: The Python version to use for the requirements.
60
67
 
61
68
  Returns:
62
69
  Tuple of PyPI and APT requirements of the component.
@@ -66,6 +73,8 @@ def get_requirements_for_component(
66
73
  )
67
74
 
68
75
  if integration:
69
- return integration.get_requirements(), integration.APT_PACKAGES
76
+ return integration.get_requirements(
77
+ python_version=python_version
78
+ ), integration.APT_PACKAGES
70
79
  else:
71
80
  return [], []
@@ -149,11 +149,6 @@ def run_template(
149
149
  )
150
150
 
151
151
  def _task() -> None:
152
- (
153
- pypi_requirements,
154
- apt_packages,
155
- ) = requirements_utils.get_requirements_for_stack(stack=stack)
156
-
157
152
  if build.python_version:
158
153
  version_info = version.parse(build.python_version)
159
154
  python_version = f"{version_info.major}.{version_info.minor}"
@@ -162,6 +157,13 @@ def run_template(
162
157
  f"{sys.version_info.major}.{sys.version_info.minor}"
163
158
  )
164
159
 
160
+ (
161
+ pypi_requirements,
162
+ apt_packages,
163
+ ) = requirements_utils.get_requirements_for_stack(
164
+ stack=stack, python_version=python_version
165
+ )
166
+
165
167
  dockerfile = generate_dockerfile(
166
168
  pypi_requirements=pypi_requirements,
167
169
  apt_packages=apt_packages,
@@ -169,6 +171,10 @@ def run_template(
169
171
  python_version=python_version,
170
172
  )
171
173
 
174
+ # building a docker image with requirements and apt packages from the
175
+ # stack only (no code). Ideally, only orchestrator requirements should
176
+ # be added to the docker image, but we have to instantiate the entire
177
+ # stack to get the orchestrator to run pipelines.
172
178
  image_hash = generate_image_hash(dockerfile=dockerfile)
173
179
 
174
180
  runner_image = workload_manager().build_and_push_image(
@@ -182,6 +188,9 @@ def run_template(
182
188
  workload_id=new_deployment.id,
183
189
  message="Starting pipeline run.",
184
190
  )
191
+
192
+ # could do this same thing with a step operator, but we need some
193
+ # minor changes to the abstract interface to support that.
185
194
  workload_manager().run(
186
195
  workload_id=new_deployment.id,
187
196
  image=runner_image,
@@ -4369,8 +4369,6 @@ class RestZenStore(BaseZenStore):
4369
4369
  CredentialsNotValid: if the request fails due to invalid
4370
4370
  client credentials.
4371
4371
  """
4372
- params = {k: str(v) for k, v in params.items()} if params else {}
4373
-
4374
4372
  self.session.headers.update(
4375
4373
  {source_context.name: source_context.get().value}
4376
4374
  )
@@ -4396,7 +4394,7 @@ class RestZenStore(BaseZenStore):
4396
4394
  self.session.request(
4397
4395
  method,
4398
4396
  url,
4399
- params=params,
4397
+ params=params if params else {},
4400
4398
  verify=self.config.verify_ssl,
4401
4399
  timeout=timeout or self.config.http_timeout,
4402
4400
  **kwargs,
@@ -8804,11 +8804,7 @@ class SqlZenStore(BaseZenStore):
8804
8804
  # We pass the zenml_schemas module as the globals dict to
8805
8805
  # _evaluate, because this is where the schema classes are
8806
8806
  # defined
8807
- if sys.version_info < (3, 9):
8808
- # For Python versions <3.9, leave out the third parameter to
8809
- # _evaluate
8810
- target_schema = schema_ref._evaluate(vars(zenml_schemas), {})
8811
- elif sys.version_info >= (3, 12, 4):
8807
+ if sys.version_info >= (3, 12, 4):
8812
8808
  target_schema = schema_ref._evaluate(
8813
8809
  vars(zenml_schemas), {}, recursive_guard=frozenset()
8814
8810
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: zenml-nightly
3
- Version: 0.80.0.dev20250327
3
+ Version: 0.80.0.dev20250328
4
4
  Summary: ZenML: Write production-ready ML code.
5
5
  License: Apache-2.0
6
6
  Keywords: machine learning,production,pipeline,mlops,devops
@@ -1,5 +1,5 @@
1
1
  zenml/README.md,sha256=827dekbOWAs1BpW7VF1a4d7EbwPbjwccX-2zdXBENZo,1777
2
- zenml/VERSION,sha256=aOovWdLqRIV4qVkeYqC1inlhULjhqv_F5RCcFDdaXWc,19
2
+ zenml/VERSION,sha256=mZbp26e6VxV3bgT7JnLKRQOEASov0tJg3ZWrdZnKGa0,19
3
3
  zenml/__init__.py,sha256=CKEyepFK-7akXYiMrNVh92Nb01Cjs23w4_YyI6sgdc8,2242
4
4
  zenml/actions/__init__.py,sha256=mrt6wPo73iKRxK754_NqsGyJ3buW7RnVeIGXr1xEw8Y,681
5
5
  zenml/actions/base_action.py,sha256=UcaHev6BTuLDwuswnyaPjdA8AgUqB5xPZ-lRtuvf2FU,25553
@@ -42,7 +42,7 @@ zenml/cli/login.py,sha256=-tPuTaWctRDkWZOcY4Af2uens6_oEWFkehl8ITeKFHk,38836
42
42
  zenml/cli/model.py,sha256=7lmeMLwD3BIWaw_P3WBFRe42Twfvb11K67p_xmvRWH0,22817
43
43
  zenml/cli/model_registry.py,sha256=zzxWXXFhKu2B1Wp0u7prKVnN1ftM-JdGdQwlD-5G-QM,20786
44
44
  zenml/cli/pipeline.py,sha256=Vlz1OgGb1Ep-4Ekgd-Wz5SmieWigfx56i8wA5BGl228,19222
45
- zenml/cli/project.py,sha256=MD0HNHc5HSOYvG-mMNJGvDXv0DlGCZsnSDBzwEhQo9s,6407
45
+ zenml/cli/project.py,sha256=oo9rxjwcX9Mi-0ZtiTMOoajQ8JrEkl23BcNFZxjfhj0,6536
46
46
  zenml/cli/secret.py,sha256=zwt07v0xoIf_dLf-qY5CFdbKepBEuwmXD2HIMcLe_xU,20164
47
47
  zenml/cli/served_model.py,sha256=3w1UcAbg6Geu37fr7ej1_81GBCt3fF7j3Ge799YE4Mc,14974
48
48
  zenml/cli/server.py,sha256=EmElo8MlPujj15waddSN7wb7M7vu0HCfkIFgILGLL6Q,26130
@@ -195,7 +195,7 @@ zenml/integrations/comet/experiment_trackers/comet_experiment_tracker.py,sha256=
195
195
  zenml/integrations/comet/flavors/__init__.py,sha256=x-XK-YwHMxz3zZPoIXo3X5vq_5VYUJAnsIoEX_ZooOU,883
196
196
  zenml/integrations/comet/flavors/comet_experiment_tracker_flavor.py,sha256=Rkk1UtEVY2MQBKbUHKxYQpDTWndkOYF8KuKuMGZAb24,3706
197
197
  zenml/integrations/constants.py,sha256=hbRRrkXz4qBFFZOl81G_2u7O-gWLU8DTSy43HlyUDUY,2071
198
- zenml/integrations/databricks/__init__.py,sha256=9xEp81jN5F3oFvtU43GHG5bJyWOJCJJqVqZj1b-lvPU,2371
198
+ zenml/integrations/databricks/__init__.py,sha256=8iVVrH0rZZBGRu4ZTFoSeCdIBu0WlUg9pLXMShifW54,2561
199
199
  zenml/integrations/databricks/flavors/__init__.py,sha256=S-BZ3R9iKGOw-aUltR8I0ULEe2-LKGTIZhQv9TlnXfk,1122
200
200
  zenml/integrations/databricks/flavors/databricks_model_deployer_flavor.py,sha256=eDyYVqO2x1A9qgGICKJx5Z3qiUuTMfW9R3NZUO8OiRk,3591
201
201
  zenml/integrations/databricks/flavors/databricks_orchestrator_flavor.py,sha256=j4l5CK7MGEcSTUM179Iig_Lp-RmaR7bYCr9lBdV4NHg,5216
@@ -208,7 +208,7 @@ zenml/integrations/databricks/services/__init__.py,sha256=Sve9TXrgzs7PH_rFq4ReqA
208
208
  zenml/integrations/databricks/services/databricks_deployment.py,sha256=RM2aIiOvoafoYmZXJ7oa2qKskW5QjT8C2gP8ZY40ZUs,14568
209
209
  zenml/integrations/databricks/utils/__init__.py,sha256=yujBPgdRCo_7dnl3osKvv9gwKtxMJlzShD4nTWJu_mw,657
210
210
  zenml/integrations/databricks/utils/databricks_utils.py,sha256=Zy0VJlyI_riUrg3aKXz4m_UlUCxi8xni3TuFk2zn5G8,2967
211
- zenml/integrations/deepchecks/__init__.py,sha256=4W7xIoDP9l7OBZgudkW096hS_YhFgHDdo7Sp6x7Ysh0,3164
211
+ zenml/integrations/deepchecks/__init__.py,sha256=kocih5929Db0nMK3j4sXawsqipSIA3xtOgtYKaJziWU,3323
212
212
  zenml/integrations/deepchecks/data_validators/__init__.py,sha256=i7QKjkqoUSFGg_l7JuVbnHFs5uxOKRcSp0s3apwF2RM,835
213
213
  zenml/integrations/deepchecks/data_validators/deepchecks_data_validator.py,sha256=kKp8O7SmPrk2Rqq4KX6MjtrNyPYZfrRhBYI9DO7jpec,21443
214
214
  zenml/integrations/deepchecks/flavors/__init__.py,sha256=TkUMrj_WWzGiPqc4GxCYjE-80AQyYhYDUBoqZ9fWTOc,819
@@ -230,7 +230,7 @@ zenml/integrations/discord/flavors/discord_alerter_flavor.py,sha256=9hX7R7dfxSwi
230
230
  zenml/integrations/discord/steps/__init__.py,sha256=stSDntUMzrHzwMJm1V1-jm7otII7uW6Fxj7qYB7MWrc,663
231
231
  zenml/integrations/discord/steps/discord_alerter_ask_step.py,sha256=puBERGjhpBRaift8GCygAgnjgZHbeqclRywxJjjjEG8,2553
232
232
  zenml/integrations/discord/steps/discord_alerter_post_step.py,sha256=te4M4Q47e1nShPHLLv414bjDuG_r7XCxDUbLgwGXEtI,2283
233
- zenml/integrations/evidently/__init__.py,sha256=PQi8oqc2tH6k55vMzyL6s6kveeRD1EbV-HcpDzU9BFU,3026
233
+ zenml/integrations/evidently/__init__.py,sha256=ZNbkmtHPsk4qs4AColYU9a2VN8oV5XPtUrmb78UTDg0,3185
234
234
  zenml/integrations/evidently/column_mapping.py,sha256=slZwGaArhYZNZnXfwYFXZEt7bqq2jswvb1vwkedvGRE,3555
235
235
  zenml/integrations/evidently/data_validators/__init__.py,sha256=7H1HCXAefk-asnSAYqfud-l17rsBFfhCrgps2abhmFY,830
236
236
  zenml/integrations/evidently/data_validators/evidently_data_validator.py,sha256=V34Nze3Mi4JpTlJJQf-i582WxAZrg5-yAv1HcUf7ULE,10316
@@ -241,14 +241,14 @@ zenml/integrations/evidently/steps/__init__.py,sha256=ilbOiPjIDO_O0x7QS8fae4qqfx
241
241
  zenml/integrations/evidently/steps/evidently_report.py,sha256=iNV3qobh6WMYDBPc6kvRgrtKnrQsk5HpBU3Q0-hXyiU,4242
242
242
  zenml/integrations/evidently/steps/evidently_test.py,sha256=pnSyH8pZx8NqgRNHyvYgWt8MRz7wtXmujgDqZKlDuBI,4133
243
243
  zenml/integrations/evidently/tests.py,sha256=mOjeX3gBwRaUR0Q9yqzqJQ9KJczkfXeATqrysMmoI9k,12324
244
- zenml/integrations/facets/__init__.py,sha256=TEH9SBgps02EOssw8g9dT0-7ZuvBDIrJ08c2EFnDrLE,1658
244
+ zenml/integrations/facets/__init__.py,sha256=eqzzIAtYaSoDjbb8WPR-CrEOK7-2_uQYwKUDL8iyE-0,1817
245
245
  zenml/integrations/facets/materializers/__init__.py,sha256=SALIcweWCvMst3phqCEM8wII8o_AQBjuBhC8fKE7weA,776
246
246
  zenml/integrations/facets/materializers/facets_materializer.py,sha256=HQeYEmFeW8vGv-2Lyzv5MkK-FUQf5UC_wGpTbdCacQo,2553
247
247
  zenml/integrations/facets/materializers/stats.html,sha256=xssmMSfg1MWAyGFIY8kKe7BDOL1vMZWf5H6nbvNvLwg,1284
248
248
  zenml/integrations/facets/models.py,sha256=1BuF2Hwr3alvUo6fULz2O8QPTCGifaY7TppM1ripFMc,1217
249
249
  zenml/integrations/facets/steps/__init__.py,sha256=MNjm54V903woZy_7mw-hvelGVRUXci6YE7WEsFfNRpk,1031
250
250
  zenml/integrations/facets/steps/facets_visualization_steps.py,sha256=MOaDFcJDy1UM3qlHVJ3ZjD8KPhUYeyrJZrzr5tQzgtg,2373
251
- zenml/integrations/feast/__init__.py,sha256=WdP-OJzMtbZGaSApMNwhsv8lHcmevgFgZu5BWMu6dNQ,2205
251
+ zenml/integrations/feast/__init__.py,sha256=vElbJ3NCZMpcp72-FIe9G4siJbGy3to3g8Jr6941Mzw,2355
252
252
  zenml/integrations/feast/feature_stores/__init__.py,sha256=Wi3NBBBPJg6CjgtxmBjoU86k_ALypwFV6aP15oQpPfE,1269
253
253
  zenml/integrations/feast/feature_stores/feast_feature_store.py,sha256=jV6WznuKT3y1aikI3OEwoI8r_l8bEu5waX0LKePPuU8,5880
254
254
  zenml/integrations/feast/flavors/__init__.py,sha256=gbCZ4tKgLZSI4-gzOCR2xihiPNmpe-lMUxwvMrhYL-w,858
@@ -285,7 +285,7 @@ zenml/integrations/github/plugins/github_webhook_event_source_flavor.py,sha256=j
285
285
  zenml/integrations/gitlab/__init__.py,sha256=dxo7rxGj-w8ZLgjx9xlDGOSBfGmQylUAROmeabQkUp8,964
286
286
  zenml/integrations/gitlab/code_repositories/__init__.py,sha256=Ds7NL6tCqLApRsOgvUofEq3Ms2No5_Z095uvi1gLVIk,817
287
287
  zenml/integrations/gitlab/code_repositories/gitlab_code_repository.py,sha256=QLiDTHHZBblpWg1y6DmV2bsuxFs5FNOo9E903yLlGbs,6532
288
- zenml/integrations/great_expectations/__init__.py,sha256=qThrD6NWTPiD5EaYZNq6yKXRg8-LtJtYwOMHGYvsB8I,2396
288
+ zenml/integrations/great_expectations/__init__.py,sha256=x6L4OokAE_Q0sC1vgZGi1X705AJIe_TNpdAEVKAvgFU,2546
289
289
  zenml/integrations/great_expectations/data_validators/__init__.py,sha256=Z16qmLfUoataEABQ6Ec-HSLM_a9VRALHFa4OoAyozIk,857
290
290
  zenml/integrations/great_expectations/data_validators/ge_data_validator.py,sha256=qp2ZFqQiYPszRc6vGhZhK22GEHhGoTQ0Y9u0trXNQyg,21404
291
291
  zenml/integrations/great_expectations/flavors/__init__.py,sha256=lkal-p48HAEKb9Ib9UHEG8skC55zOuMu4LVWMTIkS3E,950
@@ -297,7 +297,7 @@ zenml/integrations/great_expectations/steps/__init__.py,sha256=OGsp32yJs9GItypFR
297
297
  zenml/integrations/great_expectations/steps/ge_profiler.py,sha256=ea6WLF1B8pvkGe-dBaAX3tNV2W8mVhUhk6WQpKgqKEA,2141
298
298
  zenml/integrations/great_expectations/steps/ge_validator.py,sha256=kdFzhkzJtQZGOul8E8BE5_315mYGvMuDINYagPflKVk,2946
299
299
  zenml/integrations/great_expectations/utils.py,sha256=4DXjAfsKUVcp_lSGAPiAsAI-WLNjr_DLMsGJOYGkSjE,3138
300
- zenml/integrations/huggingface/__init__.py,sha256=r0WL4kIkDp__hYicXXvPeOlAvN6YKLx5NYPGqAR19Tc,2510
300
+ zenml/integrations/huggingface/__init__.py,sha256=3peCx0igFtgqXppRdTq48CZDaqLgKk_wpDzxNbQYwpc,2660
301
301
  zenml/integrations/huggingface/flavors/__init__.py,sha256=NXMxZXrS7fHdZnz1G_Sf83k4zkE84C5UoYJzxXSY-R0,970
302
302
  zenml/integrations/huggingface/flavors/huggingface_model_deployer_flavor.py,sha256=QITTxFrpKu5JNH29A_riAWiC0-gY3qcxGWQf__0aQII,4032
303
303
  zenml/integrations/huggingface/materializers/__init__.py,sha256=HoiSCzfMTxtcvkDBconFm_-pdGZXzXDelkuPtcrJIgA,1267
@@ -320,7 +320,7 @@ zenml/integrations/hyperai/orchestrators/__init__.py,sha256=kSYpMZPEWwNu2vxoOC6P
320
320
  zenml/integrations/hyperai/orchestrators/hyperai_orchestrator.py,sha256=lL_IeqIx7ygE9R8HJ5YAcmdCH8q6xQpys0705U55QIw,20123
321
321
  zenml/integrations/hyperai/service_connectors/__init__.py,sha256=oHuCNC09z5C7Wlb3vV1d4zJjftttHg364eoEBVRDOdo,803
322
322
  zenml/integrations/hyperai/service_connectors/hyperai_service_connector.py,sha256=7Ql5cVoSY3SE4j7uzeVi5TWuoKFDvsHFTn72k9_wPUY,13400
323
- zenml/integrations/integration.py,sha256=mokskEGDRKDkCz5lgv2o7dgV7plYH01Pwm7-8ux4Xaw,6734
323
+ zenml/integrations/integration.py,sha256=ljUK2GHy-LNqsdloOvf8mIfUQsqoi0yBJYocMyS-DX8,6879
324
324
  zenml/integrations/kaniko/__init__.py,sha256=fw6TdTcoU_JphrORv4pwsb7G6lu5537peIoPJdLv_NU,1341
325
325
  zenml/integrations/kaniko/flavors/__init__.py,sha256=PpI7yUpjgLwwAi1ma5uTGihG4zUWxURiRTpHoHEXBIw,865
326
326
  zenml/integrations/kaniko/flavors/kaniko_image_builder_flavor.py,sha256=iRICgO_f9RF1XOp7bO8qjmHm83v2NYqoJWorHZKhVzE,5080
@@ -361,8 +361,8 @@ zenml/integrations/label_studio/steps/label_studio_standard_steps.py,sha256=k7UT
361
361
  zenml/integrations/langchain/__init__.py,sha256=RDju0RHH6vDypHSYQlTTyNXjbn8ss03Y8woMWMD-z2A,1368
362
362
  zenml/integrations/langchain/materializers/__init__.py,sha256=ouU6MDX_gZc0FVgNK8xO6F7B2XOEikrevQEZpdYyaOM,1037
363
363
  zenml/integrations/langchain/materializers/document_materializer.py,sha256=86-V8ADkT0laE8ZvQyj8v9EbxHeeQ9PbiQq06OhMmdo,2287
364
- zenml/integrations/langchain/materializers/openai_embedding_materializer.py,sha256=LXqsU4X-t6NKed7Y8BSVZY2IU7wu0fkO8NlVEM2kibc,2077
365
- zenml/integrations/langchain/materializers/vector_store_materializer.py,sha256=HQZxrJLtm_dCNZH5FeF6_4YfQRKu-mais6_uzSIEaLs,1273
364
+ zenml/integrations/langchain/materializers/openai_embedding_materializer.py,sha256=E-QmQnFh1c3lusEDuqKc1rSUM1uzEzEFwR_sA9PYZuU,1958
365
+ zenml/integrations/langchain/materializers/vector_store_materializer.py,sha256=IZH0R1Fd4ANXCECWb69_h83IuHOrDDL1oL7-Z1sSTR0,1167
366
366
  zenml/integrations/lightgbm/__init__.py,sha256=AVR8PFl9sAnXTeho0XDtJkdAmDjQaFgJcQnEPAj2x-U,1121
367
367
  zenml/integrations/lightgbm/materializers/__init__.py,sha256=9tUTAisuFmR2-B4E-3l23Ab_sy8Jw6AAKUkG3pnd6ZI,929
368
368
  zenml/integrations/lightgbm/materializers/lightgbm_booster_materializer.py,sha256=PmEoSOhR1Lj23DgbumiiTlbySAB7bmepLNsQ4fNM_-g,2313
@@ -377,9 +377,9 @@ zenml/integrations/lightning/orchestrators/lightning_orchestrator_entrypoint_con
377
377
  zenml/integrations/lightning/orchestrators/utils.py,sha256=XbBYYnmfNCnoja4InAbt_UL5hzk2fcQcvpX8dQtm2rc,2058
378
378
  zenml/integrations/llama_index/__init__.py,sha256=go2bEZ1dzjUtgFWb22op3MABRBLezyDyeJ5BnH9AjTw,1310
379
379
  zenml/integrations/llama_index/materializers/__init__.py,sha256=OEtWarp07nDpbSnV5Y9f8Gk1-Ufa7AINiz4e7H22rDQ,963
380
- zenml/integrations/llama_index/materializers/document_materializer.py,sha256=XPSpv-D-PYuOppJ6z3gTxo2r4W2VI0flvq8bcY6rU2o,2465
381
- zenml/integrations/llama_index/materializers/gpt_index_materializer.py,sha256=JFHbxK_ghgzo9eV7VMEfZuxLruh2HuXpgGBwBbxG8Qg,4925
382
- zenml/integrations/mlflow/__init__.py,sha256=NeAI_L5J1Oz6pQ7YfWgBr-2FlEEMZZuLsLo3UXCyvwA,3829
380
+ zenml/integrations/llama_index/materializers/document_materializer.py,sha256=NqSEP4YbaAr8har4dGFARG7EX2Tr_Gky4-sEsKGwFAE,2355
381
+ zenml/integrations/llama_index/materializers/gpt_index_materializer.py,sha256=4CL9f_kGrK8zAlo4K03xKOomZRNd3SQeISwLOG7J1G4,4774
382
+ zenml/integrations/mlflow/__init__.py,sha256=TgCTmNZBbxGB2nIKmuuB676FN6m4X6TChMfkPLg3J-A,4207
383
383
  zenml/integrations/mlflow/experiment_trackers/__init__.py,sha256=foDnjpi4vkH9adjaA01c-utb0mRYybQfdR75PDK9CAQ,775
384
384
  zenml/integrations/mlflow/experiment_trackers/mlflow_experiment_tracker.py,sha256=OhvcZgGfawv_sN4zs1I68jFgvWmrPTfC7gQ-Ldj8PHY,14315
385
385
  zenml/integrations/mlflow/flavors/__init__.py,sha256=hMKgndBdmMghG9d3o4sJNVXG4mrZiTcA6hBeL0BirOY,1305
@@ -458,7 +458,7 @@ zenml/integrations/s3/utils.py,sha256=SpKUUzrd4W3GWqxF09nVrN7k_ntsM8-fhSONqthYSy
458
458
  zenml/integrations/scipy/__init__.py,sha256=sF15qDLRfx-DzTfzBYWxH4ln0VxXFebsiYlBHdPN9rk,1060
459
459
  zenml/integrations/scipy/materializers/__init__.py,sha256=LfPq9Vp4vulN7r8jCoQLq54O8oSW8DvFSoKGcOMAuL8,770
460
460
  zenml/integrations/scipy/materializers/sparse_materializer.py,sha256=cfMocz21qLjFugXoEE4WNMvSYPoHjCIgxIsj-uFMn9A,2324
461
- zenml/integrations/seldon/__init__.py,sha256=4SyQ6RAfNfIDZN09FaK2FsfTMEgZ7gDYqrqNMVSvZ3g,2316
461
+ zenml/integrations/seldon/__init__.py,sha256=BbGgdPpt0s_WOf0Skey0n3Yp9bBaqoGNHXhQlTg4JmQ,2466
462
462
  zenml/integrations/seldon/constants.py,sha256=aXoj4RGKCskWn4Jw7uQ9JuJj0L7qmeijP2apjEGP2yg,742
463
463
  zenml/integrations/seldon/custom_deployer/__init__.py,sha256=Kg1On05d0f4-b4H6xVCmV9EjwQKrXA5UJMSg4M9LdAY,768
464
464
  zenml/integrations/seldon/custom_deployer/zenml_custom_model.py,sha256=faYykqsqE7NZj50BAmvi-wNJUOgaahPULtS-QPmkac8,6246
@@ -532,12 +532,12 @@ zenml/integrations/tekton/flavors/__init__.py,sha256=-S5XuwcZKWyGb9tVfl_gEFJj1KS
532
532
  zenml/integrations/tekton/flavors/tekton_orchestrator_flavor.py,sha256=XgFgzJUlje9J1o5zwBvs_ycpgQjGdi50KZFA9_tT0vc,8268
533
533
  zenml/integrations/tekton/orchestrators/__init__.py,sha256=yCJEM-PCechO4DF_YQeg82y76nwBKeXTy_SIXRWX2DE,811
534
534
  zenml/integrations/tekton/orchestrators/tekton_orchestrator.py,sha256=aL0v_vYuwiAW3OKzXDdB_qdOqBFS2pC0sjKl2xewGVw,35572
535
- zenml/integrations/tensorboard/__init__.py,sha256=wSRK5o_D-cUIiouHconFcq66G1coaTqstTM7FNPkIh0,1493
535
+ zenml/integrations/tensorboard/__init__.py,sha256=mrzcQooqOlOYrzGLyZxxn1VPl99ot9Usg75akPC0Uc0,1612
536
536
  zenml/integrations/tensorboard/services/__init__.py,sha256=Y-YVPLxJkFSpXNDZSk8gEBISsXJGk_DgGIyVIIFIa40,798
537
537
  zenml/integrations/tensorboard/services/tensorboard_service.py,sha256=OgIO0UTndzGqiDz_OJjCzm9zHa0F0P7kjxzrz83U77g,4434
538
538
  zenml/integrations/tensorboard/visualizers/__init__.py,sha256=7uSvIoQxAfo7bhkH3Sf2TLrzBccueL9h3mRZGasrNoQ,835
539
539
  zenml/integrations/tensorboard/visualizers/tensorboard_visualizer.py,sha256=z1-lz3T2tp0T8JM3JxQCcYZXYH29Vg7bkSdxk5uu1ok,8471
540
- zenml/integrations/tensorflow/__init__.py,sha256=CRFpMTzjQ4AoFHw8AHpQu8OTOfjUy4JeLfoMHnoRd8Q,2300
540
+ zenml/integrations/tensorflow/__init__.py,sha256=JUDCmkSorUPSowJ5Wd3qWBEByPWLWf9IrlXUOjrTDnI,2320
541
541
  zenml/integrations/tensorflow/materializers/__init__.py,sha256=iQVlAHAqdD6ItJlJyIsfamY3aF3_vU22qFNuyLMTIF0,906
542
542
  zenml/integrations/tensorflow/materializers/keras_materializer.py,sha256=8MY6nIY3O86Y7eiHMo8udrQgAd-ZqUNnYvRU3GnczyA,3044
543
543
  zenml/integrations/tensorflow/materializers/tf_dataset_materializer.py,sha256=O2TAXT8zbar5Lq1lVJMAlLO0mhJe-PoRuEOLUpux-zs,2630
@@ -554,7 +554,7 @@ zenml/integrations/wandb/experiment_trackers/__init__.py,sha256=8nFyyvh-PTF5d9Zf
554
554
  zenml/integrations/wandb/experiment_trackers/wandb_experiment_tracker.py,sha256=GV5zDPgj6Dh3ho2MMUC1Da1ezPrNtr4RE9tisWGde00,5749
555
555
  zenml/integrations/wandb/flavors/__init__.py,sha256=b4oJHyCdMN98XB-8S-Pnv39HA-oXQWpup6eZmCmIAEY,894
556
556
  zenml/integrations/wandb/flavors/wandb_experiment_tracker_flavor.py,sha256=2Sszs0E8-AfMrVwdVSsVRBA85OdttSYx7jb69WxpMs0,4854
557
- zenml/integrations/whylogs/__init__.py,sha256=Vye-B7ED7gxuA932KzDa1AURShdvUPgj3OZ2cRuMArA,2273
557
+ zenml/integrations/whylogs/__init__.py,sha256=PROjw-4-SDSpzxfoqxKud8vGnJm-HsrWxMumjGQuF3M,2423
558
558
  zenml/integrations/whylogs/constants.py,sha256=Txs7qQjmj4vuoqC6rJvoBJ-4yv41CrapExG0_5TvEpw,752
559
559
  zenml/integrations/whylogs/data_validators/__init__.py,sha256=cLblrK_3Hckc_p8YjqJir28V9Nx_-pFPEIknjodQNQQ,820
560
560
  zenml/integrations/whylogs/data_validators/whylogs_data_validator.py,sha256=LH8ltRjWL8S_cuZcv41X87O9IcSr1iowz5EhvicMd_0,6103
@@ -786,7 +786,7 @@ zenml/utils/pagination_utils.py,sha256=TufckOqOKeDPwE3ySefL05zOzGUUA2Fqx_QFVhE2s
786
786
  zenml/utils/pipeline_docker_image_builder.py,sha256=QOZV_AYFbUtcfJZGNO7pH2_EoXyRqs9GZF_hTeoqW5E,25036
787
787
  zenml/utils/proxy_utils.py,sha256=fgRlLa9pfXJDoxtB31_YP7DClOMQLek_nMmM0et6i3w,7241
788
788
  zenml/utils/pydantic_utils.py,sha256=oQcxY4VXuVY3n632atlvdmi12EYcSQ1xZuQJY3Je-sA,16592
789
- zenml/utils/requirements_utils.py,sha256=pUVlQpEtLfz7lLJEUN-t7oHKLzdZZdgHoMzv0V5WXZI,2250
789
+ zenml/utils/requirements_utils.py,sha256=JqVChflTQwBMByRtKfsS3dV91QeWbdGYefcEBkTKXGk,2605
790
790
  zenml/utils/secret_utils.py,sha256=gEvqnhzAZwPO6mdOQWvioeH-xLoSObfaNRzt17N8zyU,5965
791
791
  zenml/utils/server_utils.py,sha256=RzXeBcA0a-YdFX4BP9jSmLQ383uIj8SxbnXWBRjcfG4,1740
792
792
  zenml/utils/settings_utils.py,sha256=lAK13CiDCDkcLygizDbWB9q-9ukteVBJPypzFCrne9k,4631
@@ -1061,7 +1061,7 @@ zenml/zen_server/routers/webhook_endpoints.py,sha256=KOJsuykv_TMjL3oEItpC4OWWP75
1061
1061
  zenml/zen_server/secure_headers.py,sha256=glh6QujnjyeoH1_FK-tAS-105G-qKS_34AqSzqJ6TRc,4182
1062
1062
  zenml/zen_server/template_execution/__init__.py,sha256=79knXLKfegsvVSVSWecpqrepq6iAavTUA4hKuiDk-WE,613
1063
1063
  zenml/zen_server/template_execution/runner_entrypoint_configuration.py,sha256=Y8aYJhqqs8Kv8I1q-dM1WemS5VBIfyoaaYH_YkzC7iY,1541
1064
- zenml/zen_server/template_execution/utils.py,sha256=7LBbbE29gyDZDaoivxXCplmMJz101WqDuGFpOC900Zc,16212
1064
+ zenml/zen_server/template_execution/utils.py,sha256=M8PLq34g3tNNozC0q4Xf0efknq7OIVLl0AvJ0jbbwKg,16700
1065
1065
  zenml/zen_server/template_execution/workload_manager_interface.py,sha256=CL9c7z8ajuZE01DaHmdCDCZmsroDcTarvN-nE8jv6qQ,2590
1066
1066
  zenml/zen_server/utils.py,sha256=Jc2Q4UBaYG2ruHdsN9JmbOWfWU_eWD9wTBBEgcGAbqg,17439
1067
1067
  zenml/zen_server/zen_server_api.py,sha256=ALyv5096frXXRNySegEtsmkDbHLLqHd402bbQI7RnII,17941
@@ -1263,7 +1263,7 @@ zenml/zen_stores/migrations/versions/f3b3964e3a0f_add_oauth_devices.py,sha256=2C
1263
1263
  zenml/zen_stores/migrations/versions/f49904a80aa7_increase_length_of_artifact_table_sources.py,sha256=kLgfDUnQdAb5_SyFx3VKXDLC0YbuBKf9iXRDNeBin7Q,1618
1264
1264
  zenml/zen_stores/migrations/versions/f76a368a25a5_add_stack_description.py,sha256=u8fRomaasFeGhxvM2zU-Ab-AEpVsWm5zRcixxKFXdRw,904
1265
1265
  zenml/zen_stores/migrations/versions/fbd7f18ced1e_increase_step_run_field_lengths.py,sha256=kn-ng5EHe_mmLfffIFbz7T59z-to3oMx8III_4wOsz4,1956
1266
- zenml/zen_stores/rest_zen_store.py,sha256=YYA3K2Jm8-UqzCVaKI1Y577MpP0JsE4AlDs7GETeGb0,158127
1266
+ zenml/zen_stores/rest_zen_store.py,sha256=usxuHjZV2uz16BPFyrBjwdxtVzuxquZX8xmXCwRv0s8,158070
1267
1267
  zenml/zen_stores/schemas/__init__.py,sha256=4EXqExiVyxdnGxhQ_Hz79mOdRuMD0LsGlw0PaP2Ef6o,4333
1268
1268
  zenml/zen_stores/schemas/action_schemas.py,sha256=2OiUiskFSg5qXGxA6AFq71bWzUczxA563LGFokLZmac,6456
1269
1269
  zenml/zen_stores/schemas/api_key_schemas.py,sha256=0pK7b9HlJuQL3DuKT4eGjFb87tyd4x-E2VyxJLpRv3o,7459
@@ -1306,11 +1306,11 @@ zenml/zen_stores/secrets_stores/hashicorp_secrets_store.py,sha256=NfW1EHIA99lseb
1306
1306
  zenml/zen_stores/secrets_stores/secrets_store_interface.py,sha256=Q2Jbnt2Pp7NGlR-u1YBfRZV2g8su2Fd0ArBMdksAE-Q,2819
1307
1307
  zenml/zen_stores/secrets_stores/service_connector_secrets_store.py,sha256=S87ne23D08PAwtfRVlVnBn8R0ilTpEh6r8blauNV5WQ,6941
1308
1308
  zenml/zen_stores/secrets_stores/sql_secrets_store.py,sha256=nEO0bAPlULBLxLVk-UTRIZiUeVpATggo8qCsKmgEU1E,8788
1309
- zenml/zen_stores/sql_zen_store.py,sha256=RmcpUHnSlPOMLNZ9StPxi_9FPqB1HgfiK_Humst9sns,440431
1309
+ zenml/zen_stores/sql_zen_store.py,sha256=ldyC1uhMnmX5ojnqY9d_L2S-iC-eaNUwsexTkdPtqr4,440204
1310
1310
  zenml/zen_stores/template_utils.py,sha256=GWBP5QEOyvhzndS_MLPmvh28sQaOPpPoZFXCIX9CRL4,9065
1311
1311
  zenml/zen_stores/zen_store_interface.py,sha256=fF_uL_FplnvGvM5o3jOQ8i1zHXhuhKLL2n4nvIKSR7E,92090
1312
- zenml_nightly-0.80.0.dev20250327.dist-info/LICENSE,sha256=wbnfEnXnafPbqwANHkV6LUsPKOtdpsd-SNw37rogLtc,11359
1313
- zenml_nightly-0.80.0.dev20250327.dist-info/METADATA,sha256=riu8q-gWcij4HNT2KkKdnB_-vTAiJyuuN66-l53C3-4,24227
1314
- zenml_nightly-0.80.0.dev20250327.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
1315
- zenml_nightly-0.80.0.dev20250327.dist-info/entry_points.txt,sha256=QK3ETQE0YswAM2mWypNMOv8TLtr7EjnqAFq1br_jEFE,43
1316
- zenml_nightly-0.80.0.dev20250327.dist-info/RECORD,,
1312
+ zenml_nightly-0.80.0.dev20250328.dist-info/LICENSE,sha256=wbnfEnXnafPbqwANHkV6LUsPKOtdpsd-SNw37rogLtc,11359
1313
+ zenml_nightly-0.80.0.dev20250328.dist-info/METADATA,sha256=MKLrA8iy_dTx1-m3g0XGojTifiA-Y933rfnggW8kgSg,24227
1314
+ zenml_nightly-0.80.0.dev20250328.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
1315
+ zenml_nightly-0.80.0.dev20250328.dist-info/entry_points.txt,sha256=QK3ETQE0YswAM2mWypNMOv8TLtr7EjnqAFq1br_jEFE,43
1316
+ zenml_nightly-0.80.0.dev20250328.dist-info/RECORD,,