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, | |
| # ) | |