{"version":1,"pages":[{"id":"PiTtCjHq1ktBVwbnPCpG","title":"Welcome to ZenML","pathname":"/","siteSpaceId":"sitesp_0rctS","icon":"torii-gate","description":"Discover resources to build, deploy, and scale your ML pipelines with ZenML.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Getting Started"}]},{"id":"lpgWv22IC6LbJoGXPEEj","title":"Installation","pathname":"/getting-started/installation","siteSpaceId":"sitesp_0rctS","icon":"cauldron","description":"Installing ZenML and getting started.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Getting Started"}]},{"id":"hMvaw3pJYHjAQ2mQuRGb","title":"Hello World","pathname":"/getting-started/hello-world","siteSpaceId":"sitesp_0rctS","icon":"hand-wave","description":"Your first ML pipeline with ZenML - from local development to cloud deployment in minutes.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Getting Started"}]},{"id":"n83LrjZfR8pJN6yCHzRW","title":"Your First AI Pipeline","pathname":"/getting-started/your-first-ai-pipeline","siteSpaceId":"sitesp_0rctS","icon":"rocket","description":"Choose your path and build your first pipeline with ZenML in minutes.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Getting Started"}]},{"id":"dqJCRirgIppcDn5SRAnu","title":"Core Concepts","pathname":"/getting-started/core-concepts","siteSpaceId":"sitesp_0rctS","icon":"lightbulb","description":"Discovering the core concepts behind ZenML.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Getting Started"}]},{"id":"3jWasvWDbN8OLQMbHsEr","title":"System Architecture","pathname":"/getting-started/system-architectures","siteSpaceId":"sitesp_0rctS","icon":"building-columns","description":"Different variations of the ZenML architecture depending on your needs.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Getting Started"}]},{"id":"AQVLWvuxiXKmfHJnkwnf","title":"Deploy","pathname":"/deploying-zenml/deploying-zenml","siteSpaceId":"sitesp_0rctS","icon":"rocket-launch","description":"Why do we need to deploy ZenML?","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"}]},{"id":"UjlFvcqv6kAeMZQKQLVF","title":"Deploy with Docker","pathname":"/deploying-zenml/deploying-zenml/deploy-with-docker","siteSpaceId":"sitesp_0rctS","description":"Deploying ZenML in a Docker container.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Deploy","icon":"rocket-launch"}]},{"id":"bxQvlzr5MAUROsUnWdUR","title":"Deploy with Helm","pathname":"/deploying-zenml/deploying-zenml/deploy-with-helm","siteSpaceId":"sitesp_0rctS","description":"Deploying ZenML in a Kubernetes cluster with Helm.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Deploy","icon":"rocket-launch"}]},{"id":"WqaJ1zBTVMO986m5Cd5G","title":"Migrate to Gateway API","pathname":"/deploying-zenml/deploying-zenml/deploy-with-helm/migrate-to-gateway-api","siteSpaceId":"sitesp_0rctS","description":"Migrate ZenML Helm deployments from Ingress to Kubernetes Gateway API.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Deploy","icon":"rocket-launch"},{"label":"Deploy with Helm"}]},{"id":"ETA8TToFaUeSGVISttsv","title":"Deploy using HuggingFace Spaces","pathname":"/deploying-zenml/deploying-zenml/deploy-using-huggingface-spaces","siteSpaceId":"sitesp_0rctS","description":"Deploying ZenML to Huggingface Spaces.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Deploy","icon":"rocket-launch"}]},{"id":"yf1EjsDJanSALcs9kEdl","title":"Deploy with custom images","pathname":"/deploying-zenml/deploying-zenml/deploy-with-custom-image","siteSpaceId":"sitesp_0rctS","description":"Deploying ZenML with custom Docker images.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Deploy","icon":"rocket-launch"}]},{"id":"h9bi1lpt7AsSSHnUVrlS","title":"Secret management","pathname":"/deploying-zenml/deploying-zenml/secret-management","siteSpaceId":"sitesp_0rctS","description":"Configuring the secrets store.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Deploy","icon":"rocket-launch"}]},{"id":"LoIhWUYR5MiPPXP4IS4z","title":"Custom secret stores","pathname":"/deploying-zenml/deploying-zenml/custom-secret-stores","siteSpaceId":"sitesp_0rctS","description":"Learning how to develop a custom secret store.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Deploy","icon":"rocket-launch"}]},{"id":"mHsPTgIluw5jzbwYlroY","title":"Connect","pathname":"/deploying-zenml/connecting-to-zenml","siteSpaceId":"sitesp_0rctS","icon":"globe-pointer","description":"Various means of connecting to ZenML.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"}]},{"id":"iHDZreKTT0sUjtyDQsVY","title":"with your User (interactive)","pathname":"/deploying-zenml/connecting-to-zenml/connect-in-with-your-user-interactive","siteSpaceId":"sitesp_0rctS","description":"Connect to the ZenML server using the ZenML CLI and the web based login.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Connect","icon":"globe-pointer"}]},{"id":"3MKKRHAhKL0HYtloMGMt","title":"with your User (programmatic)","pathname":"/deploying-zenml/connecting-to-zenml/connect-with-a-pat","siteSpaceId":"sitesp_0rctS","description":"Connect to the ZenML server using a Personal Access Token.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Connect","icon":"globe-pointer"}]},{"id":"svaEB5w9svWGQsfDg1wf","title":"with a Service Account","pathname":"/deploying-zenml/connecting-to-zenml/connect-with-a-service-account","siteSpaceId":"sitesp_0rctS","description":"Connect to the ZenML server using a service account and an API key.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Connect","icon":"globe-pointer"}]},{"id":"m3mKA3HiJbFAL5QPR0D2","title":"Manage","pathname":"/deploying-zenml/upgrade-zenml-server","siteSpaceId":"sitesp_0rctS","icon":"circle-arrow-up","description":"Learn how to upgrade your server to a new version of ZenML for the different deployment options.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"}]},{"id":"QSlBkpMj7bANbLtrHWBV","title":"Best practices for upgrading","pathname":"/deploying-zenml/upgrade-zenml-server/best-practices-upgrading-zenml","siteSpaceId":"sitesp_0rctS","description":"Simple, step-by-step guide for keeping your ZenML workspaces (servers) up to date without breaking your teams.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Manage","icon":"circle-arrow-up"}]},{"id":"POfuH99d9qT2ryrW7DUE","title":"Using ZenML server in production","pathname":"/deploying-zenml/upgrade-zenml-server/using-zenml-server-in-prod","siteSpaceId":"sitesp_0rctS","description":"Learn about best practices for using ZenML server in production environments.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Manage","icon":"circle-arrow-up"}]},{"id":"QiqtrSi31mIa7e0fZwZX","title":"Troubleshoot your ZenML server","pathname":"/deploying-zenml/upgrade-zenml-server/troubleshoot-your-deployed-server","siteSpaceId":"sitesp_0rctS","description":"Troubleshooting tips for your ZenML deployment","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Manage","icon":"circle-arrow-up"}]},{"id":"t31FSwn1NEkQT35rYxhY","title":"Migration guide","pathname":"/deploying-zenml/upgrade-zenml-server/migration-guide","siteSpaceId":"sitesp_0rctS","description":"How to migrate your ZenML code to the newest version.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Manage","icon":"circle-arrow-up"}]},{"id":"XeyQ2orC0RSBQmElFbfq","title":"Migration guide 0.13.2 → 0.20.0","pathname":"/deploying-zenml/upgrade-zenml-server/migration-guide/migration-zero-twenty","siteSpaceId":"sitesp_0rctS","description":"How to migrate from ZenML <=0.13.2 to 0.20.0.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Manage","icon":"circle-arrow-up"},{"label":"Migration guide"}]},{"id":"2uXw0rQwRTC7agzLWOH6","title":"Migration guide 0.23.0 → 0.30.0","pathname":"/deploying-zenml/upgrade-zenml-server/migration-guide/migration-zero-thirty","siteSpaceId":"sitesp_0rctS","description":"How to migrate from ZenML 0.20.0-0.23.0 to 0.30.0-0.39.1.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Manage","icon":"circle-arrow-up"},{"label":"Migration guide"}]},{"id":"UZbKaxA0WZzQI659NQWm","title":"Migration guide 0.39.1 → 0.41.0","pathname":"/deploying-zenml/upgrade-zenml-server/migration-guide/migration-zero-forty","siteSpaceId":"sitesp_0rctS","description":"How to migrate your ZenML pipelines and steps from version <=0.39.1 to 0.41.0.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Manage","icon":"circle-arrow-up"},{"label":"Migration guide"}]},{"id":"fcUOZ3bnhwoDcCGL8xHc","title":"Migration guide 0.58.2 → 0.60.0","pathname":"/deploying-zenml/upgrade-zenml-server/migration-guide/migration-zero-sixty","siteSpaceId":"sitesp_0rctS","description":"How to migrate from ZenML 0.58.2 to 0.60.0 (Pydantic 2 edition).","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Deploying ZenML"},{"label":"Manage","icon":"circle-arrow-up"},{"label":"Migration guide"}]},{"id":"WXp4FRa4pzeaxgBLrW0n","title":"Steps & Pipelines","pathname":"/concepts/steps_and_pipelines","siteSpaceId":"sitesp_0rctS","icon":"arrow-progress","description":"Steps and Pipelines are the core building blocks of ZenML","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"}]},{"id":"UkRY2QeL5nKBtM2Byw8p","title":"Configuration","pathname":"/concepts/steps_and_pipelines/configuration","siteSpaceId":"sitesp_0rctS","description":"Configuring and customizing your pipeline runs.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"},{"label":"Steps & Pipelines","icon":"arrow-progress"}]},{"id":"V5wVp7jtTghG72OsiFnA","title":"Scheduling","pathname":"/concepts/steps_and_pipelines/scheduling","siteSpaceId":"sitesp_0rctS","description":"Learn how to create, update, activate, deactivate, and delete schedules for pipelines.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"},{"label":"Steps & Pipelines","icon":"arrow-progress"}]},{"id":"2GKqbvpmjQiI9DLFt2H1","title":"Logging","pathname":"/concepts/steps_and_pipelines/logging","siteSpaceId":"sitesp_0rctS","description":"Learn how to control and customize logging behavior in ZenML pipelines.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"},{"label":"Steps & Pipelines","icon":"arrow-progress"}]},{"id":"Lr6t3chsEobPyrgkF1RT","title":"YAML Configuration","pathname":"/concepts/steps_and_pipelines/yaml_configuration","siteSpaceId":"sitesp_0rctS","description":"Learn how to configure ZenML pipelines using YAML configuration files.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"},{"label":"Steps & Pipelines","icon":"arrow-progress"}]},{"id":"Sitanrr5dLJt5uSLMNTu","title":"Source Code and Imports","pathname":"/concepts/steps_and_pipelines/sources","siteSpaceId":"sitesp_0rctS","description":"Understanding source roots and source paths","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"},{"label":"Steps & Pipelines","icon":"arrow-progress"}]},{"id":"t6PQ7fm3x7SrHAoqZ5sk","title":"Execution","pathname":"/concepts/steps_and_pipelines/execution","siteSpaceId":"sitesp_0rctS","description":"Step and pipeline execution.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"},{"label":"Steps & Pipelines","icon":"arrow-progress"}]},{"id":"7YZmMXGIZKI1vBVpjlQL","title":"Wait for External Input","pathname":"/concepts/steps_and_pipelines/wait_resume","siteSpaceId":"sitesp_0rctS","icon":"hourglass-half","description":"Pause a dynamic pipeline for external input and resume it after the input is resolved.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"},{"label":"Steps & Pipelines","icon":"arrow-progress"}]},{"id":"yCpgbh5rCg5nqV1XtNim","title":"Advanced Features","pathname":"/concepts/steps_and_pipelines/advanced_features","siteSpaceId":"sitesp_0rctS","description":"Advanced features and capabilities of ZenML pipelines and steps","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"},{"label":"Steps & Pipelines","icon":"arrow-progress"}]},{"id":"3hvfl6YZAIlw0FjhscPg","title":"Dynamic Pipelines","pathname":"/concepts/steps_and_pipelines/dynamic_pipelines","siteSpaceId":"sitesp_0rctS","description":"Write dynamic pipelines","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"},{"label":"Steps & Pipelines","icon":"arrow-progress"}]},{"id":"igcqaPTOHW61fR7AbvHU","title":"Artifacts","pathname":"/concepts/artifacts","siteSpaceId":"sitesp_0rctS","icon":"binary","description":"Learn how ZenML manages data artifacts, tracks versioning and lineage, and enables effective data flow between steps.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"}]},{"id":"dt8cXDYl92xHenfmpTar","title":"Materializers","pathname":"/concepts/artifacts/materializers","siteSpaceId":"sitesp_0rctS","description":"Understanding and creating materializers to handle custom data types in ZenML pipelines","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"},{"label":"Artifacts","icon":"binary"}]},{"id":"3nKUSrjE04zNCsdc2hlL","title":"Visualizations","pathname":"/concepts/artifacts/visualizations","siteSpaceId":"sitesp_0rctS","description":"Learn how to visualize the data artifacts produced by your ZenML pipelines.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"},{"label":"Artifacts","icon":"binary"}]},{"id":"op6ZVpIKwHTK32dzk6IZ","title":"Stack & Components","pathname":"/concepts/stack_components","siteSpaceId":"sitesp_0rctS","icon":"cubes","description":"Understanding and working with ZenML Stacks and Stack Components","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"}]},{"id":"P45ji4TeYxhWcMcYRG7L","title":"Service Connectors","pathname":"/concepts/service_connectors","siteSpaceId":"sitesp_0rctS","icon":"link","description":"Managing authentication to cloud services and resources with Service Connectors","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"}]},{"id":"v68LQxO4ukWHKy6IqHWP","title":"Pipeline Snapshots","pathname":"/concepts/snapshots","siteSpaceId":"sitesp_0rctS","icon":"print","description":"Create and run pipeline snapshots.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"}]},{"id":"6XZsAzUOP7SjOqdzDoqi","title":"Pipeline Deployments","pathname":"/concepts/deployment","siteSpaceId":"sitesp_0rctS","icon":"rocket-launch","description":"Deploy pipelines as HTTP services for real-time execution","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"}]},{"id":"rNyYUWhOPv0v5B4MnxqZ","title":"Deployment Settings","pathname":"/concepts/deployment/deployment_settings","siteSpaceId":"sitesp_0rctS","description":"Customize the pipeline deployment ASGI application with DeploymentSettings.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"},{"label":"Pipeline Deployments","icon":"rocket-launch"}]},{"id":"HrpS8YZG0eqgfwGoW1Eh","title":"Containerization","pathname":"/concepts/containerization","siteSpaceId":"sitesp_0rctS","icon":"docker","description":"Customize Docker builds to run your pipelines in isolated, well-defined environments.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"}]},{"id":"I8b1fPTVmUA6hcVsw6iS","title":"Code Repositories","pathname":"/concepts/code-repositories","siteSpaceId":"sitesp_0rctS","icon":"code-compare","description":"Tracking your code and avoiding unnecessary Docker builds by connecting your git repo.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"}]},{"id":"64m9yBDU8LRGWBdP7LJT","title":"Secrets","pathname":"/concepts/secrets","siteSpaceId":"sitesp_0rctS","icon":"user-secret","description":"Registering and using secrets.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"}]},{"id":"CElYlpRJfmn9OkSlBvPw","title":"Environment Variables","pathname":"/concepts/environment-variables","siteSpaceId":"sitesp_0rctS","icon":"globe","description":"Configuring environment variables.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"}]},{"id":"NriQHMhCNvByax82vx96","title":"Tags","pathname":"/concepts/tags","siteSpaceId":"sitesp_0rctS","icon":"tag","description":"Use tags to organize tags in ZenML.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"}]},{"id":"f7HLo3clsWGy1vESOPP2","title":"Metadata","pathname":"/concepts/metadata","siteSpaceId":"sitesp_0rctS","icon":"square-info","description":"Enrich your ML workflow with contextual information using ZenML metadata.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"}]},{"id":"lI4tMC1CZZws8pPsQOvF","title":"Models","pathname":"/concepts/models","siteSpaceId":"sitesp_0rctS","icon":"rectangle-history","description":"Managing ML models throughout their lifecycle with ZenML","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"}]},{"id":"A465T9RHtt6nuohLft8V","title":"Dashboard","pathname":"/concepts/dashboard-features","siteSpaceId":"sitesp_0rctS","icon":"gauge-high","description":"Explore the features and capabilities of the ZenML dashboard","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"}]},{"id":"glWPqNjpnnzcrPEvqNZI","title":"Templates","pathname":"/concepts/templates","siteSpaceId":"sitesp_0rctS","icon":"print","description":"Create and run templates in ZenML to standardize execution.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Concepts"}]},{"id":"rhd3VhivHWWYrnqYzXDb","title":"Community & content","pathname":"/reference/community-and-content","siteSpaceId":"sitesp_0rctS","icon":"heart","description":"All possible ways for our community to get in touch with ZenML.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Reference"}]},{"id":"Kt5EX2GvyLWIuyucyfbf","title":"Environment Variables","pathname":"/reference/environment-variables","siteSpaceId":"sitesp_0rctS","icon":"earth-africa","description":"How to control ZenML behavior with environmental variables.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Reference"}]},{"id":"ZEowe9sFEBCQ01cB9Boj","title":"LLM Tooling","pathname":"/reference/llms-txt","siteSpaceId":"sitesp_0rctS","icon":"robot","description":"LLM tooling for ZenML - MCP servers, llms.txt, and Agent Skills","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Reference"}]},{"id":"dS1rmSUa75lYBQjYbvVl","title":"FAQ","pathname":"/reference/faq","siteSpaceId":"sitesp_0rctS","icon":"circle-question","description":"Find answers to the most frequently asked questions about ZenML.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Reference"}]},{"id":"S2Efs7mVOq4ChXJM2mNK","title":"Global settings","pathname":"/reference/global-settings","siteSpaceId":"sitesp_0rctS","icon":"gear","description":"Understanding the global settings of your ZenML installation.","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Reference"}]},{"id":"ef1XomPh474GmBk8Zfjk","title":"Legacy docs","pathname":"/reference/legacy-docs","siteSpaceId":"sitesp_0rctS","icon":"user-bounty-hunter","description":"All legacy docs of ZenML","breadcrumbs":[{"label":"Documentation","icon":"torii-gate"},{"label":"Reference"}]},{"id":"swlKJPSfb34SvIJvjVgC","title":"Overview","pathname":"/user-guides","siteSpaceId":"sitesp_Ybdlv","description":"Guides, examples and projects","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"}]},{"id":"d3v22nlU73h6GvDkQIJ5","title":"Starter guide","pathname":"/user-guides/starter-guide","siteSpaceId":"sitesp_Ybdlv","icon":"seedling","description":"Kickstart your journey into MLOps with the essentials of ZenML.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"}]},{"id":"FLPBDI5eRu03DCtsoFbF","title":"Create an ML pipeline","pathname":"/user-guides/starter-guide/create-an-ml-pipeline","siteSpaceId":"sitesp_Ybdlv","description":"Start with the basics of steps and pipelines.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Starter guide","icon":"seedling"}]},{"id":"71IzSpAsi2dCm1TxABbe","title":"Cache previous executions","pathname":"/user-guides/starter-guide/cache-previous-executions","siteSpaceId":"sitesp_Ybdlv","description":"Iterating quickly with ZenML through caching.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Starter guide","icon":"seedling"}]},{"id":"X06uyk6URg6OjP2ZkcWD","title":"Manage artifacts","pathname":"/user-guides/starter-guide/manage-artifacts","siteSpaceId":"sitesp_Ybdlv","description":"Understand and adjust how ZenML versions your data.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Starter guide","icon":"seedling"}]},{"id":"ddZc0m1bd9S0sHJH5P0d","title":"Track ML models","pathname":"/user-guides/starter-guide/track-ml-models","siteSpaceId":"sitesp_Ybdlv","description":"Creating a full picture of a ML model using the Model Control Plane","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Starter guide","icon":"seedling"}]},{"id":"4l8uXxiKzpeJirEv0iNT","title":"A starter project","pathname":"/user-guides/starter-guide/starter-project","siteSpaceId":"sitesp_Ybdlv","description":"Put your new knowledge into action with a simple starter project","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Starter guide","icon":"seedling"}]},{"id":"t8IhQrN2VDhN5dkZwVm5","title":"Production guide","pathname":"/user-guides/production-guide","siteSpaceId":"sitesp_Ybdlv","icon":"tree","description":"Level up your skills in a production setting.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"}]},{"id":"M0IIeCTRZNczEJQKmK6V","title":"Deploying ZenML","pathname":"/user-guides/production-guide/deploying-zenml","siteSpaceId":"sitesp_Ybdlv","description":"Deploying ZenML is the first step to production.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Production guide","icon":"tree"}]},{"id":"19PFQiB7q9YdORU65Eim","title":"Understanding stacks","pathname":"/user-guides/production-guide/understand-stacks","siteSpaceId":"sitesp_Ybdlv","description":"Learning how to switch the infrastructure backend of your code.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Production guide","icon":"tree"}]},{"id":"q4WyvHGNQkbVUGxkmqCo","title":"Connecting remote storage","pathname":"/user-guides/production-guide/remote-storage","siteSpaceId":"sitesp_Ybdlv","description":"Transitioning to remote artifact storage.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Production guide","icon":"tree"}]},{"id":"FDGDg4uzq32jqUDro0PP","title":"Orchestrate on the cloud","pathname":"/user-guides/production-guide/cloud-orchestration","siteSpaceId":"sitesp_Ybdlv","description":"Orchestrate using cloud resources.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Production guide","icon":"tree"}]},{"id":"hoGJnQaXAFiYluAwOTcT","title":"Configure your pipeline to add compute","pathname":"/user-guides/production-guide/configure-pipeline","siteSpaceId":"sitesp_Ybdlv","description":"Add more resources to your pipeline configuration.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Production guide","icon":"tree"}]},{"id":"B8Sgw6Omw6Gvk6m9KvWn","title":"Configure a code repository","pathname":"/user-guides/production-guide/connect-code-repository","siteSpaceId":"sitesp_Ybdlv","description":"Connect a Git repository to ZenML to track code changes and collaborate on MLOps projects.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Production guide","icon":"tree"}]},{"id":"ZzHZ1LiWuG0fC1zeC9D9","title":"Set up CI/CD","pathname":"/user-guides/production-guide/ci-cd","siteSpaceId":"sitesp_Ybdlv","description":"Managing the lifecycle of a ZenML pipeline with Continuous Integration and Delivery","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Production guide","icon":"tree"}]},{"id":"bm5p8jKlu6Xe12okeL3g","title":"An end-to-end project","pathname":"/user-guides/production-guide/end-to-end","siteSpaceId":"sitesp_Ybdlv","description":"Put your new knowledge in action with an end-to-end project","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Production guide","icon":"tree"}]},{"id":"acKBOqmrDTmtiWQWZbrH","title":"LLMOps guide","pathname":"/user-guides/llmops-guide","siteSpaceId":"sitesp_Ybdlv","icon":"robot","description":"Leverage the power of LLMs in your MLOps workflows with ZenML.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"}]},{"id":"8CrI2EHrn8HvRQ8Bh3SJ","title":"RAG with ZenML","pathname":"/user-guides/llmops-guide/rag-with-zenml","siteSpaceId":"sitesp_Ybdlv","description":"RAG is a sensible way to get started with LLMs.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"}]},{"id":"ElMnS8RTrkUpXbg5dMkz","title":"RAG in 85 lines of code","pathname":"/user-guides/llmops-guide/rag-with-zenml/rag-85-loc","siteSpaceId":"sitesp_Ybdlv","description":"Learn how to implement a RAG pipeline in just 85 lines of code.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"RAG with ZenML"}]},{"id":"d5u2GBLhcAvfBRQJbvOc","title":"Understanding Retrieval-Augmented Generation (RAG)","pathname":"/user-guides/llmops-guide/rag-with-zenml/understanding-rag","siteSpaceId":"sitesp_Ybdlv","description":"Understand the Retrieval-Augmented Generation (RAG) technique and its benefits.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"RAG with ZenML"}]},{"id":"uGOlOz0GNTekHHLMZ4uq","title":"Data ingestion and preprocessing","pathname":"/user-guides/llmops-guide/rag-with-zenml/data-ingestion","siteSpaceId":"sitesp_Ybdlv","description":"Understand how to ingest and preprocess data for RAG pipelines with ZenML.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"RAG with ZenML"}]},{"id":"C1BSRQDHMYW2IMX3CRO1","title":"Embeddings generation","pathname":"/user-guides/llmops-guide/rag-with-zenml/embeddings-generation","siteSpaceId":"sitesp_Ybdlv","description":"Generate embeddings to improve retrieval performance.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"RAG with ZenML"}]},{"id":"U9iX12ccIbIVZtZerok8","title":"Storing embeddings in a vector database","pathname":"/user-guides/llmops-guide/rag-with-zenml/storing-embeddings-in-a-vector-database","siteSpaceId":"sitesp_Ybdlv","description":"Store embeddings in a vector database for efficient retrieval.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"RAG with ZenML"}]},{"id":"bGu3E0nstreOhdYz35oM","title":"Basic RAG inference pipeline","pathname":"/user-guides/llmops-guide/rag-with-zenml/basic-rag-inference-pipeline","siteSpaceId":"sitesp_Ybdlv","description":"Use your RAG components to generate responses to prompts.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"RAG with ZenML"}]},{"id":"bYqAETjf6LPzwVtb2DAr","title":"Evaluation and metrics","pathname":"/user-guides/llmops-guide/evaluation","siteSpaceId":"sitesp_Ybdlv","description":"Track how your RAG pipeline improves using evaluation and metrics.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"}]},{"id":"kBc4jybxfJGlZSmybJ3H","title":"Evaluation in 65 lines of code","pathname":"/user-guides/llmops-guide/evaluation/evaluation-in-65-loc","siteSpaceId":"sitesp_Ybdlv","description":"Learn how to implement evaluation for RAG in just 65 lines of code.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Evaluation and metrics"}]},{"id":"k1JE87HkanAhydOc5dnK","title":"Retrieval evaluation","pathname":"/user-guides/llmops-guide/evaluation/retrieval","siteSpaceId":"sitesp_Ybdlv","description":"See how the retrieval component responds to changes in the pipeline.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Evaluation and metrics"}]},{"id":"zf7nRmumWwn8qt1yzSQA","title":"Generation evaluation","pathname":"/user-guides/llmops-guide/evaluation/generation","siteSpaceId":"sitesp_Ybdlv","description":"Evaluate the generation component of your RAG pipeline.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Evaluation and metrics"}]},{"id":"8PEfbqwrwZRHBp8r7WgG","title":"Evaluation in practice","pathname":"/user-guides/llmops-guide/evaluation/evaluation-in-practice","siteSpaceId":"sitesp_Ybdlv","description":"Learn how to evaluate the performance of your RAG system in practice.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Evaluation and metrics"}]},{"id":"VVK0H2Gn1yJdS88FpdKT","title":"Reranking for better retrieval","pathname":"/user-guides/llmops-guide/reranking","siteSpaceId":"sitesp_Ybdlv","description":"Add reranking to your RAG inference for better retrieval performance.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"}]},{"id":"Ysr56ZGQKaHJ8gIY1TlI","title":"Understanding reranking","pathname":"/user-guides/llmops-guide/reranking/understanding-reranking","siteSpaceId":"sitesp_Ybdlv","description":"Understand how reranking works.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Reranking for better retrieval"}]},{"id":"F84l2ZBzYrb2zksaCLkW","title":"Implementing reranking in ZenML","pathname":"/user-guides/llmops-guide/reranking/implementing-reranking","siteSpaceId":"sitesp_Ybdlv","description":"Learn how to implement reranking in ZenML.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Reranking for better retrieval"}]},{"id":"2wS2OPCaEgL3rRxbgrcN","title":"Evaluating reranking performance","pathname":"/user-guides/llmops-guide/reranking/evaluating-reranking-performance","siteSpaceId":"sitesp_Ybdlv","description":"Evaluate the performance of your reranking model.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Reranking for better retrieval"}]},{"id":"3RAo9vUfMVtHvGiN68hp","title":"Improve retrieval by finetuning embeddings","pathname":"/user-guides/llmops-guide/finetuning-embeddings","siteSpaceId":"sitesp_Ybdlv","description":"Finetune embeddings on custom synthetic data to improve retrieval performance.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"}]},{"id":"lhKu7HLnbckHnEjtYusL","title":"Synthetic data generation","pathname":"/user-guides/llmops-guide/finetuning-embeddings/synthetic-data-generation","siteSpaceId":"sitesp_Ybdlv","description":"Generate synthetic data with distilabel to finetune embeddings.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Improve retrieval by finetuning embeddings"}]},{"id":"ETurIrkba3bE8oBcrGvo","title":"Finetuning embeddings with Sentence Transformers","pathname":"/user-guides/llmops-guide/finetuning-embeddings/finetuning-embeddings-with-sentence-transformers","siteSpaceId":"sitesp_Ybdlv","description":"Finetune embeddings with Sentence Transformers.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Improve retrieval by finetuning embeddings"}]},{"id":"O5mEGaDCz7pq4OdEke2h","title":"Evaluating finetuned embeddings","pathname":"/user-guides/llmops-guide/finetuning-embeddings/evaluating-finetuned-embeddings","siteSpaceId":"sitesp_Ybdlv","description":"Evaluate finetuned embeddings and compare to original base embeddings.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Improve retrieval by finetuning embeddings"}]},{"id":"4qCYqkdqXz4p5xmYPG82","title":"Finetuning LLMs with ZenML","pathname":"/user-guides/llmops-guide/finetuning-llms","siteSpaceId":"sitesp_Ybdlv","description":"Finetune LLMs for specific tasks or to improve performance and cost.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"}]},{"id":"AX4BbbLBW70GrU3ANMG0","title":"Finetuning in 100 lines of code","pathname":"/user-guides/llmops-guide/finetuning-llms/finetuning-100-loc","siteSpaceId":"sitesp_Ybdlv","description":"Learn how to implement an LLM fine-tuning pipeline in just 100 lines of code.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Finetuning LLMs with ZenML"}]},{"id":"rIsMxv8dcjNoPWGrXwtU","title":"Why and when to finetune LLMs","pathname":"/user-guides/llmops-guide/finetuning-llms/why-and-when-to-finetune-llms","siteSpaceId":"sitesp_Ybdlv","description":"Deciding when is the right time to finetune LLMs.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Finetuning LLMs with ZenML"}]},{"id":"T9K7QbI8LuOCZ4lrnV1J","title":"Starter choices with finetuning","pathname":"/user-guides/llmops-guide/finetuning-llms/starter-choices-for-finetuning-llms","siteSpaceId":"sitesp_Ybdlv","description":"Get started with finetuning LLMs by picking a use case and data.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Finetuning LLMs with ZenML"}]},{"id":"UPeNidMxTmpV5JB6eY6U","title":"Finetuning with 🤗 Accelerate","pathname":"/user-guides/llmops-guide/finetuning-llms/finetuning-with-accelerate","siteSpaceId":"sitesp_Ybdlv","description":"Finetuning an LLM with Accelerate and PEFT","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Finetuning LLMs with ZenML"}]},{"id":"b6pDX6OLPu5pTa8gzfeY","title":"Evaluation for finetuning","pathname":"/user-guides/llmops-guide/finetuning-llms/evaluation-for-finetuning","siteSpaceId":"sitesp_Ybdlv","description":"","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Finetuning LLMs with ZenML"}]},{"id":"Wk3NXvr8rUTcMeAqVJx4","title":"Deploying finetuned models","pathname":"/user-guides/llmops-guide/finetuning-llms/deploying-finetuned-models","siteSpaceId":"sitesp_Ybdlv","description":"","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Finetuning LLMs with ZenML"}]},{"id":"esXOGVla5XRVDo1rZS2z","title":"Next steps","pathname":"/user-guides/llmops-guide/finetuning-llms/next-steps","siteSpaceId":"sitesp_Ybdlv","description":"","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"LLMOps guide","icon":"robot"},{"label":"Finetuning LLMs with ZenML"}]},{"id":"0s0LUp5qbA272aqppbIB","title":"Managing scheduled pipelines","pathname":"/user-guides/tutorial/managing-scheduled-pipelines","siteSpaceId":"sitesp_Ybdlv","icon":"calendar","description":"A step-by-step tutorial on how to create, update, and delete scheduled   pipelines in ZenML","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Tutorials"}]},{"id":"IgmceyVfNmSpbAPAXK2f","title":"Trigger pipelines from external systems","pathname":"/user-guides/tutorial/trigger-pipelines-from-external-systems","siteSpaceId":"sitesp_Ybdlv","icon":"traffic-light-go","description":"A step-by-step tutorial on effectively triggering your ZenML pipelines from external systems","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Tutorials"}]},{"id":"xhTDTGSbErKI9DgABCcU","title":"Hyper-parameter tuning","pathname":"/user-guides/tutorial/hyper-parameter-tuning","siteSpaceId":"sitesp_Ybdlv","icon":"itunes-note","description":"Running a hyperparameter tuning trial with ZenML.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Tutorials"}]},{"id":"dWTQahTBHP1H2cvXhDvO","title":"Inspecting past pipeline runs","pathname":"/user-guides/tutorial/fetching-pipelines","siteSpaceId":"sitesp_Ybdlv","icon":"rectangle-vertical-history","description":"Inspecting a finished pipeline run and its outputs.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Tutorials"}]},{"id":"sCOibpnN8mxnN5OduB9U","title":"Replaying runs and steps","pathname":"/user-guides/tutorial/replaying-runs-steps","siteSpaceId":"sitesp_Ybdlv","icon":"rotate-right","description":"Re-run pipelines or individual steps using artifacts from a previous execution.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Tutorials"}]},{"id":"IGk8bhjZAJjaLfXbQdKf","title":"Train with GPUs","pathname":"/user-guides/tutorial/distributed-training","siteSpaceId":"sitesp_Ybdlv","icon":"microchip-ai","description":"Train ZenML pipelines on GPUs and scale out with 🤗 Accelerate.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Tutorials"}]},{"id":"VONCqyEAFXEwy8vfFhBi","title":"Running notebooks remotely","pathname":"/user-guides/tutorial/run-remote-notebooks","siteSpaceId":"sitesp_Ybdlv","icon":"notebook","description":"Leveraging Jupyter notebooks with ZenML.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Tutorials"}]},{"id":"nEXehGQaRLDh6x2nnQ8r","title":"Managing machine learning datasets","pathname":"/user-guides/tutorial/datasets","siteSpaceId":"sitesp_Ybdlv","icon":"table","description":"Model datasets using simple abstractions.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Tutorials"}]},{"id":"eR9m5XWKYmBl7a9252AY","title":"Handling big data","pathname":"/user-guides/tutorial/manage-big-data","siteSpaceId":"sitesp_Ybdlv","icon":"database","description":"Learn about how to manage big data with ZenML.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Tutorials"}]},{"id":"k7YVKCjVbyLIrcQiFmhS","title":"5-minute Quick Wins","pathname":"/user-guides/best-practices/quick-wins","siteSpaceId":"sitesp_Ybdlv","icon":"bolt","description":"5-minute Quick Wins","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Best practices"}]},{"id":"DOZ66Tbrv2IxZVcraIv1","title":"Keep Your Dashboard Clean","pathname":"/user-guides/best-practices/keep-your-dashboard-server-clean","siteSpaceId":"sitesp_Ybdlv","icon":"washing-machine","description":"Learn how to keep your pipeline runs clean during development.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Best practices"}]},{"id":"Qo86xiBcGFaensDLU7P0","title":"Configure Python environments","pathname":"/user-guides/best-practices/configure-python-environments","siteSpaceId":"sitesp_Ybdlv","icon":"python","description":"Navigating multiple development environments.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Best practices"}]},{"id":"md4TO8mO2R1e6arQMQjU","title":"Shared Components for Teams","pathname":"/user-guides/best-practices/shared-components-for-teams","siteSpaceId":"sitesp_Ybdlv","icon":"arrow-up-from-bracket","description":"Sharing code and libraries within teams.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Best practices"}]},{"id":"WG1CHN0n24bzVe71EujG","title":"Organizing Stacks Pipelines Models","pathname":"/user-guides/best-practices/organizing-pipelines-and-models","siteSpaceId":"sitesp_Ybdlv","icon":"inbox-full","description":"A step-by-step tutorial on effectively organizing your ML assets in ZenML using tags and projects","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Best practices"}]},{"id":"A669Erp4VNRH1XECa2BA","title":"Access Management","pathname":"/user-guides/best-practices/access-management","siteSpaceId":"sitesp_Ybdlv","icon":"usb-drive","description":"A guide on managing user roles and responsibilities in ZenML.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Best practices"}]},{"id":"P1uDgIWcbu5DadDNUxkQ","title":"Setting up a Project Repository","pathname":"/user-guides/best-practices/set-up-your-repository","siteSpaceId":"sitesp_Ybdlv","icon":"code","description":"Setting your team up for success with a well-architected ZenML project.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Best practices"}]},{"id":"w4VInvKfTBf52UAghE3V","title":"Infrastructure as Code with Terraform","pathname":"/user-guides/best-practices/iac","siteSpaceId":"sitesp_Ybdlv","icon":"cubes","description":"Best practices for using IaC with ZenML","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Best practices"}]},{"id":"LZqon8f0XPbBDxld16zE","title":"Creating Templates for ML Platform","pathname":"/user-guides/best-practices/project-templates","siteSpaceId":"sitesp_Ybdlv","icon":"paw","description":"Setting your team up for success with a well-architected ZenML project.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Best practices"}]},{"id":"VjzfZmE65YU3NSRSJkD5","title":"Using VS Code extension","pathname":"/user-guides/best-practices/vscode-extension","siteSpaceId":"sitesp_Ybdlv","icon":"computer-mouse","description":"Use the ZenML VSCode extension to manage your ZenML server","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Best practices"}]},{"id":"De55moGTGWA9VbSLyqxf","title":"Leveraging MCP","pathname":"/user-guides/best-practices/mcp-chat-with-server","siteSpaceId":"sitesp_Ybdlv","icon":"waveform-lines","description":"Chat with your ZenML server","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Best practices"}]},{"id":"WU9hrAxPdvvlPAAxuTu1","title":"Debugging and Solving Issues","pathname":"/user-guides/best-practices/debug-and-solve-issues","siteSpaceId":"sitesp_Ybdlv","icon":"bug","description":"A guide to debug common issues and get help.","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Best practices"}]},{"id":"lZD91XqIOffbYZlmnBP0","title":"Choosing an Orchestrator","pathname":"/user-guides/best-practices/choose-orchestration-environment","siteSpaceId":"sitesp_Ybdlv","icon":"server","description":"How to choose the right orchestration environment","breadcrumbs":[{"label":"Learn","icon":"graduation-cap"},{"label":"Best practices"}]},{"id":"JRK8SCtnUoyfvLWSbtEi","title":"Introduction","pathname":"/pro","siteSpaceId":"sitesp_saISB","description":"Learn about the ZenML Pro features and deployment scenarios.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"}]},{"id":"RPakzUU5OcIyrdnIeDVH","title":"System Architecture","pathname":"/pro/system-architecture","siteSpaceId":"sitesp_saISB","icon":"diagram-project","description":"Understanding ZenML Pro services and how they communicate.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"}]},{"id":"SRIHqX29ien2KP07tStV","title":"Scenarios","pathname":"/pro/deployments/scenarios","siteSpaceId":"sitesp_saISB","icon":"code-merge","description":"Compare ZenML Pro deployment scenarios to find the right fit for your organization.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Deployments"}]},{"id":"dCCw5FEzYk3jf13wmmWu","title":"SaaS","pathname":"/pro/deployments/scenarios/saas-deployment","siteSpaceId":"sitesp_saISB","icon":"cloud","description":"Learn about ZenML Pro SaaS deployment - the fastest way to get started with production-ready MLOps.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Deployments"},{"label":"Scenarios","icon":"code-merge"}]},{"id":"Ordwm7itpK7wMs6DTp1W","title":"Hybrid","pathname":"/pro/deployments/scenarios/hybrid-deployment","siteSpaceId":"sitesp_saISB","icon":"building-shield","description":"Learn about ZenML Pro Hybrid SaaS deployment - balancing control with convenience for enterprise MLOps.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Deployments"},{"label":"Scenarios","icon":"code-merge"}]},{"id":"FGwGBjTbVB9lXd1MrPQJ","title":"Self-hosted","pathname":"/pro/deployments/scenarios/self-hosted-deployment","siteSpaceId":"sitesp_saISB","icon":"shield-halved","description":"Learn about ZenML Pro Self-hosted deployment - complete control and data sovereignty for the strictest security requirements.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Deployments"},{"label":"Scenarios","icon":"code-merge"}]},{"id":"5gsAj5INzNAHq2RBenTi","title":"Deployment Details","pathname":"/pro/deployments/deploy-details","siteSpaceId":"sitesp_saISB","icon":"sliders","description":"Reference documentation for deploying ZenML Pro components.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Deployments"}]},{"id":"QZxbSnfNOx7aFx0bBqlx","title":"Prerequisites","pathname":"/pro/deployments/deploy-details/deploy-prerequisites","siteSpaceId":"sitesp_saISB","description":"Prepare for deploying the ZenML Pro control plane and/or workspace servers in a self-hosted environment.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Deployments"},{"label":"Deployment Details","icon":"sliders"}]},{"id":"5sQiuemPIVxf9f7zEsTb","title":"Control Plane","pathname":"/pro/deployments/deploy-details/control-plane","siteSpaceId":"sitesp_saISB","icon":"shield-halved","description":"Configuration reference for the ZenML Control Plane.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Deployments"},{"label":"Deployment Details","icon":"sliders"}]},{"id":"TvRrAysb3aDNdyBswQAk","title":"Kubernetes with Helm","pathname":"/pro/deployments/deploy-details/control-plane/deploy-control-plane-k8s","siteSpaceId":"sitesp_saISB","description":"Deploy ZenML Pro Self-hosted on Kubernetes with Helm - complete self-hosted setup with no external dependencies.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Deployments"},{"label":"Deployment Details","icon":"sliders"},{"label":"Control Plane","icon":"shield-halved"}]},{"id":"pBVgKfSOFtiVZBjR9V6B","title":"Workspace Server","pathname":"/pro/deployments/deploy-details/workspace-server","siteSpaceId":"sitesp_saISB","icon":"database","description":"Configuration reference for the ZenML Workspace Server.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Deployments"},{"label":"Deployment Details","icon":"sliders"}]},{"id":"5BQHvO3nalwB19gV1za7","title":"Enroll Workspaces","pathname":"/pro/deployments/deploy-details/workspace-server/enroll-workspace","siteSpaceId":"sitesp_saISB","description":"Enroll a ZenML Pro workspace in the ZenML Pro control plane","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Deployments"},{"label":"Deployment Details","icon":"sliders"},{"label":"Workspace Server","icon":"database"}]},{"id":"kRiUdYf89U2r2k5cPjt8","title":"Kubernetes with Helm","pathname":"/pro/deployments/deploy-details/workspace-server/deploy-workspace-k8s","siteSpaceId":"sitesp_saISB","description":"Deploy ZenML Pro workspaces on Kubernetes with Helm and enroll them in the ZenML Pro control plane","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Deployments"},{"label":"Deployment Details","icon":"sliders"},{"label":"Workspace Server","icon":"database"}]},{"id":"u8tod6ccabiNVxTMQYcA","title":"AWS ECS","pathname":"/pro/deployments/deploy-details/workspace-server/deploy-workspace-ecs","siteSpaceId":"sitesp_saISB","description":"Deploy ZenML Pro Hybrid on AWS ECS with a managed control plane.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Deployments"},{"label":"Deployment Details","icon":"sliders"},{"label":"Workspace Server","icon":"database"}]},{"id":"T6EdCpTDKKC83N6RbhPU","title":"Enable Snapshot Support","pathname":"/pro/deployments/deploy-details/workspace-server/deploy-workspace-snapshots","siteSpaceId":"sitesp_saISB","description":"Enable snapshot support for self-hosted ZenML Pro workspaces","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Deployments"},{"label":"Deployment Details","icon":"sliders"},{"label":"Workspace Server","icon":"database"}]},{"id":"N46IwsuPm53frHwvNIFB","title":"Enable Event Triggers and Schedules","pathname":"/pro/deployments/deploy-details/workspace-server/deploy-workspace-event-triggers-and-schedules","siteSpaceId":"sitesp_saISB","description":"Enable ZenML Pro event triggers and schedules (scheduler and executor microservices) for self-hosted workspace servers on Kubernetes.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Deployments"},{"label":"Deployment Details","icon":"sliders"},{"label":"Workspace Server","icon":"database"}]},{"id":"BaKIE4SneGjsjHG78pRK","title":"Enable Resource Pools","pathname":"/pro/deployments/deploy-details/workspace-server/deploy-workspace-resource-pools","siteSpaceId":"sitesp_saISB","description":"Enable the ZenML Pro resource pool reconciler microservice for self-hosted workspace servers on Kubernetes.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Deployments"},{"label":"Deployment Details","icon":"sliders"},{"label":"Workspace Server","icon":"database"}]},{"id":"2egozh8a9G0FAzSnM9p5","title":"Single Sign-On (SSO)","pathname":"/pro/manage/sso","siteSpaceId":"sitesp_saISB","description":"Configure Single Sign-On (SSO) authentication for ZenML Pro self-hosted deployments.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Manage"}]},{"id":"TklfmASRwqFcqtwKNcIR","title":"User Accounts","pathname":"/pro/manage/user-accounts","siteSpaceId":"sitesp_saISB","description":"Understand and manage user accounts in ZenML Pro self-hosted deployments.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Manage"}]},{"id":"cgMCeCjQWrR1X34N7qzF","title":"Upgrades and Updates","pathname":"/pro/manage/upgrades-updates","siteSpaceId":"sitesp_saISB","icon":"arrow-up-right-dots","description":"How to upgrade ZenML Pro components.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Manage"}]},{"id":"d12pBmKgOq7RyvB6VMoJ","title":"Control Plane","pathname":"/pro/manage/upgrades-updates/upgrades-control-plane","siteSpaceId":"sitesp_saISB","icon":"shield-halved","description":"How to upgrade the ZenML Control Plane.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Manage"},{"label":"Upgrades and Updates","icon":"arrow-up-right-dots"}]},{"id":"TmcdbkzP0SF1IPltBmHx","title":"Workspace Server","pathname":"/pro/manage/upgrades-updates/upgrades-workspace-server","siteSpaceId":"sitesp_saISB","icon":"database","description":"How to upgrade ZenML Workspace Servers.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Manage"},{"label":"Upgrades and Updates","icon":"arrow-up-right-dots"}]},{"id":"tvKLWhTsFWrfCDDtQNgP","title":"Hierarchy","pathname":"/pro/core-concepts/hierarchy","siteSpaceId":"sitesp_saISB","icon":"ball-pile","description":"Understanding ZenML's hierarchical structure","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Core Concepts"}]},{"id":"D6ibVLHAd4HlNMwV5H4z","title":"Organizations","pathname":"/pro/core-concepts/organization","siteSpaceId":"sitesp_saISB","icon":"building","description":"Manage organizations in ZenML","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Core Concepts"}]},{"id":"J3d65KYDKudNpt4IXtdg","title":"Workspaces","pathname":"/pro/core-concepts/workspaces","siteSpaceId":"sitesp_saISB","icon":"briefcase","description":"Learn how to use workspaces in ZenML Pro.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Core Concepts"}]},{"id":"zr3Za7cF7HKx0Vj5iMoS","title":"Projects","pathname":"/pro/core-concepts/projects","siteSpaceId":"sitesp_saISB","icon":"clipboard-list","description":"Managing projects in ZenML","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Core Concepts"}]},{"id":"8uz2ocz1oApQ4F9Lutac","title":"Teams","pathname":"/pro/core-concepts/teams","siteSpaceId":"sitesp_saISB","icon":"people-group","description":"Learn about Teams in ZenML Pro and how they can be used to manage groups of users across your organization and workspaces.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Core Concepts"}]},{"id":"bibKT7gFnoYL8Oczt9Ht","title":"Snapshots","pathname":"/pro/core-concepts/snapshots","siteSpaceId":"sitesp_saISB","icon":"camera","description":"Trigger pipelines from the dashboard, SDK, CLI, or REST API.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Core Concepts"}]},{"id":"jBZJjLW5orK53EwTnQtt","title":"Triggers","pathname":"/pro/core-concepts/triggers","siteSpaceId":"sitesp_saISB","icon":"server","description":"Trigger pipelines by schedule or event.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Core Concepts"}]},{"id":"W7cEFZnyDUxVN6d52ljQ","title":"Resource Pools","pathname":"/pro/core-concepts/resource-pools","siteSpaceId":"sitesp_saISB","icon":"layer-group","description":"Fair GPU and compute sharing for AI/ML teams: dependable production capacity, shared pools, idle reuse, and workspace-level quotas.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Core Concepts"}]},{"id":"IGkGLYGepPgyOfqr0oC3","title":"Core Concepts","pathname":"/pro/core-concepts/resource-pools/resource-pools-core-concepts","siteSpaceId":"sitesp_saISB","description":"Precise definitions for ZenML Pro resource pools, subject policies, and resource requests.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Core Concepts"},{"label":"Resource Pools","icon":"layer-group"}]},{"id":"Y7joYXChVVnu3ioErls1","title":"Reconciliation Process","pathname":"/pro/core-concepts/resource-pools/resource-pools-reconciliation","siteSpaceId":"sitesp_saISB","description":"How the resource pool reconciliation process works in ZenML Pro.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Core Concepts"},{"label":"Resource Pools","icon":"layer-group"}]},{"id":"1h7vatsI6Owmbtzs1NK4","title":"Examples","pathname":"/pro/core-concepts/resource-pools/resource-pools-examples","siteSpaceId":"sitesp_saISB","description":"Step-by-step ZenML Pro resource pool examples: pool JSON, policy JSON, ResourceSettings, and outcomes for new users.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Core Concepts"},{"label":"Resource Pools","icon":"layer-group"}]},{"id":"7DizWfU9fJ8MVlowvNlT","title":"Roles & Permissions","pathname":"/pro/access-management/roles","siteSpaceId":"sitesp_saISB","icon":"lock","description":"Learn about the different roles and permissions you can assign to your team members in ZenML Pro.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Access Management"}]},{"id":"1WkbvayvKOPAMX3lWQPr","title":"Trusted domains","pathname":"/pro/access-management/trusted-domains","siteSpaceId":"sitesp_saISB","icon":"globe","description":"Organization trusted domains in ZenML Pro — user visibility, invitations, SSO, and how operators configure them.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Access Management"}]},{"id":"KsYnBJEXrCTHVccCMXzJ","title":"Personal Access Tokens","pathname":"/pro/access-management/personal-access-tokens","siteSpaceId":"sitesp_saISB","icon":"user-lock","description":"Learn how to manage and use Personal Access Tokens.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Access Management"}]},{"id":"ptsJhvYJnMemdzAqhcA5","title":"Service Accounts","pathname":"/pro/access-management/service-accounts","siteSpaceId":"sitesp_saISB","icon":"key","description":"Learn how to manage and use service accounts and API keys .","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Access Management"}]},{"id":"roxLKImEeRB3ALB0E2qa","title":"Secrets Stores","pathname":"/pro/access-management/secrets-stores","siteSpaceId":"sitesp_saISB","icon":"lock","description":"Learn how to link your own secrets store backend to your ZenML Pro workspace.","breadcrumbs":[{"label":"ZenML Pro","icon":"star"},{"label":"Access Management"}]},{"id":"hmG9dwZOcq5aqHTOpOdk","title":"Overview","pathname":"/stacks","siteSpaceId":"sitesp_Tc7LL","description":"Overview of categories of MLOps components and third-party integrations.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"}]},{"id":"wBLeBIzA2bWnXdMMm8uc","title":"Integrations","pathname":"/stacks/integrations","siteSpaceId":"sitesp_Tc7LL","icon":"box-archive","description":"","breadcrumbs":[{"label":"Stacks","icon":"layer-group"}]},{"id":"gbJRPmvUA0bO8GzbSCZw","title":"Orchestrators","pathname":"/stacks/stack-components/orchestrators","siteSpaceId":"sitesp_Tc7LL","icon":"train-track","description":"Orchestrating the execution of ML pipelines.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"}]},{"id":"Qi1tAZ4kqKbd5HTIpVuj","title":"Local Orchestrator","pathname":"/stacks/stack-components/orchestrators/local","siteSpaceId":"sitesp_Tc7LL","description":"Orchestrating your pipelines to run locally.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Orchestrators","icon":"train-track"}]},{"id":"33rT9tPML3Qoymwmuxbo","title":"Local Docker Orchestrator","pathname":"/stacks/stack-components/orchestrators/local-docker","siteSpaceId":"sitesp_Tc7LL","description":"Orchestrating your pipelines to run in Docker.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Orchestrators","icon":"train-track"}]},{"id":"TrEbN7ZP3UGM6dFViKLU","title":"Kubeflow Orchestrator","pathname":"/stacks/stack-components/orchestrators/kubeflow","siteSpaceId":"sitesp_Tc7LL","description":"Orchestrating your pipelines to run on Kubeflow.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Orchestrators","icon":"train-track"}]},{"id":"mTahB0d57mBdvtjv5dx2","title":"Kubernetes Orchestrator","pathname":"/stacks/stack-components/orchestrators/kubernetes","siteSpaceId":"sitesp_Tc7LL","description":"Orchestrating your pipelines to run on Kubernetes clusters.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Orchestrators","icon":"train-track"}]},{"id":"viV3k1yEs5uD6OkyKyLU","title":"Google Cloud VertexAI Orchestrator","pathname":"/stacks/stack-components/orchestrators/vertex","siteSpaceId":"sitesp_Tc7LL","description":"Orchestrating your pipelines to run on Vertex AI.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Orchestrators","icon":"train-track"}]},{"id":"975jY2RQ6R0wlLxeLgiE","title":"AWS Sagemaker Orchestrator","pathname":"/stacks/stack-components/orchestrators/sagemaker","siteSpaceId":"sitesp_Tc7LL","description":"Orchestrating your pipelines to run on Amazon Sagemaker.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Orchestrators","icon":"train-track"}]},{"id":"hW9lNDbllP2h8B1Usa4f","title":"AzureML Orchestrator","pathname":"/stacks/stack-components/orchestrators/azureml","siteSpaceId":"sitesp_Tc7LL","description":"Orchestrating your pipelines to run on AzureML.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Orchestrators","icon":"train-track"}]},{"id":"7sJWLyrsYK8A3mFbR82d","title":"Databricks Orchestrator","pathname":"/stacks/stack-components/orchestrators/databricks","siteSpaceId":"sitesp_Tc7LL","description":"Orchestrating your pipelines to run on Databricks.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Orchestrators","icon":"train-track"}]},{"id":"NNe8mzTRncmU9fpeyy7U","title":"Tekton Orchestrator","pathname":"/stacks/stack-components/orchestrators/tekton","siteSpaceId":"sitesp_Tc7LL","description":"Orchestrating your pipelines to run on Tekton.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Orchestrators","icon":"train-track"}]},{"id":"OMTlpGsQ5CsFd2etBmFj","title":"Airflow Orchestrator","pathname":"/stacks/stack-components/orchestrators/airflow","siteSpaceId":"sitesp_Tc7LL","description":"Orchestrating your pipelines to run on Airflow.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Orchestrators","icon":"train-track"}]},{"id":"BhjJ5SDEQM4YNrkgg8bz","title":"Skypilot VM Orchestrator","pathname":"/stacks/stack-components/orchestrators/skypilot-vm","siteSpaceId":"sitesp_Tc7LL","description":"Orchestrating your pipelines to run on VMs using SkyPilot.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Orchestrators","icon":"train-track"}]},{"id":"cUmEuDrcnuf4xogMicIy","title":"HyperAI Orchestrator","pathname":"/stacks/stack-components/orchestrators/hyperai","siteSpaceId":"sitesp_Tc7LL","description":"Orchestrating your pipelines to run on HyperAI.ai instances.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Orchestrators","icon":"train-track"}]},{"id":"RhB7iN9YSxHzt1OmqGWi","title":"Lightning AI Orchestrator","pathname":"/stacks/stack-components/orchestrators/lightning","siteSpaceId":"sitesp_Tc7LL","description":"Orchestrating your pipelines to run on Lightning AI.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Orchestrators","icon":"train-track"}]},{"id":"T0l20i66wz9vjS2yyanI","title":"Develop a custom orchestrator","pathname":"/stacks/stack-components/orchestrators/custom","siteSpaceId":"sitesp_Tc7LL","description":"Learning how to develop a custom orchestrator.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Orchestrators","icon":"train-track"}]},{"id":"DAMHnJMwirQZtsTfqvvL","title":"Deployers","pathname":"/stacks/stack-components/deployers","siteSpaceId":"sitesp_Tc7LL","icon":"rocket-launch","description":"Deploy pipelines as HTTP services for real-time execution","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"}]},{"id":"1LFl8xq2zUACmR5NINBE","title":"Local Deployer","pathname":"/stacks/stack-components/deployers/local","siteSpaceId":"sitesp_Tc7LL","description":"Deploying pipelines on your local machine as background processes.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Deployers","icon":"rocket-launch"}]},{"id":"WsXFrUDdPtWSEdJpTw6t","title":"Docker Deployer","pathname":"/stacks/stack-components/deployers/docker","siteSpaceId":"sitesp_Tc7LL","description":"Deploying your pipelines locally with Docker.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Deployers","icon":"rocket-launch"}]},{"id":"4Y3c61BY240gpTzIX6ob","title":"Kubernetes Deployer","pathname":"/stacks/stack-components/deployers/kubernetes","siteSpaceId":"sitesp_Tc7LL","description":"Deploying your pipelines to Kubernetes clusters.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Deployers","icon":"rocket-launch"}]},{"id":"wMTW5LvsV5PbcYIeprkv","title":"AWS App Runner Deployer","pathname":"/stacks/stack-components/deployers/aws-app-runner","siteSpaceId":"sitesp_Tc7LL","description":"Deploying your pipelines to AWS App Runner.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Deployers","icon":"rocket-launch"}]},{"id":"G5ew9zwd1VvjaLPogf7g","title":"GCP Cloud Run Deployer","pathname":"/stacks/stack-components/deployers/gcp-cloud-run","siteSpaceId":"sitesp_Tc7LL","description":"Deploying your pipelines to GCP Cloud Run.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Deployers","icon":"rocket-launch"}]},{"id":"yQxxXkuH4djTufcy1xr0","title":"Hugging Face Deployer","pathname":"/stacks/stack-components/deployers/huggingface","siteSpaceId":"sitesp_Tc7LL","description":"Deploying your pipelines to Hugging Face Spaces.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Deployers","icon":"rocket-launch"}]},{"id":"jvdRCSTEt47rvvDKYkzZ","title":"Artifact Stores","pathname":"/stacks/stack-components/artifact-stores","siteSpaceId":"sitesp_Tc7LL","icon":"folder-closed","description":"Setting up a persistent storage for your artifacts.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"}]},{"id":"Z6DubCTERufJEln7I5K0","title":"Local Artifact Store","pathname":"/stacks/stack-components/artifact-stores/local","siteSpaceId":"sitesp_Tc7LL","description":"Storing artifacts on your local filesystem.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Artifact Stores","icon":"folder-closed"}]},{"id":"XgrzRytcryOZhrgAu1V8","title":"Amazon Simple Cloud Storage (S3)","pathname":"/stacks/stack-components/artifact-stores/s3","siteSpaceId":"sitesp_Tc7LL","description":"Storing artifacts in an AWS S3 bucket.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Artifact Stores","icon":"folder-closed"}]},{"id":"qr20PWVLtOSg9V6ULA8t","title":"Google Cloud Storage (GCS)","pathname":"/stacks/stack-components/artifact-stores/gcp","siteSpaceId":"sitesp_Tc7LL","description":"Storing artifacts using GCP Cloud Storage.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Artifact Stores","icon":"folder-closed"}]},{"id":"Afyotk4hMPywjYMYszxp","title":"Azure Blob Storage","pathname":"/stacks/stack-components/artifact-stores/azure","siteSpaceId":"sitesp_Tc7LL","description":"Storing artifacts using Azure Blob Storage","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Artifact Stores","icon":"folder-closed"}]},{"id":"ezfbo3SLV1n2muVCSvV0","title":"Alibaba Cloud OSS","pathname":"/stacks/stack-components/artifact-stores/alibaba-oss","siteSpaceId":"sitesp_Tc7LL","description":"Storing artifacts in Alibaba Cloud Object Storage Service (OSS).","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Artifact Stores","icon":"folder-closed"}]},{"id":"S7Ae6KPAqVwzjE0aKAxj","title":"MinIO","pathname":"/stacks/stack-components/artifact-stores/minio","siteSpaceId":"sitesp_Tc7LL","description":"Storing artifacts in MinIO object storage.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Artifact Stores","icon":"folder-closed"}]},{"id":"1rHMZW3Eij5qTDqwp150","title":"Develop a custom artifact store","pathname":"/stacks/stack-components/artifact-stores/custom","siteSpaceId":"sitesp_Tc7LL","description":"Learning how to develop a custom artifact store.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Artifact Stores","icon":"folder-closed"}]},{"id":"3n9AhpilYCU8m2dAgY8R","title":"Container Registries","pathname":"/stacks/stack-components/container-registries","siteSpaceId":"sitesp_Tc7LL","icon":"box","description":"Setting up a storage for Docker images.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"}]},{"id":"rG3yLBvwFdSXoNtIYg3r","title":"Default Container Registry","pathname":"/stacks/stack-components/container-registries/default","siteSpaceId":"sitesp_Tc7LL","description":"Storing container images locally.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Container Registries","icon":"box"}]},{"id":"23Pu3PdiinoO6242y23Y","title":"DockerHub","pathname":"/stacks/stack-components/container-registries/dockerhub","siteSpaceId":"sitesp_Tc7LL","description":"Storing container images in DockerHub.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Container Registries","icon":"box"}]},{"id":"044HNAx6fpwvCq2U0Pg8","title":"Amazon Elastic Container Registry (ECR)","pathname":"/stacks/stack-components/container-registries/aws","siteSpaceId":"sitesp_Tc7LL","description":"Storing container images in Amazon ECR.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Container Registries","icon":"box"}]},{"id":"jcnfx1aO5Wsl3s8QFI5q","title":"Google Cloud Container Registry","pathname":"/stacks/stack-components/container-registries/gcp","siteSpaceId":"sitesp_Tc7LL","description":"Storing container images in GCP.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Container Registries","icon":"box"}]},{"id":"IIls4JmgYlb0A6ujUBa0","title":"Azure Container Registry","pathname":"/stacks/stack-components/container-registries/azure","siteSpaceId":"sitesp_Tc7LL","description":"Storing container images in Azure.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Container Registries","icon":"box"}]},{"id":"JvPBArYo4sYDOwJpswQE","title":"GitHub Container Registry","pathname":"/stacks/stack-components/container-registries/github","siteSpaceId":"sitesp_Tc7LL","description":"Storing container images in GitHub.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Container Registries","icon":"box"}]},{"id":"SntMF04tAyulaZSf0WmQ","title":"Develop a custom container registry","pathname":"/stacks/stack-components/container-registries/custom","siteSpaceId":"sitesp_Tc7LL","description":"Learning how to develop a custom container registry.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Container Registries","icon":"box"}]},{"id":"xJYnma2zaJ4ssfflfuxv","title":"Log Stores","pathname":"/stacks/stack-components/log-stores","siteSpaceId":"sitesp_Tc7LL","icon":"file-lines","description":"Storing and retrieving logs from your ML pipelines.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"}]},{"id":"vIhD6tHZgGhOJOoRmDSG","title":"Artifact Log Store","pathname":"/stacks/stack-components/log-stores/artifact","siteSpaceId":"sitesp_Tc7LL","description":"Storing logs in your artifact store.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Log Stores","icon":"file-lines"}]},{"id":"Hp6tOYelXowTelpyQFgt","title":"OpenTelemetry Log Store","pathname":"/stacks/stack-components/log-stores/otel","siteSpaceId":"sitesp_Tc7LL","description":"Exporting logs to any OpenTelemetry-compatible backend.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Log Stores","icon":"file-lines"}]},{"id":"FiNqZ4LLacugALLr2o7C","title":"Datadog Log Store","pathname":"/stacks/stack-components/log-stores/datadog","siteSpaceId":"sitesp_Tc7LL","description":"Exporting logs to Datadog's log management platform.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Log Stores","icon":"file-lines"}]},{"id":"EmHlDlaAhPB5Baj2yb2N","title":"Develop a Custom Log Store","pathname":"/stacks/stack-components/log-stores/custom","siteSpaceId":"sitesp_Tc7LL","description":"Learning how to develop a custom log store.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Log Stores","icon":"file-lines"}]},{"id":"cCYgYvMRXztNT6UL2UCe","title":"Step Operators","pathname":"/stacks/stack-components/step-operators","siteSpaceId":"sitesp_Tc7LL","icon":"arrow-progress","description":"Executing individual steps in specialized environments.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"}]},{"id":"LrGfvHfEElMWvCDn9oFF","title":"Amazon SageMaker","pathname":"/stacks/stack-components/step-operators/sagemaker","siteSpaceId":"sitesp_Tc7LL","description":"Executing individual steps in SageMaker.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Step Operators","icon":"arrow-progress"}]},{"id":"E0Zt5MUQ9XQrVCHsyJUg","title":"AzureML","pathname":"/stacks/stack-components/step-operators/azureml","siteSpaceId":"sitesp_Tc7LL","description":"Executing individual steps in AzureML.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Step Operators","icon":"arrow-progress"}]},{"id":"MQM3LnZNNSU2FvgI08U6","title":"Databricks","pathname":"/stacks/stack-components/step-operators/databricks","siteSpaceId":"sitesp_Tc7LL","description":"Executing individual steps on Databricks.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Step Operators","icon":"arrow-progress"}]},{"id":"apBRfEo0ZkYxF3h9qn2y","title":"Google Cloud VertexAI","pathname":"/stacks/stack-components/step-operators/vertex","siteSpaceId":"sitesp_Tc7LL","description":"Executing individual steps in Vertex AI.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Step Operators","icon":"arrow-progress"}]},{"id":"iQ2FDnHdOsDdpbBOHL6u","title":"Kubernetes","pathname":"/stacks/stack-components/step-operators/kubernetes","siteSpaceId":"sitesp_Tc7LL","description":"Executing individual steps in Kubernetes Pods.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Step Operators","icon":"arrow-progress"}]},{"id":"OgWO1lh88eIbfipyOeLo","title":"Run:AI","pathname":"/stacks/stack-components/step-operators/runai","siteSpaceId":"sitesp_Tc7LL","description":"Executing individual steps on Run:AI clusters with fractional GPU support.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Step Operators","icon":"arrow-progress"}]},{"id":"sMgNKYwu5vBwTTQzHHcu","title":"Modal","pathname":"/stacks/stack-components/step-operators/modal","siteSpaceId":"sitesp_Tc7LL","description":"Executing individual steps in Modal.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Step Operators","icon":"arrow-progress"}]},{"id":"7vd2ZTMAaWQWMTSFHOoi","title":"Spark","pathname":"/stacks/stack-components/step-operators/spark-kubernetes","siteSpaceId":"sitesp_Tc7LL","description":"Executing individual steps on Spark","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Step Operators","icon":"arrow-progress"}]},{"id":"bqFD1H5SekXNEUFDtHr3","title":"Develop a Custom Step Operator","pathname":"/stacks/stack-components/step-operators/custom","siteSpaceId":"sitesp_Tc7LL","description":"Learning how to develop a custom step operator.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Step Operators","icon":"arrow-progress"}]},{"id":"sbeQMpbNqwKAQp3DjMGO","title":"Experiment Trackers","pathname":"/stacks/stack-components/experiment-trackers","siteSpaceId":"sitesp_Tc7LL","icon":"clipboard","description":"Logging and visualizing ML experiments.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"}]},{"id":"OGDYQVfUwDuFGhrZxhft","title":"Comet","pathname":"/stacks/stack-components/experiment-trackers/comet","siteSpaceId":"sitesp_Tc7LL","description":"Logging and visualizing experiments with Comet.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Experiment Trackers","icon":"clipboard"}]},{"id":"vuxco0oseqFmE7FD4GY0","title":"MLflow","pathname":"/stacks/stack-components/experiment-trackers/mlflow","siteSpaceId":"sitesp_Tc7LL","description":"Logging and visualizing experiments with MLflow.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Experiment Trackers","icon":"clipboard"}]},{"id":"cVKe0UYSahQpg5R82OHI","title":"Neptune","pathname":"/stacks/stack-components/experiment-trackers/neptune","siteSpaceId":"sitesp_Tc7LL","description":"Logging and visualizing experiments with neptune.ai","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Experiment Trackers","icon":"clipboard"}]},{"id":"CPSTLW4Utrs7tRNTcYst","title":"Weights & Biases","pathname":"/stacks/stack-components/experiment-trackers/wandb","siteSpaceId":"sitesp_Tc7LL","description":"Logging and visualizing experiments with Weights & Biases.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Experiment Trackers","icon":"clipboard"}]},{"id":"saq9S5zqSHhl2gIO47WA","title":"Google Cloud VertexAI Experiment Tracker","pathname":"/stacks/stack-components/experiment-trackers/vertexai","siteSpaceId":"sitesp_Tc7LL","description":"Logging and visualizing experiments with Vertex AI Experiment Tracker.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Experiment Trackers","icon":"clipboard"}]},{"id":"DfAz6HevpV3FDphxOwsu","title":"Develop a custom experiment tracker","pathname":"/stacks/stack-components/experiment-trackers/custom","siteSpaceId":"sitesp_Tc7LL","description":"Learning how to develop a custom experiment tracker.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Experiment Trackers","icon":"clipboard"}]},{"id":"BIy2GOMPgBIxc6HtGZS4","title":"Image Builders","pathname":"/stacks/stack-components/image-builders","siteSpaceId":"sitesp_Tc7LL","icon":"box-open","description":"Building container images for your ML workflow.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"}]},{"id":"2NuyD88u8luEfbOZGcPj","title":"Local Image Builder","pathname":"/stacks/stack-components/image-builders/local","siteSpaceId":"sitesp_Tc7LL","description":"Building container images locally.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Image Builders","icon":"box-open"}]},{"id":"9bpovQ6JWAM6ObNsaVMz","title":"Kaniko Image Builder","pathname":"/stacks/stack-components/image-builders/kaniko","siteSpaceId":"sitesp_Tc7LL","description":"Building container images with Kaniko.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Image Builders","icon":"box-open"}]},{"id":"qkY8L6VyjTyLGkJAQ1Fu","title":"AWS Image Builder","pathname":"/stacks/stack-components/image-builders/aws","siteSpaceId":"sitesp_Tc7LL","description":"Building container images with AWS CodeBuild","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Image Builders","icon":"box-open"}]},{"id":"SZA6smG2OZJgbxo3moEK","title":"Google Cloud Image Builder","pathname":"/stacks/stack-components/image-builders/gcp","siteSpaceId":"sitesp_Tc7LL","description":"Building container images with Google Cloud Build","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Image Builders","icon":"box-open"}]},{"id":"VbcEvfZPUzuVWvodRtGu","title":"Develop a Custom Image Builder","pathname":"/stacks/stack-components/image-builders/custom","siteSpaceId":"sitesp_Tc7LL","description":"Learning how to develop a custom image builder.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Image Builders","icon":"box-open"}]},{"id":"PQEsUVbQSjxlijDewOIs","title":"Alerters","pathname":"/stacks/stack-components/alerters","siteSpaceId":"sitesp_Tc7LL","icon":"message-exclamation","description":"Sending automated alerts to chat services.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"}]},{"id":"HBaSifGbHKmGmzNkqVwN","title":"Discord Alerter","pathname":"/stacks/stack-components/alerters/discord","siteSpaceId":"sitesp_Tc7LL","description":"Sending automated alerts to a Discord channel.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Alerters","icon":"message-exclamation"}]},{"id":"dVxUsjSIzvgwoeJxlncK","title":"Slack Alerter","pathname":"/stacks/stack-components/alerters/slack","siteSpaceId":"sitesp_Tc7LL","description":"Sending automated alerts to a Slack channel.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Alerters","icon":"message-exclamation"}]},{"id":"G7nJWfCp53Niu1aWgHuM","title":"Develop a Custom Alerter","pathname":"/stacks/stack-components/alerters/custom","siteSpaceId":"sitesp_Tc7LL","description":"Learning how to develop a custom alerter.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Alerters","icon":"message-exclamation"}]},{"id":"muEBhvmG58XAwInpppAV","title":"Annotators","pathname":"/stacks/stack-components/annotators","siteSpaceId":"sitesp_Tc7LL","icon":"expand","description":"Annotating the data in your workflow.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"}]},{"id":"rt5HLyYtCiDdrWFho08J","title":"Argilla","pathname":"/stacks/stack-components/annotators/argilla","siteSpaceId":"sitesp_Tc7LL","description":"Annotating data using Argilla.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Annotators","icon":"expand"}]},{"id":"l5KcW4iQUt6j0hZLDM3d","title":"Label Studio","pathname":"/stacks/stack-components/annotators/label-studio","siteSpaceId":"sitesp_Tc7LL","description":"Annotating data using Label Studio.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Annotators","icon":"expand"}]},{"id":"8Hni109PhALsMvTiAytX","title":"Pigeon","pathname":"/stacks/stack-components/annotators/pigeon","siteSpaceId":"sitesp_Tc7LL","description":"Annotating data using Pigeon.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Annotators","icon":"expand"}]},{"id":"Qg6ejgk66hx8Jtq2OpQJ","title":"Prodigy","pathname":"/stacks/stack-components/annotators/prodigy","siteSpaceId":"sitesp_Tc7LL","description":"Annotating data using Prodigy.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Annotators","icon":"expand"}]},{"id":"vGo9KcJ5nIJkQnJEK1j6","title":"Develop a Custom Annotator","pathname":"/stacks/stack-components/annotators/custom","siteSpaceId":"sitesp_Tc7LL","description":"Learning how to develop a custom annotator.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Annotators","icon":"expand"}]},{"id":"YgFvGiChWwYfCxOFP7Yg","title":"Data Validators","pathname":"/stacks/stack-components/data-validators","siteSpaceId":"sitesp_Tc7LL","icon":"chart-column","description":"How to enhance and maintain the quality of your data and the performance of your models with data profiling and validation","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"}]},{"id":"XHl4EPuU8RPIAk9f4gjg","title":"Great Expectations","pathname":"/stacks/stack-components/data-validators/great-expectations","siteSpaceId":"sitesp_Tc7LL","description":"How to use Great Expectations to run data quality checks in your pipelines and document the results","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Data Validators","icon":"chart-column"}]},{"id":"eVXrdak2HAG8uzlt7bJZ","title":"Deepchecks","pathname":"/stacks/stack-components/data-validators/deepchecks","siteSpaceId":"sitesp_Tc7LL","description":"How to test the data and models used in your pipelines with Deepchecks test suites","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Data Validators","icon":"chart-column"}]},{"id":"j2rSB9NSojU6gJc676q5","title":"Evidently","pathname":"/stacks/stack-components/data-validators/evidently","siteSpaceId":"sitesp_Tc7LL","description":"How to keep your data quality in check and guard against data and model drift with Evidently profiling","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Data Validators","icon":"chart-column"}]},{"id":"BDsxU27zfCoCF2Qb781u","title":"Whylogs","pathname":"/stacks/stack-components/data-validators/whylogs","siteSpaceId":"sitesp_Tc7LL","description":"How to collect and visualize statistics to track changes in your pipelines' data with whylogs/WhyLabs profiling.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Data Validators","icon":"chart-column"}]},{"id":"gtuzYiEXlqNb9axVqNEs","title":"Develop a custom data validator","pathname":"/stacks/stack-components/data-validators/custom","siteSpaceId":"sitesp_Tc7LL","description":"How to develop a custom data validator","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Data Validators","icon":"chart-column"}]},{"id":"WKqlTqJHEd9ZFO7cr7fj","title":"Feature Stores","pathname":"/stacks/stack-components/feature-stores","siteSpaceId":"sitesp_Tc7LL","icon":"database","description":"Managing data in feature stores.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"}]},{"id":"d5WZcj5nAwwc2fzbs8jz","title":"Feast","pathname":"/stacks/stack-components/feature-stores/feast","siteSpaceId":"sitesp_Tc7LL","description":"Managing data in Feast feature stores.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Feature Stores","icon":"database"}]},{"id":"iuhafWtbzgcj7G91RxzV","title":"Develop a Custom Feature Store","pathname":"/stacks/stack-components/feature-stores/custom","siteSpaceId":"sitesp_Tc7LL","description":"Learning how to develop a custom feature store.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Feature Stores","icon":"database"}]},{"id":"f7psBMdCL87MFCmU8y91","title":"Model Deployers","pathname":"/stacks/stack-components/model-deployers","siteSpaceId":"sitesp_Tc7LL","icon":"rocket","description":"Deploying your models and serve real-time predictions.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"}]},{"id":"biuWECfkpwbI4oz5HGyG","title":"MLflow","pathname":"/stacks/stack-components/model-deployers/mlflow","siteSpaceId":"sitesp_Tc7LL","description":"Deploying your models locally with MLflow.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Model Deployers","icon":"rocket"}]},{"id":"HT06gVXvOGllMGeiG6On","title":"Seldon","pathname":"/stacks/stack-components/model-deployers/seldon","siteSpaceId":"sitesp_Tc7LL","description":"Deploying models to Kubernetes with Seldon Core.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Model Deployers","icon":"rocket"}]},{"id":"ncQOPFwS1BLK2MIzbbHe","title":"BentoML","pathname":"/stacks/stack-components/model-deployers/bentoml","siteSpaceId":"sitesp_Tc7LL","description":"Deploying your models locally with BentoML.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Model Deployers","icon":"rocket"}]},{"id":"BDZJTIxESgidbYYQw9N0","title":"Hugging Face","pathname":"/stacks/stack-components/model-deployers/huggingface","siteSpaceId":"sitesp_Tc7LL","description":"Deploying models to Huggingface Inference Endpoints with Hugging Face :hugging_face:.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Model Deployers","icon":"rocket"}]},{"id":"HFdORHSLB5GC3khVNOiy","title":"Databricks","pathname":"/stacks/stack-components/model-deployers/databricks","siteSpaceId":"sitesp_Tc7LL","description":"Deploying models to Databricks Inference Endpoints with Databricks","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Model Deployers","icon":"rocket"}]},{"id":"jlmyNhPzcn5P5O2mYHBf","title":"vLLM","pathname":"/stacks/stack-components/model-deployers/vllm","siteSpaceId":"sitesp_Tc7LL","description":"Deploying your LLM locally with vLLM.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Model Deployers","icon":"rocket"}]},{"id":"ds8uv2DmEMgNWsPv7ux7","title":"Develop a Custom Model Deployer","pathname":"/stacks/stack-components/model-deployers/custom","siteSpaceId":"sitesp_Tc7LL","description":"Learning how to develop a custom model deployer.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Model Deployers","icon":"rocket"}]},{"id":"Hb9u6IV2nABQjKcueOf2","title":"Model Registries","pathname":"/stacks/stack-components/model-registries","siteSpaceId":"sitesp_Tc7LL","icon":"table-rows","description":"Tracking and managing ML models.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"}]},{"id":"DoG1q5ty1Efcwf7yKg2O","title":"MLflow Model Registry","pathname":"/stacks/stack-components/model-registries/mlflow","siteSpaceId":"sitesp_Tc7LL","description":"Managing MLFlow logged models and artifacts","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Model Registries","icon":"table-rows"}]},{"id":"kqmmtnn0mKdaxL4ZyKpT","title":"Develop a Custom Model Registry","pathname":"/stacks/stack-components/model-registries/custom","siteSpaceId":"sitesp_Tc7LL","description":"Learning how to develop a custom model registry.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Stack Components"},{"label":"Model Registries","icon":"table-rows"}]},{"id":"zbzGUj7Ul5cFsCwEuNiM","title":"Introduction","pathname":"/stacks/service-connectors/auth-management","siteSpaceId":"sitesp_Tc7LL","icon":"plug","description":"Connect your ZenML deployment to a cloud provider and other infrastructure services and resources.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Service Connectors"}]},{"id":"knIF5CIMUwMPmpFP0vYp","title":"Complete guide","pathname":"/stacks/service-connectors/service-connectors-guide","siteSpaceId":"sitesp_Tc7LL","icon":"book","description":"The complete guide to managing Service Connectors and connecting ZenML to external resources.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Service Connectors"}]},{"id":"Ld14ts3rmlIhHcjbjm29","title":"Best practices","pathname":"/stacks/service-connectors/best-security-practices","siteSpaceId":"sitesp_Tc7LL","icon":"star","description":"Best practices concerning the various authentication methods implemented by Service Connectors.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Service Connectors"}]},{"id":"hd5tDNzJZiByJk2UnP2N","title":"Connector Types","pathname":"/stacks/service-connectors/connector-types","siteSpaceId":"sitesp_Tc7LL","icon":"album-collection","description":"","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Service Connectors"}]},{"id":"kk96TzERCSxiRz2LmaiL","title":"Docker Service Connector","pathname":"/stacks/service-connectors/connector-types/docker-service-connector","siteSpaceId":"sitesp_Tc7LL","description":"Configuring Docker Service Connectors to connect ZenML to Docker container registries.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Service Connectors"},{"label":"Connector Types","icon":"album-collection"}]},{"id":"ja9NRavn6RbNUsZUNMab","title":"Kubernetes Service Connector","pathname":"/stacks/service-connectors/connector-types/kubernetes-service-connector","siteSpaceId":"sitesp_Tc7LL","description":"Configuring Kubernetes Service Connectors to connect ZenML to Kubernetes clusters.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Service Connectors"},{"label":"Connector Types","icon":"album-collection"}]},{"id":"7GFvzSFJrUfBELAVMCSa","title":"AWS Service Connector","pathname":"/stacks/service-connectors/connector-types/aws-service-connector","siteSpaceId":"sitesp_Tc7LL","description":"Configuring AWS Service Connectors to connect ZenML to AWS resources like S3 buckets, EKS Kubernetes clusters and ECR container registries.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Service Connectors"},{"label":"Connector Types","icon":"album-collection"}]},{"id":"mmFG8TBBbPVpfIOLSWdi","title":"GCP Service Connector","pathname":"/stacks/service-connectors/connector-types/gcp-service-connector","siteSpaceId":"sitesp_Tc7LL","description":"Configuring GCP Service Connectors to connect ZenML to GCP resources such as GCS buckets, GKE Kubernetes clusters, and GCR container registries.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Service Connectors"},{"label":"Connector Types","icon":"album-collection"}]},{"id":"On8lH58oRGsliMjOZKiI","title":"Azure Service Connector","pathname":"/stacks/service-connectors/connector-types/azure-service-connector","siteSpaceId":"sitesp_Tc7LL","description":"Configuring Azure Service Connectors to connect ZenML to Azure resources such as Blob storage buckets, AKS Kubernetes clusters, and ACR container registries.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Service Connectors"},{"label":"Connector Types","icon":"album-collection"}]},{"id":"5sVQGr6dQGtYRusBtK8k","title":"HyperAI Service Connector","pathname":"/stacks/service-connectors/connector-types/hyperai-service-connector","siteSpaceId":"sitesp_Tc7LL","description":"Configuring HyperAI Connectors to connect ZenML to HyperAI instances.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Service Connectors"},{"label":"Connector Types","icon":"album-collection"}]},{"id":"2LZ0tDAifkSbVJnfSo8w","title":"AWS","pathname":"/stacks/popular-stacks/aws-guide","siteSpaceId":"sitesp_Tc7LL","icon":"aws","description":"A simple guide to create an AWS stack to run your ZenML pipelines","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Popular Stacks"}]},{"id":"7eNgJrfmlsufb286oSLe","title":"Azure","pathname":"/stacks/popular-stacks/azure-guide","siteSpaceId":"sitesp_Tc7LL","icon":"microsoft","description":"A simple guide to create an Azure stack to run your ZenML pipelines","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Popular Stacks"}]},{"id":"Y31GpiZp8AHi8zWrHhYP","title":"GCP","pathname":"/stacks/popular-stacks/gcp-guide","siteSpaceId":"sitesp_Tc7LL","icon":"google","description":"A simple guide to quickly set up a minimal stack on GCP.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Popular Stacks"}]},{"id":"pdMlE8EPeOKVjwcr71lK","title":"Kubernetes","pathname":"/stacks/popular-stacks/kubernetes","siteSpaceId":"sitesp_Tc7LL","icon":"kubernetes","description":"Learn how to deploy ZenML pipelines on a Kubernetes cluster.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Popular Stacks"}]},{"id":"aAkBjrd9EYsV95Uzg9mB","title":"1-click Deployment","pathname":"/stacks/deployment/deploy-a-cloud-stack","siteSpaceId":"sitesp_Tc7LL","icon":"hand-back-point-up","description":"Deploy a cloud stack from scratch with a single click","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Deployment"}]},{"id":"POHPK9TB7WcBcMBpMeCp","title":"Terraform Modules","pathname":"/stacks/deployment/deploy-a-cloud-stack-with-terraform","siteSpaceId":"sitesp_Tc7LL","icon":"globe","description":"Deploy a cloud stack using Terraform","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Deployment"}]},{"id":"7lqVCOCmaRvwMstOqsS0","title":"Register a cloud stack","pathname":"/stacks/deployment/register-a-cloud-stack","siteSpaceId":"sitesp_Tc7LL","icon":"cloud","description":"Seamlessly register a cloud stack by using existing infrastructure","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Deployment"}]},{"id":"K5M8RY54PmPjREcODPQ5","title":"Infrastructure as code","pathname":"/stacks/deployment/infrastructure-as-code","siteSpaceId":"sitesp_Tc7LL","icon":"network-wired","description":"Leverage Infrastructure as Code to manage your ZenML stacks and components.","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Deployment"}]},{"id":"aedstLrkTudBPhJncfrD","title":"Custom Stack Component","pathname":"/stacks/contribute/custom-stack-component","siteSpaceId":"sitesp_Tc7LL","icon":"cube","description":"How to write a custom stack component flavor","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Contribute"}]},{"id":"hBjw9rFSGDBfLyHhiW4B","title":"Custom Integration","pathname":"/stacks/contribute/implement-a-custom-integration","siteSpaceId":"sitesp_Tc7LL","icon":"cubes","description":"Creating an external integration and contributing to ZenML","breadcrumbs":[{"label":"Stacks","icon":"layer-group"},{"label":"Contribute"}]},{"id":"jJvWlTHvo1UB2dozj4Sy","title":"Overview","pathname":"/api-reference","siteSpaceId":"sitesp_RHEsK","description":"The ZenML API provides programmatic access to ZenML services beyond what's available in the Python SDK.","breadcrumbs":[{"label":"API Reference","icon":"webhook"}]},{"id":"sQ7NKtBZv0ub153pbFSp","title":"Getting Started","pathname":"/api-reference/oss-api/getting-started","siteSpaceId":"sitesp_RHEsK","icon":"person-from-portal","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"}]},{"id":"2Dlh9xq3AsSHdoRWsYK6","title":"OSS API","pathname":"/api-reference/oss-api/oss-api","siteSpaceId":"sitesp_RHEsK","icon":"github-alt","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"}]},{"id":"FOuYQmpeoULimEkts56f","title":"Artifacts","pathname":"/api-reference/oss-api/oss-api/artifacts","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"dCFXnd8XWOoUH4QuhU0k","title":"Artifact versions","pathname":"/api-reference/oss-api/oss-api/artifact-versions","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"Hwqrsj42ZAfnkODL86oq","title":"Batch","pathname":"/api-reference/oss-api/oss-api/artifact-versions/batch","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Artifact versions"}]},{"id":"dvPRzikX5ml94wJyBjlw","title":"Visualize","pathname":"/api-reference/oss-api/oss-api/artifact-versions/visualize","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Artifact versions"}]},{"id":"QZaHFffXoFySPJoV6xFx","title":"Login","pathname":"/api-reference/oss-api/oss-api/login","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"E5bv0OlvpeyyGpjzA06M","title":"Logout","pathname":"/api-reference/oss-api/oss-api/logout","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"RWQdyIV46DDRhg5BYZ9p","title":"Device authorization","pathname":"/api-reference/oss-api/oss-api/device-authorization","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"ZtD9vFbFywmMEbEQ2X87","title":"Api token","pathname":"/api-reference/oss-api/oss-api/api-token","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"tDrm0ezvkV3Xa1JlumO1","title":"Code repositories","pathname":"/api-reference/oss-api/oss-api/code-repositories","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"qfoA5hf1Q5ajNepCpO5v","title":"Logs","pathname":"/api-reference/oss-api/oss-api/logs","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"A5vPVxXBzCStQJdQM4R8","title":"Models","pathname":"/api-reference/oss-api/oss-api/models","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"tceoaxyz2LPZO7LRF6CT","title":"Model versions","pathname":"/api-reference/oss-api/oss-api/models/model-versions","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Models"}]},{"id":"vIw0AamFjSuqBkKu8dVZ","title":"Model versions","pathname":"/api-reference/oss-api/oss-api/model-versions","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"NigEmo8GsPCFZQAjgfFT","title":"Artifacts","pathname":"/api-reference/oss-api/oss-api/model-versions/artifacts","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Model versions"}]},{"id":"l67WIh33veNSTLw4ptKV","title":"Runs","pathname":"/api-reference/oss-api/oss-api/model-versions/runs","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Model versions"}]},{"id":"nNRTaI7xaZGFdAbuQQmZ","title":"Pipelines","pathname":"/api-reference/oss-api/oss-api/pipelines","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"xPUVYiZDCd8V4yOxjUuL","title":"Runs","pathname":"/api-reference/oss-api/oss-api/pipelines/runs","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Pipelines"}]},{"id":"TCVF3Vqf6c0mj2RAoBLa","title":"Runs","pathname":"/api-reference/oss-api/oss-api/runs","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"ZQmWZgHGiXaJBt9ZLK9i","title":"Steps","pathname":"/api-reference/oss-api/oss-api/runs/steps","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Runs"}]},{"id":"GspCxHEPxRnUVKf1yl8B","title":"Pipeline configuration","pathname":"/api-reference/oss-api/oss-api/runs/pipeline-configuration","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Runs"}]},{"id":"sVyrAe0AH404UY7qwdep","title":"Status","pathname":"/api-reference/oss-api/oss-api/runs/status","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Runs"}]},{"id":"L0fMyUy7JqZknTfSAVks","title":"Refresh","pathname":"/api-reference/oss-api/oss-api/runs/refresh","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Runs"}]},{"id":"MCaPgxpKW6V2mihtpJi1","title":"Run templates","pathname":"/api-reference/oss-api/oss-api/run-templates","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"NyMc9mduiCVRWlpBgI9j","title":"Runs","pathname":"/api-reference/oss-api/oss-api/run-templates/runs","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Run templates"}]},{"id":"XykP6XznhxT17X9GiNJi","title":"Schedules","pathname":"/api-reference/oss-api/oss-api/schedules","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"pXX8Sf1KdXRlN28IYy2X","title":"Secrets","pathname":"/api-reference/oss-api/oss-api/secrets","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"lflCiYYdxNjJL0qb6vd8","title":"Info","pathname":"/api-reference/oss-api/oss-api/info","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"berf9zpv2L3IwDjlEpNb","title":"Service accounts","pathname":"/api-reference/oss-api/oss-api/service-accounts","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"S2BcsVRuPAUMf6VN0dXX","title":"Api keys","pathname":"/api-reference/oss-api/oss-api/service-accounts/api-keys","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Service accounts"}]},{"id":"aXYSGuD1PRKDblc8hITt","title":"Rotate","pathname":"/api-reference/oss-api/oss-api/service-accounts/rotate","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Service accounts"}]},{"id":"OURZicjyhBVscW1pIeAI","title":"Service connectors","pathname":"/api-reference/oss-api/oss-api/service-connectors","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"n25jREB73fXcH5vJCMHW","title":"Verify","pathname":"/api-reference/oss-api/oss-api/service-connectors/verify","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Service connectors"}]},{"id":"s7gSkrncGiYaZTiwPLEc","title":"Client","pathname":"/api-reference/oss-api/oss-api/service-connectors/client","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Service connectors"}]},{"id":"NlaUkkZ1VjhzAnajHgRa","title":"Full stack resources","pathname":"/api-reference/oss-api/oss-api/service-connectors/full-stack-resources","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Service connectors"}]},{"id":"pWHu0F7rsK9yPbAJwyQX","title":"Services","pathname":"/api-reference/oss-api/oss-api/services","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"Iz2NaH7lckbnEVvFdi0B","title":"Stacks","pathname":"/api-reference/oss-api/oss-api/stacks","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"6w8yBO8b87NiJ2Ltj9kl","title":"Components","pathname":"/api-reference/oss-api/oss-api/components","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"FvkjRIVzc1x7AkywpXyr","title":"Component types","pathname":"/api-reference/oss-api/oss-api/component-types","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"XxqPI35sKusjmbOIDJ5v","title":"Steps","pathname":"/api-reference/oss-api/oss-api/steps","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"jpr2IeJo3PF2Vs10pzIP","title":"Step configuration","pathname":"/api-reference/oss-api/oss-api/steps/step-configuration","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Steps"}]},{"id":"YLMRiMbJ8GED3GQfl1mM","title":"Status","pathname":"/api-reference/oss-api/oss-api/steps/status","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Steps"}]},{"id":"d5FGytwZnr5IP5HL9Zg2","title":"Logs","pathname":"/api-reference/oss-api/oss-api/steps/logs","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Steps"}]},{"id":"TA7KCRdDRiSyjR2XPmXZ","title":"Tags","pathname":"/api-reference/oss-api/oss-api/tags","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"UDO4RwX1ZqjyGAWDm7Jz","title":"Users","pathname":"/api-reference/oss-api/oss-api/users","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"qrDH0MV4OLt9NvhjrnXl","title":"Resource membership","pathname":"/api-reference/oss-api/oss-api/users/resource-membership","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"},{"label":"Users"}]},{"id":"B1VaRhoF76OUhyoZ0AtX","title":"Current user","pathname":"/api-reference/oss-api/oss-api/current-user","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"OSS API"},{"label":"OSS API","icon":"github-alt"}]},{"id":"CS333mYvdsw66nafILWR","title":"Getting Started","pathname":"/api-reference/pro-api/getting-started","siteSpaceId":"sitesp_RHEsK","icon":"person-from-portal","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"}]},{"id":"xAAbqQiL6SBAVbhE8gAK","title":"Pro API","pathname":"/api-reference/pro-api/pro-api","siteSpaceId":"sitesp_RHEsK","icon":"rectangle-pro","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"}]},{"id":"tV6IDraOfgjARR3aKXaU","title":"Tenants","pathname":"/api-reference/pro-api/pro-api/tenants","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"41MC7iNPrS0QdBsOuMI6","title":"Deploy","pathname":"/api-reference/pro-api/pro-api/tenants/deploy","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Tenants"}]},{"id":"5fpY38TgLWss6fbjx0Rh","title":"Deactivate","pathname":"/api-reference/pro-api/pro-api/tenants/deactivate","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Tenants"}]},{"id":"hEzZrqobaC8TH5eqXHID","title":"Members","pathname":"/api-reference/pro-api/pro-api/tenants/members","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Tenants"}]},{"id":"DmNOGkRFkh1vHo9A6WSR","title":"Tenant status","pathname":"/api-reference/pro-api/pro-api/tenant-status","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"sV9NaoPau6KjU3zWmmW5","title":"Users","pathname":"/api-reference/pro-api/pro-api/users","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"dlkkWRjPBwbEejFQy6rw","title":"Authorize server","pathname":"/api-reference/pro-api/pro-api/users/authorize-server","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Users"}]},{"id":"7TKLZLP0iCb6LfA1R78y","title":"Me","pathname":"/api-reference/pro-api/pro-api/users/me","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Users"}]},{"id":"7WGxgtEonHJtOaMPXQNc","title":"Invitations","pathname":"/api-reference/pro-api/pro-api/invitations","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"LB0rnKDUGSs0UR3bWbtO","title":"Releases","pathname":"/api-reference/pro-api/pro-api/releases","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"DhQ5r8SuoxBHyixTWYa8","title":"Devices","pathname":"/api-reference/pro-api/pro-api/devices","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"jdDx3LGae2PGyx77QI9w","title":"Verify","pathname":"/api-reference/pro-api/pro-api/devices/verify","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Devices"}]},{"id":"VdDFN6VzI2pmj7Wmjpjm","title":"Roles","pathname":"/api-reference/pro-api/pro-api/roles","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"S2vhN9l6Ubj5dANYlMa8","title":"Assignments","pathname":"/api-reference/pro-api/pro-api/roles/assignments","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Roles"}]},{"id":"RA2TJJmYLJXpn6PXbTyf","title":"Permissions","pathname":"/api-reference/pro-api/pro-api/permissions","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"Pn6J4Hm2RU6h1sdNxzLQ","title":"Teams","pathname":"/api-reference/pro-api/pro-api/teams","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"eByBPnEhYqqq6oI7MQc7","title":"Members","pathname":"/api-reference/pro-api/pro-api/teams/members","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Teams"}]},{"id":"TrYI76fuVZH5O1wdMLWr","title":"Organizations","pathname":"/api-reference/pro-api/pro-api/organizations","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"CYmaNZoisf26YPosk4fj","title":"Trial","pathname":"/api-reference/pro-api/pro-api/organizations/trial","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Organizations"}]},{"id":"wcVAeHGmjbAz5772OkhX","title":"Invitations","pathname":"/api-reference/pro-api/pro-api/organizations/invitations","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Organizations"}]},{"id":"42LS5Mpz24tbxjDelBrO","title":"Members","pathname":"/api-reference/pro-api/pro-api/organizations/members","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Organizations"}]},{"id":"qcwRk7qDUx2VBq2tg1NT","title":"Roles","pathname":"/api-reference/pro-api/pro-api/organizations/roles","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Organizations"}]},{"id":"i1XIdNfSqCpwnGhT1QBg","title":"Teams","pathname":"/api-reference/pro-api/pro-api/organizations/teams","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Organizations"}]},{"id":"yP4XKn8W6gREk1YsSpEE","title":"Tenants","pathname":"/api-reference/pro-api/pro-api/organizations/tenants","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Organizations"}]},{"id":"y6btOGXZuw0TPORPFB5t","title":"Tenant","pathname":"/api-reference/pro-api/pro-api/organizations/tenant","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Organizations"}]},{"id":"iq6y8GhJzUlvpDGiZmce","title":"Entitlement","pathname":"/api-reference/pro-api/pro-api/organizations/entitlement","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Organizations"}]},{"id":"pAeF0dvckmPSbAYs6S3z","title":"Validation","pathname":"/api-reference/pro-api/pro-api/organizations/validation","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Organizations"}]},{"id":"j6QmgZtJDX2Bhj1G5VhP","title":"Name","pathname":"/api-reference/pro-api/pro-api/organizations/validation/name","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Organizations"},{"label":"Validation"}]},{"id":"DFSqDWKcdxw6gLrTotN7","title":"Tenant name","pathname":"/api-reference/pro-api/pro-api/organizations/validation/tenant-name","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Organizations"},{"label":"Validation"}]},{"id":"ec35BK7VOYwXZRygQd5v","title":"Health","pathname":"/api-reference/pro-api/pro-api/health","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"e8xguJth8UMFtOWF6kTw","title":"Usage event","pathname":"/api-reference/pro-api/pro-api/usage-event","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"jimPlCzYjpjMXQrCaVNK","title":"Usage batch","pathname":"/api-reference/pro-api/pro-api/usage-batch","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"RVqJfxz5fkv6g6EPymkC","title":"Stigg webhook","pathname":"/api-reference/pro-api/pro-api/stigg-webhook","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"YjsXH9KZcCBmpC00qke1","title":"Auth","pathname":"/api-reference/pro-api/pro-api/auth","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"A0alBpIVBu8ZLxSsHSVn","title":"Login","pathname":"/api-reference/pro-api/pro-api/auth/login","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Auth"}]},{"id":"6N5iKOkZiYPyuwMwjIrm","title":"Connections","pathname":"/api-reference/pro-api/pro-api/auth/connections","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Auth"}]},{"id":"T1v2g3U9FzFxfaeENh1u","title":"Authorize","pathname":"/api-reference/pro-api/pro-api/auth/authorize","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Auth"}]},{"id":"Lp3xdkn1ycA4B9FvuHvi","title":"Callback","pathname":"/api-reference/pro-api/pro-api/auth/callback","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Auth"}]},{"id":"BrOsk5MQqm3NQnSqRdb2","title":"Logout","pathname":"/api-reference/pro-api/pro-api/auth/logout","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Auth"}]},{"id":"l23CR7ABlCOBZBLGpurq","title":"Device authorization","pathname":"/api-reference/pro-api/pro-api/auth/device-authorization","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Auth"}]},{"id":"9kclbqXXxxbKxrHmPt2U","title":"Api token","pathname":"/api-reference/pro-api/pro-api/auth/api-token","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Auth"}]},{"id":"09VFNwj7lNIVSG4yDAAw","title":"Tenant authorization","pathname":"/api-reference/pro-api/pro-api/auth/tenant-authorization","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Auth"}]},{"id":"boowh7Hz1ZceJcO05b1l","title":"Rbac","pathname":"/api-reference/pro-api/pro-api/rbac","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"GNcHRM6i1kvwk9ogD0c2","title":"Check permissions","pathname":"/api-reference/pro-api/pro-api/rbac/check-permissions","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Rbac"}]},{"id":"zfJzRZimHhWLzsFdQswv","title":"Allowed resource ids","pathname":"/api-reference/pro-api/pro-api/rbac/allowed-resource-ids","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Rbac"}]},{"id":"ZhQBXI7NkNQsQzRHyF5B","title":"Resource members","pathname":"/api-reference/pro-api/pro-api/rbac/resource-members","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Rbac"}]},{"id":"irwJp3iEO3RY3sITRZhZ","title":"Server","pathname":"/api-reference/pro-api/pro-api/server","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"}]},{"id":"fnpuWoICH62qRcJ3Vc2j","title":"Info","pathname":"/api-reference/pro-api/pro-api/server/info","siteSpaceId":"sitesp_RHEsK","description":"","breadcrumbs":[{"label":"API Reference","icon":"webhook"},{"label":"Pro API"},{"label":"Pro API","icon":"rectangle-pro"},{"label":"Server"}]},{"id":"UFpDNSWcd1mMpHeMYIrV","title":"Overview","pathname":"/sdk-reference","siteSpaceId":"sitesp_Ankj9","description":"See docstrings for ZenML Code","breadcrumbs":[{"label":"SDK Reference","icon":"python"}]},{"id":"53crGdt8UNVxnhaDcBnD","title":"Client","pathname":"/sdk-reference/client","siteSpaceId":"sitesp_Ankj9","icon":"plug","description":"","breadcrumbs":[{"label":"SDK Reference","icon":"python"}]},{"id":"lO60igwOJQTcJ2eRA2N3","title":"Example usages","pathname":"/sdk-reference/example-usages","siteSpaceId":"sitesp_Ankj9","icon":"python","description":"Interacting with your ZenML instance through the ZenML Client.","breadcrumbs":[{"label":"SDK Reference","icon":"python"}]},{"id":"tKt3fO3OTUaRJAepipAG","title":"Overview","pathname":"/changelog","siteSpaceId":"sitesp_jxM7V","icon":"overline","description":"Stay up to date with the latest features, improvements, and fixes across ZenML OSS and ZenML Pro.","breadcrumbs":[{"label":"Changelog","icon":"memo-pad"}]},{"id":"PugU34LLUsbk6u1CnLie","title":"Server & SDK","pathname":"/changelog/server-sdk","siteSpaceId":"sitesp_jxM7V","icon":"clock-rotate-left","description":"Changelog for ZenML OSS and ZenML UI.","breadcrumbs":[{"label":"Changelog","icon":"memo-pad"}]},{"id":"M7riJ4xg1VDlEAMI9IG6","title":"Pro Control Plane","pathname":"/changelog/pro-control-plane","siteSpaceId":"sitesp_jxM7V","icon":"clock-rotate-left","description":"Changelog for ZenML Pro.","breadcrumbs":[{"label":"Changelog","icon":"memo-pad"}]}]}