genie_world_model(pretrained: bool = False, overrides: object = {})Construct the Platformers Genie as a playable environment.
Model Size
Parameters
pretrainedbool= FalseNo weights were released;
True raises.**overridesobject= {}Optional
GenieConfig field overrides.Returns
GenieForWorldModelingThe networks, plus MaskGIT decoding and the rollout that plays them from a prompt frame and latent actions.
Notes
Reference: Bruce et al., arXiv:2402.15391, Section 2.2 for playing the model and Section 3 for its sampling: 25 MaskGIT steps per frame at temperature 2.
Examples
>>> import lucid
>>> from lucid.models import genie_world_model
>>> model = genie_world_model(
... sample_size=(8, 8), num_frames=4, num_codes=16, code_dim=4,
... tokenizer_encoder_layers=1, tokenizer_encoder_dim=16,
... tokenizer_encoder_heads=2, tokenizer_encoder_head_dim=8,
... tokenizer_decoder_layers=1, tokenizer_decoder_dim=16,
... tokenizer_decoder_heads=2, tokenizer_decoder_head_dim=8,
... action_patch_size=4, action_dim=4,
... action_encoder_layers=1, action_encoder_dim=16, action_encoder_heads=2,
... action_decoder_layers=1, action_decoder_dim=16, action_decoder_heads=2,
... dynamics_layers=1, dynamics_dim=16, dynamics_heads=2,
... dynamics_head_dim=8, maskgit_steps=2).eval()
>>> out = model(lucid.rand(1, 1, 3, 8, 8), lucid.tensor([[3, 1]], dtype=lucid.int64))
>>> out.frames.shape
(1, 2, 3, 8, 8)