data-designer 0.3.4__tar.gz → 0.3.6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {data_designer-0.3.4 → data_designer-0.3.6}/.gitignore +3 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/AGENTS.md +143 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/Makefile +45 -4
- {data_designer-0.3.4 → data_designer-0.3.6}/PKG-INFO +12 -5
- {data_designer-0.3.4 → data_designer-0.3.6}/README.md +11 -4
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/plugins/example.md +9 -32
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/__init__.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/_version.py +2 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/__init__.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/commands/download.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/commands/list.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/commands/models.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/commands/providers.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/commands/reset.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/controllers/__init__.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/controllers/download_controller.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/controllers/model_controller.py +6 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/controllers/provider_controller.py +6 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/forms/__init__.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/forms/builder.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/forms/field.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/forms/form.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/forms/model_builder.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/forms/provider_builder.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/main.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/repositories/__init__.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/repositories/base.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/repositories/model_repository.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/repositories/persona_repository.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/repositories/provider_repository.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/services/__init__.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/services/download_service.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/services/model_service.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/services/provider_service.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/ui.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/utils.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/analysis/column_profilers.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/analysis/column_statistics.py +8 -5
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/analysis/dataset_profiler.py +9 -3
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/analysis/utils/errors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/analysis/utils/reporting.py +7 -3
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/column_configs.py +77 -7
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/column_types.py +33 -36
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/dataset_builders.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/default_model_settings.py +1 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/errors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/exports.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/interface.py +3 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/models.py +7 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/preview_results.py +7 -3
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/processors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/run_config.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/sampler_constraints.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/sampler_params.py +7 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/seed.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/seed_source.py +7 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/seed_source_types.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/utils/constants.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/utils/errors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/utils/info.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/utils/io_helpers.py +8 -3
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/utils/misc.py +2 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/utils/numerical_helpers.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/utils/type_helpers.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/utils/visualization.py +8 -4
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/validator_params.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/analysis/column_profilers/base.py +9 -8
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/analysis/column_profilers/judge_score_profiler.py +15 -19
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/analysis/column_profilers/registry.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/analysis/column_statistics.py +5 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/analysis/dataset_profiler.py +12 -9
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/analysis/errors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/analysis/utils/column_statistics_calculations.py +7 -4
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/analysis/utils/judge_score_processing.py +7 -3
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/column_generators/generators/base.py +26 -14
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/column_generators/generators/embedding.py +4 -11
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/column_generators/generators/expression.py +7 -16
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/column_generators/generators/llm_completion.py +11 -37
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/column_generators/generators/samplers.py +8 -14
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/column_generators/generators/seed_dataset.py +9 -15
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/column_generators/generators/validation.py +8 -20
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/column_generators/registry.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/column_generators/utils/errors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/column_generators/utils/generator_classification.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/column_generators/utils/judge_score_factory.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/column_generators/utils/prompt_renderer.py +4 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/compiler.py +3 -6
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/configurable_task.py +12 -13
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/dataset_builders/artifact_storage.py +87 -8
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/dataset_builders/column_wise_builder.py +32 -34
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/dataset_builders/errors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/dataset_builders/multi_column_configs.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/dataset_builders/utils/config_compiler.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/dataset_builders/utils/dag.py +7 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/dataset_builders/utils/dataset_batch_manager.py +9 -6
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/dataset_builders/utils/errors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/errors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/model_provider.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/models/errors.py +23 -31
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/models/facade.py +12 -9
- data_designer-0.3.6/src/data_designer/engine/models/factory.py +42 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/models/litellm_overrides.py +22 -11
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/models/parsers/errors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/models/parsers/parser.py +2 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/models/parsers/postprocessors.py +1 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/models/parsers/tag_parsers.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/models/parsers/types.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/models/recipes/base.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/models/recipes/response_recipes.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/models/registry.py +11 -18
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/models/telemetry.py +6 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/processing/ginja/ast.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/processing/ginja/environment.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/processing/ginja/exceptions.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/processing/ginja/record.py +2 -0
- data_designer-0.3.6/src/data_designer/engine/processing/gsonschema/exceptions.py +15 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/processing/gsonschema/schema_transformers.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/processing/gsonschema/types.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/processing/gsonschema/validators.py +10 -6
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/processing/processors/base.py +1 -5
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/processing/processors/drop_columns.py +7 -10
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/processing/processors/registry.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/processing/processors/schema_transform.py +7 -10
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/processing/utils.py +7 -3
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/registry/base.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/registry/data_designer_registry.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/registry/errors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/resources/managed_dataset_generator.py +6 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/resources/managed_dataset_repository.py +8 -5
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/resources/managed_storage.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/resources/resource_provider.py +8 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/resources/seed_reader.py +7 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/column.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/constraints.py +8 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/data_sources/base.py +10 -7
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/data_sources/errors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/data_sources/sources.py +27 -22
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/entities/dataset_based_person_fields.py +2 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/entities/email_address_utils.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/entities/errors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/entities/national_id_utils.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/entities/person.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/entities/phone_number.py +8 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/errors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/generator.py +5 -4
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/jinja_utils.py +7 -3
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/people_gen.py +7 -7
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/person_constants.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/schema.py +5 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/schema_builder.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/utils.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/secret_resolver.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/validation.py +2 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/validators/__init__.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/validators/base.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/validators/local_callable.py +7 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/validators/python.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/validators/remote.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/validators/sql.py +8 -3
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/errors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/essentials/__init__.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/interface/data_designer.py +23 -17
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/interface/errors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/interface/results.py +5 -2
- data_designer-0.3.6/src/data_designer/lazy_heavy_imports.py +54 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/logging.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/plugins/__init__.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/plugins/errors.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/plugins/plugin.py +0 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/plugins/registry.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/plugins/testing/__init__.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/plugins/testing/stubs.py +21 -43
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/plugins/testing/utils.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/analysis/test_column_statistics.py +9 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/test_columns.py +21 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/test_config_builder.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/test_seed_source.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/test_validator_params.py +8 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/utils/test_io_helpers.py +8 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/utils/test_misc.py +4 -4
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/utils/test_visualization.py +8 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/conftest.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/analysis/column_profilers/test_base.py +9 -18
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/analysis/column_profilers/test_judge_score_profiler.py +8 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/analysis/conftest.py +8 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/analysis/test_column_statistics_calculator.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/analysis/test_dataset_profiler.py +2 -32
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/analysis/utils/test_column_statistics_calculations.py +9 -3
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/analysis/utils/test_judge_score_processing.py +8 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/column_generators/generators/test_column_generator_base.py +11 -24
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/column_generators/generators/test_embedding.py +5 -7
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/column_generators/generators/test_expression.py +7 -9
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/column_generators/generators/test_llm_completion_generators.py +9 -17
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/column_generators/generators/test_seed_dataset.py +10 -5
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/column_generators/generators/test_validation.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/conftest.py +8 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/dataset_builders/test_artifact_storage.py +149 -23
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/dataset_builders/test_column_wise_builder.py +60 -43
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/dataset_builders/utils/test_dataset_batch_manager.py +15 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/models/conftest.py +2 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/models/parsers/test_parser.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/models/test_litellm_overrides.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/models/test_model_registry.py +3 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/processing/processors/test_drop_columns.py +7 -8
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/processing/processors/test_schema_transform.py +7 -8
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/processing/test_utils.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/resources/conftest.py +7 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/resources/test_managed_dataset_generator.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/resources/test_managed_dataset_repository.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/resources/test_resource_provider.py +5 -7
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/resources/test_seed_reader.py +8 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/sampling_gen/conftest.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/sampling_gen/data_sources/test_sources.py +8 -2
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/sampling_gen/test_constraints.py +8 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/sampling_gen/test_generator.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/sampling_gen/test_jinja_utils.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/sampling_gen/test_utils.py +8 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/test_compiler.py +3 -3
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/test_configurable_task.py +12 -41
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/validators/test_local_callable.py +8 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/validators/test_python.py +2 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/validators/test_remote.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/interface/test_data_designer.py +7 -1
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/interface/test_results.py +7 -1
- data_designer-0.3.6/tests/test_import_perf.py +64 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests_e2e/src/data_designer_e2e_tests/plugins/column_generator/config.py +12 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests_e2e/src/data_designer_e2e_tests/plugins/column_generator/impl.py +8 -14
- {data_designer-0.3.4 → data_designer-0.3.6}/tests_e2e/src/data_designer_e2e_tests/plugins/seed_reader/impl.py +7 -1
- data_designer-0.3.4/src/data_designer/engine/processing/gsonschema/exceptions.py +0 -8
- {data_designer-0.3.4 → data_designer-0.3.6}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/.github/ISSUE_TEMPLATE/development-task.yml +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/.github/ISSUE_TEMPLATE/feature-request.yml +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/.github/workflows/build-docs.yml +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/.github/workflows/build-notebooks.yml +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/.github/workflows/check-colab-notebooks.yml +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/.github/workflows/ci.yml +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/.github/workflows/dco-assistant.yml +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/.github/workflows/pack-tutorials.yml +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/.github/workflows/semantic-pull-requests.yml +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/.pre-commit-config.yaml +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/CLAUDE.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/CODE_OF_CONDUCT.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/CONTRIBUTING.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/DCO +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/LICENSE +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/VERSIONING.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/CONTRIBUTING.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/assets/palette-favicon.png +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/assets/recipes/code_generation/text_to_python.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/assets/recipes/code_generation/text_to_sql.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/assets/recipes/qa_and_chat/multi_turn_chat.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/assets/recipes/qa_and_chat/product_info_qa.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/code_reference/analysis.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/code_reference/column_configs.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/code_reference/config_builder.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/code_reference/data_designer_config.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/code_reference/models.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/code_reference/processors.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/code_reference/sampler_params.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/code_reference/validator_params.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/colab_notebooks/1-the-basics.ipynb +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/colab_notebooks/2-structured-outputs-and-jinja-expressions.ipynb +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/colab_notebooks/3-seeding-with-a-dataset.ipynb +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/colab_notebooks/4-providing-images-as-context.ipynb +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/concepts/columns.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/concepts/models/configure-model-settings-with-the-cli.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/concepts/models/custom-model-settings.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/concepts/models/default-model-settings.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/concepts/models/inference-parameters.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/concepts/models/model-configs.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/concepts/models/model-providers.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/concepts/person_sampling.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/concepts/processors.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/concepts/validators.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/css/mkdocstrings.css +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/css/style.css +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/images/top-models.png +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/index.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/installation.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/js/toc-toggle.js +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/notebook_source/1-the-basics.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/notebook_source/2-structured-outputs-and-jinja-expressions.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/notebook_source/3-seeding-with-a-dataset.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/notebook_source/4-providing-images-as-context.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/notebook_source/README.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/notebook_source/_README.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/notebook_source/_pyproject.toml +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/overrides/main.html +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/plugins/available.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/plugins/overview.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/quick-start.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/recipes/cards.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/recipes/code_generation/text_to_python.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/recipes/code_generation/text_to_sql.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/recipes/qa_and_chat/multi_turn_chat.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/recipes/qa_and_chat/product_info_qa.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/docs/scripts/generate_colab_notebooks.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/mkdocs.yml +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/pyproject.toml +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/scripts/test_license_headers.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/scripts/update_license_headers.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/README.md +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/commands/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/analysis/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/base.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/config_builder.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/data_designer_config.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/dataset_metadata.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/config/utils/code_lang.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/column_generators/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/column_generators/generators/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/dataset_builders/utils/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/dataset_builders/utils/concurrency.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/models/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/models/parsers/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/models/usage.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/models/utils.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/processing/ginja/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/processing/gsonschema/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/entities/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/engine/sampling_gen/entities/assets/zip_area_code_map.parquet +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/interface/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/plugin_manager.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/commands/test_download_command.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/commands/test_list_command.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/commands/test_models_command.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/commands/test_providers_command.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/commands/test_reset_command.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/conftest.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/controllers/test_download_controller.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/controllers/test_model_controller.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/controllers/test_provider_controller.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/forms/test_field.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/forms/test_form.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/forms/test_model_builder.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/forms/test_provider_builder.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/repositories/test_model_repository.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/repositories/test_persona_repository.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/repositories/test_provider_repository.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/services/test_download_service.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/services/test_model_service.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/services/test_provider_service.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/cli/test_cli_utils.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/analysis/conftest.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/analysis/test_dataset_profiler_results.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/analysis/utils/test_reporting.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/test_data_designer_config.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/test_default_model_settings.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/test_models.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/test_processors.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/test_sampler_constraints.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/test_sampler_params.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/test_seed.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/utils/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/utils/test_code_lang.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/utils/test_info.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/config/utils/test_type_helpers.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/analysis/test_data/artifacts/dataset/column_configs.json +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/analysis/test_data/artifacts/dataset/dataset.json +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/analysis/test_data/artifacts/dataset/metadata.json +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/analysis/test_errors.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/column_generators/generators/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/column_generators/generators/test_samplers.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/column_generators/test_registry.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/column_generators/utils/test_column_generator_errors.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/column_generators/utils/test_generator_classification.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/column_generators/utils/test_judge_score_factory.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/column_generators/utils/test_prompt_renderer.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/dataset_builders/test_multi_column_configs.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/dataset_builders/utils/test_concurrency.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/dataset_builders/utils/test_config_compiler.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/dataset_builders/utils/test_dag.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/models/parsers/test_parsers_types.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/models/parsers/test_postprocessors.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/models/parsers/test_tag_parsers.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/models/recipes/test_recipe_base.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/models/recipes/test_response_recipes.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/models/stub_secrets.json +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/models/test_facade.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/models/test_model_errors.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/models/test_model_utils.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/models/test_usage.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/processing/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/processing/ginja/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/processing/ginja/test_ast.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/processing/ginja/test_environment.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/processing/ginja/test_exceptions.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/processing/ginja/test_record.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/processing/gsonschema/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/processing/gsonschema/test_exceptions.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/processing/gsonschema/test_schema_transformers.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/processing/gsonschema/test_types.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/processing/gsonschema/test_validators.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/processing/processors/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/processing/processors/test_registry.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/registry/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/registry/conftest.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/registry/test_base.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/registry/test_data_designer_registry.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/registry/test_errors.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/resources/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/resources/test_managed_storage.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/sampling_gen/data_sources/test_sampler_errors.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/sampling_gen/entities/test_email_address_utils.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/sampling_gen/entities/test_national_id_utils.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/sampling_gen/entities/test_person.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/sampling_gen/entities/test_phone_number.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/sampling_gen/test_column.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/sampling_gen/test_people_gen.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/sampling_gen/test_schema.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/test_dataset_metadata.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/test_engine_errors.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/test_model_provider.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/test_secret_resolver.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/test_validation.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/engine/validators/test_sql.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/essentials/test_init.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/plugins/test_plugin.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/plugins/test_plugin_registry.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/test_logging.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests/test_plugin_manager.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests_e2e/pyproject.toml +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests_e2e/src/data_designer_e2e_tests/plugins/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests_e2e/src/data_designer_e2e_tests/plugins/column_generator/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests_e2e/src/data_designer_e2e_tests/plugins/column_generator/plugin.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests_e2e/src/data_designer_e2e_tests/plugins/seed_reader/__init__.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests_e2e/src/data_designer_e2e_tests/plugins/seed_reader/config.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests_e2e/src/data_designer_e2e_tests/plugins/seed_reader/plugin.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests_e2e/tests/test_e2e.py +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/tests_e2e/tests/test_seed.csv +0 -0
- {data_designer-0.3.4 → data_designer-0.3.6}/uv.lock +0 -0
|
@@ -158,12 +158,13 @@ Type annotations are REQUIRED for all code in this project. This is strictly enf
|
|
|
158
158
|
### Import Style
|
|
159
159
|
|
|
160
160
|
- **ALWAYS** use absolute imports, never relative imports
|
|
161
|
-
- Place imports at module level, not inside functions
|
|
161
|
+
- Place imports at module level, not inside functions (exception: it is unavoidable for performance reasons)
|
|
162
162
|
- Import sorting is handled by `ruff`'s `isort` - imports should be grouped and sorted:
|
|
163
163
|
1. Standard library imports
|
|
164
|
-
2. Third-party imports
|
|
164
|
+
2. Third-party imports (use `lazy_heavy_imports` for heavy libraries)
|
|
165
165
|
3. First-party imports (`data_designer`)
|
|
166
166
|
- Use standard import conventions (enforced by `ICN`)
|
|
167
|
+
- See [Lazy Loading and TYPE_CHECKING](#lazy-loading-and-type_checking) section for optimization guidelines
|
|
167
168
|
|
|
168
169
|
```python
|
|
169
170
|
# Good
|
|
@@ -184,6 +185,146 @@ Type annotations are REQUIRED for all code in this project. This is strictly enf
|
|
|
184
185
|
path = Path(filename)
|
|
185
186
|
```
|
|
186
187
|
|
|
188
|
+
### Lazy Loading and TYPE_CHECKING
|
|
189
|
+
|
|
190
|
+
This project uses lazy loading for heavy third-party dependencies to optimize import performance.
|
|
191
|
+
|
|
192
|
+
#### When to Use Lazy Loading
|
|
193
|
+
|
|
194
|
+
**Heavy third-party libraries** (>100ms import cost) should be lazy-loaded via `lazy_heavy_imports.py`:
|
|
195
|
+
|
|
196
|
+
```python
|
|
197
|
+
# ❌ Don't import directly
|
|
198
|
+
import pandas as pd
|
|
199
|
+
import numpy as np
|
|
200
|
+
|
|
201
|
+
# ✅ Use lazy loading with IDE support
|
|
202
|
+
from typing import TYPE_CHECKING
|
|
203
|
+
from data_designer.lazy_heavy_imports import pd, np
|
|
204
|
+
|
|
205
|
+
if TYPE_CHECKING:
|
|
206
|
+
import pandas as pd # For IDE autocomplete and type hints
|
|
207
|
+
import numpy as np
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
This pattern provides:
|
|
211
|
+
- Runtime lazy loading (fast startup)
|
|
212
|
+
- Full IDE support (autocomplete, type hints)
|
|
213
|
+
- Type checker validation
|
|
214
|
+
|
|
215
|
+
**See [lazy_heavy_imports.py](src/data_designer/lazy_heavy_imports.py) for the current list of lazy-loaded libraries.**
|
|
216
|
+
|
|
217
|
+
#### Adding New Heavy Dependencies
|
|
218
|
+
|
|
219
|
+
If you add a new dependency with significant import cost (>100ms):
|
|
220
|
+
|
|
221
|
+
1. **Add to `lazy_heavy_imports.py`:**
|
|
222
|
+
```python
|
|
223
|
+
_LAZY_IMPORTS = {
|
|
224
|
+
# ... existing entries ...
|
|
225
|
+
"your_lib": "your_library_name",
|
|
226
|
+
}
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
2. **Update imports across codebase:**
|
|
230
|
+
```python
|
|
231
|
+
from typing import TYPE_CHECKING
|
|
232
|
+
from data_designer.lazy_heavy_imports import your_lib
|
|
233
|
+
|
|
234
|
+
if TYPE_CHECKING:
|
|
235
|
+
import your_library_name as your_lib # For IDE support
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
3. **Verify with performance test:**
|
|
239
|
+
```bash
|
|
240
|
+
make perf-import CLEAN=1
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
#### Using TYPE_CHECKING Blocks
|
|
244
|
+
|
|
245
|
+
`TYPE_CHECKING` blocks defer imports that are only needed for type hints, preventing circular dependencies and reducing import time.
|
|
246
|
+
|
|
247
|
+
**For internal data_designer imports:**
|
|
248
|
+
|
|
249
|
+
```python
|
|
250
|
+
from __future__ import annotations # Always include at top
|
|
251
|
+
|
|
252
|
+
from typing import TYPE_CHECKING
|
|
253
|
+
|
|
254
|
+
# Runtime imports
|
|
255
|
+
from pathlib import Path
|
|
256
|
+
from data_designer.config.base import ConfigBase
|
|
257
|
+
|
|
258
|
+
if TYPE_CHECKING:
|
|
259
|
+
# Type-only imports - only visible to type checkers
|
|
260
|
+
from data_designer.engine.models.facade import ModelFacade
|
|
261
|
+
|
|
262
|
+
def get_model(model: ModelFacade) -> str:
|
|
263
|
+
return model.name
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
**For lazy-loaded libraries (see pattern in "When to Use Lazy Loading" above):**
|
|
267
|
+
- Import from `lazy_heavy_imports` for runtime
|
|
268
|
+
- Add full import in `TYPE_CHECKING` block for IDE support
|
|
269
|
+
|
|
270
|
+
**Rules for TYPE_CHECKING:**
|
|
271
|
+
|
|
272
|
+
✅ **DO put in TYPE_CHECKING:**
|
|
273
|
+
- Internal `data_designer` imports used **only** in type hints
|
|
274
|
+
- Imports that would cause circular dependencies
|
|
275
|
+
- **Full imports of lazy-loaded libraries for IDE support** (e.g., `import pandas as pd` in addition to runtime `from data_designer.lazy_heavy_imports import pd`)
|
|
276
|
+
|
|
277
|
+
❌ **DON'T put in TYPE_CHECKING:**
|
|
278
|
+
- **Standard library imports** (`Path`, `Any`, `Callable`, `Literal`, `TypeAlias`, etc.)
|
|
279
|
+
- **Pydantic model types** used in field definitions (needed at runtime for validation)
|
|
280
|
+
- **Types used in discriminated unions** (Pydantic needs them at runtime)
|
|
281
|
+
- **Any import used at runtime** (instantiation, method calls, base classes, etc.)
|
|
282
|
+
|
|
283
|
+
**Examples:**
|
|
284
|
+
|
|
285
|
+
```python
|
|
286
|
+
# ✅ CORRECT - Lazy-loaded library with IDE support
|
|
287
|
+
from typing import TYPE_CHECKING
|
|
288
|
+
from data_designer.lazy_heavy_imports import pd
|
|
289
|
+
|
|
290
|
+
if TYPE_CHECKING:
|
|
291
|
+
import pandas as pd # IDE gets full type hints
|
|
292
|
+
|
|
293
|
+
def load_data(path: str) -> pd.DataFrame: # IDE understands pd.DataFrame
|
|
294
|
+
return pd.read_csv(path)
|
|
295
|
+
|
|
296
|
+
# ✅ CORRECT - Standard library NOT in TYPE_CHECKING
|
|
297
|
+
from pathlib import Path
|
|
298
|
+
from typing import Any
|
|
299
|
+
|
|
300
|
+
def process_file(path: Path) -> Any:
|
|
301
|
+
return path.read_text()
|
|
302
|
+
|
|
303
|
+
# ✅ CORRECT - Internal type-only import
|
|
304
|
+
from typing import TYPE_CHECKING
|
|
305
|
+
|
|
306
|
+
if TYPE_CHECKING:
|
|
307
|
+
from data_designer.engine.models.facade import ModelFacade
|
|
308
|
+
|
|
309
|
+
def get_model(model: ModelFacade) -> str: # Only used in type hint
|
|
310
|
+
return model.name
|
|
311
|
+
|
|
312
|
+
# ❌ INCORRECT - Pydantic field type in TYPE_CHECKING
|
|
313
|
+
from typing import TYPE_CHECKING
|
|
314
|
+
|
|
315
|
+
if TYPE_CHECKING:
|
|
316
|
+
from data_designer.config.models import ModelConfig # Wrong!
|
|
317
|
+
|
|
318
|
+
class MyConfig(BaseModel):
|
|
319
|
+
model: ModelConfig # Pydantic needs this at runtime!
|
|
320
|
+
|
|
321
|
+
# ✅ CORRECT - Pydantic field type at runtime
|
|
322
|
+
from data_designer.config.models import ModelConfig
|
|
323
|
+
|
|
324
|
+
class MyConfig(BaseModel):
|
|
325
|
+
model: ModelConfig
|
|
326
|
+
```
|
|
327
|
+
|
|
187
328
|
### Naming Conventions (PEP 8)
|
|
188
329
|
|
|
189
330
|
Follow PEP 8 naming conventions:
|
|
@@ -45,14 +45,25 @@ help:
|
|
|
45
45
|
@echo " check-license-headers - Check if all files have license headers"
|
|
46
46
|
@echo " update-license-headers - Add license headers to all files"
|
|
47
47
|
@echo ""
|
|
48
|
+
@echo "⚡ Performance:"
|
|
49
|
+
@echo " perf-import - Profile import time and show summary"
|
|
50
|
+
@echo " perf-import CLEAN=1 - Clean cache, then profile import time"
|
|
51
|
+
@echo " perf-import NOFILE=1 - Profile without writing to file (for CI)"
|
|
52
|
+
@echo ""
|
|
48
53
|
@echo "═════════════════════════════════════════════════════════════"
|
|
49
54
|
@echo "💡 Tip: Run 'make <command>' to execute any command above"
|
|
50
55
|
@echo ""
|
|
51
56
|
|
|
52
|
-
clean:
|
|
53
|
-
@echo "🧹 Cleaning up
|
|
54
|
-
rm -rf htmlcov .coverage .pytest_cache
|
|
57
|
+
clean-pycache:
|
|
58
|
+
@echo "🧹 Cleaning up Python cache files..."
|
|
55
59
|
find . -type d -name __pycache__ -exec rm -rf {} + 2>/dev/null || true
|
|
60
|
+
find . -type f -name "*.pyc" -delete 2>/dev/null || true
|
|
61
|
+
@echo "✅ Cache cleaned!"
|
|
62
|
+
|
|
63
|
+
clean: clean-pycache
|
|
64
|
+
@echo "🧹 Cleaning up coverage reports and test cache..."
|
|
65
|
+
rm -rf htmlcov .coverage .pytest_cache
|
|
66
|
+
@echo "✅ Cleaned!"
|
|
56
67
|
|
|
57
68
|
coverage:
|
|
58
69
|
@echo "📊 Running tests with coverage analysis..."
|
|
@@ -168,4 +179,34 @@ install-dev-notebooks:
|
|
|
168
179
|
$(call install-pre-commit-hooks)
|
|
169
180
|
@echo "✅ Dev + notebooks installation complete!"
|
|
170
181
|
|
|
171
|
-
|
|
182
|
+
perf-import:
|
|
183
|
+
ifdef CLEAN
|
|
184
|
+
@$(MAKE) clean-pycache
|
|
185
|
+
endif
|
|
186
|
+
@echo "⚡ Profiling import time for data_designer.essentials..."
|
|
187
|
+
ifdef NOFILE
|
|
188
|
+
@PERF_OUTPUT=$$(uv run python -X importtime -c "import data_designer.essentials" 2>&1); \
|
|
189
|
+
echo "$$PERF_OUTPUT"; \
|
|
190
|
+
echo ""; \
|
|
191
|
+
echo "Summary:"; \
|
|
192
|
+
echo "$$PERF_OUTPUT" | tail -1 | awk '{printf " Total: %.3fs\n", $$5/1000000}'; \
|
|
193
|
+
echo ""; \
|
|
194
|
+
echo "💡 Top 10 slowest imports:"; \
|
|
195
|
+
printf "%-12s %-12s %s\n" "Self (s)" "Cumulative (s)" "Module"; \
|
|
196
|
+
printf "%-12s %-12s %s\n" "--------" "--------------" "------"; \
|
|
197
|
+
echo "$$PERF_OUTPUT" | grep "import time:" | sort -rn -k5 | head -10 | awk '{printf "%-12.3f %-12.3f %s", $$3/1000000, $$5/1000000, $$7; for(i=8;i<=NF;i++) printf " %s", $$i; printf "\n"}'
|
|
198
|
+
else
|
|
199
|
+
@PERF_FILE="perf_import_$$(date +%Y%m%d_%H%M%S).txt"; \
|
|
200
|
+
uv run python -X importtime -c "import data_designer.essentials" > "$$PERF_FILE" 2>&1; \
|
|
201
|
+
echo "📊 Import profile saved to $$PERF_FILE"; \
|
|
202
|
+
echo ""; \
|
|
203
|
+
echo "Summary:"; \
|
|
204
|
+
tail -1 "$$PERF_FILE" | awk '{printf " Total: %.3fs\n", $$5/1000000}'; \
|
|
205
|
+
echo ""; \
|
|
206
|
+
echo "💡 Top 10 slowest imports:"; \
|
|
207
|
+
printf "%-12s %-12s %s\n" "Self (s)" "Cumulative (s)" "Module"; \
|
|
208
|
+
printf "%-12s %-12s %s\n" "--------" "--------------" "------"; \
|
|
209
|
+
grep "import time:" "$$PERF_FILE" | sort -rn -k5 | head -10 | awk '{printf "%-12.3f %-12.3f %s", $$3/1000000, $$5/1000000, $$7; for(i=8;i<=NF;i++) printf " %s", $$i; printf "\n"}'
|
|
210
|
+
endif
|
|
211
|
+
|
|
212
|
+
.PHONY: clean clean-pycache coverage format format-check lint lint-fix test test-e2e test-run-tutorials test-run-recipes test-run-all-examples check-license-headers update-license-headers check-all check-all-fix install install-dev install-dev-notebooks generate-colab-notebooks perf-import
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: data-designer
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.6
|
|
4
4
|
Summary: General framework for synthetic data generation
|
|
5
5
|
License-Expression: Apache-2.0
|
|
6
6
|
License-File: LICENSE
|
|
@@ -87,12 +87,19 @@ make install
|
|
|
87
87
|
|
|
88
88
|
### 2. Set your API key
|
|
89
89
|
|
|
90
|
-
|
|
90
|
+
Start with one of our default model providers:
|
|
91
91
|
|
|
92
|
+
- [NVIDIA Build API](https://build.nvidia.com)
|
|
93
|
+
- [OpenAI](https://platform.openai.com/api-keys)
|
|
94
|
+
- [OpenRouter](https://openrouter.ai)
|
|
95
|
+
|
|
96
|
+
Grab your API key(s) using the above links and set one or more of the following environment variables:
|
|
92
97
|
```bash
|
|
93
98
|
export NVIDIA_API_KEY="your-api-key-here"
|
|
94
|
-
|
|
99
|
+
|
|
95
100
|
export OPENAI_API_KEY="your-openai-api-key-here"
|
|
101
|
+
|
|
102
|
+
export OPENROUTER_API_KEY="your-openrouter-api-key-here"
|
|
96
103
|
```
|
|
97
104
|
|
|
98
105
|
### 3. Start generating data!
|
|
@@ -127,7 +134,7 @@ config_builder.add_column(
|
|
|
127
134
|
LLMTextColumnConfig(
|
|
128
135
|
name="review",
|
|
129
136
|
model_alias="nvidia-text",
|
|
130
|
-
prompt="
|
|
137
|
+
prompt="Write a brief product review for a {{ product_category }} item you recently purchased.",
|
|
131
138
|
)
|
|
132
139
|
)
|
|
133
140
|
|
|
@@ -195,7 +202,7 @@ To disable telemetry capture, set `NEMO_TELEMETRY_ENABLED=false`.
|
|
|
195
202
|
|
|
196
203
|
### Top Models
|
|
197
204
|
|
|
198
|
-
This chart represents the breakdown of models used for Data Designer across all synthetic data generation jobs from 12/18/2025 to 1/14/2026.
|
|
205
|
+
This chart represents the breakdown of models used for Data Designer across all synthetic data generation jobs from 12/18/2025 to 1/14/2026.
|
|
199
206
|
|
|
200
207
|

|
|
201
208
|
|
|
@@ -40,12 +40,19 @@ make install
|
|
|
40
40
|
|
|
41
41
|
### 2. Set your API key
|
|
42
42
|
|
|
43
|
-
|
|
43
|
+
Start with one of our default model providers:
|
|
44
44
|
|
|
45
|
+
- [NVIDIA Build API](https://build.nvidia.com)
|
|
46
|
+
- [OpenAI](https://platform.openai.com/api-keys)
|
|
47
|
+
- [OpenRouter](https://openrouter.ai)
|
|
48
|
+
|
|
49
|
+
Grab your API key(s) using the above links and set one or more of the following environment variables:
|
|
45
50
|
```bash
|
|
46
51
|
export NVIDIA_API_KEY="your-api-key-here"
|
|
47
|
-
|
|
52
|
+
|
|
48
53
|
export OPENAI_API_KEY="your-openai-api-key-here"
|
|
54
|
+
|
|
55
|
+
export OPENROUTER_API_KEY="your-openrouter-api-key-here"
|
|
49
56
|
```
|
|
50
57
|
|
|
51
58
|
### 3. Start generating data!
|
|
@@ -80,7 +87,7 @@ config_builder.add_column(
|
|
|
80
87
|
LLMTextColumnConfig(
|
|
81
88
|
name="review",
|
|
82
89
|
model_alias="nvidia-text",
|
|
83
|
-
prompt="
|
|
90
|
+
prompt="Write a brief product review for a {{ product_category }} item you recently purchased.",
|
|
84
91
|
)
|
|
85
92
|
)
|
|
86
93
|
|
|
@@ -148,7 +155,7 @@ To disable telemetry capture, set `NEMO_TELEMETRY_ENABLED=false`.
|
|
|
148
155
|
|
|
149
156
|
### Top Models
|
|
150
157
|
|
|
151
|
-
This chart represents the breakdown of models used for Data Designer across all synthetic data generation jobs from 12/18/2025 to 1/14/2026.
|
|
158
|
+
This chart represents the breakdown of models used for Data Designer across all synthetic data generation jobs from 12/18/2025 to 1/14/2026.
|
|
152
159
|
|
|
153
160
|

|
|
154
161
|
|
|
@@ -64,24 +64,12 @@ The implementation class defines the actual business logic of the plugin. For co
|
|
|
64
64
|
import logging
|
|
65
65
|
import pandas as pd
|
|
66
66
|
|
|
67
|
-
from data_designer.engine.column_generators.generators.base import
|
|
68
|
-
ColumnGenerator,
|
|
69
|
-
GenerationStrategy,
|
|
70
|
-
GeneratorMetadata,
|
|
71
|
-
)
|
|
67
|
+
from data_designer.engine.column_generators.generators.base import ColumnGeneratorFullColumn, GenerationStrategy
|
|
72
68
|
|
|
73
69
|
# Data Designer uses the standard Python logging module for logging
|
|
74
70
|
logger = logging.getLogger(__name__)
|
|
75
71
|
|
|
76
|
-
class IndexMultiplierColumnGenerator(
|
|
77
|
-
@staticmethod
|
|
78
|
-
def metadata() -> GeneratorMetadata:
|
|
79
|
-
"""Define metadata about this generator."""
|
|
80
|
-
return GeneratorMetadata(
|
|
81
|
-
name="index-multiplier",
|
|
82
|
-
description="Generates values by multiplying the row index by a user-specified multiplier",
|
|
83
|
-
generation_strategy=GenerationStrategy.FULL_COLUMN,
|
|
84
|
-
)
|
|
72
|
+
class IndexMultiplierColumnGenerator(ColumnGeneratorFullColumn[IndexMultiplierColumnConfig]):
|
|
85
73
|
|
|
86
74
|
def generate(self, data: pd.DataFrame) -> pd.DataFrame:
|
|
87
75
|
"""Generate the column data.
|
|
@@ -105,20 +93,20 @@ class IndexMultiplierColumnGenerator(ColumnGenerator[IndexMultiplierColumnConfig
|
|
|
105
93
|
|
|
106
94
|
**Key points:**
|
|
107
95
|
|
|
108
|
-
- Generic type `
|
|
109
|
-
- `metadata()` describes your generator and its requirements
|
|
110
|
-
- `generation_strategy` can be `FULL_COLUMN`, `CELL_BY_CELL`
|
|
96
|
+
- Generic type `ColumnGeneratorFullColumn[IndexMultiplierColumnConfig]` connects the task to its config
|
|
111
97
|
- You have access to the configuration parameters via `self.config`
|
|
112
98
|
|
|
113
99
|
!!! info "Understanding generation_strategy"
|
|
114
100
|
The `generation_strategy` specifies how the column generator will generate data.
|
|
115
101
|
|
|
116
102
|
- **`FULL_COLUMN`**: Generates the full column (at the batch level) in a single call to `generate`
|
|
117
|
-
- `generate` must take as input a `pd.DataFrame` with all previous columns and return a `pd.DataFrame` with the generated column appended
|
|
103
|
+
- `generate` must take as input a `pd.DataFrame` with all previous columns and return a `pd.DataFrame` with the generated column appended.
|
|
104
|
+
- Inherit from `ColumnGeneratorFullColumn` for this strategy, as we do in the example above.
|
|
118
105
|
|
|
119
106
|
- **`CELL_BY_CELL`**: Generates one cell at a time
|
|
120
107
|
- `generate` must take as input a `dict` with key/value pairs for all previous columns and return a `dict` with an additional key/value for the generated cell
|
|
121
108
|
- Supports concurrent workers via a `max_parallel_requests` parameter on the configuration
|
|
109
|
+
- Inherit from `ColumnGeneratorCellByCell` for this strategy.
|
|
122
110
|
|
|
123
111
|
## Step 4: Create the plugin object
|
|
124
112
|
|
|
@@ -147,11 +135,8 @@ from typing import Literal
|
|
|
147
135
|
import pandas as pd
|
|
148
136
|
|
|
149
137
|
from data_designer.config.column_configs import SingleColumnConfig
|
|
150
|
-
from data_designer.engine.column_generators.generators.base import
|
|
151
|
-
|
|
152
|
-
GenerationStrategy,
|
|
153
|
-
GeneratorMetadata,
|
|
154
|
-
)
|
|
138
|
+
from data_designer.engine.column_generators.generators.base import ColumnGeneratorFullColumn
|
|
139
|
+
|
|
155
140
|
from data_designer.plugins import Plugin, PluginType
|
|
156
141
|
|
|
157
142
|
# Data Designer uses the standard Python logging module for logging
|
|
@@ -169,15 +154,7 @@ class IndexMultiplierColumnConfig(SingleColumnConfig):
|
|
|
169
154
|
column_type: Literal["index-multiplier"] = "index-multiplier"
|
|
170
155
|
|
|
171
156
|
|
|
172
|
-
class IndexMultiplierColumnGenerator(
|
|
173
|
-
@staticmethod
|
|
174
|
-
def metadata() -> GeneratorMetadata:
|
|
175
|
-
"""Define metadata about this generator."""
|
|
176
|
-
return GeneratorMetadata(
|
|
177
|
-
name="index-multiplier",
|
|
178
|
-
description="Generates values by multiplying the row index by a user-specified multiplier",
|
|
179
|
-
generation_strategy=GenerationStrategy.FULL_COLUMN,
|
|
180
|
-
)
|
|
157
|
+
class IndexMultiplierColumnGenerator(ColumnGeneratorFullColumn[IndexMultiplierColumnConfig]):
|
|
181
158
|
|
|
182
159
|
def generate(self, data: pd.DataFrame) -> pd.DataFrame:
|
|
183
160
|
"""Generate the column data.
|
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '0.3.
|
|
32
|
-
__version_tuple__ = version_tuple = (0, 3,
|
|
31
|
+
__version__ = version = '0.3.6'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 3, 6)
|
|
33
33
|
|
|
34
34
|
__commit_id__ = commit_id = None
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
import typer
|
|
5
7
|
|
|
6
8
|
from data_designer.cli.controllers.download_controller import DownloadController
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
from rich.table import Table
|
|
5
7
|
|
|
6
8
|
from data_designer.cli.repositories.model_repository import ModelRepository
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
from data_designer.cli.controllers.model_controller import ModelController
|
|
5
7
|
from data_designer.config.utils.constants import DATA_DESIGNER_HOME
|
|
6
8
|
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
from data_designer.cli.controllers.provider_controller import ProviderController
|
|
5
7
|
from data_designer.config.utils.constants import DATA_DESIGNER_HOME
|
|
6
8
|
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
import typer
|
|
5
7
|
|
|
6
8
|
from data_designer.cli.repositories.model_repository import ModelRepository
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
from data_designer.cli.controllers.download_controller import DownloadController
|
|
5
7
|
from data_designer.cli.controllers.model_controller import ModelController
|
|
6
8
|
from data_designer.cli.controllers.provider_controller import ProviderController
|
{data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/controllers/model_controller.py
RENAMED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
from pathlib import Path
|
|
7
|
+
from typing import TYPE_CHECKING
|
|
5
8
|
|
|
6
9
|
from data_designer.cli.forms.model_builder import ModelFormBuilder
|
|
7
10
|
from data_designer.cli.repositories.model_repository import ModelRepository
|
|
@@ -20,7 +23,9 @@ from data_designer.cli.ui import (
|
|
|
20
23
|
print_warning,
|
|
21
24
|
select_with_arrows,
|
|
22
25
|
)
|
|
23
|
-
|
|
26
|
+
|
|
27
|
+
if TYPE_CHECKING:
|
|
28
|
+
from data_designer.config.models import ModelConfig
|
|
24
29
|
|
|
25
30
|
|
|
26
31
|
class ModelController:
|
{data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/controllers/provider_controller.py
RENAMED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
import copy
|
|
5
7
|
from pathlib import Path
|
|
8
|
+
from typing import TYPE_CHECKING
|
|
6
9
|
|
|
7
10
|
from data_designer.cli.forms.provider_builder import ProviderFormBuilder
|
|
8
11
|
from data_designer.cli.repositories.model_repository import ModelRepository
|
|
@@ -20,7 +23,9 @@ from data_designer.cli.ui import (
|
|
|
20
23
|
print_warning,
|
|
21
24
|
select_with_arrows,
|
|
22
25
|
)
|
|
23
|
-
|
|
26
|
+
|
|
27
|
+
if TYPE_CHECKING:
|
|
28
|
+
from data_designer.engine.model_provider import ModelProvider
|
|
24
29
|
|
|
25
30
|
|
|
26
31
|
class ProviderController:
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
from data_designer.cli.forms.builder import FormBuilder
|
|
5
7
|
from data_designer.cli.forms.field import Field, NumericField, SelectField, TextField, ValidationError
|
|
6
8
|
from data_designer.cli.forms.form import Form
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
from abc import ABC, abstractmethod
|
|
5
7
|
from typing import Any, Generic, TypeVar
|
|
6
8
|
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
from abc import ABC, abstractmethod
|
|
5
7
|
from collections.abc import Callable
|
|
6
8
|
from typing import Any, Generic, TypeVar
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
from typing import Any
|
|
5
7
|
|
|
6
8
|
from data_designer.cli.forms.builder import FormBuilder
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
from typing import Any
|
|
5
7
|
|
|
6
8
|
from data_designer.cli.forms.builder import FormBuilder
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
import typer
|
|
5
7
|
|
|
6
8
|
from data_designer.cli.commands import download, models, providers, reset
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
from data_designer.cli.repositories.base import ConfigRepository
|
|
5
7
|
from data_designer.cli.repositories.model_repository import ModelRepository
|
|
6
8
|
from data_designer.cli.repositories.provider_repository import ProviderRepository
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
from abc import ABC, abstractmethod
|
|
5
7
|
from pathlib import Path
|
|
6
8
|
from typing import Generic, TypeVar
|
{data_designer-0.3.4 → data_designer-0.3.6}/src/data_designer/cli/repositories/persona_repository.py
RENAMED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
4
6
|
from pydantic import BaseModel
|
|
5
7
|
|
|
6
8
|
from data_designer.config.utils.constants import (
|