Principle:SeldonIO Seldon core Pipeline Readiness Verification
| Field | Value |
|---|---|
| Principle Name | Pipeline Readiness Verification |
| Overview | Polling mechanism that confirms all steps of a deployed pipeline are ready for inference. |
| Domains | MLOps, Kubernetes |
| Related Implementation | SeldonIO_Seldon_core_Seldon_Pipeline_Status |
| Last Updated | 2026-02-13 00:00 GMT |
Description
Pipeline readiness verification checks that all component model steps are loaded and the Kafka data flow is established. The PipelineReady condition aggregates the readiness of all individual steps. Until this condition is met, the pipeline cannot reliably serve inference requests.
The readiness check provides several pieces of information:
- pipelineVersion: The current version number, incremented with each pipeline load.
- status: The overall pipeline state (e.g.,
PipelineReady,PipelineCreating,PipelineFailed). - modelsReady: A boolean flag indicating whether all referenced models are available.
- reason: A human-readable explanation of the current state.
- lastChangeTimestamp: The timestamp of the most recent state transition.
Theoretical Basis
Pipeline readiness is a composite condition that depends on the readiness of all constituent steps. It follows the same condition-based status pattern as model readiness but at the pipeline level. This maps to the concept of composite health checks in distributed systems:
- Bottom-up Aggregation: Each model has its own readiness condition (ModelAvailable). The pipeline's readiness is the logical AND of all its step models' readiness plus the infrastructure readiness (Kafka topics provisioned).
- Eventual Consistency: After a pipeline load command, the system transitions through intermediate states before reaching PipelineReady. Polling with the
-w PipelineReadyflag provides a blocking wait that returns when the condition is met or a timeout occurs. - Condition-based Status Pattern: Kubernetes uses conditions to express resource status. The PipelineReady condition follows this convention, making pipeline readiness queryable through standard Kubernetes patterns.
- Failure Propagation: If any referenced model becomes unavailable after the pipeline is deployed, the pipeline's readiness condition will degrade, signaling that inference requests may fail.
When to Use
Use this principle after deploying a pipeline (seldon pipeline load) and before sending inference requests:
- When waiting for a newly deployed pipeline to become operational.
- When monitoring pipeline health during operations.
- When implementing readiness probes in CI/CD pipelines or automated deployment scripts.
- When debugging pipeline failures (the status provides diagnostic information about which steps are not ready).
Structure
The readiness verification process:
- Submit status query: Use
seldon pipeline status <name>to query the current state. - Wait for condition: Use the
-w PipelineReadyflag for a blocking wait until the condition is met. - Inspect response: Check the
status,modelsReady, andreasonfields. - Proceed or diagnose: If PipelineReady, proceed to inference. If not, examine the reason and step details to identify the issue.
An example status response for a ready pipeline:
{
"pipelineName": "tfsimples",
"versions": [
{
"pipeline": {
"name": "tfsimples",
"version": 2,
"steps": [
{"name": "tfsimple1"},
{"name": "tfsimple2", "inputs": ["tfsimple1.outputs"], "tensorMap": {"tfsimple1.outputs.OUTPUT0": "INPUT0", "tfsimple1.outputs.OUTPUT1": "INPUT1"}}
],
"output": {"steps": ["tfsimple2.outputs"]}
},
"state": {
"pipelineVersion": 2,
"status": "PipelineReady",
"reason": "created pipeline",
"lastChangeTimestamp": "2023-06-29T14:11:40.101677847Z",
"modelsReady": true
}
}
]
}
Related Pages
- SeldonIO_Seldon_core_Seldon_Pipeline_Status - implements - Concrete CLI tool for querying pipeline status and readiness.
- SeldonIO_Seldon_core_Pipeline_Deployment_Execution - prerequisite - The pipeline must be deployed before readiness can be verified.
- SeldonIO_Seldon_core_Pipeline_Inference_Execution - next step - Once ready, the pipeline can serve inference requests.
- SeldonIO_Seldon_core_Component_Model_Deployment - dependency - Model readiness contributes to overall pipeline readiness.