Spaces:
Sleeping
Sleeping
Islam YAHIAOUI
commited on
Commit
·
a6156ff
1
Parent(s):
d5dcf9b
Update UI
Browse files- __pycache__/app.cpython-312.pyc +0 -0
- app.py +74 -78
__pycache__/app.cpython-312.pyc
CHANGED
Binary files a/__pycache__/app.cpython-312.pyc and b/__pycache__/app.cpython-312.pyc differ
|
|
app.py
CHANGED
@@ -7,7 +7,7 @@ from rag import run_rag
|
|
7 |
TOKEN = os.getenv("HF_TOKEN")
|
8 |
client = InferenceClient("HuggingFaceH4/zephyr-7b-beta" , token=TOKEN)
|
9 |
system_message ="You are a capable and freindly assistant."
|
10 |
-
|
11 |
no_change_btn = gr.Button()
|
12 |
enable_btn = gr.Button(interactive=True)
|
13 |
disable_btn = gr.Button(interactive=False)
|
@@ -22,14 +22,13 @@ class Int_State:
|
|
22 |
print("State has been initialise")
|
23 |
|
24 |
def save_question(self, question):
|
25 |
-
|
26 |
self.current_query = question
|
27 |
self.current_response = ""
|
28 |
self.history.append({"role": "user", "content": question})
|
29 |
print("Question added ")
|
30 |
|
31 |
def save_response(self, assistant_message):
|
32 |
-
current_question = self.current_query
|
33 |
self.current_response = assistant_message
|
34 |
self.history.append({"role": "system", "content": assistant_message})
|
35 |
print("Response saved ")
|
@@ -41,47 +40,41 @@ class Int_State:
|
|
41 |
# ================================================================================================================================
|
42 |
state = Int_State()
|
43 |
# ================================================================================================================================
|
44 |
-
|
45 |
-
|
46 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
47 |
|
48 |
# ================================================================================================================================
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
# return btn_list
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
# def upvote_last_response(btn_list):
|
69 |
-
# # upvote the last response
|
70 |
-
# print("Upvoted")
|
71 |
-
# return disable_buttons(btn_list)
|
72 |
-
|
73 |
-
# def downvote_last_response(btn_list):
|
74 |
-
# # downvote the last response
|
75 |
-
# print("Downvoted")
|
76 |
-
# return disable_buttons(btn_list)
|
77 |
-
# def flag_last_response(btn_list):
|
78 |
-
# # flag the last response
|
79 |
-
# print("Flagged")
|
80 |
-
# return disable_buttons(btn_list)
|
81 |
|
82 |
|
83 |
def chat(
|
84 |
-
|
85 |
chatbot,
|
86 |
message,
|
87 |
max_tokens,
|
@@ -94,37 +87,37 @@ def chat(
|
|
94 |
print("Temperature: ", temperature)
|
95 |
print("Top P: ", top_p)
|
96 |
question= message
|
|
|
97 |
messages = [{"role": "system", "content": system_message}]
|
98 |
|
99 |
history= state.get_history()
|
100 |
state.save_question(message)
|
101 |
|
102 |
-
|
103 |
for val in history:
|
104 |
messages.append(val)
|
105 |
|
106 |
messages.append({"role": "user", "content": run_rag(message)})
|
107 |
-
response = ""
|
108 |
-
# chatbot.append((question))
|
109 |
-
for msg in client.chat_completion(
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
):
|
116 |
|
117 |
-
|
118 |
-
|
119 |
-
# chatbot.append(( response))
|
120 |
|
121 |
# yield "" , chatbot
|
122 |
chatbot.append((question , response))
|
123 |
state.save_response(response)
|
124 |
# btn_list =enable_buttons(btn_list)
|
125 |
-
|
126 |
|
127 |
-
yield "" , chatbot
|
128 |
|
129 |
|
130 |
# ================================================================================================================================
|
@@ -215,37 +208,40 @@ with gr.Blocks(title="RAG", theme=theme, css=block_css , fill_height=True) as de
|
|
215 |
# ================================================================================================================================
|
216 |
btn_list = [upvote_btn, downvote_btn, flag_btn, regenerate_btn, clear_btn]
|
217 |
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
# regenerate_btn.click(
|
235 |
# chat,
|
236 |
-
# [
|
237 |
-
# [textbox, chatbot
|
238 |
-
# )
|
239 |
-
# clear_btn.click(
|
240 |
-
# clear_chat,
|
241 |
-
# [disable_btn] * 5
|
242 |
# )
|
|
|
|
|
|
|
|
|
|
|
|
|
243 |
submit_btn.click(
|
244 |
chat ,
|
245 |
-
[chatbot, textbox , max_output_tokens, temperature, top_p],
|
246 |
-
[textbox ,chatbot]
|
247 |
)
|
248 |
|
249 |
# ================================================================================================================================
|
250 |
demo.launch()
|
|
|
251 |
# ================================================================================================================================
|
|
|
7 |
TOKEN = os.getenv("HF_TOKEN")
|
8 |
client = InferenceClient("HuggingFaceH4/zephyr-7b-beta" , token=TOKEN)
|
9 |
system_message ="You are a capable and freindly assistant."
|
10 |
+
|
11 |
no_change_btn = gr.Button()
|
12 |
enable_btn = gr.Button(interactive=True)
|
13 |
disable_btn = gr.Button(interactive=False)
|
|
|
22 |
print("State has been initialise")
|
23 |
|
24 |
def save_question(self, question):
|
|
|
25 |
self.current_query = question
|
26 |
self.current_response = ""
|
27 |
self.history.append({"role": "user", "content": question})
|
28 |
print("Question added ")
|
29 |
|
30 |
def save_response(self, assistant_message):
|
31 |
+
# current_question = self.current_query
|
32 |
self.current_response = assistant_message
|
33 |
self.history.append({"role": "system", "content": assistant_message})
|
34 |
print("Response saved ")
|
|
|
40 |
# ================================================================================================================================
|
41 |
state = Int_State()
|
42 |
# ================================================================================================================================
|
43 |
+
def clear_chat(chatbot ):
|
44 |
+
state.history = []
|
45 |
+
|
46 |
+
chatbot = gr.Chatbot(
|
47 |
+
elem_id="chatbot",
|
48 |
+
label="Retrieval Augmented Generation (RAG) Chatbot",
|
49 |
+
height=300,
|
50 |
+
layout="bubble",
|
51 |
+
min_width=1200,
|
52 |
+
show_copy_button=True,
|
53 |
+
show_share_button=True,
|
54 |
+
placeholder="Ask a question or type a message...",
|
55 |
+
)
|
56 |
+
yield (chatbot) + (enable_btn,) * 5
|
57 |
+
# yield ("" , chatbot) + (enable_btn,) * 5
|
58 |
|
59 |
# ================================================================================================================================
|
60 |
+
|
61 |
+
|
62 |
+
|
63 |
+
|
64 |
+
def upvote_last_response():
|
65 |
+
print("Upvoted")
|
66 |
+
return (disable_btn,) * 3 + (enable_btn,)*2
|
67 |
+
|
68 |
+
def downvote_last_response():
|
69 |
+
print("Downvoted")
|
70 |
+
return (disable_btn,) * 3 + (enable_btn,)*2
|
71 |
+
|
72 |
+
def flag_last_response():
|
73 |
+
print("Flagged")
|
74 |
+
return (disable_btn,) * 3 + (enable_btn,)*2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
75 |
|
76 |
|
77 |
def chat(
|
|
|
78 |
chatbot,
|
79 |
message,
|
80 |
max_tokens,
|
|
|
87 |
print("Temperature: ", temperature)
|
88 |
print("Top P: ", top_p)
|
89 |
question= message
|
90 |
+
|
91 |
messages = [{"role": "system", "content": system_message}]
|
92 |
|
93 |
history= state.get_history()
|
94 |
state.save_question(message)
|
95 |
|
|
|
96 |
for val in history:
|
97 |
messages.append(val)
|
98 |
|
99 |
messages.append({"role": "user", "content": run_rag(message)})
|
100 |
+
response = "This is a response to the question"
|
101 |
+
# # chatbot.append((question))
|
102 |
+
# for msg in client.chat_completion(
|
103 |
+
# messages,
|
104 |
+
# max_tokens=max_tokens,
|
105 |
+
# stream=True,
|
106 |
+
# temperature=temperature,
|
107 |
+
# top_p=top_p,
|
108 |
+
# ):
|
109 |
|
110 |
+
# token = msg.choices[0].delta.content
|
111 |
+
# response += str(token)
|
112 |
+
# chatbot.append(( response, response))
|
113 |
|
114 |
# yield "" , chatbot
|
115 |
chatbot.append((question , response))
|
116 |
state.save_response(response)
|
117 |
# btn_list =enable_buttons(btn_list)
|
118 |
+
yield ("" , chatbot) + (enable_btn,) * 5
|
119 |
|
120 |
+
# yield "" , chatbot
|
121 |
|
122 |
|
123 |
# ================================================================================================================================
|
|
|
208 |
# ================================================================================================================================
|
209 |
btn_list = [upvote_btn, downvote_btn, flag_btn, regenerate_btn, clear_btn]
|
210 |
|
211 |
+
upvote_btn.click(
|
212 |
+
upvote_last_response,
|
213 |
+
[],
|
214 |
+
btn_list,
|
215 |
+
)
|
216 |
+
|
217 |
+
downvote_btn.click(
|
218 |
+
downvote_last_response,
|
219 |
+
[],
|
220 |
+
btn_list
|
221 |
+
)
|
222 |
+
flag_btn.click(
|
223 |
+
flag_last_response,
|
224 |
+
[],
|
225 |
+
btn_list,
|
226 |
+
)
|
227 |
# regenerate_btn.click(
|
228 |
# chat,
|
229 |
+
# [ chatbot, textbox, max_output_tokens, temperature, top_p],
|
230 |
+
# [textbox, chatbot] + btn_list
|
|
|
|
|
|
|
|
|
231 |
# )
|
232 |
+
clear_btn.click(
|
233 |
+
clear_chat,
|
234 |
+
[chatbot],
|
235 |
+
[chatbot ] + btn_list,
|
236 |
+
)
|
237 |
+
|
238 |
submit_btn.click(
|
239 |
chat ,
|
240 |
+
[ chatbot, textbox , max_output_tokens, temperature, top_p],
|
241 |
+
[textbox ,chatbot] + btn_list ,
|
242 |
)
|
243 |
|
244 |
# ================================================================================================================================
|
245 |
demo.launch()
|
246 |
+
|
247 |
# ================================================================================================================================
|