




UpperCAmelCase_									=	{
    "km/h": 1.0,
    "m/s": 3.6,
    "mph": 1.60_9344,
    "knot": 1.852,
}

UpperCAmelCase_									=	{
    "km/h": 1.0,
    "m/s": 0.2_7777_7778,
    "mph": 0.6_2137_1192,
    "knot": 0.5_3995_6803,
}




def 					lowerCamelCase__       (						A__       :					float  ,			A__       :					str  ,			A__       :					str	):





       '''simple docstring'''



       if unit_to not in speed_chart or unit_from not in speed_chart_inverse:
              __lowerCamelCase   =						(
                  f'Incorrect \'from_type\' or \'to_type\' value: {unit_from!r}, {unit_to!r}\n'
                  f'Valid values are: {", ".join(A__	)}'
              )
              raise ValueError(A__	)
       return round(speed * speed_chart[unit_from] * speed_chart_inverse[unit_to]  ,			3	)


if __name__ == "__main__":
       import doctest

       doctest.testmod()





# 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 	UpperCAmelCase_					(					UpperCamelCase    ):

   '''simple docstring'''




   __A :      Dict     		=		"openai/whisper-base"
   __A :      str     		=		(
       "This is a tool that transcribes an audio into text. It takes an input named `audio` and returns the "
       "transcribed text."
   )
   __A :      Any     		=		"transcriber"
   __A :      Any     		=		WhisperProcessor
   __A :      int     		=		WhisperForConditionalGeneration

   __A :      Any     		=		["audio"]
   __A :      List[str]     		=		["text"]






   def _snake_case    (		self						,				__A ):






     """simple docstring"""





     return self.pre_processor(__A						,				return_tensors="pt" ).input_features






   def _snake_case    (		self						,				__A ):






     """simple docstring"""





     return self.model.generate(inputs=__A )






   def _snake_case    (		self						,				__A ):






     """simple docstring"""





     return self.pre_processor.batch_decode(__A						,				skip_special_tokens=__A )[0]



