9.22. Clara Structures and Primitives
The Clara pipeline definition language supports types as of api-version 0.5.0 and above.
Clara type |
element-type |
shape |
|---|---|---|
array |
Mandatory (See primitives table) | Mandatory |
string |
Omit | Omit |
| Clara Primitive | Omit | Omit |
stream |
Mandatory (anything) | Omit |
string is a special type that is implicitly dynamic and can be interpreted as an array of unit8 of dynamic size updatable by the user-code at runtime.
output:
- name: my-output
type: string
is the same as
output:
- name: my-output
type: array
element-type: uint8
shape: [-1]
In the table below we use short-hand notation for the array representation, where for example
array<float32>[3,244,244]
is equivalent to the YAML syntax
type: array
element-type: float32
shape: [3, 224, 224]
| Clara Primitive | Logical Interpretation |
array Representation |
|---|---|---|
u8, uint8 |
8-bit unsigned integer | array<uint8>[1] |
u16, uint16 |
16-bit unsigned integer | array<uint16>[1] |
u32, uint32 |
32-bit unsigned integer | array<uint32>[1] |
u64, uint64 |
64-bit unsigned integer | array<uint64>[1] |
i8, int8 |
8-bit unsigned integer | array<int8>[1] |
i16, int16 |
16-bit signed integer | array<int16>[1] |
i32, int32 |
32-bit signed integer | array<int32>[1] |
i64, int64 |
64-bit signed integer | array<int64>[1] |
f16, float16 |
16-bit floating-point | array<float16>[1] |
f32, float32 |
32-bit floating-point | array<float32>[1] |
f64, float64 |
64-bit floating-point | array<float64>[1] |
Typed volume-based output.
output:
- name: my-output
type: stream
element-type: my-stream-type
path: /my-path
Typed static output array of int32 elements of shape 3 x 224 x 224.
output:
- name: my-output
type: array
element-type: int32
shape: [3, 224, 224]
Typed partially-dynamic output array of int32 elements of shape anything x 224 x 224.
output:
- name: my-output
type: array
element-type: int32
shape: [-1, 224, 224]
Typed primitive of float32.
output:
- name: my-output
type: float32
String output (implicitly dynamic).
- name: my-output
type: string