

"""simple docstring"""





from argparse import ArgumentParser

from .env import EnvironmentCommand




def   _A  (  )     ->						int:
   '''simple docstring'''


   __lowercase								=						ArgumentParser("Diffusers CLI tool",      usage="diffusers-cli <command> [<args>]")
   __lowercase								=						parser.add_subparsers(help="diffusers-cli command helpers")

   # Register commands
   EnvironmentCommand.register_subcommand(UpperCamelCase_)

   # Let's go
   __lowercase								=						parser.parse_args()

   if not hasattr(UpperCamelCase_,      "func"):
      parser.print_help()
      exit(1)

   # Run
   __lowercase								=						args.func(UpperCamelCase_)
   service.run()


if __name__ == "__main__":
   main()







"""simple docstring"""





from ...utils import is_note_seq_available, is_transformers_available, is_torch_available
from ...utils import OptionalDependencyNotAvailable


try:
   if not (is_transformers_available() and is_torch_available()):
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   from ...utils.dummy_torch_and_transformers_objects import *  # noqa F403
else:
   from .notes_encoder import SpectrogramNotesEncoder
   from .continous_encoder import SpectrogramContEncoder
   from .pipeline_spectrogram_diffusion import (
       SpectrogramContEncoder,
       SpectrogramDiffusionPipeline,
       TaFilmDecoder,
   )

try:
   if not (is_transformers_available() and is_torch_available() and is_note_seq_available()):
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   from ...utils.dummy_transformers_and_torch_and_note_seq_objects import *  # noqa F403
else:
   from .midi_utils import MidiProcessor




