DeploymentConfig
Configure how a model is deployed: schema, schedules, and outputs.
This is the single section describing deployment behavior. It carries the
deploy-specific scalars (schema, auto_deploy), the
named refresh schedules, and the outputs configuration (default reasoner /
materialization / schedule plus per-output overrides).
Examples
deployment: schema: analytics auto_deploy: true schedules: standard: interval_s: 60 fast_path: interval_s: 10 outputs: type: table schedule: standard overrides: - objects: [recursive_closure] reasoner: logic schedule: fast_pathAttributes
.schema_
DeploymentConfig.schema_: (str, optional)Install schema for model-generated SQL views and tables (config key is
schema).
.role
DeploymentConfig.role: (str, optional)Snowflake role to use when deploying the model.
.auto_deploy
DeploymentConfig.auto_deploy: boolAutomatically deploy the model before running queries.
.schedules
DeploymentConfig.schedules: dict[str, ScheduleConfig]Named refresh cadences. Each key is the schedule name (letters, digits
and underscores; must start with a letter). Outputs attach to a schedule
via outputs.
.outputs
DeploymentConfig.outputs: OutputsConfigDefault reasoner / materialization / schedule for outputs, plus per-output overrides.
.max_parallel_exports
DeploymentConfig.max_parallel_exports: (int, optional)Maximum number of LQP exports that run in parallel during a refresh (Snowflake only). If unset, the value is taken from the active warehouse’s MAX_CONCURRENCY_LEVEL, falling back to 8.
.max_concurrent_refresh_blocks
DeploymentConfig.max_concurrent_refresh_blocks: (int, optional)Maximum number of refresh plan blocks to dispatch concurrently within a single refresh run (Snowflake only). Blocks are still ordered by their dependencies, so fewer blocks may run concurrently when the plan has dependency barriers. Set to 0 to dispatch all ready blocks at once. If unset, the value is taken from the active warehouse’s MAX_CONCURRENCY_LEVEL, falling back to 8.
.suspend_after_mins
DeploymentConfig.suspend_after_mins: (int, optional)Convenience method for development (Snowflake only). If set, the refresh procedure auto-suspends all refresh tasks in the meta schema once this many minutes have elapsed since the initial deploy start time. Intended to bound development costs; leave unset in production.
.meta_schema
DeploymentConfig.meta_schema: (str, optional)Override the schema used to store RAI metadata (procedures, plan table,
refresh log). When unset, defaults to <schema>_META.
.preserve_column_case
DeploymentConfig.preserve_column_case: boolPreserve the capitalization of column names when deploying to Snowflake.
For example, a model field named EntityId will deploy as column
EntityId, instead of ENTITYID. This currently applies only to
column names, not table names. In SQL, preserved names are
case-sensitive and must be quoted exactly, such as "EntityId".
.pat_secret
DeploymentConfig.pat_secret: (str, optional)Fully-qualified Snowflake secret name (db.schema.secret) holding the
deploying user’s Programmatic Access Token; sent to the reasoners as an
X-User-Pat header on every scheduled refresh (Snowflake only). Must
be set together with pat_eai.
.pat_eai
DeploymentConfig.pat_eai: (str, optional)Snowflake External Access Integration name required to read the PAT
secret. Must be set together with pat_secret.
Inheritance Hierarchy
Referenced By
RelationalAI Documentation └── Release Notes └── Python API Release Notes └── What’s New in Version 1.13.0 └── Bug Fixes