0.65.0
Important note for OSS users
In the latest release, in the onboarding flow, the first pipeline has been labeled python run.py --training-pipeline
but rather should be simply python run.py
only. If you see an error while trying to completely the onboarding , simply use the latter command instead!
New Features and Improvements
New Quickstart Experience
This example demonstrates how ZenML streamlines the transition of machine learning workflows from local environments to cloud-scale operations.
Run Single Step as a ZenML Pipeline
If you want to run just an individual step on your stack, you can simply call the step as you would with a normal Python function. ZenML will internally create a pipeline with just your step and run it on the active stack.
Other improvements and fixes
- Updated AzureML Step Operator to work with SDKv2 and use Service Connectors
- Added timestamps to log messages
- Fixed issue with loading artifacts from the artifact store outside of the current active artifact store
- Support of templated names for Model Version (
{date}
and{time}
are currently supported placeholders) run_with_accelerate
step wrapper can be used as a Python Decorator on top of ZenML steps
Breaking changes
- Workspace scoped POST endpoint
full-stack
was removed and merged withstacks
POST endpoint - If you use
0.65.0
with any prior server version of ZenML it might lead to a situation where a Model Version is created for every step of the pipeline, while theModel
class was only once configured on the pipeline level. This is considered an expected behavior and you should not use the mismatching versions of ZenML Client and Server, in general.
Minimal example:
from zenml import step, pipeline, Model
@step
def step_1()->None:
print("1")
@step
def step_2()->None:
print("2")
@pipeline(model=Model(name="my_model"))
def my_pipeline()->None:
step_1()
step_2()
if __name__=="__main__":
my_pipeline()
In this case on server versions prior to 0.65.0
you will get 2 Model Versions of my_model
created: one in step_1
and one in step_2
. Please upgrade your server to 0.65.0+
and you will get only one Model Version for the same code snippet.
What's Changed
- Remove broken JIRA sync workflow by @strickvl in #2924
- Fix Hugging Face Spaces permissions by @strickvl in #2925
- Fixes for
run_with_accelerate
by @avishniakov in #2935 - Bump azure skypilot to a stable 0.6.1 by @avishniakov in #2933
- Add Timestamps to Logs and Update Dashboard URL Message by @htahir1 in #2934
- Adding 0.64.0 to migration tests by @bcdurak in #2923
- Removed docker build docs + fixed CLI command for zenml pipeline build list by @htahir1 in #2938
- Throw an error when running integration installs when uv == False but pip is not installed by @mennoliefstingh in #2930
- Update AzureML step operator to SDK v2 and add service connector support by @stefannica in #2927
- Improving the AzureML orchestrator docs by @bcdurak in #2940
- Update mlflow docs by @htahir1 in #2941
- Tell users where they can import
DockerSettings
from by @strickvl in #2947 - Fail early when specifying invalid materializers by @schustmi in #2950
- Add GitHub Codespaces and VS Code Remote Container support by @htahir1 in #2949
- Automatically detect whether code download is necessary by @schustmi in #2946
- Enable running a single step on the active stack by @schustmi in #2942
- Dynamic (templated) names for model versions by @avishniakov in #2909
- Adding an orchestrator URL to the AzureML orchestrator by @bcdurak in #2952
- Update python version of latest docker image by @schustmi in #2954
- Make
run_with_accelerate
a pythonic decorator by @avishniakov in #2943 - Bugfix for artifacts coming from a different artifact store by @bcdurak in #2928
- Stack Request cleanup and improvements by @bcdurak in #2906
- Silence pydantic protected namespace warnings by @schustmi in #2955
- Update key for finished onboarding survey by @schustmi in #2956
- Extend notebook source replacement code to other objects apart from ZenML steps by @schustmi in #2919
- Fix stack register CLI command by @schustmi in #2958
- Lightening studio orchestrator by @safoinme in #2931
- Introduce new quickstart with a focus on Stack switching by @AlexejPenner in #2937
- Bugfix for the required prompts for the AzureML wizard by @bcdurak in #2959
New Contributors
- @mennoliefstingh made their first contribution in #2930
Full Changelog: 0.64.0...0.65.0