transcriber-prompt / app_gradio.py
harshp8l's picture
Upload folder using huggingface_hub
9690d29
raw
history blame
1.37 kB
import whisper
import gradio as gr
import time
import google.generativeai as palm
palm.configure(api_key='AIzaSyCLy2IgNwMBDbhYH_zvUDo0AMWQdRLQI0E')
model = whisper.load_model("base")
print(model.device)
def transcribe(audio):
#time.sleep(3)
# load audio and pad/trim it to fit 30 seconds
audio = whisper.load_audio(audio)
audio = whisper.pad_or_trim(audio)
# make log-Mel spectrogram and move to the same device as the model
mel = whisper.log_mel_spectrogram(audio).to(model.device)
# # detect the spoken language
# _, probs = model.detect_language(mel)
# print(f"Detected language: {max(probs, key=probs.get)}")
# decode the audio
# options = whisper.DecodingOptions()
# for cpu
options = whisper.DecodingOptions(fp16=False)
result = whisper.decode(model, mel, options)
print(result.text)
completion = palm.generate_text(
model='models/text-bison-001',
prompt=result.text,
temperature=0,
# The maximum length of the response
max_output_tokens=500,
).result
return completion
gr.Interface(
title = 'Real-time AI-based Audio Transcription, Recognition, Answerer Web App',
fn=transcribe,
inputs=[
gr.inputs.Audio(source="microphone", type="filepath")
],
outputs=[
"textbox"
],
live=True).launch(share=True)