code: def separate_audio(
      input: AudioSeparationInput,
  ) -> AudioSeparationOutput:
      """Separation of a music file to vocals (singing voice) and accompaniment.
  
      To try it out, you can use this example audio file: [audio_example.mp3](https://github.com/deezer/spleeter/raw/master/audio_example.mp3).
      """
  
      with NamedTemporaryFile(suffix=".mp3", mode="w+b") as audio_file:
          audio_file.write(input.audio_file.as_bytes())
          audio_file.seek(0)
          with TemporaryDirectory() as tmp_dir:
              subprocess.run(
                  sys.executable
                  + ' -m spleeter separate -p spleeter:2stems --filename_format "{instrument}.{codec}" -o '
                  + f"{tmp_dir} {audio_file.name}",
                  shell=True,
              )
  
              vocals_file = None
  
              with open(os.path.join(tmp_dir, "vocals.wav"), "rb") as f:
                  vocals_file = f.read()
  
              accompaniment_file = None
              with open(
                  os.path.join(tmp_dir, "accompaniment.wav"), "rb"
              ) as f:
                  accompaniment_file = f.read()
  
              return AudioSeparationOutput(
                  vocals_file=vocals_file,
                  accompaniment_file=accompaniment_file,
              )
  
file_path: opyrator/examples/separate_audio/app.py
imports: import os
  import subprocess
  import sys
  from tempfile import NamedTemporaryFile, TemporaryDirectory
  from pydantic import BaseModel, Field
  from opyrator.components.types import FileContent
label_desc: Use image node_id 1 for calling a global function with example usage: separate_audio(input) and returns: AudioSeparationOutput