data-designer 0.1.3__tar.gz → 0.1.4__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.1.4/.github/workflows/build-docs.yml +39 -0
- data_designer-0.1.4/.github/workflows/build-notebooks.yml +30 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/.github/workflows/pack-tutorials.yml +13 -10
- {data_designer-0.1.3 → data_designer-0.1.4}/.gitignore +4 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/Makefile +27 -15
- {data_designer-0.1.3 → data_designer-0.1.4}/PKG-INFO +2 -2
- {data_designer-0.1.3 → data_designer-0.1.4}/README.md +1 -1
- data_designer-0.1.4/docs/code_reference/models.md +11 -0
- {data_designer-0.1.3/docs → data_designer-0.1.4/docs/concepts}/models/configure-model-settings-with-the-cli.md +1 -1
- {data_designer-0.1.3/docs → data_designer-0.1.4/docs/concepts}/models/default-model-settings.md +1 -1
- {data_designer-0.1.3/docs → data_designer-0.1.4/docs/concepts}/models/model-configs.md +1 -1
- {data_designer-0.1.3/docs → data_designer-0.1.4/docs/concepts}/models/model-providers.md +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/index.md +1 -1
- data_designer-0.1.4/docs/notebook_source/1-the-basics.py +342 -0
- data_designer-0.1.4/docs/notebook_source/2-structured-outputs-and-jinja-expressions.py +384 -0
- data_designer-0.1.4/docs/notebook_source/3-seeding-with-a-dataset.py +292 -0
- data_designer-0.1.4/docs/notebook_source/4-providing-images-as-context.py +318 -0
- data_designer-0.1.4/docs/notebook_source/README.md +23 -0
- data_designer-0.1.3/docs/notebooks/README.md → data_designer-0.1.4/docs/notebook_source/_README.md +10 -1
- data_designer-0.1.4/docs/overrides/main.html +18 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/quick-start.md +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/mkdocs.yml +12 -6
- {data_designer-0.1.3 → data_designer-0.1.4}/pyproject.toml +4 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/_version.py +2 -2
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/analysis/column_profilers.py +4 -4
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/analysis/column_statistics.py +5 -5
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/analysis/dataset_profiler.py +6 -6
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/analysis/utils/errors.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/analysis/utils/reporting.py +5 -5
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/base.py +2 -2
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/column_configs.py +8 -8
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/column_types.py +9 -5
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/config_builder.py +32 -27
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/data_designer_config.py +7 -7
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/datastore.py +4 -4
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/default_model_settings.py +4 -4
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/errors.py +1 -1
- data_designer-0.1.4/src/data_designer/config/exports.py +128 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/interface.py +6 -6
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/models.py +109 -5
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/preview_results.py +3 -3
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/processors.py +2 -2
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/sampler_constraints.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/sampler_params.py +2 -2
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/seed.py +3 -3
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/errors.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/info.py +8 -4
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/io_helpers.py +5 -5
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/misc.py +3 -3
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/numerical_helpers.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/type_helpers.py +7 -3
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/validation.py +5 -5
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/visualization.py +10 -10
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/validator_params.py +2 -2
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/errors.py +1 -1
- data_designer-0.1.4/src/data_designer/essentials/__init__.py +29 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/interface/data_designer.py +11 -19
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/plugin_manager.py +14 -26
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/test_plugin_manager.py +15 -50
- data_designer-0.1.3/.github/workflows/build-docs.yml +0 -18
- data_designer-0.1.3/docs/notebooks/.gitignore +0 -2
- data_designer-0.1.3/docs/notebooks/1-the-basics.ipynb +0 -1901
- data_designer-0.1.3/docs/notebooks/2-structured-outputs-and-jinja-expressions.ipynb +0 -1654
- data_designer-0.1.3/docs/notebooks/3-seeding-with-a-dataset.ipynb +0 -1954
- data_designer-0.1.3/src/data_designer/essentials/__init__.py +0 -137
- {data_designer-0.1.3 → data_designer-0.1.4}/.github/workflows/ci.yml +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/.github/workflows/dco-assistant.yml +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/.github/workflows/semantic-pull-requests.yml +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/.pre-commit-config.yaml +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/AGENTS.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/CLAUDE.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/CODE_OF_CONDUCT.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/CONTRIBUTING.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/DCO +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/LICENSE +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/VERSIONING.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/CONTRIBUTING.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/assets/palette-favicon.png +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/code_reference/column_configs.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/code_reference/config_builder.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/code_reference/data_designer_config.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/code_reference/sampler_params.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/code_reference/validator_params.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/concepts/columns.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/concepts/person_sampling.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/concepts/plugins.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/concepts/validators.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/css/mkdocstrings.css +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/css/style.css +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/installation.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/docs/js/toc-toggle.js +0 -0
- data_designer-0.1.3/docs/notebooks/pyproject.toml → data_designer-0.1.4/docs/notebook_source/_pyproject.toml +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/scripts/update_license_headers.py +2 -2
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/README.md +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/commands/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/commands/list.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/commands/models.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/commands/providers.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/commands/reset.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/controllers/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/controllers/model_controller.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/controllers/provider_controller.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/forms/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/forms/builder.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/forms/field.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/forms/form.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/forms/model_builder.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/forms/provider_builder.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/main.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/repositories/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/repositories/base.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/repositories/model_repository.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/repositories/provider_repository.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/services/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/services/model_service.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/services/provider_service.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/ui.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/utils.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/dataset_builders.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/code_lang.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/constants.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/analysis/column_profilers/base.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/analysis/column_profilers/judge_score_profiler.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/analysis/column_profilers/registry.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/analysis/column_statistics.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/analysis/dataset_profiler.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/analysis/errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/analysis/utils/column_statistics_calculations.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/analysis/utils/judge_score_processing.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/generators/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/generators/base.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/generators/expression.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/generators/llm_generators.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/generators/samplers.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/generators/seed_dataset.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/generators/validation.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/registry.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/utils/errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/utils/judge_score_factory.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/utils/prompt_renderer.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/configurable_task.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/artifact_storage.py +3 -3
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/column_wise_builder.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/multi_column_configs.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/utils/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/utils/concurrency.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/utils/config_compiler.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/utils/dag.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/utils/dataset_batch_manager.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/utils/errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/model_provider.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/errors.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/facade.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/litellm_overrides.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/parsers/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/parsers/errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/parsers/parser.py +2 -2
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/parsers/postprocessors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/parsers/tag_parsers.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/parsers/types.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/recipes/base.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/recipes/response_recipes.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/registry.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/usage.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/utils.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/ginja/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/ginja/ast.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/ginja/environment.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/ginja/exceptions.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/ginja/record.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/gsonschema/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/gsonschema/exceptions.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/gsonschema/schema_transformers.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/gsonschema/types.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/gsonschema/validators.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/processors/base.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/processors/drop_columns.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/processors/registry.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/utils.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/registry/base.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/registry/data_designer_registry.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/registry/errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/resources/managed_dataset_generator.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/resources/managed_dataset_repository.py +4 -4
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/resources/managed_storage.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/resources/resource_provider.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/resources/seed_dataset_data_store.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/column.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/constraints.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/data_sources/base.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/data_sources/errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/data_sources/sources.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/entities/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/entities/assets/zip_area_code_map.parquet +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/entities/dataset_based_person_fields.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/entities/email_address_utils.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/entities/errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/entities/national_id_utils.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/entities/person.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/entities/phone_number.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/generator.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/jinja_utils.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/people_gen.py +3 -3
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/person_constants.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/schema.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/schema_builder.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/utils.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/secret_resolver.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/validators/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/validators/base.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/validators/local_callable.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/validators/python.py +2 -2
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/validators/remote.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/validators/sql.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/interface/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/interface/errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/interface/results.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/logging.py +2 -2
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/plugins/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/plugins/errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/plugins/plugin.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/plugins/registry.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/commands/test_list_command.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/commands/test_models_command.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/commands/test_providers_command.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/commands/test_reset_command.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/conftest.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/controllers/test_model_controller.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/controllers/test_provider_controller.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/forms/test_field.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/forms/test_form.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/forms/test_model_builder.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/forms/test_provider_builder.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/repositories/test_model_repository.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/repositories/test_provider_repository.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/services/test_model_service.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/services/test_provider_service.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/test_cli_utils.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/analysis/conftest.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/analysis/test_column_statistics.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/analysis/test_dataset_profiler_results.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/analysis/utils/test_reporting.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_columns.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_config_builder.py +2 -2
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_data_designer_config.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_datastore.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_default_model_settings.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_models.py +2 -2
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_processors.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_sampler_constraints.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_sampler_params.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_seed.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_validator_params.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/utils/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/utils/test_code_lang.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/utils/test_info.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/utils/test_io_helpers.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/utils/test_misc.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/utils/test_type_helpers.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/utils/test_validation.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/utils/test_visualization.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/conftest.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/column_profilers/test_base.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/column_profilers/test_judge_score_profiler.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/conftest.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/test_column_statistics_calculator.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/test_data/artifacts/dataset/column_configs.json +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/test_data/artifacts/dataset/dataset.json +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/test_data/artifacts/dataset/metadata.json +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/test_dataset_profiler.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/test_errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/utils/test_column_statistics_calculations.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/utils/test_judge_score_processing.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/generators/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/generators/test_column_generator_base.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/generators/test_expression.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/generators/test_llm_generators.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/generators/test_samplers.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/generators/test_seed_dataset.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/generators/test_validation.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/test_registry.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/utils/test_column_generator_errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/utils/test_judge_score_factory.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/utils/test_prompt_renderer.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/conftest.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/dataset_builders/test_artifact_storage.py +2 -2
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/dataset_builders/test_column_wise_builder.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/dataset_builders/test_multi_column_configs.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/dataset_builders/utils/test_concurrency.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/dataset_builders/utils/test_config_compiler.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/dataset_builders/utils/test_dag.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/dataset_builders/utils/test_dataset_batch_manager.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/conftest.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/parsers/test_parser.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/parsers/test_parsers_types.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/parsers/test_postprocessors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/parsers/test_tag_parsers.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/recipes/test_recipe_base.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/recipes/test_response_recipes.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/stub_secrets.json +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/test_facade.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/test_litellm_overrides.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/test_model_errors.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/test_model_registry.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/test_model_utils.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/test_usage.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/ginja/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/ginja/test_ast.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/ginja/test_environment.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/ginja/test_exceptions.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/ginja/test_record.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/gsonschema/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/gsonschema/test_exceptions.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/gsonschema/test_schema_transformers.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/gsonschema/test_types.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/gsonschema/test_validators.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/processors/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/processors/test_drop_columns.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/processors/test_registry.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/test_utils.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/registry/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/registry/conftest.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/registry/test_base.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/registry/test_data_designer_registry.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/registry/test_errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/resources/__init__.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/resources/conftest.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/resources/test_managed_dataset_generator.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/resources/test_managed_dataset_repository.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/resources/test_managed_storage.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/resources/test_resource_provider.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/conftest.py +2 -2
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/data_sources/test_sampler_errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/data_sources/test_sources.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/entities/test_email_address_utils.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/entities/test_national_id_utils.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/entities/test_person.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/entities/test_phone_number.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/test_column.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/test_constraints.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/test_generator.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/test_jinja_utils.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/test_people_gen.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/test_schema.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/test_utils.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/test_configurable_task.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/test_engine_errors.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/test_model_provider.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/test_secret_resolver.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/validators/test_local_callable.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/validators/test_python.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/validators/test_remote.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/validators/test_sql.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/essentials/test_init.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/interface/test_data_designer.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/interface/test_results.py +0 -0
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/plugins/test_plugin.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/plugins/test_plugin_registry.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/tests/test_logging.py +1 -1
- {data_designer-0.1.3 → data_designer-0.1.4}/uv.lock +0 -0
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
name: Build docs
|
|
2
|
+
on:
|
|
3
|
+
release:
|
|
4
|
+
types:
|
|
5
|
+
- published
|
|
6
|
+
|
|
7
|
+
jobs:
|
|
8
|
+
build-notebooks:
|
|
9
|
+
uses: ./.github/workflows/build-notebooks.yml
|
|
10
|
+
secrets: inherit
|
|
11
|
+
deploy:
|
|
12
|
+
needs: build-notebooks
|
|
13
|
+
runs-on: ubuntu-latest
|
|
14
|
+
permissions:
|
|
15
|
+
contents: write
|
|
16
|
+
steps:
|
|
17
|
+
- name: Checkout repository
|
|
18
|
+
uses: actions/checkout@v2
|
|
19
|
+
- name: Install uv
|
|
20
|
+
uses: astral-sh/setup-uv@v6
|
|
21
|
+
with:
|
|
22
|
+
version: "0.9.5"
|
|
23
|
+
- name: Set up Python
|
|
24
|
+
run: uv python install
|
|
25
|
+
- name: Install dependencies for docs
|
|
26
|
+
run: uv sync --group docs
|
|
27
|
+
- name: Download artifact from previous step
|
|
28
|
+
uses: actions/download-artifact@v5
|
|
29
|
+
with:
|
|
30
|
+
name: notebooks
|
|
31
|
+
path: docs/notebooks
|
|
32
|
+
- name: Extract version from release
|
|
33
|
+
run: |
|
|
34
|
+
# Remove the 'v' prefix and any suffix after a space
|
|
35
|
+
VERSION=$(echo ${{ github.event.release.tag_name }} | sed 's/^v//' | sed 's/ .*$//')
|
|
36
|
+
echo "::notice::Extracted version: $VERSION"
|
|
37
|
+
echo "VERSION=$VERSION" >> $GITHUB_ENV
|
|
38
|
+
- name: Build and deploy docs
|
|
39
|
+
run: uv run mike deploy --push --update-aliases ${{ env.VERSION }} latest
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
name: Build notebooks
|
|
2
|
+
on:
|
|
3
|
+
workflow_call:
|
|
4
|
+
workflow_dispatch:
|
|
5
|
+
schedule:
|
|
6
|
+
- cron: "0 12 * * MON"
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
build:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
permissions:
|
|
12
|
+
contents: write
|
|
13
|
+
env:
|
|
14
|
+
NVIDIA_API_KEY: ${{ secrets.NVIDIA_API_KEY }}
|
|
15
|
+
steps:
|
|
16
|
+
- name: Checkout repository
|
|
17
|
+
uses: actions/checkout@v2
|
|
18
|
+
- name: Install uv
|
|
19
|
+
uses: astral-sh/setup-uv@v6
|
|
20
|
+
with:
|
|
21
|
+
version: "0.9.5"
|
|
22
|
+
- name: Set up Python
|
|
23
|
+
run: uv python install 3.11
|
|
24
|
+
- name: Convert and execute notebooks
|
|
25
|
+
run: make convert-execute-notebooks
|
|
26
|
+
- name: Upload notebooks as artifacts
|
|
27
|
+
uses: actions/upload-artifact@v4
|
|
28
|
+
with:
|
|
29
|
+
name: notebooks
|
|
30
|
+
path: docs/notebooks
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
name: Pack
|
|
1
|
+
name: Pack tutorials
|
|
2
2
|
|
|
3
3
|
on:
|
|
4
4
|
workflow_dispatch:
|
|
@@ -6,20 +6,26 @@ on:
|
|
|
6
6
|
types: [published]
|
|
7
7
|
|
|
8
8
|
jobs:
|
|
9
|
-
|
|
9
|
+
build-notebooks:
|
|
10
|
+
uses: ./.github/workflows/build-notebooks.yml
|
|
11
|
+
secrets: inherit
|
|
12
|
+
zip-and-upload:
|
|
13
|
+
needs: build-notebooks
|
|
10
14
|
runs-on: ubuntu-latest
|
|
11
15
|
permissions:
|
|
12
16
|
contents: write
|
|
13
17
|
|
|
14
18
|
steps:
|
|
15
|
-
- name:
|
|
16
|
-
uses: actions/
|
|
19
|
+
- name: Download artifact from previous step
|
|
20
|
+
uses: actions/download-artifact@v5
|
|
21
|
+
with:
|
|
22
|
+
name: notebooks
|
|
23
|
+
path: data_designer_tutorial
|
|
17
24
|
|
|
18
25
|
- name: Set up environment variables
|
|
19
26
|
id: env_setup
|
|
20
27
|
run: |
|
|
21
|
-
echo "SOURCE_FOLDER_PATH=
|
|
22
|
-
echo "TARGET_FOLDER_NAME=data_designer_tutorial" >> $GITHUB_ENV
|
|
28
|
+
echo "SOURCE_FOLDER_PATH=data_designer_tutorial" >> $GITHUB_ENV
|
|
23
29
|
echo "ZIP_FILE_NAME=data_designer_tutorial.zip" >> $GITHUB_ENV
|
|
24
30
|
|
|
25
31
|
- name: Check if source folder exists
|
|
@@ -29,12 +35,9 @@ jobs:
|
|
|
29
35
|
exit 1
|
|
30
36
|
fi
|
|
31
37
|
|
|
32
|
-
- name: Rename source folder
|
|
33
|
-
run: mv ${{ env.SOURCE_FOLDER_PATH }} ${{ env.TARGET_FOLDER_NAME }}
|
|
34
|
-
|
|
35
38
|
- name: Zip the target folder
|
|
36
39
|
run: |
|
|
37
|
-
zip -r ${{ env.ZIP_FILE_NAME }} ${{ env.
|
|
40
|
+
zip -r ${{ env.ZIP_FILE_NAME }} ${{ env.SOURCE_FOLDER_PATH }}
|
|
38
41
|
echo "Successfully created ${{ env.ZIP_FILE_NAME }}"
|
|
39
42
|
|
|
40
43
|
- name: Find the latest existing release tag
|
|
@@ -15,29 +15,30 @@ help:
|
|
|
15
15
|
@echo "═════════════════════════════════════════════════════════════"
|
|
16
16
|
@echo ""
|
|
17
17
|
@echo "📦 Installation:"
|
|
18
|
-
@echo " install
|
|
19
|
-
@echo " install-dev
|
|
20
|
-
@echo " install-dev-notebooks
|
|
18
|
+
@echo " install - Install project dependencies with uv"
|
|
19
|
+
@echo " install-dev - Install project with dev dependencies"
|
|
20
|
+
@echo " install-dev-notebooks - Install dev + notebook dependencies (Jupyter, etc.)"
|
|
21
21
|
@echo ""
|
|
22
22
|
@echo "🧪 Testing:"
|
|
23
|
-
@echo " test
|
|
24
|
-
@echo " coverage
|
|
23
|
+
@echo " test - Run all unit tests"
|
|
24
|
+
@echo " coverage - Run tests with coverage report"
|
|
25
25
|
@echo ""
|
|
26
26
|
@echo "✨ Code Quality:"
|
|
27
|
-
@echo " format
|
|
28
|
-
@echo " format-check
|
|
29
|
-
@echo " lint
|
|
30
|
-
@echo " lint-fix
|
|
27
|
+
@echo " format - Format code with ruff"
|
|
28
|
+
@echo " format-check - Check code formatting without making changes"
|
|
29
|
+
@echo " lint - Lint code with ruff"
|
|
30
|
+
@echo " lint-fix - Fix linting issues automatically"
|
|
31
31
|
@echo ""
|
|
32
32
|
@echo "🔍 Combined Checks:"
|
|
33
|
-
@echo " check-all
|
|
34
|
-
@echo " check-all-fix
|
|
33
|
+
@echo " check-all - Run all checks (format-check + lint)"
|
|
34
|
+
@echo " check-all-fix - Run all checks with autofix (format + lint-fix)"
|
|
35
35
|
@echo ""
|
|
36
36
|
@echo "🛠️ Utilities:"
|
|
37
|
-
@echo " clean
|
|
38
|
-
@echo "
|
|
39
|
-
@echo "
|
|
40
|
-
@echo "
|
|
37
|
+
@echo " clean - Remove coverage reports and cache files"
|
|
38
|
+
@echo " convert-execute-notebooks - Convert notebooks from .py to .ipynb using jupytext"
|
|
39
|
+
@echo " serve-docs-locally - Serve documentation locally"
|
|
40
|
+
@echo " check-license-headers - Check if all files have license headers"
|
|
41
|
+
@echo " update-license-headers - Add license headers to all files"
|
|
41
42
|
@echo ""
|
|
42
43
|
@echo "═════════════════════════════════════════════════════════════"
|
|
43
44
|
@echo "💡 Tip: Run 'make <command>' to execute any command above"
|
|
@@ -83,6 +84,17 @@ test:
|
|
|
83
84
|
@echo "🧪 Running unit tests..."
|
|
84
85
|
uv run --group dev pytest
|
|
85
86
|
|
|
87
|
+
convert-execute-notebooks:
|
|
88
|
+
@echo "📓 Converting Python tutorials to notebooks and executing..."
|
|
89
|
+
@mkdir -p docs/notebooks
|
|
90
|
+
cp docs/notebook_source/_README.md docs/notebooks/README.md
|
|
91
|
+
cp docs/notebook_source/_pyproject.toml docs/notebooks/pyproject.toml
|
|
92
|
+
uv run --group notebooks --group docs jupytext --to ipynb --execute docs/notebook_source/*.py
|
|
93
|
+
mv docs/notebook_source/*.ipynb docs/notebooks/
|
|
94
|
+
rm -r docs/notebook_source/artifacts
|
|
95
|
+
rm docs/notebook_source/*.csv
|
|
96
|
+
@echo "✅ Notebooks created in docs/notebooks/"
|
|
97
|
+
|
|
86
98
|
serve-docs-locally:
|
|
87
99
|
@echo "📝 Building and serving docs..."
|
|
88
100
|
uv sync --group docs
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: data-designer
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.4
|
|
4
4
|
Summary: General framework for synthetic data generation
|
|
5
5
|
License-Expression: Apache-2.0
|
|
6
6
|
License-File: LICENSE
|
|
@@ -148,7 +148,7 @@ preview.display_sample_record()
|
|
|
148
148
|
- **[Tutorial Notebooks](https://nvidia-nemo.github.io/DataDesigner/notebooks/)** – Step-by-step interactive tutorials
|
|
149
149
|
- **[Column Types](https://nvidia-nemo.github.io/DataDesigner/concepts/columns/)** – Explore samplers, LLM columns, validators, and more
|
|
150
150
|
- **[Validators](https://nvidia-nemo.github.io/DataDesigner/concepts/validators/)** – Learn how to validate generated data with Python, SQL, and remote validators
|
|
151
|
-
- **[Model Configuration](https://nvidia-nemo.github.io/DataDesigner/models/model-configs/)** – Configure custom models and providers
|
|
151
|
+
- **[Model Configuration](https://nvidia-nemo.github.io/DataDesigner/concepts/models/model-configs/)** – Configure custom models and providers
|
|
152
152
|
- **[Person Sampling](https://nvidia-nemo.github.io/DataDesigner/concepts/person_sampling/)** – Learn how to sample realistic person data with demographic attributes
|
|
153
153
|
|
|
154
154
|
### 🔧 Configure models via CLI
|
|
@@ -99,7 +99,7 @@ preview.display_sample_record()
|
|
|
99
99
|
- **[Tutorial Notebooks](https://nvidia-nemo.github.io/DataDesigner/notebooks/)** – Step-by-step interactive tutorials
|
|
100
100
|
- **[Column Types](https://nvidia-nemo.github.io/DataDesigner/concepts/columns/)** – Explore samplers, LLM columns, validators, and more
|
|
101
101
|
- **[Validators](https://nvidia-nemo.github.io/DataDesigner/concepts/validators/)** – Learn how to validate generated data with Python, SQL, and remote validators
|
|
102
|
-
- **[Model Configuration](https://nvidia-nemo.github.io/DataDesigner/models/model-configs/)** – Configure custom models and providers
|
|
102
|
+
- **[Model Configuration](https://nvidia-nemo.github.io/DataDesigner/concepts/models/model-configs/)** – Configure custom models and providers
|
|
103
103
|
- **[Person Sampling](https://nvidia-nemo.github.io/DataDesigner/concepts/person_sampling/)** – Learn how to sample realistic person data with demographic attributes
|
|
104
104
|
|
|
105
105
|
### 🔧 Configure models via CLI
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Models
|
|
2
|
+
|
|
3
|
+
The `models` module defines configuration objects for model-based generation. [ModelProvider](#data_designer.config.models.ModelProvider), specifies connection and authentication details for custom providers. [ModelConfig](#data_designer.config.models.ModelConfig) encapsulates model details including the model alias, identifier, and inference parameters. [InferenceParameters](#data_designer.config.models.InferenceParameters) controls model behavior through settings like `temperature`, `top_p`, and `max_tokens`, with support for both fixed values and distribution-based sampling. The module includes [ImageContext](#data_designer.config.models.ImageContext) for providing image inputs to multimodal models.
|
|
4
|
+
|
|
5
|
+
For more information on how they are used, see below:
|
|
6
|
+
|
|
7
|
+
- **[Model Providers](../concepts/models/model-providers.md)**
|
|
8
|
+
- **[Model Configs](../concepts/models/model-configs.md)**
|
|
9
|
+
- **[Image Context](/notebooks/4-providing-images-as-context/)**
|
|
10
|
+
|
|
11
|
+
::: data_designer.config.models
|
|
@@ -132,4 +132,4 @@ The CLI will show which configuration files exist and ask for confirmation befor
|
|
|
132
132
|
- **[Model Providers](model-providers.md)**: Learn about the `ModelProvider` class and provider configuration
|
|
133
133
|
- **[Model Configurations](model-configs.md)**: Learn about `ModelConfig` and `InferenceParameters`
|
|
134
134
|
- **[Default Model Settings](default-model-settings.md)**: Pre-configured providers and model settings included with Data Designer
|
|
135
|
-
- **[Quick Start Guide](
|
|
135
|
+
- **[Quick Start Guide](../../quick-start.md)**: Get started with a simple example
|
{data_designer-0.1.3/docs → data_designer-0.1.4/docs/concepts}/models/default-model-settings.md
RENAMED
|
@@ -91,5 +91,5 @@ Both methods operate on the same files, ensuring consistency across your entire
|
|
|
91
91
|
## See Also
|
|
92
92
|
|
|
93
93
|
- **[Configure Model Settings With the CLI](configure-model-settings-with-the-cli.md)**: Learn how to use the CLI to manage model settings.
|
|
94
|
-
- **[Quick Start Guide](
|
|
94
|
+
- **[Quick Start Guide](../../quick-start.md)**: Get started with a simple example
|
|
95
95
|
- **[Model Configurations](model-configs.md)**: Learn about model configurations
|
|
@@ -241,4 +241,4 @@ model_config = ModelConfig(
|
|
|
241
241
|
- **[Model Providers](model-providers.md)**: Learn about configuring model providers
|
|
242
242
|
- **[Default Model Settings](default-model-settings.md)**: Pre-configured model settings included with Data Designer
|
|
243
243
|
- **[Configure Model Settings With the CLI](configure-model-settings-with-the-cli.md)**: Use the CLI to manage model settings
|
|
244
|
-
- **[Column Configurations](
|
|
244
|
+
- **[Column Configurations](../../code_reference/column_configs.md)**: Learn how to use models in column configurations
|
|
@@ -47,4 +47,4 @@ provider = ModelProvider(
|
|
|
47
47
|
- **[Model Configurations](model-configs.md)**: Learn about configuring models and inference parameters
|
|
48
48
|
- **[Default Model Settings](default-model-settings.md)**: Pre-configured providers and model settings included with Data Designer
|
|
49
49
|
- **[Configure Model Settings With the CLI](configure-model-settings-with-the-cli.md)**: Use the CLI to manage providers and model settings
|
|
50
|
-
- **[Quick Start Guide](
|
|
50
|
+
- **[Quick Start Guide](../../quick-start.md)**: Get started with a simple example
|
|
@@ -25,7 +25,7 @@ Data Designer helps you create datasets through an intuitive, **iterative** proc
|
|
|
25
25
|
1. **⚙️ Configure** your model settings
|
|
26
26
|
- Bring your own OpenAI-compatible model providers and models
|
|
27
27
|
- Or use the default model providers and models to get started quickly
|
|
28
|
-
- Learn more by reading the [model docs](models/default-model-settings.md)
|
|
28
|
+
- Learn more by reading the [model docs](concepts/models/default-model-settings.md)
|
|
29
29
|
2. **🏗️ Design** your dataset
|
|
30
30
|
- Iteratively design your dataset, column by column
|
|
31
31
|
- Leverage tools like statistical samplers and LLMs to generate a variety of data types
|
|
@@ -0,0 +1,342 @@
|
|
|
1
|
+
# ---
|
|
2
|
+
# jupyter:
|
|
3
|
+
# jupytext:
|
|
4
|
+
# text_representation:
|
|
5
|
+
# extension: .py
|
|
6
|
+
# format_name: percent
|
|
7
|
+
# format_version: '1.3'
|
|
8
|
+
# jupytext_version: 1.18.1
|
|
9
|
+
# kernelspec:
|
|
10
|
+
# display_name: .venv
|
|
11
|
+
# language: python
|
|
12
|
+
# name: python3
|
|
13
|
+
# ---
|
|
14
|
+
|
|
15
|
+
# %% [markdown]
|
|
16
|
+
# # 🎨 Data Designer Tutorial: The Basics
|
|
17
|
+
#
|
|
18
|
+
# #### 📚 What you'll learn
|
|
19
|
+
#
|
|
20
|
+
# This notebook demonstrates the basics of Data Designer by generating a simple product review dataset.
|
|
21
|
+
#
|
|
22
|
+
|
|
23
|
+
# %% [markdown]
|
|
24
|
+
# ### 📦 Import the essentials
|
|
25
|
+
#
|
|
26
|
+
# - The `essentials` module provides quick access to the most commonly used objects.
|
|
27
|
+
#
|
|
28
|
+
|
|
29
|
+
# %%
|
|
30
|
+
from data_designer.essentials import (
|
|
31
|
+
CategorySamplerParams,
|
|
32
|
+
DataDesigner,
|
|
33
|
+
DataDesignerConfigBuilder,
|
|
34
|
+
InferenceParameters,
|
|
35
|
+
LLMTextColumnConfig,
|
|
36
|
+
ModelConfig,
|
|
37
|
+
PersonFromFakerSamplerParams,
|
|
38
|
+
SamplerColumnConfig,
|
|
39
|
+
SamplerType,
|
|
40
|
+
SubcategorySamplerParams,
|
|
41
|
+
UniformSamplerParams,
|
|
42
|
+
)
|
|
43
|
+
|
|
44
|
+
# %% [markdown]
|
|
45
|
+
# ### ⚙️ Initialize the Data Designer interface
|
|
46
|
+
#
|
|
47
|
+
# - `DataDesigner` is the main object is responsible for managing the data generation process.
|
|
48
|
+
#
|
|
49
|
+
# - When initialized without arguments, the [default model providers](https://nvidia-nemo.github.io/DataDesigner/concepts/models/default-model-settings/) are used.
|
|
50
|
+
#
|
|
51
|
+
|
|
52
|
+
# %%
|
|
53
|
+
data_designer = DataDesigner()
|
|
54
|
+
|
|
55
|
+
# %% [markdown]
|
|
56
|
+
# ### 🎛️ Define model configurations
|
|
57
|
+
#
|
|
58
|
+
# - Each `ModelConfig` defines a model that can be used during the generation process.
|
|
59
|
+
#
|
|
60
|
+
# - The "model alias" is used to reference the model in the Data Designer config (as we will see below).
|
|
61
|
+
#
|
|
62
|
+
# - The "model provider" is the external service that hosts the model (see the [model config](https://nvidia-nemo.github.io/DataDesigner/concepts/models/default-model-settings/) docs for more details).
|
|
63
|
+
#
|
|
64
|
+
# - By default, we use [build.nvidia.com](https://build.nvidia.com/models) as the model provider.
|
|
65
|
+
#
|
|
66
|
+
|
|
67
|
+
# %%
|
|
68
|
+
# This name is set in the model provider configuration.
|
|
69
|
+
MODEL_PROVIDER = "nvidia"
|
|
70
|
+
|
|
71
|
+
# The model ID is from build.nvidia.com.
|
|
72
|
+
MODEL_ID = "nvidia/nvidia-nemotron-nano-9b-v2"
|
|
73
|
+
|
|
74
|
+
# We choose this alias to be descriptive for our use case.
|
|
75
|
+
MODEL_ALIAS = "nemotron-nano-v2"
|
|
76
|
+
|
|
77
|
+
# This sets reasoning to False for the nemotron-nano-v2 model.
|
|
78
|
+
SYSTEM_PROMPT = "/no_think"
|
|
79
|
+
|
|
80
|
+
model_configs = [
|
|
81
|
+
ModelConfig(
|
|
82
|
+
alias=MODEL_ALIAS,
|
|
83
|
+
model=MODEL_ID,
|
|
84
|
+
provider=MODEL_PROVIDER,
|
|
85
|
+
inference_parameters=InferenceParameters(
|
|
86
|
+
temperature=0.5,
|
|
87
|
+
top_p=1.0,
|
|
88
|
+
max_tokens=1024,
|
|
89
|
+
),
|
|
90
|
+
)
|
|
91
|
+
]
|
|
92
|
+
|
|
93
|
+
# %% [markdown]
|
|
94
|
+
# ### 🏗️ Initialize the Data Designer Config Builder
|
|
95
|
+
#
|
|
96
|
+
# - The Data Designer config defines the dataset schema and generation process.
|
|
97
|
+
#
|
|
98
|
+
# - The config builder provides an intuitive interface for building this configuration.
|
|
99
|
+
#
|
|
100
|
+
# - The list of model configs is provided to the builder at initialization.
|
|
101
|
+
#
|
|
102
|
+
|
|
103
|
+
# %%
|
|
104
|
+
config_builder = DataDesignerConfigBuilder(model_configs=model_configs)
|
|
105
|
+
|
|
106
|
+
# %% [markdown]
|
|
107
|
+
# ## 🎲 Getting started with sampler columns
|
|
108
|
+
#
|
|
109
|
+
# - Sampler columns offer non-LLM based generation of synthetic data.
|
|
110
|
+
#
|
|
111
|
+
# - They are particularly useful for **steering the diversity** of the generated data, as we demonstrate below.
|
|
112
|
+
#
|
|
113
|
+
# <br>
|
|
114
|
+
#
|
|
115
|
+
# You can view available samplers using the config builder's `info` property:
|
|
116
|
+
#
|
|
117
|
+
|
|
118
|
+
# %%
|
|
119
|
+
config_builder.info.display("samplers")
|
|
120
|
+
|
|
121
|
+
# %% [markdown]
|
|
122
|
+
# Let's start designing our product review dataset by adding product category and subcategory columns.
|
|
123
|
+
#
|
|
124
|
+
|
|
125
|
+
# %%
|
|
126
|
+
config_builder.add_column(
|
|
127
|
+
SamplerColumnConfig(
|
|
128
|
+
name="product_category",
|
|
129
|
+
sampler_type=SamplerType.CATEGORY,
|
|
130
|
+
params=CategorySamplerParams(
|
|
131
|
+
values=[
|
|
132
|
+
"Electronics",
|
|
133
|
+
"Clothing",
|
|
134
|
+
"Home & Kitchen",
|
|
135
|
+
"Books",
|
|
136
|
+
"Home Office",
|
|
137
|
+
],
|
|
138
|
+
),
|
|
139
|
+
)
|
|
140
|
+
)
|
|
141
|
+
|
|
142
|
+
config_builder.add_column(
|
|
143
|
+
SamplerColumnConfig(
|
|
144
|
+
name="product_subcategory",
|
|
145
|
+
sampler_type=SamplerType.SUBCATEGORY,
|
|
146
|
+
params=SubcategorySamplerParams(
|
|
147
|
+
category="product_category",
|
|
148
|
+
values={
|
|
149
|
+
"Electronics": [
|
|
150
|
+
"Smartphones",
|
|
151
|
+
"Laptops",
|
|
152
|
+
"Headphones",
|
|
153
|
+
"Cameras",
|
|
154
|
+
"Accessories",
|
|
155
|
+
],
|
|
156
|
+
"Clothing": [
|
|
157
|
+
"Men's Clothing",
|
|
158
|
+
"Women's Clothing",
|
|
159
|
+
"Winter Coats",
|
|
160
|
+
"Activewear",
|
|
161
|
+
"Accessories",
|
|
162
|
+
],
|
|
163
|
+
"Home & Kitchen": [
|
|
164
|
+
"Appliances",
|
|
165
|
+
"Cookware",
|
|
166
|
+
"Furniture",
|
|
167
|
+
"Decor",
|
|
168
|
+
"Organization",
|
|
169
|
+
],
|
|
170
|
+
"Books": [
|
|
171
|
+
"Fiction",
|
|
172
|
+
"Non-Fiction",
|
|
173
|
+
"Self-Help",
|
|
174
|
+
"Textbooks",
|
|
175
|
+
"Classics",
|
|
176
|
+
],
|
|
177
|
+
"Home Office": [
|
|
178
|
+
"Desks",
|
|
179
|
+
"Chairs",
|
|
180
|
+
"Storage",
|
|
181
|
+
"Office Supplies",
|
|
182
|
+
"Lighting",
|
|
183
|
+
],
|
|
184
|
+
},
|
|
185
|
+
),
|
|
186
|
+
)
|
|
187
|
+
)
|
|
188
|
+
|
|
189
|
+
config_builder.add_column(
|
|
190
|
+
SamplerColumnConfig(
|
|
191
|
+
name="target_age_range",
|
|
192
|
+
sampler_type=SamplerType.CATEGORY,
|
|
193
|
+
params=CategorySamplerParams(values=["18-25", "25-35", "35-50", "50-65", "65+"]),
|
|
194
|
+
)
|
|
195
|
+
)
|
|
196
|
+
|
|
197
|
+
# Optionally validate that the columns are configured correctly.
|
|
198
|
+
config_builder.validate()
|
|
199
|
+
|
|
200
|
+
# %% [markdown]
|
|
201
|
+
# Next, let's add samplers to generate data related to the customer and their review.
|
|
202
|
+
#
|
|
203
|
+
|
|
204
|
+
# %%
|
|
205
|
+
config_builder.add_column(
|
|
206
|
+
SamplerColumnConfig(
|
|
207
|
+
name="customer",
|
|
208
|
+
sampler_type=SamplerType.PERSON_FROM_FAKER,
|
|
209
|
+
params=PersonFromFakerSamplerParams(age_range=[18, 70], locale="en_US"),
|
|
210
|
+
)
|
|
211
|
+
)
|
|
212
|
+
|
|
213
|
+
config_builder.add_column(
|
|
214
|
+
SamplerColumnConfig(
|
|
215
|
+
name="number_of_stars",
|
|
216
|
+
sampler_type=SamplerType.UNIFORM,
|
|
217
|
+
params=UniformSamplerParams(low=1, high=5),
|
|
218
|
+
convert_to="int", # Convert the sampled float to an integer.
|
|
219
|
+
)
|
|
220
|
+
)
|
|
221
|
+
|
|
222
|
+
config_builder.add_column(
|
|
223
|
+
SamplerColumnConfig(
|
|
224
|
+
name="review_style",
|
|
225
|
+
sampler_type=SamplerType.CATEGORY,
|
|
226
|
+
params=CategorySamplerParams(
|
|
227
|
+
values=["rambling", "brief", "detailed", "structured with bullet points"],
|
|
228
|
+
weights=[1, 2, 2, 1],
|
|
229
|
+
),
|
|
230
|
+
)
|
|
231
|
+
)
|
|
232
|
+
|
|
233
|
+
config_builder.validate()
|
|
234
|
+
|
|
235
|
+
# %% [markdown]
|
|
236
|
+
# ## 🦜 LLM-generated columns
|
|
237
|
+
#
|
|
238
|
+
# - The real power of Data Designer comes from leveraging LLMs to generate text, code, and structured data.
|
|
239
|
+
#
|
|
240
|
+
# - When prompting the LLM, we can use Jinja templating to reference other columns in the dataset.
|
|
241
|
+
#
|
|
242
|
+
# - As we see below, nested json fields can be accessed using dot notation.
|
|
243
|
+
#
|
|
244
|
+
|
|
245
|
+
# %%
|
|
246
|
+
config_builder.add_column(
|
|
247
|
+
LLMTextColumnConfig(
|
|
248
|
+
name="product_name",
|
|
249
|
+
prompt=(
|
|
250
|
+
"You are a helpful assistant that generates product names. DO NOT add quotes around the product name.\n\n"
|
|
251
|
+
"Come up with a creative product name for a product in the '{{ product_category }}' category, focusing "
|
|
252
|
+
"on products related to '{{ product_subcategory }}'. The target age range of the ideal customer is "
|
|
253
|
+
"{{ target_age_range }} years old. Respond with only the product name, no other text."
|
|
254
|
+
),
|
|
255
|
+
system_prompt=SYSTEM_PROMPT,
|
|
256
|
+
model_alias=MODEL_ALIAS,
|
|
257
|
+
)
|
|
258
|
+
)
|
|
259
|
+
|
|
260
|
+
config_builder.add_column(
|
|
261
|
+
LLMTextColumnConfig(
|
|
262
|
+
name="customer_review",
|
|
263
|
+
prompt=(
|
|
264
|
+
"You are a customer named {{ customer.first_name }} from {{ customer.city }}, {{ customer.state }}. "
|
|
265
|
+
"You are {{ customer.age }} years old and recently purchased a product called {{ product_name }}. "
|
|
266
|
+
"Write a review of this product, which you gave a rating of {{ number_of_stars }} stars. "
|
|
267
|
+
"The style of the review should be '{{ review_style }}'."
|
|
268
|
+
),
|
|
269
|
+
system_prompt=SYSTEM_PROMPT,
|
|
270
|
+
model_alias=MODEL_ALIAS,
|
|
271
|
+
)
|
|
272
|
+
)
|
|
273
|
+
|
|
274
|
+
config_builder.validate()
|
|
275
|
+
|
|
276
|
+
# %% [markdown]
|
|
277
|
+
# ### 🔁 Iteration is key – preview the dataset!
|
|
278
|
+
#
|
|
279
|
+
# 1. Use the `preview` method to generate a sample of records quickly.
|
|
280
|
+
#
|
|
281
|
+
# 2. Inspect the results for quality and format issues.
|
|
282
|
+
#
|
|
283
|
+
# 3. Adjust column configurations, prompts, or parameters as needed.
|
|
284
|
+
#
|
|
285
|
+
# 4. Re-run the preview until satisfied.
|
|
286
|
+
#
|
|
287
|
+
|
|
288
|
+
# %%
|
|
289
|
+
preview = data_designer.preview(config_builder, num_records=2)
|
|
290
|
+
|
|
291
|
+
# %%
|
|
292
|
+
# Run this cell multiple times to cycle through the 2 preview records.
|
|
293
|
+
preview.display_sample_record()
|
|
294
|
+
|
|
295
|
+
# %%
|
|
296
|
+
# The preview dataset is available as a pandas DataFrame.
|
|
297
|
+
preview.dataset
|
|
298
|
+
|
|
299
|
+
# %% [markdown]
|
|
300
|
+
# ### 📊 Analyze the generated data
|
|
301
|
+
#
|
|
302
|
+
# - Data Designer automatically generates a basic statistical analysis of the generated data.
|
|
303
|
+
#
|
|
304
|
+
# - This analysis is available via the `analysis` property of generation result objects.
|
|
305
|
+
#
|
|
306
|
+
|
|
307
|
+
# %%
|
|
308
|
+
# Print the analysis as a table.
|
|
309
|
+
preview.analysis.to_report()
|
|
310
|
+
|
|
311
|
+
# %% [markdown]
|
|
312
|
+
# ### 🆙 Scale up!
|
|
313
|
+
#
|
|
314
|
+
# - Happy with your preview data?
|
|
315
|
+
#
|
|
316
|
+
# - Use the `create` method to submit larger Data Designer generation jobs.
|
|
317
|
+
#
|
|
318
|
+
|
|
319
|
+
# %%
|
|
320
|
+
results = data_designer.create(config_builder, num_records=10)
|
|
321
|
+
|
|
322
|
+
# %%
|
|
323
|
+
# Load the generated dataset as a pandas DataFrame.
|
|
324
|
+
dataset = results.load_dataset()
|
|
325
|
+
|
|
326
|
+
dataset.head()
|
|
327
|
+
|
|
328
|
+
# %%
|
|
329
|
+
# Load the analysis results into memory.
|
|
330
|
+
analysis = results.load_analysis()
|
|
331
|
+
|
|
332
|
+
analysis.to_report()
|
|
333
|
+
|
|
334
|
+
# %% [markdown]
|
|
335
|
+
# ## ⏭️ Next Steps
|
|
336
|
+
#
|
|
337
|
+
# Now that you've seen the basics of Data Designer, check out the following notebooks to learn more about:
|
|
338
|
+
#
|
|
339
|
+
# - [Structured outputs and jinja expressions](/notebooks/2-structured-outputs-and-jinja-expressions/)
|
|
340
|
+
#
|
|
341
|
+
# - [Seeding synthetic data generation with an external dataset](/notebooks/3-seeding-with-a-dataset/)
|
|
342
|
+
#
|