Builds a runnable component from code you paste inline, in Python or C++, at deploy time with no separate publish step. The pasted code uses the standard component worker SDK; the input $as and output $bs are independent typevars the surrounding graph fixes on each side, so one step adapts whatever flows in into whatever the code returns.
Typical backends
Prototype an inline glue step between a source and a JSON sink.
Drop an inline reshape step that feeds both an evaluation and a gate.
Caveats
- I/O contractA Python step is a complete worker module: it imports `run` from the worker SDK and calls `run(<callback>)` at module top level, and the callback takes one positional per input port and returns one value per output port. Code that only defines the callback never starts a worker — the module runs to completion and the container exits at once, with a zero exit code and an empty log.
- CompatibilityThe pasted code must compile clean against the selected build template using the component worker SDK, and be written in Python or C++. A C++ step compiles against the same build templates a published C++ component uses — the plain base and the ML base both build C++ — so any template that builds the selected language on the target platform is valid.
- Parameter interactionExtra pip dependencies are honoured only for Python, one requirement per line; with C++ they are ignored, so native dependencies must instead come from the base image the selected build template provides.
- I/O contractThe input
$as and the output $bs are independent typevars: the output shape is whatever the pasted code returns, never derived from the input. An output wired to no typed consumer stays a generic variable and the graph reports an incomplete type until it is wired to a typed input.
- I/O contractEach input tick must produce exactly one value on every output port; the pasted code may not return nothing for a tick.
- LimitationThe built image is identified by the exact content of the pasted code, the language, the selected build template and the dependency list together. An identical step reuses its image, and only a real change to one of those rebuilds it.