BonanDing commited on
Commit
09306ff
·
1 Parent(s): 9277e51

Reject unimplemented WorldMem memory backend

Browse files
datasets/video/memory_selection.py CHANGED
@@ -400,7 +400,17 @@ def select_memory_indices(poses, target_positions, cfg=None, split: str = "train
400
  }
401
  indices, masks = _empty_selection(counts)
402
 
403
- if not bool(cfg_get(cfg, "enabled", True)) or len(target_positions) == 0:
 
 
 
 
 
 
 
 
 
 
404
  return indices, masks
405
 
406
  target_start = int(target_positions[0])
 
400
  }
401
  indices, masks = _empty_selection(counts)
402
 
403
+ enabled = bool(cfg_get(cfg, "enabled", True))
404
+ backend = cfg_get(cfg, "backend", "dememwm")
405
+ backend = "dememwm" if backend is None else str(backend).lower()
406
+ if enabled and backend != "dememwm":
407
+ if backend == "worldmem":
408
+ raise NotImplementedError(
409
+ "memory_selection.backend='worldmem' is not implemented for DeMemWM latent data"
410
+ )
411
+ raise ValueError(f"Unsupported memory_selection.backend='{backend}'")
412
+
413
+ if not enabled or len(target_positions) == 0:
414
  return indices, masks
415
 
416
  target_start = int(target_positions[0])
tests/test_dememwm_latent_dataset.py CHANGED
@@ -41,6 +41,13 @@ def _poses(num_frames):
41
 
42
 
43
  class MemorySelectionTests(unittest.TestCase):
 
 
 
 
 
 
 
44
  def test_revisit_uses_sampled_fov_selection(self):
45
  poses = np.array(
46
  [
 
41
 
42
 
43
  class MemorySelectionTests(unittest.TestCase):
44
+ def test_worldmem_backend_is_explicitly_rejected_until_implemented(self):
45
+ poses = _poses(8)
46
+ cfg = _selection_cfg(backend="worldmem")
47
+
48
+ with self.assertRaisesRegex(NotImplementedError, "worldmem"):
49
+ select_memory_indices(poses, np.array([4, 5]), cfg, split="validation")
50
+
51
  def test_revisit_uses_sampled_fov_selection(self):
52
  poses = np.array(
53
  [