Spaces:
Running
Running
Boris
commited on
Commit
·
43fbcaf
1
Parent(s):
ad061f4
fix4
Browse files
app.py
CHANGED
@@ -3,6 +3,7 @@ from langchain_core.messages import HumanMessage, AIMessage
|
|
3 |
from get_classification import get_graph_class
|
4 |
from datetime import datetime
|
5 |
|
|
|
6 |
messages = []
|
7 |
bot_instance = None
|
8 |
|
@@ -14,7 +15,7 @@ def find_last_bot_message(messages_list):
|
|
14 |
return None
|
15 |
|
16 |
def save_broken_case(messages_dict):
|
17 |
-
"""Сохраняет 'сломанные' кейсы
|
18 |
result_str = ""
|
19 |
for elem in messages_dict:
|
20 |
role = elem["role"]
|
@@ -66,28 +67,46 @@ def clear_chat():
|
|
66 |
bot_instance = None
|
67 |
return []
|
68 |
|
69 |
-
#
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
gr.Button("Clear", variant="stop")
|
76 |
-
],
|
77 |
-
examples=[
|
78 |
-
"Как настроить VPN?",
|
79 |
-
"Почему не работает принтер?",
|
80 |
-
"Как сбросить пароль?"
|
81 |
-
]
|
82 |
-
)
|
83 |
|
84 |
-
#
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
90 |
|
91 |
-
# Запускаем приложение
|
92 |
if __name__ == "__main__":
|
93 |
-
|
|
|
3 |
from get_classification import get_graph_class
|
4 |
from datetime import datetime
|
5 |
|
6 |
+
# Глобальные переменные состояния
|
7 |
messages = []
|
8 |
bot_instance = None
|
9 |
|
|
|
15 |
return None
|
16 |
|
17 |
def save_broken_case(messages_dict):
|
18 |
+
"""Сохраняет 'сломанные' кейсы"""
|
19 |
result_str = ""
|
20 |
for elem in messages_dict:
|
21 |
role = elem["role"]
|
|
|
67 |
bot_instance = None
|
68 |
return []
|
69 |
|
70 |
+
# Примеры в правильном формате (список строк)
|
71 |
+
examples = [
|
72 |
+
"Как настроить VPN?",
|
73 |
+
"Почему не работает принтер?",
|
74 |
+
"Как сбросить пароль?"
|
75 |
+
]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
|
77 |
+
# Создаем интерфейс чата с новым API
|
78 |
+
with gr.Blocks() as demo:
|
79 |
+
gr.Markdown("## Чат-бот технической поддержки")
|
80 |
+
gr.Markdown("Задайте ваш вопрос технической поддержке")
|
81 |
+
|
82 |
+
chatbot = gr.Chatbot(height=500)
|
83 |
+
msg = gr.Textbox(label="Ваш вопрос")
|
84 |
+
|
85 |
+
with gr.Row():
|
86 |
+
clear_btn = gr.Button("Очистить чат", variant="stop")
|
87 |
+
submit_btn = gr.Button("Отправить")
|
88 |
+
|
89 |
+
# Обработчики событий
|
90 |
+
def respond(message, chat_history):
|
91 |
+
bot_message = predict(message, chat_history)
|
92 |
+
chat_history.append((message, bot_message))
|
93 |
+
return "", chat_history
|
94 |
+
|
95 |
+
msg.submit(respond, [msg, chatbot], [msg, chatbot])
|
96 |
+
submit_btn.click(respond, [msg, chatbot], [msg, chatbot])
|
97 |
+
clear_btn.click(
|
98 |
+
fn=clear_chat,
|
99 |
+
inputs=None,
|
100 |
+
outputs=chatbot,
|
101 |
+
queue=False
|
102 |
+
)
|
103 |
+
|
104 |
+
# Примеры
|
105 |
+
gr.Examples(
|
106 |
+
examples=examples,
|
107 |
+
inputs=msg,
|
108 |
+
label="Примеры запросов"
|
109 |
+
)
|
110 |
|
|
|
111 |
if __name__ == "__main__":
|
112 |
+
demo.launch()
|