Repository navigation
Add WorldPlay2 synthesis backend using shared Wan components - #14
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add native WorldPlay2 Fast, AR and BI generation from an image, navigation actions and scheduled scene prompts. WorldPlay2-specific conditioning, compressed causal memory, transformer extensions and sampling live in
worldfoundry/synthesis/visual_generation/worldplay2/.The implementation reuses the shared Wan2.2 transformer, UMT5 encoder, Wan2.1 VAE, checkpoint loader, runtime policy, attention backends and media IO. Shared changes extract Wan image conditioning, expose an output-head hook and add request-owned streaming codec caches.
Released-checkpoint short replay declarations cover the default Fast route and Fast/AR/BI variants.
make test-infer-tensorsselects all 42 WorldPlay2 CPU contracts; the official numeric fixture uses the public JSON format.Generated recipe metadata records a portable Python interpreter default, with matching output under Python 3.10 and 3.12.
User-Visible Behavior
WorldPlay2Pipeline.from_pretrained(...)selects Fast, AR or BI expert weights through one public adapter.Affected Pipeline / Benchmark
worldplay2,worldplay2-fast,worldplay2-ar,worldplay2-bi.worldfoundry.pipelines.worldplay2:WorldPlay2Pipeline.Change Type
Asset / API / GPU Requirements
c5d83e32099116ff3a1437a8a05c764d579f704b; model and support-asset revisions are pinned in the recipe and catalog.Commands Run
Validation covers WorldPlay2 Fast/AR/BI CPU parity, shared Wan/runtime contracts, HelixWorld coexistence, checkpoint selection, video exports and replay declarations. The combined selection passes all 124 tests. Representative commands:
PYTHONPATH=/tmp/worldfoundry-helix-test-deps:. OMP_NUM_THREADS=2 MKL_NUM_THREADS=2 /mnt/dolphinfs/ssd_pool/docker/user/hadoop-nlp-hl02/hadoop-aipnlp/3A/multimodal/yangboxue/arena/conda/envs/ltx23/bin/python -m pytest -q tests/synthesis/test_worldplay2.py tests/synthesis/test_worldplay2_compressor_pdd.py tests/synthesis/test_worldplay2_upstream_parity.py tests/eval_core/test_worldplay2_integration.py tests/core/test_video_tensor_regression.py::test_public_native_video_adapter_applies_defaults_only_for_none tests/runtime/test_geometry_regression_impact.py::test_public_matrix_has_complete_declarations_and_known_hy2_pathPYTHONPATH=/tmp/worldfoundry-helix-test-deps:. /mnt/dolphinfs/ssd_pool/docker/user/hadoop-nlp-hl02/hadoop-aipnlp/3A/multimodal/yangboxue/arena/conda/envs/ltx23/bin/python docs/fumadocs/scripts/generate-model-recipes.py --checkPYTHONPATH=/tmp/worldfoundry-helix-test-deps:. /mnt/dolphinfs/ssd_pool/docker/user/hadoop-nlp-hl02/hadoop-aipnlp/3A/multimodal/yangboxue/arena/conda/envs/ltx23/bin/python -m pytest -q tests/synthesis/test_worldplay2_upstream_parity.pyPATH=/tmp/worldatlas-ffmpeg-runtime/bin:$PATH PYTHONPATH=/tmp/worldfoundry-helix-test-deps:. /mnt/dolphinfs/ssd_pool/docker/user/hadoop-nlp-hl02/hadoop-aipnlp/3A/multimodal/yangboxue/arena/conda/envs/ltx23/bin/python -m pytest -q tests/eval_core/test_helixworld_integration.py::test_helixworld_exports_fhwc_float_video_with_audio/home/hadoop-aipnlp/.local/bin/ruff check worldfoundry/synthesis/visual_generation/worldplay2 worldfoundry/pipelines/worldplay2 worldfoundry/base_models/diffusion_model/models/autoencoders/wan/component.py worldfoundry/base_models/diffusion_model/models/initializers/wan/component.py worldfoundry/base_models/diffusion_model/models/networks/wan/model.py worldfoundry/base_models/diffusion_model/recipes/registry.py worldfoundry/base_models/diffusion_model/runners/strategies.py worldfoundry/pipelines/native_diffusion.py tests/synthesis/test_worldplay2.py tests/synthesis/test_worldplay2_compressor_pdd.py tests/synthesis/test_worldplay2_upstream_parity.py tests/eval_core/test_worldplay2_integration.py tests/pipelines/test_native_diffusion_runtime_policy.pygit diff --cached --checkThe CPU checks use Python 3.12, Torch 2.7.1 and Transformers 4.57.6. The committed reference fixture makes official parity tests independent of the upstream checkout.
The generated recipe data and pages also pass
generate-model-recipes.py --checkunder the dependency-light system Python 3.10 and the inference Python 3.12 environment.Checkpoint / API Key Needs
aejion/WorldPlay2-Fast,aejion/WorldPlay2-ARoraejion/WorldPlay2-BI, withWan-AI/Wan2.2-I2V-A14Bsupport assets.model_path; shared assets throughbase_model_path. Offline CPU tests require only the committed fixture.Sample Artifact Evidence
tests/fixtures/worldplay2/upstream_cpu.json, documented intests/fixtures/worldplay2/README.md.8.34e-7against the pinned official small graph.Validation Matrix Status
Leaderboard Validity Impact
native_small_graph_cpu_parity_validated_checkpoint_gpu_pending.leaderboard_validimpact: no benchmark score or validity promotion.pending.Compatibility And Risk
Limitations
Full-checkpoint CUDA generation and official full-size output parity remain pending. CPU parity uses a small FP32 transformer with deterministic text and codec fixtures.
WorldPlay2-TAE weights are unreleased; generation uses the shared Wan2.1 VAE.
WorldPlay2 code and weights use CC BY-NC 4.0. Wan support assets retain Apache-2.0 terms; attribution is included in
THIRD-PARTY-NOTICES.Repository CI is blocked by Kandinsky6 license consolidation, missing native replay recipes, and model-home-page source/locale metadata. The inference replay gate requires a configured pinned accepted reference index and successful checkpoint replay receipts for this exact commit.
Checklist
data/test_cases/or assets fromdata/benchmarks/where practical.