Pipeline
Multi-stage workflow definition
A Pipeline is a sequence of stages that transform data. Pipelines are defined in YAML and executed by the Orchestrator.
Structure
name: "Voice Assistant"
registry: "http://localhost:8080"
input:
kind: "AudioRaw"
stages:
- whisper-tiny@1.0
- target: integration
provider: openai
model: gpt-4o-mini
- kokoro-82m@0.1How Pipelines Work
Stage Formats
Simple Format
Reference a model by ID and version:
stages:
- whisper-tiny@1.0
- kokoro-82m@0.1Object Format
For explicit configuration:
stages:
- name: whisper-tiny@1.0
target: deviceIntegration Stages
For cloud LLM execution:
stages:
- target: integration
provider: openai
model: gpt-4o-mini
options:
system_prompt: "You are a helpful assistant."
max_tokens: 150
temperature: 0.7Execution Targets
| Target | Description | Source |
|---|---|---|
device | On-device inference | .xyb bundle from registry |
server | Cloud inference | Xybrid cloud (future) |
integration | Third-party API | OpenAI, Anthropic, etc. |
auto | Framework decides | Resolved at runtime |
Input Types
Declare expected input type for validation:
input:
kind: "AudioRaw" # For ASR pipelinesinput:
kind: "Text" # For TTS or text pipelinesRegistry Configuration
Simple URL
registry: "http://localhost:8080"File Path (Local)
registry: "file:///Users/me/.xybrid/registry"Data Flow
Each stage transforms an Envelope:
| Stage Type | Input | Output |
|---|---|---|
| ASR (Whisper) | AudioRaw | Text |
| LLM (GPT-4o) | Text | Text |
| TTS (Kokoro) | Text | AudioRaw |
The Pipeline validates that outputs match next stage's expected input.
Lifecycle
- Load - Parse YAML, resolve models
- Validate - Check type compatibility
- Execute - Run stages via Orchestrator
- Unload - Release resources
Related
- Pipeline DSL - Complete YAML reference
- Orchestrator - Executes pipelines
- Registry - Model bundle resolution