Implementation:SeldonIO Seldon core Seldon Pipeline CRD Monitoring
Appearance
| Property | Value |
|---|---|
| Implementation Name | Seldon Pipeline CRD Monitoring |
| Type | Pattern Doc |
| Overview | Concrete pattern for declaring monitoring pipelines with batch processing and multi-output in Seldon Core 2 |
| Domains | MLOps, Data_Flow |
| Implements Principle | SeldonIO_Seldon_core_Monitoring_Pipeline_Definition |
| Source | samples/pipelines/income.yaml:L1-18 |
| External Dependencies | Kubernetes API (mlops.seldon.io/v1alpha1), Kafka |
| 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
Monitoring Pipeline CRD (income.yaml)
apiVersion: mlops.seldon.io/v1alpha1
kind: Pipeline
metadata:
name: income-production
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
| Parameter | Path | Description | Example Value |
|---|---|---|---|
| Pipeline name | metadata.name | Unique pipeline identifier | income-production |
| Steps | spec.steps | List of pipeline model steps | 4 steps (income, income-preprocess, income-outlier, income-drift) |
| Step inputs | spec.steps[].inputs | Dependency chain for a step | income-outlier depends on income-preprocess |
| Batch size | spec.steps[].batch.size | Batch aggregation count for drift detection | 20 |
| Output steps | spec.output.steps | Which step outputs to return to caller | income (predictions), income-outlier.outputs.is_outlier (outlier flags) |
Pipeline Data Flow
Input Request
|
+---> income (classifier) ---------> output: predictions
|
+---> income-preprocess (transform)
| |
| +---> income-outlier ----> output: is_outlier
|
+---> income-drift (batched, size=20) --> async drift results
I/O Contract
Inputs
| Input | Type | Description |
|---|---|---|
| Deployed model names | String references | All four models must be loaded: income, income-preprocess, income-drift, income-outlier |
| Pipeline architecture | Design decision | Which steps depend on which, batch sizes, output selection |
Outputs
| Output | Type | Description |
|---|---|---|
| Pipeline CRD YAML | Kubernetes resource | income-production pipeline with 4 steps |
| Kafka topics | Auto-created | Internal data flow topics for inter-step communication |
Usage Examples
Deploying the Monitoring Pipeline
# Load the monitoring pipeline definition
seldon pipeline load -f samples/pipelines/income.yaml
# Wait for the pipeline to become ready
seldon pipeline status income-production -w PipelineReady
Understanding Step Dependencies
| Step | Input Source | Output Destination | Batching |
|---|---|---|---|
| income | Pipeline input (raw features) | Pipeline output (predictions) | None |
| income-preprocess | Pipeline input (raw features) | income-outlier | None |
| income-outlier | income-preprocess output | Pipeline output (is_outlier) | None |
| income-drift | Pipeline input (raw features) | Async (not in pipeline output) | Batch size 20 |
Output Field Selection
The income-outlier.outputs.is_outlier syntax selects a specific field from the outlier detector's output. The full outlier detector response includes multiple fields (instance_score, feature_score, is_outlier), but only the binary outlier flag is included in the pipeline response.
Related Pages
- SeldonIO_Seldon_core_Monitoring_Pipeline_Definition (principle) - Design principles for monitoring pipeline composition
- SeldonIO_Seldon_core_Seldon_Model_Load_For_Monitoring (prerequisite) - Loading component models before pipeline creation
- SeldonIO_Seldon_core_Seldon_Pipeline_Load_And_Status (next step) - Deploying and validating the pipeline
- SeldonIO_Seldon_core_Seldon_Pipeline_Infer_Monitoring (usage) - Sending inference requests through the monitoring pipeline
- SeldonIO_Seldon_core_Seldon_Pipeline_Version_Update (related) - Evolving pipeline versions progressively
- Environment:SeldonIO_Seldon_core_Kafka_Messaging_Environment
Page Connections
Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment