Index
2026-04-30 — Progress

DreamGen Datagen P0 — End-to-End 완료 및 LeRobot v3.0 변환

GR00T-Dreams | Cosmos 14B → IDM pseudo-action → HF v3.0 파이프라인

TL;DR

10m 28s
P0 총 소요
37s
video당 Cosmos
100%
HF v3.0 호환
4.6 MB
10 ep 크기 (v3)
60–70%
action magnitude

1 배경 / 목적

DreamGen 파이프라인 (옵션 A)의 핵심 가설: Cosmos 14B 비디오 생성 모델로 합성 비디오를 만들고, IDM으로 pseudo action을 역추정하여 GR00T N1 fine-tune 데이터로 활용. 데이터가 없는 새 task에도 적용 가능한 data augmentation 전략.

기존 상태 (260428): 파이프라인 5개 스크립트 인프라 구축 완료. Cosmos job 62301 priority 대기 중. LeRobot 포맷 호환성 미검증 상태.

오늘(260429) 목표: P0 sanity (10 video) end-to-end 실행 완료 + HF DAVIAN-Robotics/robocasa-H50 v3.0 포맷 호환성 확보 → P1/P2 스케일업 기반 마련.

2 작업 내용

① Cosmos 14B P0 generation 실행 (Job 62301)

4×B200 GPU, Cosmos-Predict2 14B mg30_real iter_47200 체크포인트 사용. 10개 합성 비디오 생성.

