Spaces:
Runtime error
Runtime error
import time | |
import random | |
import gradio as gr | |
# from transformers import pipeline | |
# p = pipeline("automatic-speech-recognition") | |
def user(user_message, history): | |
return "", history + [[user_message, None]] | |
# def transcribe(audio, state=""): | |
# text = p(audio)["text"] | |
# state += text + " " | |
# return state, state | |
def bot(history): | |
bot_message = random.choice(["How are you?", "I love you", "I'm very hungry"]) | |
history[-1][1] = "" | |
for character in bot_message: | |
history[-1][1] += character | |
time.sleep(0.05) | |
yield history | |
css = """ | |
.gradio-container { | |
font-family: 'IBM Plex Sans', sans-serif; | |
} | |
.gr-button { | |
color: white; | |
border-color: black; | |
background: black; | |
} | |
.container { | |
max-width: 730px; | |
margin: auto; | |
padding-top: 1.5rem; | |
} | |
#chatbot { | |
min-height: 30rem; | |
margin: auto; | |
} | |
""" | |
with gr.Blocks(css=css) as demo: | |
# gr.HTML( | |
# """ | |
# <div style="text-align: center; margin: 0 auto;"> | |
# <div | |
# style=" | |
# display: inline-flex; | |
# align-items: center; | |
# gap: 0.8rem; | |
# font-size: 1.75rem; | |
# " | |
# > | |
# <svg | |
# width="0.65em" | |
# height="0.65em" | |
# viewBox="0 0 115 115" | |
# fill="none" | |
# xmlns="http://www.w3.org/2000/svg" | |
# > | |
# <rect width="23" height="23" fill="white"></rect> | |
# <rect y="69" width="23" height="23" fill="white"></rect> | |
# <rect x="23" width="23" height="23" fill="#AEAEAE"></rect> | |
# <rect x="23" y="69" width="23" height="23" fill="#AEAEAE"></rect> | |
# <rect x="46" width="23" height="23" fill="white"></rect> | |
# <rect x="46" y="69" width="23" height="23" fill="white"></rect> | |
# <rect x="69" width="23" height="23" fill="black"></rect> | |
# <rect x="69" y="69" width="23" height="23" fill="black"></rect> | |
# <rect x="92" width="23" height="23" fill="#D9D9D9"></rect> | |
# <rect x="92" y="69" width="23" height="23" fill="#AEAEAE"></rect> | |
# <rect x="115" y="46" width="23" height="23" fill="white"></rect> | |
# <rect x="115" y="115" width="23" height="23" fill="white"></rect> | |
# <rect x="115" y="69" width="23" height="23" fill="#D9D9D9"></rect> | |
# <rect x="92" y="46" width="23" height="23" fill="#AEAEAE"></rect> | |
# <rect x="92" y="115" width="23" height="23" fill="#AEAEAE"></rect> | |
# <rect x="92" y="69" width="23" height="23" fill="white"></rect> | |
# <rect x="69" y="46" width="23" height="23" fill="white"></rect> | |
# <rect x="69" y="115" width="23" height="23" fill="white"></rect> | |
# <rect x="69" y="69" width="23" height="23" fill="#D9D9D9"></rect> | |
# <rect x="46" y="46" width="23" height="23" fill="black"></rect> | |
# <rect x="46" y="115" width="23" height="23" fill="black"></rect> | |
# <rect x="46" y="69" width="23" height="23" fill="black"></rect> | |
# <rect x="23" y="46" width="23" height="23" fill="#D9D9D9"></rect> | |
# <rect x="23" y="115" width="23" height="23" fill="#AEAEAE"></rect> | |
# <rect x="23" y="69" width="23" height="23" fill="black"></rect> | |
# </svg> | |
# <h1 style="font-weight: 900; margin-bottom: 7px;margin-top:5px"> | |
# Stable Diffusion 2.1 Demo | |
# </h1> | |
# </div> | |
# <p style="margin-bottom: 10px; font-size: 94%; line-height: 23px;"> | |
# Stable Diffusion 2.1 is the latest text-to-image model from StabilityAI. <a style="text-decoration: underline;" href="https://huggingface.co/spaces/stabilityai/stable-diffusion-1">Access Stable Diffusion 1 Space here</a><br>For faster generation and API | |
# access you can try | |
# <a | |
# href="http://beta.dreamstudio.ai/" | |
# style="text-decoration: underline;" | |
# target="_blank" | |
# >DreamStudio Beta</a | |
# >.</a> | |
# </p> | |
# </div> | |
# """ | |
# ) | |
with gr.Box(): | |
# chatbot = gr.Chatbot() | |
# msg = gr.Textbox() | |
chatbot = gr.Chatbot([], show_label=False, elem_id="chatbot").style(height="auto") | |
# with gr.Row(): | |
with gr.Row(elem_id="prompt-container").style(mobile_collapse=False, equal_height=True): | |
with gr.Column(scale=0.85): | |
txt = gr.Textbox( | |
show_label=False, | |
placeholder="Type your response and press enter, or record your response", | |
).style(container=False) | |
with gr.Column(scale=0.15, min_width=0): | |
submit = gr.Button("Submit") | |
# gr.Interface( | |
# fn=transcribe, | |
# inputs=[ | |
# gr.Audio(source="microphone", type="filepath", streaming=True), | |
# "state" | |
# ], | |
# outputs=[ | |
# msg, | |
# "state" | |
# ], | |
# live=True) | |
txt.submit(user, [txt, chatbot], [txt, chatbot], queue=False).then( | |
bot, chatbot, chatbot | |
) | |
submit.click(user, [txt, chatbot], [txt, chatbot], queue=False).then( | |
bot, chatbot, chatbot | |
) | |
demo.queue() | |
demo.launch() | |