Skip to main content

databricks.labs.dqx.llm.llm_core

LLMModelConfigurator Objects

class LLMModelConfigurator()

Configures DSPy language models.

__init__

def __init__(model_config: LLMModelConfig)

Initialize model configurator.

Arguments:

  • model_config - Configuration for the LLM model.

configure

def configure() -> None

Configure the DSPy language model with the provided settings.

DspySchemaGuesserSignature Objects

class DspySchemaGuesserSignature(dspy.Signature)

Guess a table schema based on business description.

DspySchemaGuesser Objects

class DspySchemaGuesser(dspy.Module)

Guess table schema from business description.

forward

def forward(
business_description: str) -> dspy.primitives.prediction.Prediction

Guess schema based on business description.

Arguments:

  • business_description - Natural language description of the dataset.

Returns:

Prediction containing guessed schema and assumptions.

DspyRuleSignature Objects

class DspyRuleSignature(dspy.Signature)

Generate data quality rules with improved output format.

DspyRuleGeneration Objects

class DspyRuleGeneration(dspy.Module)

Generate data quality rules.

Now focused solely on rule generation, with schema inference delegated.

forward

def forward(schema_info: str, business_description: str,
available_functions: str) -> dspy.primitives.prediction.Prediction

Generate data quality rules.

Arguments:

  • schema_info - JSON string containing table schema.
  • business_description - Natural language description of requirements.
  • available_functions - JSON string of available check functions.

Returns:

Prediction containing quality_rules and reasoning.

DspyRuleGenerationWithSchemaInference Objects

class DspyRuleGenerationWithSchemaInference(dspy.Module)

Combines schema inference and rule generation.

Follows Dependency Inversion Principle by depending on abstractions (protocols).

forward

def forward(schema_info: str, business_description: str,
available_functions: str) -> dspy.primitives.prediction.Prediction

Generate rules with optional schema inference.

Arguments:

  • schema_info - JSON string of schema (can be empty to trigger inference).
  • business_description - Natural language requirements.
  • available_functions - JSON string of available functions.

Returns:

Prediction with quality_rules, reasoning, and optional schema info.

LLMRuleCompiler Objects

class LLMRuleCompiler()

__init__

def __init__(model_config: LLMModelConfig,
custom_check_functions: dict[str, Callable] | None = None,
rule_validator: RuleValidator | None = None,
optimizer: BootstrapFewShotOptimizer | None = None)

Arguments:

  • model_config - Configuration for the LLM model.
  • custom_check_functions - Optional custom check functions.
  • rule_validator - Optional rule validator instance.
  • optimizer - Optional optimizer instance.

model

@cached_property
def model() -> dspy.Module

Get the optimized DSPy model.

Returns:

Optimized DSPy module for generating data quality rules.