|
from gradio_client import Client |
|
from hugchat import hugchat |
|
from hugchat.login import Login |
|
from gtts import gTTS |
|
import json |
|
import gradio as gr |
|
|
|
client = Client("https://sanchit-gandhi-whisper-large-v2.hf.space/") |
|
|
|
|
|
|
|
chat_client = Client("https://huggingfaceh4-falcon-chat.hf.space/") |
|
|
|
|
|
retrieval = Client("https://warlord-k-iiti-similarity.hf.space/") |
|
|
|
n_conv = 0 |
|
|
|
init_prompt ="" |
|
info="Information: \n" |
|
q_prompt="\n ##Instruction: Please provide an appropriate response to the following: \n" |
|
|
|
|
|
def change_conv(): |
|
|
|
id = chatbot.new_conversation() |
|
chatbot.change_conversation(id) |
|
chatbot.chat(init_prompt) |
|
chatbot.cookies = {} |
|
|
|
def answer_question(question): |
|
global n_conv |
|
|
|
|
|
|
|
information = retrieval.predict(question, api_name = "/predict") |
|
answer=chat_client.predict( |
|
"Howdy!", |
|
"abc.json", |
|
"You are an AI language model and must return truthful responses as per the information below\n ##Input: Information: Your name is IITIGPT. You are a helpful and truthful chatbot. You can help answer any questions about the IIT Indore campus." +information+question, |
|
0.8, |
|
0.9, |
|
fn_index=4 |
|
) |
|
|
|
|
|
n_conv+=1 |
|
print(answer) |
|
temp=json.load(open(answer)) |
|
print(temp) |
|
return temp |
|
|
|
def file_to_text(audio_fpath): |
|
|
|
result = client.predict( |
|
audio_fpath, |
|
"transcribe", |
|
api_name="/predict" |
|
) |
|
return result |
|
|
|
def text_file(text): |
|
tts = gTTS(text, lang = "en") |
|
tts.save("abc.mp3") |
|
return "abc.mp3" |
|
|
|
def main(filename): |
|
|
|
|
|
answer = answer_question("Can you tell me about IIT Indore, IITIGPT?") |
|
print(answer) |
|
output = text_file(answer) |
|
return output |
|
|
|
demo = gr.Interface(main, "audio", "audio") |
|
|
|
if __name__ == "__main__": |
|
demo.launch() |