๐ฆ Import Data Designerยถ
data_designer.configprovides access to the configuration API.DataDesigneris the main interface for data generation.
import data_designer.config as dd
from data_designer.interface import DataDesigner
โ๏ธ Initialize the Data Designer interfaceยถ
DataDesigneris the main object responsible for managing the data generation process.When initialized without arguments, the default model providers are used.
data_designer = DataDesigner()
๐๏ธ Define model configurationsยถ
Each
ModelConfigdefines a model that can be used during the generation process.The "model alias" is used to reference the model in the Data Designer config (as we will see below).
The "model provider" is the external service that hosts the model (see the model config docs for more details).
By default, we use build.nvidia.com as the model provider.
# This name is set in the model provider configuration.
MODEL_PROVIDER = "nvidia"
# The model ID is from build.nvidia.com.
MODEL_ID = "nvidia/nemotron-3-nano-30b-a3b"
# We choose this alias to be descriptive for our use case.
MODEL_ALIAS = "nemotron-nano-v3"
model_configs = [
dd.ModelConfig(
alias=MODEL_ALIAS,
model=MODEL_ID,
provider=MODEL_PROVIDER,
inference_parameters=dd.ChatCompletionInferenceParams(
temperature=1.0,
top_p=1.0,
max_tokens=2048,
extra_body={"chat_template_kwargs": {"enable_thinking": False}},
),
)
]
๐๏ธ Initialize the Data Designer Config Builderยถ
The Data Designer config defines the dataset schema and generation process.
The config builder provides an intuitive interface for building this configuration.
The list of model configs is provided to the builder at initialization.
config_builder = dd.DataDesignerConfigBuilder(model_configs=model_configs)
๐ฒ Getting started with sampler columnsยถ
Sampler columns offer non-LLM based generation of synthetic data.
They are particularly useful for steering the diversity of the generated data, as we demonstrate below.
You can view available samplers using the config builder's info property:
config_builder.info.display("samplers")
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ NeMo Data Designer Samplers โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโ โ Type โ Parameter โ Data Type โ Required โ Constraints โ โกโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฉ โ bernoulli โ p โ number โ โ โ >= 0.0, <= 1.0 โ โ โ sampler_type โ string โ โ โ โโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโค โ bernoulli_mixture โ p โ number โ โ โ >= 0.0, <= 1.0 โ โ โ dist_name โ string โ โ โ โ โ โ dist_params โ dict โ โ โ โ โ โ sampler_type โ string โ โ โ โโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโค โ binomial โ n โ integer โ โ โ โ โ โ p โ number โ โ โ >= 0.0, <= 1.0 โ โ โ sampler_type โ string โ โ โ โโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโค โ category โ values โ string[] | integer[] | number[] โ โ โ len > 1 โ โ โ weights โ number[] | null โ โ โ โ โ sampler_type โ string โ โ โ โโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโค โ datetime โ start โ string โ โ โ โ โ โ end โ string โ โ โ โ โ โ unit โ string โ โ โ โ โ sampler_type โ string โ โ โ โโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโค โ gaussian โ mean โ number โ โ โ โ โ โ stddev โ number โ โ โ โ โ โ decimal_places โ integer | null โ โ โ โ โ sampler_type โ string โ โ โ โโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโค โ person โ locale โ string โ โ โ โ โ sex โ string | null โ โ โ โ โ city โ string | string[] | null โ โ โ โ โ age_range โ integer[] โ โ len > 2, len < 2 โ โ โ select_field_values โ object | null โ โ โ โ โ with_synthetic_personas โ boolean โ โ โ โ โ sampler_type โ string โ โ โ โโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโค โ person_from_faker โ locale โ string โ โ โ โ โ sex โ string | null โ โ โ โ โ city โ string | string[] | null โ โ โ โ โ age_range โ integer[] โ โ len > 2, len < 2 โ โ โ sampler_type โ string โ โ โ โโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโค โ poisson โ mean โ number โ โ โ โ โ โ sampler_type โ string โ โ โ โโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโค โ scipy โ dist_name โ string โ โ โ โ โ โ dist_params โ dict โ โ โ โ โ โ decimal_places โ integer | null โ โ โ โ โ sampler_type โ string โ โ โ โโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโค โ subcategory โ category โ string โ โ โ โ โ โ values โ dict โ โ โ โ โ โ sampler_type โ string โ โ โ โโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโค โ timedelta โ dt_min โ integer โ โ โ >= 0 โ โ โ dt_max โ integer โ โ โ > 0 โ โ โ reference_column_name โ string โ โ โ โ โ โ unit โ string โ โ โ โ โ sampler_type โ string โ โ โ โโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโค โ uniform โ low โ number โ โ โ โ โ โ high โ number โ โ โ โ โ โ decimal_places โ integer | null โ โ โ โ โ sampler_type โ string โ โ โ โโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโค โ uuid โ prefix โ string | null โ โ โ โ โ short_form โ boolean โ โ โ โ โ uppercase โ boolean โ โ โ โ โ sampler_type โ string โ โ โ โโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโ
Let's start designing our product review dataset by adding product category and subcategory columns.
config_builder.add_column(
dd.SamplerColumnConfig(
name="product_category",
sampler_type=dd.SamplerType.CATEGORY,
params=dd.CategorySamplerParams(
values=[
"Electronics",
"Clothing",
"Home & Kitchen",
"Books",
"Home Office",
],
),
)
)
config_builder.add_column(
dd.SamplerColumnConfig(
name="product_subcategory",
sampler_type=dd.SamplerType.SUBCATEGORY,
params=dd.SubcategorySamplerParams(
category="product_category",
values={
"Electronics": [
"Smartphones",
"Laptops",
"Headphones",
"Cameras",
"Accessories",
],
"Clothing": [
"Men's Clothing",
"Women's Clothing",
"Winter Coats",
"Activewear",
"Accessories",
],
"Home & Kitchen": [
"Appliances",
"Cookware",
"Furniture",
"Decor",
"Organization",
],
"Books": [
"Fiction",
"Non-Fiction",
"Self-Help",
"Textbooks",
"Classics",
],
"Home Office": [
"Desks",
"Chairs",
"Storage",
"Office Supplies",
"Lighting",
],
},
),
)
)
config_builder.add_column(
dd.SamplerColumnConfig(
name="target_age_range",
sampler_type=dd.SamplerType.CATEGORY,
params=dd.CategorySamplerParams(values=["18-25", "25-35", "35-50", "50-65", "65+"]),
)
)
# Optionally validate that the columns are configured correctly.
data_designer.validate(config_builder)
[16:32:08] [INFO] โ Validation passed
Next, let's add samplers to generate data related to the customer and their review.
config_builder.add_column(
dd.SamplerColumnConfig(
name="customer",
sampler_type=dd.SamplerType.PERSON_FROM_FAKER,
params=dd.PersonFromFakerSamplerParams(age_range=[18, 70], locale="en_US"),
)
)
config_builder.add_column(
dd.SamplerColumnConfig(
name="number_of_stars",
sampler_type=dd.SamplerType.UNIFORM,
params=dd.UniformSamplerParams(low=1, high=5),
convert_to="int", # Convert the sampled float to an integer.
)
)
config_builder.add_column(
dd.SamplerColumnConfig(
name="review_style",
sampler_type=dd.SamplerType.CATEGORY,
params=dd.CategorySamplerParams(
values=["rambling", "brief", "detailed", "structured with bullet points"],
weights=[1, 2, 2, 1],
),
)
)
data_designer.validate(config_builder)
[16:32:08] [INFO] โ Validation passed
๐ฆ LLM-generated columnsยถ
The real power of Data Designer comes from leveraging LLMs to generate text, code, and structured data.
When prompting the LLM, we can use Jinja templating to reference other columns in the dataset.
As we see below, nested json fields can be accessed using dot notation.
config_builder.add_column(
dd.LLMTextColumnConfig(
name="product_name",
prompt=(
"You are a helpful assistant that generates product names. DO NOT add quotes around the product name.\n\n"
"Come up with a creative product name for a product in the '{{ product_category }}' category, focusing "
"on products related to '{{ product_subcategory }}'. The target age range of the ideal customer is "
"{{ target_age_range }} years old. Respond with only the product name, no other text."
),
model_alias=MODEL_ALIAS,
)
)
config_builder.add_column(
dd.LLMTextColumnConfig(
name="customer_review",
prompt=(
"You are a customer named {{ customer.first_name }} from {{ customer.city }}, {{ customer.state }}. "
"You are {{ customer.age }} years old and recently purchased a product called {{ product_name }}. "
"Write a review of this product, which you gave a rating of {{ number_of_stars }} stars. "
"The style of the review should be '{{ review_style }}'. "
"Respond with only the review, no other text."
),
model_alias=MODEL_ALIAS,
)
)
data_designer.validate(config_builder)
[16:32:08] [INFO] โ Validation passed
๐ Iteration is key โย preview the dataset!ยถ
Use the
previewmethod to generate a sample of records quickly.Inspect the results for quality and format issues.
Adjust column configurations, prompts, or parameters as needed.
Re-run the preview until satisfied.
preview = data_designer.preview(config_builder, num_records=2)
[16:32:08] [INFO] ๐ญ Preview generation in progress
[16:32:08] [INFO] โ Validation passed
[16:32:08] [INFO] โ๏ธ Sorting column configs into a Directed Acyclic Graph
[16:32:08] [INFO] ๐ฉบ Running health checks for models...
[16:32:08] [INFO] |-- ๐ Checking 'nvidia/nemotron-3-nano-30b-a3b' in provider named 'nvidia' for model alias 'nemotron-nano-v3'...
[16:32:09] [INFO] |-- โ Passed!
[16:32:09] [INFO] ๐ฒ Preparing samplers to generate 2 records across 6 columns
[16:32:11] [INFO] ๐ llm-text model config for column 'product_name'
[16:32:11] [INFO] |-- model: 'nvidia/nemotron-3-nano-30b-a3b'
[16:32:11] [INFO] |-- model alias: 'nemotron-nano-v3'
[16:32:11] [INFO] |-- model provider: 'nvidia'
[16:32:11] [INFO] |-- inference parameters:
[16:32:11] [INFO] | |-- generation_type=chat-completion
[16:32:11] [INFO] | |-- max_parallel_requests=4
[16:32:11] [INFO] | |-- extra_body={'chat_template_kwargs': {'enable_thinking': False}}
[16:32:11] [INFO] | |-- temperature=1.00
[16:32:11] [INFO] | |-- top_p=1.00
[16:32:11] [INFO] | |-- max_tokens=2048
[16:32:11] [INFO] โก๏ธ Processing llm-text column 'product_name' with 4 concurrent workers
[16:32:11] [INFO] โฑ๏ธ llm-text column 'product_name' will report progress after each record
[16:32:11] [INFO] |-- ๐ llm-text column 'product_name' progress: 1/2 (50%) complete, 1 ok, 0 failed, 2.83 rec/s, eta 0.4s
[16:32:11] [INFO] |-- ๐ llm-text column 'product_name' progress: 2/2 (100%) complete, 2 ok, 0 failed, 5.31 rec/s, eta 0.0s
[16:32:11] [INFO] ๐ llm-text model config for column 'customer_review'
[16:32:11] [INFO] |-- model: 'nvidia/nemotron-3-nano-30b-a3b'
[16:32:11] [INFO] |-- model alias: 'nemotron-nano-v3'
[16:32:11] [INFO] |-- model provider: 'nvidia'
[16:32:11] [INFO] |-- inference parameters:
[16:32:11] [INFO] | |-- generation_type=chat-completion
[16:32:11] [INFO] | |-- max_parallel_requests=4
[16:32:11] [INFO] | |-- extra_body={'chat_template_kwargs': {'enable_thinking': False}}
[16:32:11] [INFO] | |-- temperature=1.00
[16:32:11] [INFO] | |-- top_p=1.00
[16:32:11] [INFO] | |-- max_tokens=2048
[16:32:11] [INFO] โก๏ธ Processing llm-text column 'customer_review' with 4 concurrent workers
[16:32:11] [INFO] โฑ๏ธ llm-text column 'customer_review' will report progress after each record
[16:32:14] [INFO] |-- ๐ llm-text column 'customer_review' progress: 1/2 (50%) complete, 1 ok, 0 failed, 0.39 rec/s, eta 2.5s
[16:32:17] [INFO] |-- ๐คฉ llm-text column 'customer_review' progress: 2/2 (100%) complete, 2 ok, 0 failed, 0.36 rec/s, eta 0.0s
[16:32:17] [INFO] ๐ Model usage summary:
[16:32:17] [INFO] |-- model: nvidia/nemotron-3-nano-30b-a3b
[16:32:17] [INFO] |-- tokens: input=362, output=1159, total=1521, tps=188
[16:32:17] [INFO] |-- requests: success=4, failed=0, total=4, rpm=29
[16:32:17] [INFO] ๐ Measuring dataset column statistics:
[16:32:17] [INFO] |-- ๐ฒ column: 'product_category'
[16:32:17] [INFO] |-- ๐ฒ column: 'product_subcategory'
[16:32:17] [INFO] |-- ๐ฒ column: 'target_age_range'
[16:32:17] [INFO] |-- ๐ฒ column: 'customer'
[16:32:17] [INFO] |-- ๐ฒ column: 'number_of_stars'
[16:32:17] [INFO] |-- ๐ฒ column: 'review_style'
[16:32:17] [INFO] |-- ๐ column: 'product_name'
[16:32:18] [INFO] |-- ๐ column: 'customer_review'
[16:32:18] [INFO] ๐พ Preview complete!
# Run this cell multiple times to cycle through the 2 preview records.
preview.display_sample_record()
Generated Columns โโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ Name โ Value โ โกโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฉ โ product_category โ Home Office โ โโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ product_subcategory โ Office Supplies โ โโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ target_age_range โ 18-25 โ โโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ customer โ { โ โ โ 'uuid': 'ec9d7022-089a-4b2f-b82c-0d87f0ea2e62', โ โ โ 'locale': 'en_US', โ โ โ 'first_name': 'Denise', โ โ โ 'last_name': 'Stout', โ โ โ 'middle_name': None, โ โ โ 'sex': 'Female', โ โ โ 'street_number': '77469', โ โ โ 'street_name': 'Dawn Square', โ โ โ 'city': 'East Stephen', โ โ โ 'state': 'Nevada', โ โ โ 'postcode': '33904', โ โ โ 'age': 19, โ โ โ 'birth_date': '2006-07-09', โ โ โ 'country': 'British Indian Ocean Territory (Chagos Archipelago)', โ โ โ 'marital_status': 'never_married', โ โ โ 'education_level': 'secondary_education', โ โ โ 'unit': '', โ โ โ 'occupation': 'Runner, broadcasting/film/video', โ โ โ 'phone_number': '520.454.5404x378', โ โ โ 'bachelors_field': 'no_degree' โ โ โ } โ โโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ number_of_stars โ 3 โ โโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ review_style โ detailed โ โโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ product_name โ ErgoCharge Smart Desk Mat Harmony โ โโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ customer_review โ **Denise from East Stephen, Nevada โ 19 years old โ 3โStar Detailed Review** โ โ โ โ โ โ I bought the ErgoCharge Smart Desk Mat Harmony a month ago, excited to try out a โ โ โ โhighโtechโ antiโfatigue mat that also claims to charge my devices. Overall, itโs โ โ โ decent but falls short of my expectations in a few key areas. โ โ โ โ โ โ **First Impressions & Build Quality** โ โ โ The mat arrived in a sleek, matte black box with a thin instruction manual. When I โ โ โ unrolled it, the surface felt surprisingly plushโsoft enough to cushion my wrists โ โ โ but firm enough to keep my laptop stable. The silicone edge trim looks durable, and โ โ โ the embedded LED strip gave a subtle glow that I liked. However, the stitching along โ โ โ the border is a bit loose in places; after a few days of use, I noticed tiny fraying โ โ โ threads near the corners. โ โ โ โ โ โ **Ergonomic Design** โ โ โ The mat is marketed as an โErgoChargeโ solution, promising wrist support and posture โ โ โ improvement. My wrist rests comfortably on the gelโinfused foam, and I havenโt felt โ โ โ the usual soreness after long coding sessions. The matโs slight incline (about 5ยฐ) โ โ โ encourages a more neutral wrist angle, which Iโve read about in ergonomics guides. โ โ โ Still, the incline is subtleโif youโre looking for a pronounced tilt, youโll need to โ โ โ adjust your chair or desk separately. โ โ โ โ โ โ **Smart Features & Charging** โ โ โ The biggest selling point for me was the โSmartโ aspect: wireless Qi charging and โ โ โ integrated cable management. The charging pad works well for my phone and a small โ โ โ smartwatch, but it only sustained a 5W outputโso my phone charges slowly, and it โ โ โ refuses to charge anything larger than 6โฏmm thickness. The mat features a hidden โ โ โ channel to route USB-C or power cords, which is neat, but the channel is shallow; my โ โ โ longer cords keep slipping out when I move the mat. โ โ โ โ โ โ **Sensor & Feedback System** โ โ โ Thereโs a tiny embedded sensor that supposedly monitors desk usage and provides โ โ โ vibration alerts when youโve been sitting too long. In practice, the sensor is โ โ โ finicky: it sometimes registers โmovementโ when I just shift my weight, and other โ โ โ times it stays silent for hours despite extended periods of stillness. The companion โ โ โ app on my phone is minimalisticโonly shows a basic usage timer and battery level for โ โ โ the matโs internal LEDโbut it crashes intermittently on my Android 13 device. โ โ โ โ โ โ **Durability & Maintenance** โ โ โ After a month of daily use, the surface shows no staining, and the antiโslip rubber โ โ โ base remains firmly attached to my desk. Iโve spilled a little coffee, wiped it off โ โ โ with a damp cloth, and the mat looked fine, but Iโm concerned about longโterm wear โ โ โ on the foam edge. The matโs claim of โlifetime warrantyโ sounds appealing, yet the โ โ โ fine print requires a registration within 14 days and a copy of the purchase โ โ โ receiptโsomething I missed, so Iโm technically out of warranty. โ โ โ โ โ โ **Value for Money** โ โ โ Priced at $79.99, the mat sits in the midโrange market for ergonomic accessories. โ โ โ The charging capability, decent wrist support, and aesthetic LED lighting do add โ โ โ some value, but the inconsistent sensor, weak wireless charging speed, and โ โ โ occasional stitching issues make it hard to justify the full price. Iโd consider โ โ โ paying $50โ$55 for a product with these features, but the current price feels a bit โ โ โ inflated for what the mat actually delivers. โ โ โ โ โ โ **Final Thoughts** โ โ โ If youโre looking for a simple wristโsupport mat with a subtle aesthetic boost, the โ โ โ ErgoCharge Smart Desk Mat Harmony works okay. However, expect limited wireless โ โ โ charging power, an unreliable usage sensor, and a build quality that doesnโt feel โ โ โ premium. Iโm giving it 3 stars because it meets some expectations but falls short in โ โ โ several key areas that matter for daily office use. Iโll probably keep it for now as โ โ โ a costโeffective option, but Iโd look for a more robust alternative before buying โ โ โ another. โ โโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
# The preview dataset is available as a pandas DataFrame.
preview.dataset
| product_category | product_subcategory | target_age_range | customer | number_of_stars | review_style | product_name | customer_review | |
|---|---|---|---|---|---|---|---|---|
| 0 | Home Office | Office Supplies | 18-25 | {'uuid': 'ec9d7022-089a-4b2f-b82c-0d87f0ea2e62... | 3 | detailed | ErgoCharge Smart Desk Mat Harmony | **Denise from East Stephen, Nevada โ 19 years ... |
| 1 | Electronics | Headphones | 18-25 | {'uuid': '17a19f6d-3124-47fd-982a-c63976f893fa... | 4 | structured with bullet points | BassWave X1 | - **Product:** BassWave X1 \n- **Location:** ... |
๐ Analyze the generated dataยถ
Data Designer automatically generates a basic statistical analysis of the generated data.
This analysis is available via the
analysisproperty of generation result objects.
# Print the analysis as a table.
preview.analysis.to_report()
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ ๐จ Data Designer Dataset Profile โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ Dataset Overview โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ number of records โ number of columns โ percent complete records โ โกโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฉ โ 2 โ 8 โ 100.0% โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ ๐ฒ Sampler Columns โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ column name โ data type โ number unique values โ sampler type โ โกโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฉ โ product_category โ string โ 2 (100.0%) โ category โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ product_subcategory โ string โ 2 (100.0%) โ subcategory โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ target_age_range โ string โ 1 (50.0%) โ category โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ customer โ dict โ 2 (100.0%) โ person_from_faker โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ number_of_stars โ int โ 2 (100.0%) โ uniform โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ review_style โ string โ 2 (100.0%) โ category โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ ๐ LLM-Text Columns โโโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโโ โ โ โ โ prompt tokens โ completion tokens โ โ column name โ data type โ number unique values โ per record โ per record โ โกโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฉ โ product_name โ string โ 2 (100.0%) โ 74.0 +/- 0.0 โ 6.5 +/- 2.1 โ โโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโค โ customer_review โ string โ 2 (100.0%) โ 72.5 +/- 1.5 โ 544.5 +/- 393.9 โ โโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโ โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ Table Notes โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ โ โ โ 1. All token statistics are based on a sample of max(1000, len(dataset)) records. โ โ 2. Tokens are calculated using tiktoken's cl100k_base tokenizer. โ โ โ โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
๐ Scale up!ยถ
Happy with your preview data?
Use the
createmethod to submit larger Data Designer generation jobs.
results = data_designer.create(config_builder, num_records=10, dataset_name="tutorial-1")
[16:32:18] [INFO] ๐จ Creating Data Designer dataset
[16:32:18] [INFO] โ Validation passed
[16:32:18] [INFO] โ๏ธ Sorting column configs into a Directed Acyclic Graph
[16:32:18] [INFO] ๐ฉบ Running health checks for models...
[16:32:18] [INFO] |-- ๐ Checking 'nvidia/nemotron-3-nano-30b-a3b' in provider named 'nvidia' for model alias 'nemotron-nano-v3'...
[16:32:18] [INFO] |-- โ Passed!
[16:32:18] [INFO] โณ Processing batch 1 of 1
[16:32:18] [INFO] ๐ฒ Preparing samplers to generate 10 records across 6 columns
[16:32:18] [INFO] ๐ llm-text model config for column 'product_name'
[16:32:18] [INFO] |-- model: 'nvidia/nemotron-3-nano-30b-a3b'
[16:32:18] [INFO] |-- model alias: 'nemotron-nano-v3'
[16:32:18] [INFO] |-- model provider: 'nvidia'
[16:32:18] [INFO] |-- inference parameters:
[16:32:18] [INFO] | |-- generation_type=chat-completion
[16:32:18] [INFO] | |-- max_parallel_requests=4
[16:32:18] [INFO] | |-- extra_body={'chat_template_kwargs': {'enable_thinking': False}}
[16:32:18] [INFO] | |-- temperature=1.00
[16:32:18] [INFO] | |-- top_p=1.00
[16:32:18] [INFO] | |-- max_tokens=2048
[16:32:18] [INFO] โก๏ธ Processing llm-text column 'product_name' with 4 concurrent workers
[16:32:18] [INFO] โฑ๏ธ llm-text column 'product_name' will report progress after each record
[16:32:18] [INFO] |-- ๐ง๏ธ llm-text column 'product_name' progress: 1/10 (10%) complete, 1 ok, 0 failed, 3.30 rec/s, eta 2.7s
[16:32:19] [INFO] |-- ๐ง๏ธ llm-text column 'product_name' progress: 2/10 (20%) complete, 2 ok, 0 failed, 4.91 rec/s, eta 1.6s
[16:32:19] [INFO] |-- ๐ฆ๏ธ llm-text column 'product_name' progress: 3/10 (30%) complete, 3 ok, 0 failed, 7.25 rec/s, eta 1.0s
[16:32:19] [INFO] |-- ๐ฆ๏ธ llm-text column 'product_name' progress: 4/10 (40%) complete, 4 ok, 0 failed, 9.42 rec/s, eta 0.6s
[16:32:19] [INFO] |-- โ llm-text column 'product_name' progress: 5/10 (50%) complete, 5 ok, 0 failed, 8.03 rec/s, eta 0.6s
[16:32:19] [INFO] |-- โ llm-text column 'product_name' progress: 6/10 (60%) complete, 6 ok, 0 failed, 8.41 rec/s, eta 0.5s
[16:32:19] [INFO] |-- โ llm-text column 'product_name' progress: 7/10 (70%) complete, 7 ok, 0 failed, 9.75 rec/s, eta 0.3s
[16:32:19] [INFO] |-- ๐ค๏ธ llm-text column 'product_name' progress: 8/10 (80%) complete, 8 ok, 0 failed, 9.70 rec/s, eta 0.2s
[16:32:19] [INFO] |-- ๐ค๏ธ llm-text column 'product_name' progress: 9/10 (90%) complete, 9 ok, 0 failed, 9.59 rec/s, eta 0.1s
[16:32:19] [INFO] |-- โ๏ธ llm-text column 'product_name' progress: 10/10 (100%) complete, 10 ok, 0 failed, 9.73 rec/s, eta 0.0s
[16:32:19] [INFO] ๐ llm-text model config for column 'customer_review'
[16:32:19] [INFO] |-- model: 'nvidia/nemotron-3-nano-30b-a3b'
[16:32:19] [INFO] |-- model alias: 'nemotron-nano-v3'
[16:32:19] [INFO] |-- model provider: 'nvidia'
[16:32:19] [INFO] |-- inference parameters:
[16:32:19] [INFO] | |-- generation_type=chat-completion
[16:32:19] [INFO] | |-- max_parallel_requests=4
[16:32:19] [INFO] | |-- extra_body={'chat_template_kwargs': {'enable_thinking': False}}
[16:32:19] [INFO] | |-- temperature=1.00
[16:32:19] [INFO] | |-- top_p=1.00
[16:32:19] [INFO] | |-- max_tokens=2048
[16:32:19] [INFO] โก๏ธ Processing llm-text column 'customer_review' with 4 concurrent workers
[16:32:19] [INFO] โฑ๏ธ llm-text column 'customer_review' will report progress after each record
[16:32:20] [INFO] |-- ๐ง๏ธ llm-text column 'customer_review' progress: 1/10 (10%) complete, 1 ok, 0 failed, 2.07 rec/s, eta 4.4s
[16:32:20] [INFO] |-- ๐ง๏ธ llm-text column 'customer_review' progress: 2/10 (20%) complete, 2 ok, 0 failed, 2.05 rec/s, eta 3.9s
[16:32:21] [INFO] |-- ๐ฆ๏ธ llm-text column 'customer_review' progress: 3/10 (30%) complete, 3 ok, 0 failed, 2.02 rec/s, eta 3.5s
[16:32:21] [INFO] |-- ๐ฆ๏ธ llm-text column 'customer_review' progress: 4/10 (40%) complete, 4 ok, 0 failed, 1.96 rec/s, eta 3.1s
[16:32:21] [INFO] |-- โ llm-text column 'customer_review' progress: 5/10 (50%) complete, 5 ok, 0 failed, 2.23 rec/s, eta 2.2s
[16:32:23] [INFO] |-- โ llm-text column 'customer_review' progress: 6/10 (60%) complete, 6 ok, 0 failed, 1.60 rec/s, eta 2.5s
[16:32:24] [INFO] |-- โ llm-text column 'customer_review' progress: 7/10 (70%) complete, 7 ok, 0 failed, 1.56 rec/s, eta 1.9s
[16:32:24] [INFO] |-- ๐ค๏ธ llm-text column 'customer_review' progress: 8/10 (80%) complete, 8 ok, 0 failed, 1.74 rec/s, eta 1.1s
[16:32:24] [INFO] |-- ๐ค๏ธ llm-text column 'customer_review' progress: 9/10 (90%) complete, 9 ok, 0 failed, 1.86 rec/s, eta 0.5s
[16:32:27] [INFO] |-- โ๏ธ llm-text column 'customer_review' progress: 10/10 (100%) complete, 10 ok, 0 failed, 1.22 rec/s, eta 0.0s
[16:32:28] [INFO] ๐ Model usage summary:
[16:32:28] [INFO] |-- model: nvidia/nemotron-3-nano-30b-a3b
[16:32:28] [INFO] |-- tokens: input=1783, output=2818, total=4601, tps=480
[16:32:28] [INFO] |-- requests: success=20, failed=0, total=20, rpm=125
[16:32:28] [INFO] ๐ Measuring dataset column statistics:
[16:32:28] [INFO] |-- ๐ฒ column: 'product_category'
[16:32:28] [INFO] |-- ๐ฒ column: 'product_subcategory'
[16:32:28] [INFO] |-- ๐ฒ column: 'target_age_range'
[16:32:28] [INFO] |-- ๐ฒ column: 'customer'
[16:32:28] [INFO] |-- ๐ฒ column: 'number_of_stars'
[16:32:28] [INFO] |-- ๐ฒ column: 'review_style'
[16:32:28] [INFO] |-- ๐ column: 'product_name'
[16:32:28] [INFO] |-- ๐ column: 'customer_review'
# Load the generated dataset as a pandas DataFrame.
dataset = results.load_dataset()
dataset.head()
| product_category | product_subcategory | target_age_range | customer | number_of_stars | review_style | product_name | customer_review | |
|---|---|---|---|---|---|---|---|---|
| 0 | Books | Classics | 35-50 | {'age': 25, 'bachelors_field': 'no_degree', 'b... | 4 | brief | Timeless Tales Collectorโs Edition | โญโญโญโญโ Beautiful artwork and sturdy build, but ... |
| 1 | Electronics | Headphones | 18-25 | {'age': 54, 'bachelors_field': 'no_degree', 'b... | 4 | detailed | AuraPulse ProHeadphones | **Rating: โ โ โ โ โ (4 out of 5) โ Detailed Review... |
| 2 | Home & Kitchen | Cookware | 18-25 | {'age': 59, 'bachelors_field': 'stem', 'birth_... | 2 | detailed | SizzleSnap Pan Set | Iโm Ivan from East Johnfurt, Arkansas. Iโm 59 ... |
| 3 | Books | Textbooks | 18-25 | {'age': 27, 'bachelors_field': 'business', 'bi... | 3 | structured with bullet points | CampusMindspace Suite | - โ โ โโโ (3/5) - **Positive points:** - C... |
| 4 | Clothing | Women's Clothing | 25-35 | {'age': 57, 'bachelors_field': 'no_degree', 'b... | 2 | rambling | Verdant lavender drape dress | Well, here's the thing about that Verdant lave... |
# Load the analysis results into memory.
analysis = results.load_analysis()
analysis.to_report()
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ ๐จ Data Designer Dataset Profile โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ Dataset Overview โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ number of records โ number of columns โ percent complete records โ โกโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฉ โ 10 โ 8 โ 100.0% โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ ๐ฒ Sampler Columns โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ column name โ data type โ number unique values โ sampler type โ โกโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฉ โ product_category โ string โ 4 (40.0%) โ category โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ product_subcategory โ string โ 6 (60.0%) โ subcategory โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ target_age_range โ string โ 5 (50.0%) โ category โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ customer โ dict โ 10 (100.0%) โ person_from_faker โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ number_of_stars โ int โ 5 (50.0%) โ uniform โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ review_style โ string โ 4 (40.0%) โ category โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ ๐ LLM-Text Columns โโโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโโ โ โ โ โ prompt tokens โ completion tokens โ โ column name โ data type โ number unique values โ per record โ per record โ โกโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฉ โ product_name โ string โ 10 (100.0%) โ 74.0 +/- 0.8 โ 6.0 +/- 1.5 โ โโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโค โ customer_review โ string โ 10 (100.0%) โ 70.0 +/- 1.8 โ 158.0 +/- 287.9 โ โโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโ โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ Table Notes โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ โ โ โ 1. All token statistics are based on a sample of max(1000, len(dataset)) records. โ โ 2. Tokens are calculated using tiktoken's cl100k_base tokenizer. โ โ โ โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โญ๏ธ Next Stepsยถ
Now that you've seen the basics of Data Designer, check out the following notebooks to learn more about: