DataArcTech/DataArc-SynData-Toolkit

Synthetic Data Generation Platform By DataArcTech

DataArc SynData Toolkit – 무엇인가요

DataArc SynData Toolkit는 대규모 언어 모델(LLM)을 위한 합성 학습 데이터를 생성하고, 생성된 데이터로 모델을 미세 조정하는 오픈소스 Python 패키지입니다. 이 프로젝트는 모듈화된 파이프라인(데이터 생성 → 필터링 → 선택적 모델 증류), FastAPI + React 웹 UI, 그리고 사후 훈련(Supervised Fine-Tuning 및 GRPO)과 평가(DeepEval을 통한) 기능을 내장하고 있습니다. 본 프로젝트는 ACL 2026 시스템 디모에서 발표된 논문에 기반하고 있습니다.


핵심 기능

기능 작동 방식
코드 없이 데이터 생성 단일 YAML 설정 파일을 제공하고 sdg generate …를 실행합니다. 파이프라인은 로컬 코퍼스, Hugging Face 데이터셋, 또는 교사 모델을 증류하여 새로운 예제를 생성할 수 있습니다.
다국어 및 다중 모달 영어, 아랍어 등 저자원 언어를 지원하며, 로컬 이미지 또는 웹 크롤링 데이터셋을 사용해 VQA용 텍스트-이미지 쌍을 생성할 수 있습니다.
사후 훈련 통합 내장된 verl 프레임워크를 사용해 합성 코퍼스에서 SFT 또는 GRPO를 직접 실행합니다 (sdg train …).
모델 평가 DeepEval(G‑Eval)을 호출해 답변 정확도, 형식 준수, 페어와이즈 선호도를 계산합니다 (sdg eval …).
확장 가능한 아키텍처 핵심 모듈은 sdgsystem/ 아래에 있습니다(생성, 재작성, 증류, 평가, 트레이너 등). 개발자는 제공된 BaseTaskConfig, BaseTaskExecutor, BaseRewriter 등을 상속하여 사용자 정의 로직을 삽입할 수 있습니다.
GUI FastAPI 백엔드(REST + SSE)와 React 프론트엔드를 통해 사용자는 명령줄을 다루지 않고도 파이프라인을 구성하고, 진행 상황을 모니터링하며 평가 결과를 확인할 수 있습니다.

빠른 시작 (CLI)

# 복제 및 설치 (Python 3.10+ 및 uv 패키지 매니저 필요)
git clone https://github.com/DataArcTech/DataArc-SynData-Toolkit.git
cd DataArc-SynData-Toolkit
pip install uv               # uv가 없으면
uv sync                       # 정확한 종속성 설치

# 1️⃣ API 키를 포함한 .env 생성
cat > .env <<EOF
API_KEY=sk-…                # OpenAI 또는 호환 LLM API 키
BASE_URL=https://api.openai.com/v1   # 선택적 사용자 정의 엔드포인트
EOF

# 2️⃣ 합성 데이터 생성 (sdg.yaml은 예시 설정 파일)
uv run sdg generate configs/sdg.yaml

# 3️⃣ 생성된 데이터로 모델 미세 조정
uv run sdg train configs/sft.yaml   # GRPO의 경우 grpo.yaml

# 4️⃣ 미세 조정된 모델 평가
uv run sdg eval configs/eval.yaml

동일한 단계는 FastAPI 서버를 시작(uv run fastapi dev sdgsystem/app/main.py)하고 React 프론트엔드를 시작(cd sdgsystem/webui && pnpm install && pnpm dev)함으로써 웹 UI를 통해 수행할 수 있습니다.


프로젝트 구조 (개요)

  • configs/ – 생성, SFT, GRPO, 평가용 예시 YAML 파일.
  • sdgsystem/ – 핵심 코드:
    • generation/, distillation/ – 데이터 생성 방법.
    • rewriter/ – 원시 합성 출력의 필터링/재작성.
    • trainer/verl 훈련 프레임워크 래퍼.
    • evaluation/ & deepeval/ – DeepEval을 통한 품질 메트릭.
    • app/ – FastAPI 백엔드.
    • webui/ – React 프론트엔드.
  • verl/ – 외부 verl 라이브러리의 번들 버전 (Apache‑2.0).
  • docs/ – 상세한 사용자 가이드, 사용 사례 설명, 종속성 목록.

누구에게 적합한가요?

  • 연구자: 의료, 금융, 법률 등 특정 도메인의 대규모 합성 코퍼스가 필요해 LLM 성능을 향상시키고 싶은 사람.
  • 제품 팀: 다국어 데이터를 한 번의 클릭으로 생성하고 즉시 모델을 미세 조정하고 싶은 사람.
  • 개발자: 사용자 정의 데이터 소스나 재작성 규칙을 추가할 수 있는 즉시 사용 가능한 프레임워크를 찾는 사람.

라이선스 및 커뮤니티

  • Apache 2.0 라이선스(코드)이며, 번들된 verl 컴포넌트도 동일한 라이선스입니다.
  • 활발한 커뮤니티 채널: Discord, WeChat 그룹, X(Twitter), LinkedIn.
  • PR을 통해 기여를 환영하며, 일반적인 오픈소스 기여 워크플로우를 따릅니다.

결론

DataArc SynData Toolkit은 합성 데이터 생성, 모델 미세 조정, 평가를 완전한 엔드투엔드 솔루션으로 제공하며, 사용자 친화적인 CLI와 선택적 GUI를 갖추고 있습니다. 모듈화된 설계로 기존 파이프라인을 쉽게 채택하거나, 다국어 및 다중 모달 LLM 프로젝트용 새 파이프라인을 구축하는 것이 용이합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트