|
import gradio as gr |
|
|
|
from MultiModalTextbox_mods import MultimodalTextbox as mt_mod |
|
|
|
|
|
|
|
print(mt_mod.EVENTS) |
|
|
|
|
|
print(mt_mod.EVENTS) |
|
|
|
elem_id = "chat_input" |
|
js_script = f""" |
|
function() {{ |
|
const ta = document.querySelector(`#{elem_id} > label > textarea`); |
|
if (ta) {{ |
|
ta.addEventListener('keydown', (e) => {{ |
|
if (e.key === 'Enter' && !e.shiftKey) {{ |
|
e.preventDefault(); |
|
}} |
|
}}); |
|
}} |
|
}} |
|
""" |
|
with gr.Blocks() as demo: |
|
chatbot = gr.Chatbot(label="Chatbot") |
|
|
|
with gr.Row(): |
|
msg = mt_mod( |
|
submit_btn=True, |
|
elem_id=elem_id, |
|
) |
|
|
|
|
|
|
|
def respond(user_message, chat_history): |
|
|
|
return {"text": "Testing...", "files": []} |
|
|
|
def newline(msg): |
|
msg["text"] = msg.get("text", "") + "\n" |
|
return msg |
|
|
|
msg.submit(respond, inputs=msg, outputs=msg) |
|
|
|
|
|
if __name__ == "__main__": |
|
demo.launch() |