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.
Files changed (370) hide show
  1. data_designer-0.1.4/.github/workflows/build-docs.yml +39 -0
  2. data_designer-0.1.4/.github/workflows/build-notebooks.yml +30 -0
  3. {data_designer-0.1.3 → data_designer-0.1.4}/.github/workflows/pack-tutorials.yml +13 -10
  4. {data_designer-0.1.3 → data_designer-0.1.4}/.gitignore +4 -1
  5. {data_designer-0.1.3 → data_designer-0.1.4}/Makefile +27 -15
  6. {data_designer-0.1.3 → data_designer-0.1.4}/PKG-INFO +2 -2
  7. {data_designer-0.1.3 → data_designer-0.1.4}/README.md +1 -1
  8. data_designer-0.1.4/docs/code_reference/models.md +11 -0
  9. {data_designer-0.1.3/docs → data_designer-0.1.4/docs/concepts}/models/configure-model-settings-with-the-cli.md +1 -1
  10. {data_designer-0.1.3/docs → data_designer-0.1.4/docs/concepts}/models/default-model-settings.md +1 -1
  11. {data_designer-0.1.3/docs → data_designer-0.1.4/docs/concepts}/models/model-configs.md +1 -1
  12. {data_designer-0.1.3/docs → data_designer-0.1.4/docs/concepts}/models/model-providers.md +1 -1
  13. {data_designer-0.1.3 → data_designer-0.1.4}/docs/index.md +1 -1
  14. data_designer-0.1.4/docs/notebook_source/1-the-basics.py +342 -0
  15. data_designer-0.1.4/docs/notebook_source/2-structured-outputs-and-jinja-expressions.py +384 -0
  16. data_designer-0.1.4/docs/notebook_source/3-seeding-with-a-dataset.py +292 -0
  17. data_designer-0.1.4/docs/notebook_source/4-providing-images-as-context.py +318 -0
  18. data_designer-0.1.4/docs/notebook_source/README.md +23 -0
  19. data_designer-0.1.3/docs/notebooks/README.md → data_designer-0.1.4/docs/notebook_source/_README.md +10 -1
  20. data_designer-0.1.4/docs/overrides/main.html +18 -0
  21. {data_designer-0.1.3 → data_designer-0.1.4}/docs/quick-start.md +1 -1
  22. {data_designer-0.1.3 → data_designer-0.1.4}/mkdocs.yml +12 -6
  23. {data_designer-0.1.3 → data_designer-0.1.4}/pyproject.toml +4 -1
  24. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/_version.py +2 -2
  25. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/analysis/column_profilers.py +4 -4
  26. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/analysis/column_statistics.py +5 -5
  27. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/analysis/dataset_profiler.py +6 -6
  28. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/analysis/utils/errors.py +1 -1
  29. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/analysis/utils/reporting.py +5 -5
  30. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/base.py +2 -2
  31. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/column_configs.py +8 -8
  32. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/column_types.py +9 -5
  33. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/config_builder.py +32 -27
  34. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/data_designer_config.py +7 -7
  35. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/datastore.py +4 -4
  36. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/default_model_settings.py +4 -4
  37. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/errors.py +1 -1
  38. data_designer-0.1.4/src/data_designer/config/exports.py +128 -0
  39. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/interface.py +6 -6
  40. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/models.py +109 -5
  41. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/preview_results.py +3 -3
  42. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/processors.py +2 -2
  43. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/sampler_constraints.py +1 -1
  44. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/sampler_params.py +2 -2
  45. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/seed.py +3 -3
  46. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/errors.py +1 -1
  47. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/info.py +8 -4
  48. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/io_helpers.py +5 -5
  49. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/misc.py +3 -3
  50. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/numerical_helpers.py +1 -1
  51. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/type_helpers.py +7 -3
  52. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/validation.py +5 -5
  53. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/visualization.py +10 -10
  54. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/validator_params.py +2 -2
  55. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/errors.py +1 -1
  56. data_designer-0.1.4/src/data_designer/essentials/__init__.py +29 -0
  57. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/interface/data_designer.py +11 -19
  58. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/plugin_manager.py +14 -26
  59. {data_designer-0.1.3 → data_designer-0.1.4}/tests/test_plugin_manager.py +15 -50
  60. data_designer-0.1.3/.github/workflows/build-docs.yml +0 -18
  61. data_designer-0.1.3/docs/notebooks/.gitignore +0 -2
  62. data_designer-0.1.3/docs/notebooks/1-the-basics.ipynb +0 -1901
  63. data_designer-0.1.3/docs/notebooks/2-structured-outputs-and-jinja-expressions.ipynb +0 -1654
  64. data_designer-0.1.3/docs/notebooks/3-seeding-with-a-dataset.ipynb +0 -1954
  65. data_designer-0.1.3/src/data_designer/essentials/__init__.py +0 -137
  66. {data_designer-0.1.3 → data_designer-0.1.4}/.github/workflows/ci.yml +0 -0
  67. {data_designer-0.1.3 → data_designer-0.1.4}/.github/workflows/dco-assistant.yml +0 -0
  68. {data_designer-0.1.3 → data_designer-0.1.4}/.github/workflows/semantic-pull-requests.yml +0 -0
  69. {data_designer-0.1.3 → data_designer-0.1.4}/.pre-commit-config.yaml +0 -0
  70. {data_designer-0.1.3 → data_designer-0.1.4}/AGENTS.md +0 -0
  71. {data_designer-0.1.3 → data_designer-0.1.4}/CLAUDE.md +0 -0
  72. {data_designer-0.1.3 → data_designer-0.1.4}/CODE_OF_CONDUCT.md +0 -0
  73. {data_designer-0.1.3 → data_designer-0.1.4}/CONTRIBUTING.md +0 -0
  74. {data_designer-0.1.3 → data_designer-0.1.4}/DCO +0 -0
  75. {data_designer-0.1.3 → data_designer-0.1.4}/LICENSE +0 -0
  76. {data_designer-0.1.3 → data_designer-0.1.4}/VERSIONING.md +0 -0
  77. {data_designer-0.1.3 → data_designer-0.1.4}/docs/CONTRIBUTING.md +0 -0
  78. {data_designer-0.1.3 → data_designer-0.1.4}/docs/assets/palette-favicon.png +0 -0
  79. {data_designer-0.1.3 → data_designer-0.1.4}/docs/code_reference/column_configs.md +0 -0
  80. {data_designer-0.1.3 → data_designer-0.1.4}/docs/code_reference/config_builder.md +0 -0
  81. {data_designer-0.1.3 → data_designer-0.1.4}/docs/code_reference/data_designer_config.md +0 -0
  82. {data_designer-0.1.3 → data_designer-0.1.4}/docs/code_reference/sampler_params.md +0 -0
  83. {data_designer-0.1.3 → data_designer-0.1.4}/docs/code_reference/validator_params.md +0 -0
  84. {data_designer-0.1.3 → data_designer-0.1.4}/docs/concepts/columns.md +0 -0
  85. {data_designer-0.1.3 → data_designer-0.1.4}/docs/concepts/person_sampling.md +0 -0
  86. {data_designer-0.1.3 → data_designer-0.1.4}/docs/concepts/plugins.md +0 -0
  87. {data_designer-0.1.3 → data_designer-0.1.4}/docs/concepts/validators.md +0 -0
  88. {data_designer-0.1.3 → data_designer-0.1.4}/docs/css/mkdocstrings.css +0 -0
  89. {data_designer-0.1.3 → data_designer-0.1.4}/docs/css/style.css +0 -0
  90. {data_designer-0.1.3 → data_designer-0.1.4}/docs/installation.md +0 -0
  91. {data_designer-0.1.3 → data_designer-0.1.4}/docs/js/toc-toggle.js +0 -0
  92. data_designer-0.1.3/docs/notebooks/pyproject.toml → data_designer-0.1.4/docs/notebook_source/_pyproject.toml +0 -0
  93. {data_designer-0.1.3 → data_designer-0.1.4}/scripts/update_license_headers.py +2 -2
  94. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/__init__.py +0 -0
  95. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/README.md +0 -0
  96. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/__init__.py +0 -0
  97. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/commands/__init__.py +0 -0
  98. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/commands/list.py +0 -0
  99. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/commands/models.py +0 -0
  100. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/commands/providers.py +0 -0
  101. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/commands/reset.py +0 -0
  102. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/controllers/__init__.py +0 -0
  103. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/controllers/model_controller.py +0 -0
  104. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/controllers/provider_controller.py +0 -0
  105. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/forms/__init__.py +0 -0
  106. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/forms/builder.py +0 -0
  107. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/forms/field.py +0 -0
  108. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/forms/form.py +0 -0
  109. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/forms/model_builder.py +0 -0
  110. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/forms/provider_builder.py +0 -0
  111. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/main.py +0 -0
  112. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/repositories/__init__.py +0 -0
  113. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/repositories/base.py +0 -0
  114. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/repositories/model_repository.py +0 -0
  115. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/repositories/provider_repository.py +0 -0
  116. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/services/__init__.py +0 -0
  117. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/services/model_service.py +0 -0
  118. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/services/provider_service.py +0 -0
  119. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/ui.py +0 -0
  120. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/cli/utils.py +0 -0
  121. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/__init__.py +0 -0
  122. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/dataset_builders.py +0 -0
  123. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/code_lang.py +0 -0
  124. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/config/utils/constants.py +1 -1
  125. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/__init__.py +0 -0
  126. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/analysis/column_profilers/base.py +1 -1
  127. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/analysis/column_profilers/judge_score_profiler.py +0 -0
  128. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/analysis/column_profilers/registry.py +0 -0
  129. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/analysis/column_statistics.py +0 -0
  130. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/analysis/dataset_profiler.py +1 -1
  131. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/analysis/errors.py +0 -0
  132. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/analysis/utils/column_statistics_calculations.py +0 -0
  133. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/analysis/utils/judge_score_processing.py +1 -1
  134. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/__init__.py +0 -0
  135. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/generators/__init__.py +0 -0
  136. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/generators/base.py +0 -0
  137. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/generators/expression.py +0 -0
  138. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/generators/llm_generators.py +0 -0
  139. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/generators/samplers.py +1 -1
  140. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/generators/seed_dataset.py +0 -0
  141. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/generators/validation.py +0 -0
  142. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/registry.py +0 -0
  143. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/utils/errors.py +0 -0
  144. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/utils/judge_score_factory.py +0 -0
  145. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/column_generators/utils/prompt_renderer.py +0 -0
  146. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/configurable_task.py +0 -0
  147. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/artifact_storage.py +3 -3
  148. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/column_wise_builder.py +1 -1
  149. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/errors.py +0 -0
  150. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/multi_column_configs.py +0 -0
  151. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/utils/__init__.py +0 -0
  152. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/utils/concurrency.py +1 -1
  153. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/utils/config_compiler.py +0 -0
  154. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/utils/dag.py +0 -0
  155. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/utils/dataset_batch_manager.py +1 -1
  156. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/dataset_builders/utils/errors.py +0 -0
  157. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/model_provider.py +0 -0
  158. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/__init__.py +0 -0
  159. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/errors.py +1 -1
  160. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/facade.py +1 -1
  161. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/litellm_overrides.py +0 -0
  162. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/parsers/__init__.py +0 -0
  163. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/parsers/errors.py +0 -0
  164. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/parsers/parser.py +2 -2
  165. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/parsers/postprocessors.py +0 -0
  166. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/parsers/tag_parsers.py +0 -0
  167. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/parsers/types.py +0 -0
  168. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/recipes/base.py +0 -0
  169. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/recipes/response_recipes.py +1 -1
  170. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/registry.py +0 -0
  171. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/usage.py +0 -0
  172. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/models/utils.py +0 -0
  173. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/ginja/__init__.py +0 -0
  174. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/ginja/ast.py +0 -0
  175. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/ginja/environment.py +1 -1
  176. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/ginja/exceptions.py +0 -0
  177. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/ginja/record.py +0 -0
  178. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/gsonschema/__init__.py +0 -0
  179. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/gsonschema/exceptions.py +0 -0
  180. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/gsonschema/schema_transformers.py +0 -0
  181. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/gsonschema/types.py +0 -0
  182. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/gsonschema/validators.py +1 -1
  183. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/processors/base.py +0 -0
  184. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/processors/drop_columns.py +0 -0
  185. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/processors/registry.py +0 -0
  186. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/processing/utils.py +0 -0
  187. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/registry/base.py +0 -0
  188. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/registry/data_designer_registry.py +0 -0
  189. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/registry/errors.py +0 -0
  190. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/resources/managed_dataset_generator.py +0 -0
  191. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/resources/managed_dataset_repository.py +4 -4
  192. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/resources/managed_storage.py +1 -1
  193. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/resources/resource_provider.py +0 -0
  194. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/resources/seed_dataset_data_store.py +0 -0
  195. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/column.py +0 -0
  196. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/constraints.py +1 -1
  197. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/data_sources/base.py +1 -1
  198. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/data_sources/errors.py +0 -0
  199. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/data_sources/sources.py +0 -0
  200. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/entities/__init__.py +0 -0
  201. {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
  202. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/entities/dataset_based_person_fields.py +0 -0
  203. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/entities/email_address_utils.py +1 -1
  204. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/entities/errors.py +0 -0
  205. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/entities/national_id_utils.py +1 -1
  206. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/entities/person.py +1 -1
  207. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/entities/phone_number.py +1 -1
  208. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/errors.py +0 -0
  209. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/generator.py +0 -0
  210. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/jinja_utils.py +0 -0
  211. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/people_gen.py +3 -3
  212. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/person_constants.py +0 -0
  213. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/schema.py +0 -0
  214. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/schema_builder.py +0 -0
  215. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/sampling_gen/utils.py +0 -0
  216. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/secret_resolver.py +1 -1
  217. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/validators/__init__.py +0 -0
  218. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/validators/base.py +0 -0
  219. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/validators/local_callable.py +0 -0
  220. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/validators/python.py +2 -2
  221. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/validators/remote.py +0 -0
  222. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/engine/validators/sql.py +0 -0
  223. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/errors.py +0 -0
  224. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/interface/__init__.py +0 -0
  225. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/interface/errors.py +0 -0
  226. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/interface/results.py +0 -0
  227. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/logging.py +2 -2
  228. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/plugins/__init__.py +0 -0
  229. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/plugins/errors.py +0 -0
  230. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/plugins/plugin.py +0 -0
  231. {data_designer-0.1.3 → data_designer-0.1.4}/src/data_designer/plugins/registry.py +1 -1
  232. {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/commands/test_list_command.py +0 -0
  233. {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/commands/test_models_command.py +0 -0
  234. {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/commands/test_providers_command.py +0 -0
  235. {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/commands/test_reset_command.py +0 -0
  236. {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/conftest.py +0 -0
  237. {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/controllers/test_model_controller.py +0 -0
  238. {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/controllers/test_provider_controller.py +0 -0
  239. {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/forms/test_field.py +0 -0
  240. {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/forms/test_form.py +0 -0
  241. {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/forms/test_model_builder.py +0 -0
  242. {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/forms/test_provider_builder.py +0 -0
  243. {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/repositories/test_model_repository.py +0 -0
  244. {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/repositories/test_provider_repository.py +0 -0
  245. {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/services/test_model_service.py +0 -0
  246. {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/services/test_provider_service.py +0 -0
  247. {data_designer-0.1.3 → data_designer-0.1.4}/tests/cli/test_cli_utils.py +0 -0
  248. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/analysis/conftest.py +0 -0
  249. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/analysis/test_column_statistics.py +0 -0
  250. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/analysis/test_dataset_profiler_results.py +0 -0
  251. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/analysis/utils/test_reporting.py +1 -1
  252. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_columns.py +1 -1
  253. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_config_builder.py +2 -2
  254. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_data_designer_config.py +0 -0
  255. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_datastore.py +0 -0
  256. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_default_model_settings.py +0 -0
  257. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_models.py +2 -2
  258. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_processors.py +1 -1
  259. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_sampler_constraints.py +0 -0
  260. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_sampler_params.py +1 -1
  261. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_seed.py +0 -0
  262. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/test_validator_params.py +1 -1
  263. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/utils/__init__.py +0 -0
  264. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/utils/test_code_lang.py +0 -0
  265. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/utils/test_info.py +0 -0
  266. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/utils/test_io_helpers.py +1 -1
  267. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/utils/test_misc.py +1 -1
  268. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/utils/test_type_helpers.py +1 -1
  269. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/utils/test_validation.py +0 -0
  270. {data_designer-0.1.3 → data_designer-0.1.4}/tests/config/utils/test_visualization.py +0 -0
  271. {data_designer-0.1.3 → data_designer-0.1.4}/tests/conftest.py +0 -0
  272. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/column_profilers/test_base.py +1 -1
  273. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/column_profilers/test_judge_score_profiler.py +0 -0
  274. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/conftest.py +0 -0
  275. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/test_column_statistics_calculator.py +0 -0
  276. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/test_data/artifacts/dataset/column_configs.json +0 -0
  277. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/test_data/artifacts/dataset/dataset.json +0 -0
  278. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/test_data/artifacts/dataset/metadata.json +0 -0
  279. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/test_dataset_profiler.py +0 -0
  280. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/test_errors.py +0 -0
  281. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/utils/test_column_statistics_calculations.py +0 -0
  282. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/analysis/utils/test_judge_score_processing.py +0 -0
  283. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/generators/__init__.py +0 -0
  284. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/generators/test_column_generator_base.py +0 -0
  285. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/generators/test_expression.py +0 -0
  286. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/generators/test_llm_generators.py +0 -0
  287. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/generators/test_samplers.py +0 -0
  288. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/generators/test_seed_dataset.py +0 -0
  289. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/generators/test_validation.py +0 -0
  290. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/test_registry.py +0 -0
  291. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/utils/test_column_generator_errors.py +0 -0
  292. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/utils/test_judge_score_factory.py +1 -1
  293. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/column_generators/utils/test_prompt_renderer.py +0 -0
  294. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/conftest.py +0 -0
  295. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/dataset_builders/test_artifact_storage.py +2 -2
  296. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/dataset_builders/test_column_wise_builder.py +0 -0
  297. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/dataset_builders/test_multi_column_configs.py +1 -1
  298. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/dataset_builders/utils/test_concurrency.py +0 -0
  299. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/dataset_builders/utils/test_config_compiler.py +0 -0
  300. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/dataset_builders/utils/test_dag.py +0 -0
  301. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/dataset_builders/utils/test_dataset_batch_manager.py +0 -0
  302. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/conftest.py +0 -0
  303. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/parsers/test_parser.py +0 -0
  304. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/parsers/test_parsers_types.py +0 -0
  305. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/parsers/test_postprocessors.py +0 -0
  306. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/parsers/test_tag_parsers.py +1 -1
  307. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/recipes/test_recipe_base.py +0 -0
  308. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/recipes/test_response_recipes.py +1 -1
  309. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/stub_secrets.json +0 -0
  310. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/test_facade.py +1 -1
  311. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/test_litellm_overrides.py +0 -0
  312. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/test_model_errors.py +1 -1
  313. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/test_model_registry.py +1 -1
  314. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/test_model_utils.py +0 -0
  315. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/models/test_usage.py +0 -0
  316. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/__init__.py +0 -0
  317. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/ginja/__init__.py +0 -0
  318. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/ginja/test_ast.py +1 -1
  319. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/ginja/test_environment.py +0 -0
  320. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/ginja/test_exceptions.py +0 -0
  321. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/ginja/test_record.py +0 -0
  322. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/gsonschema/__init__.py +0 -0
  323. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/gsonschema/test_exceptions.py +1 -1
  324. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/gsonschema/test_schema_transformers.py +0 -0
  325. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/gsonschema/test_types.py +0 -0
  326. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/gsonschema/test_validators.py +0 -0
  327. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/processors/__init__.py +0 -0
  328. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/processors/test_drop_columns.py +0 -0
  329. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/processors/test_registry.py +0 -0
  330. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/processing/test_utils.py +0 -0
  331. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/registry/__init__.py +0 -0
  332. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/registry/conftest.py +0 -0
  333. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/registry/test_base.py +0 -0
  334. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/registry/test_data_designer_registry.py +0 -0
  335. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/registry/test_errors.py +0 -0
  336. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/resources/__init__.py +0 -0
  337. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/resources/conftest.py +1 -1
  338. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/resources/test_managed_dataset_generator.py +0 -0
  339. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/resources/test_managed_dataset_repository.py +0 -0
  340. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/resources/test_managed_storage.py +0 -0
  341. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/resources/test_resource_provider.py +0 -0
  342. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/conftest.py +2 -2
  343. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/data_sources/test_sampler_errors.py +0 -0
  344. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/data_sources/test_sources.py +0 -0
  345. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/entities/test_email_address_utils.py +0 -0
  346. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/entities/test_national_id_utils.py +0 -0
  347. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/entities/test_person.py +0 -0
  348. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/entities/test_phone_number.py +0 -0
  349. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/test_column.py +1 -1
  350. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/test_constraints.py +0 -0
  351. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/test_generator.py +0 -0
  352. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/test_jinja_utils.py +0 -0
  353. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/test_people_gen.py +0 -0
  354. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/test_schema.py +1 -1
  355. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/sampling_gen/test_utils.py +0 -0
  356. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/test_configurable_task.py +0 -0
  357. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/test_engine_errors.py +0 -0
  358. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/test_model_provider.py +0 -0
  359. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/test_secret_resolver.py +1 -1
  360. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/validators/test_local_callable.py +0 -0
  361. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/validators/test_python.py +0 -0
  362. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/validators/test_remote.py +0 -0
  363. {data_designer-0.1.3 → data_designer-0.1.4}/tests/engine/validators/test_sql.py +0 -0
  364. {data_designer-0.1.3 → data_designer-0.1.4}/tests/essentials/test_init.py +1 -1
  365. {data_designer-0.1.3 → data_designer-0.1.4}/tests/interface/test_data_designer.py +1 -1
  366. {data_designer-0.1.3 → data_designer-0.1.4}/tests/interface/test_results.py +0 -0
  367. {data_designer-0.1.3 → data_designer-0.1.4}/tests/plugins/test_plugin.py +1 -1
  368. {data_designer-0.1.3 → data_designer-0.1.4}/tests/plugins/test_plugin_registry.py +1 -1
  369. {data_designer-0.1.3 → data_designer-0.1.4}/tests/test_logging.py +1 -1
  370. {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 Tutorials
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
- zip_and_upload:
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: Checkout repository
16
- uses: actions/checkout@v4
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=docs/notebooks" >> $GITHUB_ENV
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.TARGET_FOLDER_NAME }}
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
@@ -87,4 +87,7 @@ src/data_designer/_version.py
87
87
 
88
88
  .claude/
89
89
 
90
- docs/examples/artifacts/
90
+ docs/notebooks/
91
+ docs/notebook_source/*.ipynb
92
+ docs/notebook_source/*.csv
93
+ docs/notebook_source/artifacts/
@@ -15,29 +15,30 @@ help:
15
15
  @echo "═════════════════════════════════════════════════════════════"
16
16
  @echo ""
17
17
  @echo "📦 Installation:"
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.)"
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 - Run all unit tests"
24
- @echo " coverage - Run tests with coverage report"
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 - 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"
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 - Run all checks (format-check + lint)"
34
- @echo " check-all-fix - Run all checks with autofix (format + lint-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 - Remove coverage reports and cache files"
38
- @echo " serve-docs-locally - Serve documentation locally"
39
- @echo " check-license-headers - Check if all files have license headers"
40
- @echo " update-license-headers - Add license headers to all files"
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
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](../quick-start.md)**: Get started with a simple example
135
+ - **[Quick Start Guide](../../quick-start.md)**: Get started with a simple example
@@ -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](../quick-start.md)**: Get started with a simple example
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](../code_reference/column_configs.md)**: Learn how to use models in 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](../quick-start.md)**: Get started with a simple example
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
+ #