File size: 1,881 Bytes
b47a1ce
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# DeMemWM

This repo is forked from [Boyuan Chen](https://boyuan.space/)'s research template [repo](https://github.com/buoyancy99/research-template). By its MIT license, you must keep this sentence in `README.md` and the `LICENSE` file to credit the author.

DeMemWM is a Memory-DiT video prediction project built on the local research template. The primary algorithm entry point is `DeMemWMMinecraft`, registered through the Hydra algorithm config `dememwm_memory_dit`.

## Quick Start

```bash
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python -m pytest tests
```

Run a local offline experiment after setting the dataset path in `configurations/dataset/video_minecraft.yaml`:

```bash
python main.py +name=dememwm_debug algorithm=dememwm_memory_dit wandb.mode=offline
```

Use `resume_ckpt_path=/path/to/checkpoint.ckpt` for deterministic checkpoint resume, or keep `auto_resume=true` to resume from `output_dir/checkpoints` when available.

## Layout

- `algorithms/worldmem/dememwm/`: DeMemWM memory construction, retrieval, scheduling, diagnostics, and injection code.
- `algorithms/worldmem/dememwm_memory_dit.py`: primary DeMemWM algorithm class.
- `configurations/algorithm/dememwm_memory_dit.yaml`: consumed DeMemWM training and evaluation contract.
- `scripts/`: Slurm and inspection scripts using the DeMemWM naming.
- `tests/`: static and unit coverage for DeMemWM config, retrieval, compression, schedules, and training behavior.

## Reproducibility Notes

- Keep `wandb.mode=offline` for local reproducible runs that do not depend on network access.
- Set `seed=<int>` on the command line to seed Lightning and dataloader workers.
- Runtime artifacts such as `outputs/`, `slurm_logs/`, Python caches, checkpoints, and local datasets are ignored by git.
- The default Hydra training config selects `algorithm: dememwm_memory_dit`.