Spaces:
No application file
No application file
import gradio as gr | |
import random | |
import string | |
import requests | |
def get_random_string(length=6): | |
letters = string.ascii_lowercase | |
result_str = "".join(random.choice(letters) for i in range(length)) | |
return result_str | |
def get_answer(question): | |
try: | |
answer = requests.get( | |
"http://127.0.0.1:8000/api/", | |
json={"question": question}, | |
) | |
except Exception as err: | |
return f"Sorry there was a problem with {err}, please check your connection and try again." | |
if answer.status_code == 200: | |
return answer.json()["answer"] | |
return "Sorry, We have a problem with our server" | |
def predict(input, history=[]): | |
answer = get_answer(input) | |
history.append((input, answer)) | |
response = history | |
return response, history | |
with gr.Blocks() as demo: | |
chatbot = gr.Chatbot() | |
state = gr.State([]) | |
with gr.Row(): | |
txt = gr.Textbox( | |
show_label=False, placeholder="Enter text and press enter" | |
).style(container=False) | |
txt.submit(predict, [txt, state], [chatbot, state]) | |
demo.launch() | |