모델: cosmos-predict2/14b_groot_robocasa_mg30_real_480 (iter 47200) 해상도: 432×768 (Cosmos video_size config 그대로) 프레임: 93 frame / 16fps / 5.81초 GPU: 4×B200, 소요 8분 8초 출력: outputs/cosmos_datagen_p0/generated/*.mp4 (745KB–1.3MB)

② Post-Cosmos 파이프라인 (login 1 GPU)

run_p0_post_cosmos.sh--target_h 216 --target_w 384 추가 (quadrant 해상도 유지, 불필요한 upscale 회피).

v3.0 포맷 갭 발견: 우리 출력은 lerobot v2.1 (per-episode parquet, mpeg4, cam key 다름, state 8-dim). HF v3.0은 per-chunk 합본, av1, cam key 다름, state 16-dim. 단순 변환 불가 → 변환 스크립트 작성 필요.

③ v3.0 변환 스크립트 작성 및 wrapper 통합

LeRobot 버전 확인: 0.3.3 = v2.1, 0.4.4 = v3.0. dreamgen env (py3.10)에 0.4.4 설치.

scripts/convert_to_lerobot_v3.py 주요 처리: - PIL Lanczos 리사이즈 128×128 (cv2 + numpy 2.x 충돌 회피) - LeRobotDataset.create(... vcodec='libsvtav1') → av1 인코딩 - 카메라 key 재매핑: exterior_image_1_left → robot0_agentview_left_image exterior_image_2_left → robot0_agentview_right_image wrist_image_left → robot0_eye_in_hand_image - state: 8-dim → 16-dim (zero pad, 합성 비디오엔 GT state 없음) - action: list[float64] → float32 array[12] - run_p0_post_cosmos.sh step3으로 통합 (Cosmos → IDM dump → v3 변환 단일 wrapper)

3 결과

소요 시간 측정

8m 08s
Cosmos P0 (4 GPU)
37s
video당
2m 20s
post-cosmos (1 GPU)
~30s
v3 변환

P2 외삽 (1000 video 기준)

단계소요 (P0 기준)P2 외삽 (1000 video)비고
Cosmos 14B 생성37s/video~17h4 GPU sbm
Post-cosmos (IDM dump + build)14s/video~4h1 GPU
v3.0 변환~3s/video~50minCPU

HF v3.0 레이아웃 호환성 검증

검증 항목우리 v3HF v3.0상태
codebase_versionv3.0v3.0✓ 일치
chunks_size1000 / 100MB / 200MB1000 / 100MB / 200MB✓ 일치
meta/tasks.parquetshape (10,1), task_index col동일 schema✓ 일치
episodes chunk parquet131 cols (stats/* + videos/* timestamp)동일 schema✓ 일치
data parquetaction float32[12], state float32[16]동일✓ 일치
video codecav1 (libsvtav1), 128×128, 16fpsav1, 128×128, 20fpsfps 차이 (16 vs 20)
카메라 keyrobot0_agentview_left/right, robot0_eye_in_hand동일✓ 일치

Action Sanity (CloseDoubleDoor ep 0)

시점synthetic IDM 예측real heldout GT
t=0xyz=[-0.008, 0.029, 0.012], gripper=-1xyz=[-0.053, 0.011, 0.129], gripper=-1
t=40xyz=[-0.449, -0.011, 0.424]xyz=[-0.656, -0.294, 0.567]
방향·부호 일치: gripper_close=-1 (cabinet close 동작 정확), control_mode=-1, nonzero ratio 66.7%. 방향·gripper·제어 모드 모두 일치.
Magnitude 60–70% 수준: Cosmos 합성 비디오 동작 폭이 real 대비 짧고 부드러움 (5.8s vs 20.3s). Cosmos MG-30 학습본 한계 (P0). IDM 자체 문제 아님.

데이터셋 크기 비교

6.9 MB
v2.1 (10 ep)
4.6 MB
v3.0 (10 ep)
~460 MB
P2 1000 ep 외삽
알려진 issue: dreamgen env torch 2.6 + torchcodec 0.10 + ffmpeg 8 ABI 미스매치로 로컬 LeRobotDataset.__getitem__ 디코딩 실패. 포맷 자체는 정상 — HF Spaces visualizer는 데이터 파일을 직접 읽으므로 영향 없음.

4 Takeaway

DreamGen 옵션 A — 기술적 베이스라인 검증 완료

Cosmos 14B (mg30_real 720 ep 학습본) + MG-3000 IDM (checkpoint-60000) 조합이 합성 비디오에서 의미 있는 pseudo action을 뽑아내는 것 확인. Action magnitude underestimation은 IDM 문제가 아니라 Cosmos 합성 비디오의 동작 폭 한계.

HF v3.0 포맷 gap은 완전히 해소됨: convert_to_lerobot_v3.py + run_p0_post_cosmos.sh step3으로 파이프라인 끝까지 자동화. P1/P2 대규모 datagen이 추가 인프라 작업 없이 바로 실행 가능.

P2 (1000 video) 후 GR00T N1 fine-tune: real + pseudo data mix로 SR 향상 검증이 다음 핵심 목표. real(720 ep) + 합성(1000 ep) 혼합 시 어느 ratio가 최적인지 P2 실험 설계 필요.

5 Next Steps

P1 (50 video) 스케일업

build_datagen_seeds.py --num_tasks 24 --eps_per_task 2 + 동일 wrapper로 자동 처리. Cosmos 37s/video → 4 GPU 약 31분. Action magnitude 분포 확인.

P2 (500–1000 video) + GR00T N1 fine-tune

Cosmos sbm 제출 (~17h, 8 GPU 권장). 완료 후 real(720 ep) + synthetic(500/1000 ep) 혼합 비율별 GR00T N1 SR 측정. DreamGen 논문 Table 1 재현 여부 확인.

미해결 한계 — Magnitude underestimation

Cosmos mg30_real (720 ep) 학습본의 동작 폭 한계. 옵션 B: Cosmos MG-3000 추가 학습 시 동작 폭 확장 가능성. 단, P2 real+synthetic mix로 GR00T N1이 보완 가능한지 먼저 검증.

로컬 visualize 환경 정리

dreamgen env torchcodec ABI 미스매치: ffmpeg 7 다운그레이드 또는 torch 2.7+ 업그레이드. HF Spaces 업로드 후 visualizer 검증으로 대체 가능.