# Data Designer

[Data Designer](https://github.com/NVIDIA-NeMo/DataDesigner)는 LLM을 활용하여 고품질 합성 데이터셋을 생성하는 NVIDIA NeMo의 프레임워크입니다. 통계 샘플러, LLM, 또는 기존 시드 데이터셋을 사용하여 다양한 데이터를 생성할 수 있습니다.

## 필수 조건

```bash
pip install data-designer
```

## Hub에서 시드로 사용할 데이터셋 다운로드

`HuggingFaceSeedSource`를 사용하여 Hub에서 데이터를 직접 로드하여 생성용 시드 데이터로 사용하세요.

```python
import data_designer.config as dd
from data_designer.interface import DataDesigner

data_designer = DataDesigner()
config_builder = dd.DataDesignerConfigBuilder()

# Load seed data from HuggingFace
seed_source = dd.HuggingFaceSeedSource(
    path="datasets/gretelai/symptom_to_diagnosis/data/train.parquet",
    token="hf_...",  # Optional, for private datasets
)
config_builder.with_seed_dataset(seed_source)

# Reference seed columns in prompts
config_builder.add_column(
    dd.LLMTextColumnConfig(
        name="physician_notes",
        model_alias="openai-gpt-5",
        prompt="Write notes for a patient with {{ diagnosis }}. Symptoms: {{ patient_summary }}",
    )
)

preview = data_designer.preview(config_builder, num_records=5)
```

## 생성된 데이터셋을 Hub에 푸시

내장된 `push_to_hub` 메서드를 사용하여 생성된 데이터셋을 Hub에 업로드합니다.

```python
# Generate dataset
results = data_designer.create(config_builder, num_records=1000, dataset_name="my-dataset")

# Push to Hub
url = results.push_to_hub(
    repo_id="username/my-synthetic-dataset",
    description="Synthetic dataset generated with Data Designer.",
    tags=["medical", "notes"],
    private=False,
)
```

## 리소스

- [데이터 디자이너 문서](https://nvidia-nemo.github.io/DataDesigner/)
- [GitHub 저장소](https://github.com/NVIDIA-NeMo/DataDesigner)
- [시드 데이터셋 가이드](https://nvidia-nemo.github.io/DataDesigner/latest/concepts/seed-datasets/)
- [Inference Providers와 Data Designer 사용 가이드](https://huggingface.co/docs/inference-providers/integrations/datadesigner)

