Essentials
DSL Syntax
Keywords and structure for writing model deployment recipes using SoraNova DSL
Variable Declaration
Variables define dynamic values that can be reused throughout the deployment.
Keyword | Purpose |
---|---|
variable | Declares a reusable value block |
type | Specifies the type (number , string , list , etc.) |
description | Describes what this variable is used for |
default | Provides a fallback value if none is given at deploy time |
Reference variables with ${var.variable_name}
in your task or resource definitions.
Application Block
The application
block is the top-level definition for a model deployment.
Keyword | Purpose |
---|---|
name | Human-readable name for your model |
summary | Link to model card or documentation (optional) |
description | A short description of your deployment |
Service and Task Group
Define a service
to a logical group together model execution tasks.
Keyword | Purpose |
---|---|
service | Groups all tasks that serve a single model |
task_group | Defines how many replicas of a task to run |
count | Sets the number of replicas (use a variable if needed) |
task | A single unit of execution (a container or script) |
driver | The runtime environment, e.g., docker |
config | The configuration of your task, see below |
Task Config
Configure how your model container should be launched.
Keyword | Purpose |
---|---|
image | Docker image to launch |
ipc_mode | Set to host if your container requires GPU IPC |
args | Command-line arguments passed to your container |
Endpoint & Health Check
Specify the model’s serving port and health check mechanism.
Keyword | Purpose |
---|---|
endpoint | Exposes a port for requests and defines health checks |
port | Port that the model will serve traffic on |
health | Block that determines if the container is “healthy” |
type | Health check type (http ) |
path | HTTP path to hit for health checking |
interval | How often to check the health |
timeout | Timeout for each health check attempt |
Ensure the health check path is correctly implemented in your model. If the health check fails, the model may not be marked as healthy.
Resources and GPU Allocation
Declare CPU, memory, and GPU resources for your task.
Keyword | Purpose |
---|---|
cpu_mhz | How much CPU to allocate (in MHz) |
memory_mib | RAM allocated to this task |
sharing_strategy | GPU usage model (mps for CUDA Multi-Process Service) |
device | GPU allocation block |
name | GPU device name (e.g., nvidia/gpu ) |
memory_mibs | Memory to allocate per GPU (MiB) |