EulerWeave

LLM 학습 데이터 파이프라인 플랫폼

원시 데이터를 고품질 LLM 학습 데이터로 변환하는 매니페스트 기반 데이터 파이프라인. YAML 선언적 정의로 재현 가능한 데이터 처리를 수행합니다.

Open Source

주요 기능

EulerWeave가 제공하는 세 가지 핵심 축: 데이터 소스, 처리 블록, 프로덕션 출력

다양한 데이터 소스

  • 로컬: JSONL, CSV, Parquet, TXT, HTML, PDF
  • 원격: HuggingFace Datasets, HuggingFace Hub, HTTPS, AWS S3
  • 확장 가능한 플러그인 시스템

17+ 데이터 처리 블록

  • 정규화 및 필터링: normalize_text, heuristic_filter
  • 중복 제거: MinHash, SHA-256
  • SFT 태스크 빌드: LLM 기반 QnA 생성
  • 13+ 메트릭 블록: 퍼플렉시티, PII, 반복, 기블리시 등
  • PII 감지 및 마스킹

프로덕션 지원 출력

  • JSONL: OpenAI Chat 포맷 호환
  • Parquet: 대규모 분석용
  • MDS/StreamingDataset: 분산 학습 최적화
  • 호환: Ollama, vLLM, TRL, HuggingFace Transformers

파이프라인 트랙

용도에 맞는 트랙을 선택하여 데이터를 처리합니다

트랙 용도 설명
pretrain 사전학습 웹 크롤 데이터 정규화 및 정제
sft 지도학습 PDF/문서를 QnA 학습 데이터로 변환
dpo 선호도 학습 비교 데이터를 DPO 포맷으로 준비

CLI 퀵스타트

명령 한 줄로 데이터 파이프라인을 생성, 검증, 실행합니다

# 새 매니페스트 생성
eulerweave new manifest.yaml --track sft

# 매니페스트 검증
eulerweave validate manifest.yaml

# 실행 계획 미리보기
eulerweave plan manifest.yaml --records 10000

# 파이프라인 실행
eulerweave run manifest.yaml --input data/train.jsonl --artifacts ./artifacts

# MDS 포맷으로 내보내기
eulerweave export mds out/result.jsonl ./output/mds/ --shard-size 2000

# 플러그인 목록
eulerweave plugins list

CLI 레퍼런스

EulerWeave CLI 주요 명령어 목록

명령어 설명
eulerweave new 새 매니페스트 YAML 생성
eulerweave validate 매니페스트 유효성 검사
eulerweave plan 실행 계획 및 예상 비용 미리보기
eulerweave run 파이프라인 실행
eulerweave export 결과를 다양한 포맷으로 내보내기
eulerweave plugins list 설치된 플러그인 목록
eulerweave plugins doctor 플러그인 진단

내장 블록 목록

EulerWeave에 포함된 17+ 데이터 처리 블록

정규화 & 필터링

블록 용도
normalize_text 공백 정리, 인코딩 정규화
heuristic_filter 길이 및 품질 기반 필터링

중복 제거

블록 용도
dedup_minhash MinHash 기반 근사 중복 제거
dedup_exact SHA-256 정확 중복 제거

태스크 빌드 (SFT)

블록 용도
build_sft_messages 필드 매핑으로 SFT 포맷 생성
build_sft_qna LLM 기반 다중 QnA 생성
build_langextract_qna LangExtract 방식 QnA 생성

메트릭

블록 용도
metrics_text_basic 길이 분포, 문자셋 통계
metrics_text_repetition n-gram 중복 감지
metrics_text_gibberish 기블리시 및 인코딩 이상 감지
metrics_text_boilerplate 웹 보일러플레이트 감지
metrics_perplexity Transformers 기반 텍스트 품질
metrics_pii_detect 이메일, 전화, SSN, 카드번호 감지
metrics_token_stats 토큰화 통계
metrics_record_schema_validate 데이터 무결성 검증

PII & 내보내기

블록 용도
filter_pii_redact PII 감지 및 마스킹
export_jsonl JSONL 출력
export_parquet Parquet 출력
export_mds MDS 스트리밍 포맷

튜토리얼

단계별 가이드로 EulerWeave를 빠르게 익히세요

튜토리얼은 공개 예정입니다.

매니페스트 예시

PDF에서 SFT 학습 데이터를 생성하는 전체 파이프라인 매니페스트

version: 1 track: sft inputs: - type: pdf uri: data/technical_manual.pdf options: strategy: auto pipeline: - id: normalize type: normalize_text slot: normalize - id: filter type: heuristic_filter slot: filter params: min_length: 100 - id: dedup type: dedup_exact slot: dedup - id: qna type: build_sft_qna slot: build_task params: model: "qwen3:32b" base_url: "http://localhost:11434" - id: export type: export_jsonl slot: export exports: - type: jsonl path: out/training_data.jsonl

설치 및 시작하기

EulerWeave를 설치하고 첫 번째 파이프라인을 실행하세요

설치

pip install eulerweave

# 전체 기능 설치
pip install eulerweave[pdf,llm,parquet]

요구 사항

Python 3.11+

EulerWeave로 데이터 파이프라인을 시작하세요

오픈 소스, YAML 선언적 정의, 재현 가능한 데이터 처리.

GitHub에서 시작하기 문의하기