


'''simple docstring'''






# Copyright 2023 The HuggingFace Inc. team. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
from ..models.whisper import WhisperForConditionalGeneration, WhisperProcessor
from .base import PipelineTool






class   __snake_case			(  _SCREAMING_SNAKE_CASE):







    """simple docstring"""



    lowercase  					=   'openai/whisper-base'
    lowercase  					=   (
        'This is a tool that transcribes an audio into text. It takes an input named `audio` and returns the '
        'transcribed text.'
    )
    lowercase  					=   'transcriber'
    lowercase  					=   WhisperProcessor
    lowercase  					=   WhisperForConditionalGeneration

    lowercase  					=   ['audio']
    lowercase  					=   ['text']

    def __lowercase  (  self       :    Optional[Any]       ,		lowerCamelCase       :    Union[str, Any]						)  ->    List[Any]:
      return self.pre_processor(lowerCamelCase       ,		return_tensors="""pt"""						).input_features

    def __lowercase  (  self       :    List[Any]       ,		lowerCamelCase       :    Optional[int]						)  ->    Any:
      return self.model.generate(inputs=lowerCamelCase						)





    def __lowercase  (  self       :    int       ,		lowerCamelCase       :    str						)  ->    List[str]:
      return self.pre_processor.batch_decode(lowerCamelCase       ,		skip_special_tokens=lowerCamelCase						)[0]







'''simple docstring'''






from ...utils import is_torch_available, is_transformers_available


if is_transformers_available() and is_torch_available():
  from .pipeline_vq_diffusion import LearnedClassifierFreeSamplingEmbeddings, VQDiffusionPipeline



