code: 
  
  
  
  
  """simple docstring"""
  
  import warnings
  from contextlib import contextmanager
  
  from ...processing_utils import ProcessorMixin
  class 			lowerCamelCase__    (  lowerCamelCase_			):
  			a__ :      Optional[int]								=     "AutoFeatureExtractor"
  			a__ :      int								=     "Speech2Text2Tokenizer"
  
  
  			def __init__(     self				, SCREAMING_SNAKE_CASE				, SCREAMING_SNAKE_CASE							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					super().__init__(UpperCAmelCase_				, UpperCAmelCase_							)
  					snake_case		:						Union[str, Any]								=				self.feature_extractor
  					snake_case		:						int								=				False
  
  
  			def __call__(     self				, *SCREAMING_SNAKE_CASE				, **SCREAMING_SNAKE_CASE							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					if self._in_target_context_manager:
  							return self.current_processor(*UpperCAmelCase_				, **UpperCAmelCase_							)
  
  					if "raw_speech" in kwargs:
  							warnings.warn("Using `raw_speech` as a keyword argument is deprecated. Use `audio` instead."							)
  							snake_case		:						List[Any]								=				kwargs.pop("raw_speech"							)
  					else:
  							snake_case		:						Tuple								=				kwargs.pop("audio"				, UpperCAmelCase_							)
  					snake_case		:						Any								=				kwargs.pop("sampling_rate"				, UpperCAmelCase_							)
  					snake_case		:						Any								=				kwargs.pop("text"				, UpperCAmelCase_							)
  					if len(UpperCAmelCase_							) > 0:
  							snake_case		:						Union[str, Any]								=				args[0]
  							snake_case		:						List[str]								=				args[1:]
  
  					if audio is None and text is None:
  							raise ValueError("You need to specify either an `audio` or `text` input to process."							)
  
  					if audio is not None:
  							snake_case		:						Optional[int]								=				self.feature_extractor(UpperCAmelCase_				, *UpperCAmelCase_				, sampling_rate=UpperCAmelCase_				, **UpperCAmelCase_							)
  					if text is not None:
  							snake_case		:						str								=				self.tokenizer(UpperCAmelCase_				, **UpperCAmelCase_							)
  
  					if text is None:
  							return inputs
  					elif audio is None:
  							return encodings
  					else:
  							snake_case		:						Optional[Any]								=				encodings['input_ids']
  							return inputs
  
  
  			def 							lowerCamelCase_				(     self				, *SCREAMING_SNAKE_CASE				, **SCREAMING_SNAKE_CASE							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					return self.tokenizer.batch_decode(*UpperCAmelCase_				, **UpperCAmelCase_							)
  
  
  			def 							lowerCamelCase_				(     self				, *SCREAMING_SNAKE_CASE				, **SCREAMING_SNAKE_CASE							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					return self.tokenizer.decode(*UpperCAmelCase_				, **UpperCAmelCase_							)
  
  
  
  			@contextmanager
  			def 							lowerCamelCase_				(     self							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					warnings.warn(
  					    "`as_target_processor` is deprecated and will be removed in v5 of Transformers. You can process your "
  					    "labels by using the argument `text` of the regular `__call__` method (either in the same call as "
  					    "your audio inputs, or in a separate call."							)
  					snake_case		:						List[str]								=				True
  					snake_case		:						Dict								=				self.tokenizer
  					yield
  					snake_case		:						Optional[int]								=				self.feature_extractor
  					snake_case		:						Dict								=				False
  
  
  
  
style_context: 
  
  
  
  
  """simple docstring"""
  
  import unittest
  
  import numpy as np
  import PIL
  import torch
  
  from diffusers.image_processor import VaeImageProcessor
  class 			lowerCamelCase__    (  unittest.TestCase			):
  
  
  			@property
  			def 							lowerCamelCase_				(     self							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					snake_case		:						int								=				1
  					snake_case		:						Dict								=				3
  					snake_case		:						int								=				8
  					snake_case		:						int								=				8
  
  					snake_case		:						List[str]								=				torch.rand((batch_size, num_channels, height, width)							)
  
  					return sample
  
  
  			def 							lowerCamelCase_				(     self				, SCREAMING_SNAKE_CASE							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					if isinstance(image[0]				, PIL.Image.Image							):
  							return np.stack([np.array(SCREAMING_SNAKE_CASE							) for i in image]				, axis=0							)
  					elif isinstance(SCREAMING_SNAKE_CASE				, torch.Tensor							):
  							return image.cpu().numpy().transpose(0				, 2				, 3				, 1							)
  					return image
  
  
  			def 							lowerCamelCase_				(     self							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					snake_case		:						Optional[int]								=				VaeImageProcessor(do_resize=SCREAMING_SNAKE_CASE				, do_normalize=SCREAMING_SNAKE_CASE							)
  
  					snake_case		:						Any								=				self.dummy_sample
  					snake_case		:						Optional[Any]								=				self.to_np(SCREAMING_SNAKE_CASE							)
  
  					for output_type in ["pt", "np", "pil"]:
  							snake_case		:						Optional[Any]								=				image_processor.postprocess(
  							    image_processor.preprocess(SCREAMING_SNAKE_CASE							)				, output_type=SCREAMING_SNAKE_CASE				, )
  							snake_case		:						Optional[Any]								=				self.to_np(SCREAMING_SNAKE_CASE							)
  							snake_case		:						Any								=				(input_np * 255).round() if output_type == "pil" else input_np
  							assert (
  							    np.abs(in_np - out_np							).max() < 1E-6
  							), F'''decoded output does not match input for output_type {output_type}'''
  
  
  			def 							lowerCamelCase_				(     self							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					snake_case		:						Dict								=				VaeImageProcessor(do_resize=SCREAMING_SNAKE_CASE				, do_normalize=SCREAMING_SNAKE_CASE							)
  					snake_case		:						Tuple								=				self.dummy_sample.cpu().numpy().transpose(0				, 2				, 3				, 1							)
  
  					for output_type in ["pt", "np", "pil"]:
  							snake_case		:						Dict								=				image_processor.postprocess(image_processor.preprocess(SCREAMING_SNAKE_CASE							)				, output_type=SCREAMING_SNAKE_CASE							)
  
  							snake_case		:						Union[str, Any]								=				self.to_np(SCREAMING_SNAKE_CASE							)
  							snake_case		:						Tuple								=				(input_np * 255).round() if output_type == "pil" else input_np
  							assert (
  							    np.abs(in_np - out_np							).max() < 1E-6
  							), F'''decoded output does not match input for output_type {output_type}'''
  
  
  			def 							lowerCamelCase_				(     self							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					snake_case		:						Optional[Any]								=				VaeImageProcessor(do_resize=SCREAMING_SNAKE_CASE				, do_normalize=SCREAMING_SNAKE_CASE							)
  
  					snake_case		:						str								=				self.dummy_sample.cpu().numpy().transpose(0				, 2				, 3				, 1							)
  					snake_case		:						int								=				image_processor.numpy_to_pil(SCREAMING_SNAKE_CASE							)
  
  					for output_type in ["pt", "np", "pil"]:
  							snake_case		:						Dict								=				image_processor.postprocess(image_processor.preprocess(SCREAMING_SNAKE_CASE							)				, output_type=SCREAMING_SNAKE_CASE							)
  							for i, o in zip(SCREAMING_SNAKE_CASE				, SCREAMING_SNAKE_CASE							):
  									snake_case		:						Dict								=				np.array(SCREAMING_SNAKE_CASE							)
  									snake_case		:						Tuple								=				self.to_np(SCREAMING_SNAKE_CASE							) if output_type == "pil" else (self.to_np(SCREAMING_SNAKE_CASE							) * 255).round()
  									assert (
  									    np.abs(in_np - out_np							).max() < 1E-6
  									), F'''decoded output does not match input for output_type {output_type}'''
  
  
  			def 							lowerCamelCase_				(     self							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					snake_case		:						Tuple								=				VaeImageProcessor(do_resize=SCREAMING_SNAKE_CASE				, do_normalize=SCREAMING_SNAKE_CASE							)
  
  					snake_case		:						List[str]								=				self.dummy_sample
  					snake_case		:						Optional[int]								=				input_pt_ad.squeeze(0							)
  
  					snake_case		:						Any								=				image_processor.postprocess(
  					    image_processor.preprocess(SCREAMING_SNAKE_CASE							)				, output_type="np"				, )
  					snake_case		:						Union[str, Any]								=				image_processor.postprocess(
  					    image_processor.preprocess(SCREAMING_SNAKE_CASE							)				, output_type="np"				, )
  
  					snake_case		:						Union[str, Any]								=				self.to_np(self.dummy_sample							)
  					snake_case		:						Tuple								=				input_np_ad.squeeze(0							)
  
  					snake_case		:						str								=				image_processor.postprocess(
  					    image_processor.preprocess(SCREAMING_SNAKE_CASE							)				, output_type="np"				, )
  					snake_case		:						Union[str, Any]								=				image_processor.postprocess(
  					    image_processor.preprocess(SCREAMING_SNAKE_CASE							)				, output_type="np"				, )
  
  					assert np.abs(out_pt_ad - out_pt_ad							).max() < 1E-6
  					assert np.abs(out_np_ad - out_np_ad							).max() < 1E-6
  
  
  
  			def 							lowerCamelCase_				(     self							):
  
  
  
  					"""simple docstring"""
  
  
  
  
  
  
  
  					snake_case		:						Optional[Any]								=				VaeImageProcessor(do_resize=SCREAMING_SNAKE_CASE				, do_normalize=SCREAMING_SNAKE_CASE							)
  
  					snake_case		:						Union[str, Any]								=				self.dummy_sample
  					snake_case		:						List[str]								=				list(SCREAMING_SNAKE_CASE							)
  
  					snake_case		:						str								=				image_processor.postprocess(
  					    image_processor.preprocess(SCREAMING_SNAKE_CASE							)				, output_type="np"				, )
  
  					snake_case		:						Any								=				image_processor.postprocess(
  					    image_processor.preprocess(SCREAMING_SNAKE_CASE							)				, output_type="np"				, )
  
  					snake_case		:						Dict								=				self.to_np(self.dummy_sample							)
  					list(SCREAMING_SNAKE_CASE							)
  
  					snake_case		:						str								=				image_processor.postprocess(
  					    image_processor.preprocess(SCREAMING_SNAKE_CASE							)				, output_type="np"				, )
  
  					snake_case		:						Union[str, Any]								=				image_processor.postprocess(
  					    image_processor.preprocess(SCREAMING_SNAKE_CASE							)				, output_type="np"				, )
  
  					assert np.abs(out_pt_ad - out_pt_list							).max() < 1E-6
  					assert np.abs(out_np_ad - out_np_list							).max() < 1E-6
  
  