code: def make_image(
      prompt,
      filename=None,
      gpu_id="auto",
      pipe=None,
      guidance_scale=3.0,
  ):
      if pipe is None:
          pipe = get_pipe_make_image(gpu_id=gpu_id)
  
      lock_type = "image"
      base_path = os.path.join("locks", "image_locks")
      base_path = makedirs(
          base_path, exist_ok=True, tmp_ok=True, use_base=True
      )
      lock_file = os.path.join(base_path, "%s.lock" % lock_type)
      makedirs(os.path.dirname(lock_file))  # ensure made
      with filelock.FileLock(lock_file):
          image = pipe(
              prompt=prompt, guidance_scale=guidance_scale
          ).images[0]
      if filename:
          image.save(filename)
          return filename
      return image
  
imports: import os
  import filelock
  from diffusers import DiffusionPipeline
  import torch
  from src.utils import makedirs
  from src.vision.sdxl import get_device
label_desc: Use image node_id 2 for calling a global function with example usage: make_image(prompt, filename, gpu_id, pipe, guidance_scale) and returns: image, filename