Version 1 of the Runefile.yml
format.
The base image that defines the interface between a Rune and its runtime.
This should always be "runicos/base"
.
A specification for finding a dependency.
The full syntax is base@version#sub_path
where
base
is a URL or the name of a repository on GitHub (e.g. hotg-ai/rune
https://github.com/hotg-ai/rune
)version
is an optional field specifying the version (e.g. as a git tag)sub_path
is an optional field which is useful when pointing to(?x) (?P<base>[\w\d:/_.-]+) (?:@(?P<version>[\w\d./-]+))? (?:\#(?P<sub_path>[\w\d._/-]+))?
The various stages in the Runefile's pipeline.
Each additional property must conform to the following schema
Type: objectA stage in the Rune's pipeline.
A ML model which will be executed by the runtime.
Each additional property must conform to the following schema
Type: objectSomething that could be either a reference to a resource ($resource
) or a plain string (./path
).
A reference to some [ResourceDeclaration
]. It typically looks like
$RESOURCE_NAME
.
^\$[_a-zA-Z][_a-zA-Z0-9]*$
Tensors to use as input to this model.
The name of a tensor.
Typically something like "stage", or "stage.2" if the stage has multiple outputs.
Must match regular expression:^(?P<name>[a-zA-Z_][\w-]*)(?:\.(?P<index>\d+))?$
The model to use, or a resource which specifies the model to use.
A reference to some [ResourceDeclaration
]. It typically looks like
$RESOURCE_NAME
.
The tensors that this model outputs.
The element type and dimensions for a particular tensor.
Value must be greater or equal to 0.0
A stage which executes a procedural block.
Each additional property must conform to the following schema
Type: objectSomething that could be either a reference to a resource ($resource
) or a plain string (./path
).
The name of a tensor.
Typically something like "stage", or "stage.2" if the stage has multiple outputs.
Same definition as anyOf_i0_pipeline_additionalProperties_anyOf_i0_inputs_itemsThe element type and dimensions for a particular tensor.
Same definition as anyOf_i0_pipeline_additionalProperties_anyOf_i0_outputs_itemsA [Path
] that Rune can use to locate the proc block.
(?x) (?P<base>[\w\d:/_.-]+) (?:@(?P<version>[\w\d./-]+))? (?:\#(?P<sub_path>[\w\d._/-]+))?
A stage which reads inputs from the runtime.
Each additional property must conform to the following schema
Type: objectSomething that could be either a reference to a resource ($resource
) or a plain string (./path
).
What type of capability to use ("IMAGE", "SOUND", etc.).
The element type and dimensions for a particular tensor.
Same definition as anyOf_i0_pipeline_additionalProperties_anyOf_i0_outputs_itemsA stage which passes outputs back to the runtime.
Each additional property must conform to the following schema
Type: objectSomething that could be either a reference to a resource ($resource
) or a plain string (./path
).
The name of a tensor.
Typically something like "stage", or "stage.2" if the stage has multiple outputs.
Same definition as anyOf_i0_pipeline_additionalProperties_anyOf_i0_inputs_itemsThe type of output (e.g. "SERIAL").
Any resources that can be accessed by pipeline stages.
Each additional property must conform to the following schema
Type: objectThe declaration for a resource, typically something like a wordlist or environment variable.
No Additional PropertiesA resource who's default value is specified inline.
A resource who's default value is meant to be loaded from a file.
How the resource should be treated inside the Rune.
The version number. Must always be "1"
.
Value must be greater or equal to 1.0
and lesser or equal to 1.0