next-state/open-dreamer
Open-source Dreamer world-model implementation in JAX
Open Dreamer – JAX/Flax 기반 실시간 Dreamer 4 세계 모델
무엇인가요
- JAX/Flax (NNX 라이브러리)로 작성된 Dreamer 4 세계 모델 파이프라인의 오픈소스 구현체입니다.
- 동영상 토크나이저, 행동 조건부 잠재 역학 모델에 대한 완전한 학습 스택과 평가 도구(로울아웃, Fréchet Video Distance)를 제공합니다.
- 모델은 Minecraft/VPT 스타일의 플레이 영상으로 학습되었으며, 클라우드 호스팅된 데모를 통해 실시간으로 실행할 수 있습니다.
주요 구성 요소
| 구성 요소 | 역할 |
|---|---|
dreamer/models.py |
인과적 동영상 토크나이저와 잠재 역학 모델의 정의 |
dreamer/training.py |
학습 루프, 손실 함수, 체크포인트 처리 (Orbax를 통해) |
dreamer/generation.py |
노이즈 제거 스케줄, 로울아웃 생성, 비디오 렌더링 유틸리티 |
dreamer/fvd/ |
품질 평가를 위한 특징 추출 및 Fréchet Video Distance 계산 |
scripts/ |
바로 실행 가능한 진입점: train_tokenizer.py, tokenize_minecraft_dataset.py, train_dynamics.py, eval_fvd.py |
configs/ |
데이터셋, 모델 하이퍼파라미터, 평가 설정을 설명하는 Hydra/OmegaConf YAML 파일 |
site/ |
인터랙티브 데모와 문서를 호스팅하는 Next.js 웹사이트 |
일반적인 워크플로우
- 데이터 준비 – 원시 Minecraft MP4 녹화물을 ArrayRecord 샤드(비디오 바이트, 행동 등이 포함된 피클된 사전)로 변환.
- 토크나이저 학습 – 동영상 프레임의 잠재 표현을 학습 (
scripts/train_tokenizer.py) - 데이터셋 토크나이징 – 모든 원시 에피소드를 잠재 토큰으로 인코딩 (
scripts/tokenize_minecraft_dataset.py) - 역학 모델 학습 – 토크나이징된 데이터 위에서 행동 조건부 잠재 역학 모델을 적합 (
scripts/train_dynamics.py) - 생성 및 평가 – 모델을 로울아웃하여 새로운 비디오 프레임을 합성하고 FVD를 계산 (
scripts/eval_fvd.py)
체험 방법
- 라이브 데모 – 설치 필요 없음. 웹사이트는 브라우저 내 데모를 호스팅하며 Minecraft 세계를 스트리밍하고, 실제 게임과 모델 예측 사이를 전환할 수 있음.
- 로컬 추론 – 커플러 리포지토리
reactor-team/open-dreamer에는 자체 비디오/행동 시퀀스에서 학습된 체크포인트를 실행할 수 있는 가벼운 추론 스크립트가 포함되어 있음.
설치 (학습 측)
# Python 3.11 및 CUDA-12 호환 JAX 빌드 필요
pip install uv # 여기서 사용하는 빠른 Python 패키지 매니저
uv sync # 고정된 종속성들을 가상 환경에 설치
source .venv/bin/activate # 환경 활성화
다른 JAX 휠(예: 다른 GPU 또는 CPU)이 필요하면 uv sync 단계 후에 설치하세요.
학습 스크립트 실행 (토크나이저 예제)
# 먼저 configs/tokenizer.yaml과 configs/dataset/minecraft_vpt.yaml 편집
uv run scripts/train_tokenizer.py
토크나이징, 역학 학습, 평가에 대한 유사한 명령어가 있으며, 모두 configs/ 아래의 YAML 설정 파일에 의해 제어됩니다.
로드맵
- 현재는 세계 모델 학습 파이프라인만 지원.
- 향후 작업은 완전한 Dreamer 4 행동 클로닝 / 강화 학습 루프 추가를 목표로 함.
라이선스 및 인용
- 리포지토리는 현재 "All rights reserved"라는 플레이스홀더 메시지를 보유하고 있으나, 향후 릴리스에서 공식 오픈소스 라이선스를 계획 중입니다.
- 연구에서 코드를 사용할 경우, README에 기재된 Zenodo 항목과 원본 Dreamer 4 논문을 인용하세요.
누구에게 유용할까?
- Minecraft과 같은 비디오 풍부한 환경에서 확장 가능한 세계 모델 학습을 탐구하는 연구자.
- 빠른 JAX 구현이 필요한 실시간 생성 에이전트를 개발하는 엔지니어.
- 동영상 토크나이저 + 잠재 역학 파이프라인의 구체적인 예를 찾는 학생.
위 정보는 리포지토리의 README에서 직접 가져왔으며, 추가 기능은 추측되지 않았습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트