Skip to content

ReasonerConfig

relationalai.config.config_reasoners_fields

Common configuration fields for a reasoner.

This model defines the fields shared by all reasoner types. You set these fields under one of the reasoner subsections in raiconfig.yaml:

  • reasoners.logic (logic reasoner, see LogicReasonerConfig for additional logic-specific settings)
  • reasoners.predictive (predictive reasoner)
  • reasoners.prescriptive (prescriptive reasoner)

Minimal YAML (in raiconfig.yaml) configuring only the logic reasoner:

default_connection: sf
connections:
sf:
type: snowflake
# ...
reasoners:
logic:
size: HIGHMEM_X64_S
auto_suspend_mins: 60

Any omitted subsections (for example reasoners.predictive) keep their built-in defaults.

Configure reasoner defaults in code:

>>> from relationalai.config import Config
>>> cfg = Config(reasoners={
... "logic": {
... "size": "HIGHMEM_X64_S",
... "auto_suspend_mins": 60,
... }
... })
ReasonerConfig.name: (str, optional)

Optional name for the reasoner instance.

ReasonerConfig.size: str

Compute size (for example, "HIGHMEM_X64_S"). See config.config_reasoners_fields.EngineSize for valid size values.

ReasonerConfig.query_timeout_mins: (int, optional)

Abort queries that exceed this duration.

ReasonerConfig.auto_suspend_mins: int

Auto-suspend the reasoner after N minutes of inactivity.

ReasonerConfig.settings: (dict, optional)

Backend-specific settings payload.

ReasonerConfigpydantic.BaseModel