{"record":{"id":"848f0bd1d0d39989","repo":"Stability-AI/generative-models","slug":"unknown-merge-strategy-merge-strategy-848f0b","errorCode":null,"errorMessage":"unknown merge strategy {merge_strategy}","messagePattern":"unknown merge strategy (.+?)","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"sgm/modules/spacetime_attention.py","lineNumber":248,"sourceCode":"        time_embed_dim = self.in_channels * 4\n        self.time_mix_time_embed = nn.Sequential(\n            linear(self.in_channels, time_embed_dim),\n            nn.SiLU(),\n            linear(time_embed_dim, self.in_channels),\n        )\n\n        self.time_mix_legacy = time_mix_legacy\n        if self.time_mix_legacy:\n            if merge_strategy == \"fixed\":\n                self.register_buffer(\"mix_factor\", torch.Tensor([merge_factor]))\n            elif merge_strategy == \"learned\" or merge_strategy == \"learned_with_images\":\n                self.register_parameter(\n                    \"mix_factor\", torch.nn.Parameter(torch.Tensor([merge_factor]))\n                )\n            elif merge_strategy == \"fixed_with_images\":\n                self.mix_factor = None\n            else:\n                raise ValueError(f\"unknown merge strategy {merge_strategy}\")\n\n            self.get_alpha_fn = partial(\n                get_alpha,\n                merge_strategy,\n                self.mix_factor,\n                apply_sigmoid=apply_sigmoid_to_merge,\n                is_attn=True,\n            )\n        else:\n            self.time_mixer = AlphaBlender(\n                alpha=merge_factor, merge_strategy=merge_strategy\n            )\n\n    def forward(\n        self,\n        x: torch.Tensor,\n        context: Optional[torch.Tensor] = None,\n        # cam: Optional[torch.Tensor] = None,","sourceCodeStart":230,"sourceCodeEnd":266,"githubUrl":"https://github.com/Stability-AI/generative-models/blob/e8cd657656fa5d61688191730d0e03242bf4ed44/sgm/modules/spacetime_attention.py#L230-L266","documentation":"The factor/merge mechanism in spacetime_attention.py supports a fixed set of merge_strategy values (e.g. 'learned', 'fixed', 'fixed_with_images'); an unrecognized strategy raises ValueError(f\"unknown merge strategy {merge_strategy}\") during attention module construction.","triggerScenarios":"Passing merge_strategy set to any value outside the supported set ('learned', 'fixed', 'fixed_with_images'), e.g. 'learned_with_images', 'mean', null/None, or a missing param that defaults badly.","commonSituations":"Typos in the YAML config; reusing video_attention configs from a different repo version with extra strategies added; accidentally omitting merge_strategy so None flows through.","solutions":["Set merge_strategy to one of the supported strings ('learned', 'fixed', or 'fixed_with_images')","Check the class __init__ defaults around spacetime_attention.py:248 to see the accepted values","Fix the typo/whitespace in the config key value"],"exampleFix":"// before\nmerge_strategy: learnned\n// after\nmerge_strategy: learned","handlingStrategy":"validation","validationCode":"VALID_STRATEGIES = {'learned', 'fixed', 'fixed_with_images'}\nstrategy = attn_params.get('merge_strategy', 'learned')\nif strategy not in VALID_STRATEGIES:\n    raise ValueError(f\"merge_strategy must be one of {sorted(VALID_STRATEGIES)}, got {strategy!r}\")","typeGuard":null,"tryCatchPattern":"try:\n    model = load_model_from_config(cfg, ckpt)\nexcept ValueError as e:\n    if 'unknown merge strategy' in str(e):\n        cfg['params']['transformer_params']['merge_strategy'] = 'learned'\n        model = load_model_from_config(cfg, ckpt)\n    else:\n        raise","preventionTips":["Only use merge_strategy values copied from working sgm configs","Check the current source (spacetime_attention.py) for the supported set before inventing values","Beware None if the param is omitted — set an explicit default"],"tags":["python","value-error","merge-strategy","config"],"backgroundTag":"invalid-enum-value","analyzedSha":"e8cd657656fa5d61688191730d0e03242bf4ed44","analyzedAt":"2026-08-29T11:23:43.234Z","schemaVersion":2},"datasetVersion":"2026-08-29T12:17:43.993Z"}