Skip to content

ExecutionConfig

relationalai.config.config_fields

Configure execution middleware behavior.

This controls client-side middleware features such as metrics/logging and (optionally) automatic retries with exponential backoff.

Minimal YAML (in raiconfig.yaml):

default_connection: sf
connections:
sf:
type: snowflake
# ...
execution:
metrics: true
retries:
enabled: true
max_attempts: 5
base_delay_s: 0.5
max_delay_s: 10.0

Configure execution settings using a dict:

>>> from relationalai.config import Config
>>> cfg = Config(
... execution={
... "metrics": True,
... "retries": {"enabled": True, "max_attempts": 5, "base_delay_s": 0.5, "max_delay_s": 10.0},
... },
... )

Configure execution settings using an explicit ExecutionConfig instance:

>>> from relationalai.config import Config, ExecutionConfig
>>> cfg = Config(
... execution=ExecutionConfig(
... metrics=True,
... retries=ExecutionConfig.RetriesConfig(enabled=True, max_attempts=5, base_delay_s=0.5, max_delay_s=10.0),
... ),
... )
ExecutionConfig.metrics: bool

Enable execution metrics collection.

ExecutionConfig.logging: bool

Enable structured execution logging.

ExecutionConfig.retries: ExecutionConfig.RetriesConfig

Retry and backoff policy.

ExecutionConfigpydantic.BaseModel
RelationalAI Documentation
└──  Build With RelationalAI
    └──  Understand how PyRel works > Configure PyRel
        └──  Configure execution behavior
            ├──  Enable or disable metrics collection
            ├──  Enable or disable execution logs
            └──  Enable or disable retries