import torch import gc import requests import json class Everything(str): def __ne__(self, __value: object) -> bool: return False class FreeVRAM: @classmethod def INPUT_TYPES(s): return {"required": {"anything": (Everything("*"),)}} RETURN_TYPES = (Everything("*"),) RETURN_NAME = ("anything",) FUNCTION = "free_vram" CATEGORY = "Bjornulf" def free_vram(self, anything): print("Attempting to free VRAM...") # Clear CUDA cache if torch.cuda.is_available(): torch.cuda.empty_cache() print("CUDA cache cleared.") # Run garbage collection collected = gc.collect() print(f"Garbage collector: collected {collected} objects.") # Trigger the HTTP request self.trigger_http_request() # Return the input image unchanged return (anything,) def trigger_http_request(self): url = "http://localhost:8188/prompt" headers = {"Content-Type": "application/json"} payload = { "prompt": { "3": { "inputs": {"text": "free VRAM hack"}, "class_type": "Bjornulf_WriteText", "_meta": {"title": "✒ Write Text"} }, "4": { "inputs": {"text_value": ["3", 0], "text": "free VRAM hack"}, "class_type": "Bjornulf_ShowText", "_meta": {"title": "👁 Show (Text)"} } } } try: response = requests.post(url, headers=headers, data=json.dumps(payload)) response.raise_for_status() print("HTTP request triggered successfully") except requests.exceptions.RequestException as e: print(f"Failed to trigger HTTP request: {e}")