Spaces:
Runtime error
Runtime error
import time | |
import gradio as gr | |
from random import uniform | |
from state_handler import state_handler | |
# with gr.Blocks(css=".gradio-container {text-align: right;}") as demo: | |
with gr.Blocks() as demo: | |
chatbot = gr.Chatbot() | |
msg = gr.Textbox() | |
clear = gr.ClearButton([msg, chatbot]) | |
user_state = gr.State(value=None) | |
user_info = gr.State(value=None) | |
gathered_info = gr.State(value=None) | |
def user(user_message, history): | |
return gr.update(value=user_message, interactive=True), history + [[user_message, None]] | |
def respond(message, chat_history, user_state, user_info,gathered_info): | |
# user_state, bot_message, user_info = state_handler(user_state, message, user_info) | |
user_state,user_info,gathered_info = state_handler(message,user_state, user_info,gathered_info) | |
bot_message = user_info | |
time_sleep = uniform(0.004, 0.005) if len(bot_message) < 80 else uniform(0.005, 0.006) | |
chat_history[-1][1] = "" | |
for character in bot_message: | |
chat_history[-1][1] += character | |
time.sleep(time_sleep) | |
yield "", chat_history, user_state, user_info, gathered_info | |
msg.submit( | |
user, | |
[msg, chatbot], | |
[msg, chatbot] | |
).then( | |
respond, | |
[msg, chatbot, user_state, user_info, gathered_info], | |
[msg, chatbot, user_state, user_info, gathered_info] | |
).then( | |
lambda: gr.update(interactive=True), | |
None, | |
[msg], | |
queue=False | |
) | |
demo.queue() | |
# demo.launch() # | |
demo.launch() # | |
# demo.launch(server_name='0.0.0.0', server_port=8555,share=True) # | |
# import gradio as gr | |
# import requests | |
# import json | |
# with gr.Blocks(css=".gradio-container {text-align: right;}") as demo: | |
# chatbot = gr.Chatbot() | |
# msg = gr.Textbox() | |
# clear = gr.ClearButton([msg, chatbot]) | |
# user_state = gr.State(value=0) | |
# def send_request(msg): | |
# url = "http://localhost:5005/webhooks/rest/webhook" | |
# # url = "http://192.168.1.170:9901/webhooks/rest/webhook" | |
# payload = json.dumps({ | |
# "sender": "test_user", | |
# "message": msg, | |
# "platform_type": "telegram", | |
# "metadata": {} | |
# }) | |
# headers = { | |
# 'Content-Type': 'application/json' | |
# } | |
# return requests.request("POST", url, headers=headers, data=payload) | |
# def respond(message, chat_history): | |
# responses = send_request(message) | |
# if responses.status_code != 200: | |
# return "خطا در اتصال" | |
# responses = responses.json() | |
# bot_message = "\n\n".join([response['text'] for response in responses]) | |
# # for response in responses: | |
# # bot_message = response['text'] | |
# chat_history.append((message, bot_message)) | |
# return "", chat_history | |
# msg.submit(respond, [msg, chatbot], [msg, chatbot]) | |
# demo.launch( | |
# server_name="0.0.0.0", | |
# server_port=8000, | |
# ) | |