"""star_inspect_model_v2.py — dump full module tree for blocks.0""" import torch class StarInspectModelV2: @classmethod def INPUT_TYPES(s): return {"required": {"model": ("MODEL",)}} RETURN_TYPES = ("MODEL",) FUNCTION = "inspect" CATEGORY = "⭐StarNodes/Model Tools" def inspect(self, model): real_model = model.model target = real_model.diffusion_model if hasattr(real_model, "diffusion_model") else real_model print("=" * 70) print("FULL TREE for blocks.0 (and top-level non-block modules):") print("=" * 70) for name, module in target.named_modules(): cls = type(module).__name__ if name.startswith("blocks.0.") or name == "blocks.0" or "blocks" not in name: params = [f"{pn}:{tuple(p.shape)}" for pn, p in module.named_parameters(recurse=False)] print(f"name={name!r} class={cls} params={params}") print("=" * 70) print("ALL PARAMETER NAMES under blocks.0 (raw state_dict style):") for pname, p in target.named_parameters(): if pname.startswith("blocks.0."): print(f" {pname} shape={tuple(p.shape)} dtype={p.dtype}") print("=" * 70) return (model,) NODE_CLASS_MAPPINGS = {"StarInspectModelV2": StarInspectModelV2} NODE_DISPLAY_NAME_MAPPINGS = {"StarInspectModelV2": "⭐ Star Inspect Model V2"}