code: def process_prompts(self, prompts):
      if not prompts:
          return []
      processed_prompts = []
      weights = []
      if isinstance(prompts, str):
          prompts = [prompt.strip() for prompt in prompts.split("|")]
      for prompt in prompts:
          if isinstance(prompt, (tuple, list)):
              processed_prompt = prompt[0]
              weight = float(prompt[1])
          elif ":" in prompt:
              processed_prompt, weight = prompt.split(":")
              weight = float(weight)
          else:
              processed_prompt = prompt
              weight = 1.0
          processed_prompts.append(processed_prompt)
          weights.append(weight)
      return {
          "prompts": processed_prompts,
          "weights": torch.tensor(weights, device=self.device),
      }
  
imports: import os
  from glob import glob
  import imageio
  import torch
  import torchvision
  import wandb
  from img_processing import custom_to_pil, loop_post_process, preprocess, preprocess_vqgan
  from loaders import load_vqgan
  from PIL import Image
  from torch import nn
  from transformers import CLIPModel, CLIPTokenizerFast
  from utils import get_device, get_timestamp, show_pil
label_desc: Use image node_id 9 for calling the VQGAN_CLIP obj's underlying member method code with example usage: obj.process_prompts(prompts) and returns: dict, list