Jump to content

Connect Leeroopedia MCP: Equip your AI agents to search best practices, build plans, verify code, diagnose failures, and look up hyperparameter defaults.

Implementation:SeldonIO Seldon core Seldon Pipeline Version Update

From Leeroopedia
Property Value
Implementation Name Seldon Pipeline Version Update
Type Pattern Doc
Overview Concrete pattern for progressively evolving Seldon Core 2 pipelines through version updates
Domains MLOps, Versioning
Implements Principle SeldonIO_Seldon_core_Pipeline_Version_Progression
Source samples/pipelines/income-v1.yaml:L1-10, samples/pipelines/income-v2.yaml:L1-14, samples/pipelines/income-v3.yaml:L1-18
External Dependencies seldon CLI, kubectl, Seldon scheduler
Knowledge Sources Repo (https://github.com/SeldonIO/seldon-core), Doc (https://docs.seldon.io/projects/seldon-core/en/v2/)
Last Updated 2026-02-13 00:00 GMT

Code Reference

Version 1: Classifier Only

# income-v1.yaml
apiVersion: mlops.seldon.io/v1alpha1
kind: Pipeline
metadata:
  name: income-prod
spec:
  steps:
    - name: income
  output:
    steps:
    - income

Version 2: Classifier + Drift Detection

# income-v2.yaml
apiVersion: mlops.seldon.io/v1alpha1
kind: Pipeline
metadata:
  name: income-prod
spec:
  steps:
    - name: income
    - name: income-drift
      batch:
        size: 20
  output:
    steps:
    - income

Version 3: Full Monitoring Pipeline

# income-v3.yaml
apiVersion: mlops.seldon.io/v1alpha1
kind: Pipeline
metadata:
  name: income-prod
spec:
  steps:
    - name: income
    - name: income-preprocess
    - name: income-outlier
      inputs:
      - income-preprocess
    - name: income-drift
      batch:
        size: 20
  output:
    steps:
    - income
    - income-outlier.outputs.is_outlier

Key Parameters

Version Pipeline Name Steps New Additions Output Steps
v1 income-prod income Classifier only income
v2 income-prod income, income-drift + drift detector with batch.size=20 income
v3 income-prod income, income-preprocess, income-outlier, income-drift + preprocessor, + outlier detector with input chaining income, income-outlier.outputs.is_outlier

Version Progression Details

Change v1 to v2 v2 to v3
New steps added income-drift income-preprocess, income-outlier
New dependencies None income-outlier depends on income-preprocess
Batch configuration N/A income-drift: batch.size=20 (unchanged)
Output changes None Added income-outlier.outputs.is_outlier
Pipeline name income-prod (same) income-prod (same)

I/O Contract

Inputs

Input Type Description
Updated pipeline YAML File Pipeline CRD with additional monitoring steps (same pipeline name)
Component models Pre-deployed All referenced models must be loaded before pipeline update

Outputs

Output Type Description
Pipeline version increment State change pipelineVersion increments (1, 2, 3, ...)
Seamless transition Behavior No downtime during version transitions
New Kafka topics Auto-created Topics for new steps are provisioned automatically

Usage Examples

Progressive Deployment Sequence

# Step 1: Deploy v1 (classifier only)
seldon pipeline load -f samples/pipelines/income-v1.yaml
seldon pipeline status income-prod -w PipelineReady
# Pipeline version: 1

# Step 2: Validate v1 with inference
seldon pipeline infer income-prod \
  '{"inputs": [{"name": "predict", "datatype": "FP32", "shape": [1, 12], "data": [[39,7,1,1,1,1,4,1,2174,0,40,9]]}]}'

# Step 3: Upgrade to v2 (add drift detection)
seldon pipeline load -f samples/pipelines/income-v2.yaml
seldon pipeline status income-prod -w PipelineReady
# Pipeline version: 2

# Step 4: Upgrade to v3 (add preprocessing + outlier detection)
seldon pipeline load -f samples/pipelines/income-v3.yaml
seldon pipeline status income-prod -w PipelineReady
# Pipeline version: 3

Rolling Back to a Previous Version

# Roll back from v3 to v1 by resubmitting the v1 definition
seldon pipeline load -f samples/pipelines/income-v1.yaml
seldon pipeline status income-prod -w PipelineReady
# Pipeline version: 4 (new version number, but v1 functionality)

Verifying Version After Update

# Check current pipeline version and steps
seldon pipeline status income-prod | jq '.versions[0].state.pipelineVersion'
# Output: 3

# List all steps in current version
seldon pipeline status income-prod | jq '.versions[0].pipeline.steps | keys'
# Output: ["income", "income-drift", "income-outlier", "income-preprocess"]

Related Pages

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment