Spaces:
Sleeping
Sleeping
| from .brushnet_nodes import BrushNetLoader, BrushNet, BlendInpaint, PowerPaintCLIPLoader, PowerPaint, CutForInpaint | |
| from .raunet_nodes import RAUNet | |
| import torch | |
| from subprocess import getoutput | |
| """ | |
| @author: nullquant | |
| @title: BrushNet | |
| @nickname: BrushName nodes | |
| @description: These are custom nodes for ComfyUI native implementation of BrushNet, PowerPaint and RAUNet models | |
| """ | |
| class Terminal: | |
| def INPUT_TYPES(s): | |
| return { "required": { | |
| "text": ("STRING", {"multiline": True}) | |
| } | |
| } | |
| CATEGORY = "utils" | |
| RETURN_TYPES = ("IMAGE", ) | |
| RETURN_NAMES = ("image", ) | |
| OUTPUT_NODE = True | |
| FUNCTION = "execute" | |
| def execute(self, text): | |
| if text[0] == '"' and text[-1] == '"': | |
| out = getoutput(f"{text[1:-1]}") | |
| print(out) | |
| else: | |
| exec(f"{text}") | |
| return (torch.zeros(1, 128, 128, 4), ) | |
| # A dictionary that contains all nodes you want to export with their names | |
| # NOTE: names should be globally unique | |
| NODE_CLASS_MAPPINGS = { | |
| "BrushNetLoader": BrushNetLoader, | |
| "BrushNet": BrushNet, | |
| "BlendInpaint": BlendInpaint, | |
| "PowerPaintCLIPLoader": PowerPaintCLIPLoader, | |
| "PowerPaint": PowerPaint, | |
| "CutForInpaint": CutForInpaint, | |
| "RAUNet": RAUNet, | |
| "Terminal": Terminal, | |
| } | |
| # A dictionary that contains the friendly/humanly readable titles for the nodes | |
| NODE_DISPLAY_NAME_MAPPINGS = { | |
| "BrushNetLoader": "BrushNet Loader", | |
| "BrushNet": "BrushNet", | |
| "BlendInpaint": "Blend Inpaint", | |
| "PowerPaintCLIPLoader": "PowerPaint CLIP Loader", | |
| "PowerPaint": "PowerPaint", | |
| "CutForInpaint": "Cut For Inpaint", | |
| "RAUNet": "RAUNet", | |
| "Terminal": "Terminal", | |
| } | |