Jump to content

Connect Leeroopedia MCP: Equip your AI agents to search best practices, build plans, verify code, diagnose failures, and look up hyperparameter defaults.

Implementation:Sdv dev SDV BaseSynthesizer Add Constraints

From Leeroopedia
Knowledge Sources
Domains Data_Quality, Synthetic_Data
Last Updated 2026-02-14 00:00 GMT

Overview

Concrete tool for registering constraint objects with a synthesizer, provided by the SDV library.

Description

The BaseSynthesizer.add_constraints method accepts a list of constraint objects, classifies each as chained or reject-sampling, wraps ProgrammableConstraint instances, and updates the synthesizer's metadata and DataProcessor.

Usage

Call on a synthesizer before fitting with a list of constraint objects.

Code Reference

Source Location

  • Repository: SDV
  • File: sdv/single_table/base.py
  • Lines: L450-483

Signature

def add_constraints(self, constraints):
    """Add constraint-augmented generation constraints to the synthesizer.

    Args:
        constraints (list): List of constraint objects.
    """

Import

from sdv.single_table import GaussianCopulaSynthesizer
# add_constraints is called as: synthesizer.add_constraints([constraint1, constraint2])

I/O Contract

Inputs

Name Type Required Description
constraints list Yes List of BaseConstraint or ProgrammableConstraint instances

Outputs

Name Type Description
(mutates self) None Registers constraints; updates metadata and DataProcessor

Usage Examples

from sdv.cag import Inequality, FixedCombinations

constraints = [
    Inequality(low_column_name='start_date', high_column_name='end_date'),
    FixedCombinations(column_names=['country', 'city']),
]

synthesizer.add_constraints(constraints)
synthesizer.fit(data)

Related Pages

Implements Principle

Requires Environment

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment