Spaces:
Sleeping
Sleeping
Yoon-gu Hwang
commited on
Commit
·
8a477cd
1
Parent(s):
cd601c3
버튼을 업데이트하는 방식으로!
Browse files
app.py
CHANGED
@@ -95,7 +95,6 @@ with gr.Blocks() as demo:
|
|
95 |
with gr.Row():
|
96 |
play = gr.Button(value="퀴즈 시작", label="퀴즈 시작")
|
97 |
skip = gr.Button(value="문제 넘어가기", label="문제 스킵")
|
98 |
-
stop = gr.Button(value="퀴즈 종료", label="퀴즈 종료")
|
99 |
chatbot = gr.Chatbot(bubble_full_width=False,
|
100 |
avatar_images=["https://huggingface.co/spaces/yoon-gu/pokemon/resolve/main/images/No_0001_이상해씨.png",
|
101 |
"https://huggingface.co/spaces/yoon-gu/pokemon/resolve/main/images/No_0155_브케인.png"])
|
@@ -127,7 +126,7 @@ with gr.Blocks() as demo:
|
|
127 |
info[user]['count'] += 1
|
128 |
bot_message = f"🎉정답입니다! 다음 문제입니다.\n{q}\n- 현재 점수: {info[user]['score']}점\n- 소요 시간: {time.time() - info[user]['time']:4.3f}초"
|
129 |
|
130 |
-
elif "
|
131 |
bot_message = f"퀴즈를 강제 종료합니다."
|
132 |
info[user]['done'] = True
|
133 |
elif "문제 넘어가기" == message:
|
@@ -157,7 +156,7 @@ with gr.Blocks() as demo:
|
|
157 |
info[user]['best_score'] = info[user]['score']
|
158 |
info[user]['best_time'] = min(time.time() - info[user]['time'], info[user]['best_time'])
|
159 |
info[user]['best_time'] = round(info[user]['best_time'], 2)
|
160 |
-
info[user]['comment'] = f"{gen}+{types}"
|
161 |
with open("info.json", "w") as f:
|
162 |
json.dump(info, f, indent=4)
|
163 |
with open("users.json", "w") as f:
|
@@ -174,23 +173,25 @@ with gr.Blocks() as demo:
|
|
174 |
lbdf.rename(columns={'name': "이름", 'best_score': "최고점수", 'best_time': "시간기록", 'comment': "퀴즈유형"}, inplace=True)
|
175 |
lbdf.index += 1
|
176 |
md = lbdf[['이름', '최고점수', '시간기록', '퀴즈유형']]
|
177 |
-
|
|
|
|
|
|
|
|
|
178 |
|
179 |
play.click(respond,
|
180 |
inputs=[play, chatbot, user, quiz_count, generation, poke_types],
|
181 |
-
outputs=[msg, chatbot, leader_board])
|
182 |
skip.click(respond,
|
183 |
inputs=[skip, chatbot, user, quiz_count, generation, poke_types],
|
184 |
-
outputs=[msg, chatbot, leader_board])
|
185 |
-
stop.click(respond,
|
186 |
-
inputs=[stop, chatbot, user, quiz_count, generation, poke_types],
|
187 |
-
outputs=[msg, chatbot, leader_board])
|
188 |
|
189 |
def rs_change(rs):
|
190 |
global USERS
|
191 |
if rs not in USERS:
|
192 |
USERS += [rs]
|
193 |
-
|
|
|
194 |
|
195 |
user.blur(rs_change, user, user)
|
196 |
|
@@ -199,13 +200,18 @@ with gr.Blocks() as demo:
|
|
199 |
lbdf = pd.DataFrame([dict(**a[1], name=a[0]) for a in leader_board])
|
200 |
lbdf.rename(columns={'name': "이름", 'best_score': "최고점수", 'best_time': "시간기록", 'comment': "퀴즈유형"}, inplace=True)
|
201 |
lbdf.index += 1
|
202 |
-
print(len(lbdf))
|
203 |
md = lbdf[['이름', '최고점수', '시간기록', '퀴즈유형']]
|
204 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
205 |
demo.load(update_table,
|
206 |
inputs=user,
|
207 |
-
outputs=[leader_board, user])
|
208 |
-
msg.submit(respond, [msg, chatbot, user, quiz_count, generation, poke_types], [msg, chatbot, leader_board])
|
209 |
|
210 |
demo.queue(concurrency_count=1)
|
211 |
demo.launch()
|
|
|
95 |
with gr.Row():
|
96 |
play = gr.Button(value="퀴즈 시작", label="퀴즈 시작")
|
97 |
skip = gr.Button(value="문제 넘어가기", label="문제 스킵")
|
|
|
98 |
chatbot = gr.Chatbot(bubble_full_width=False,
|
99 |
avatar_images=["https://huggingface.co/spaces/yoon-gu/pokemon/resolve/main/images/No_0001_이상해씨.png",
|
100 |
"https://huggingface.co/spaces/yoon-gu/pokemon/resolve/main/images/No_0155_브케인.png"])
|
|
|
126 |
info[user]['count'] += 1
|
127 |
bot_message = f"🎉정답입니다! 다음 문제입니다.\n{q}\n- 현재 점수: {info[user]['score']}점\n- 소요 시간: {time.time() - info[user]['time']:4.3f}초"
|
128 |
|
129 |
+
elif "포기하기" == message.replace(" ", ""):
|
130 |
bot_message = f"퀴즈를 강제 종료합니다."
|
131 |
info[user]['done'] = True
|
132 |
elif "문제 넘어가기" == message:
|
|
|
156 |
info[user]['best_score'] = info[user]['score']
|
157 |
info[user]['best_time'] = min(time.time() - info[user]['time'], info[user]['best_time'])
|
158 |
info[user]['best_time'] = round(info[user]['best_time'], 2)
|
159 |
+
info[user]['comment'] = f"{gen.replace(' ', '')}+{types.replace(' ', '')}"
|
160 |
with open("info.json", "w") as f:
|
161 |
json.dump(info, f, indent=4)
|
162 |
with open("users.json", "w") as f:
|
|
|
173 |
lbdf.rename(columns={'name': "이름", 'best_score': "최고점수", 'best_time': "시간기록", 'comment': "퀴즈유형"}, inplace=True)
|
174 |
lbdf.index += 1
|
175 |
md = lbdf[['이름', '최고점수', '시간기록', '퀴즈유형']]
|
176 |
+
if info[user]['done']:
|
177 |
+
btn = gr.Button(value="퀴즈 시작", label="퀴즈 시작")
|
178 |
+
else:
|
179 |
+
btn = gr.Button(value="포기하기", label="퀴즈 중단")
|
180 |
+
return btn, "", chat_history, md
|
181 |
|
182 |
play.click(respond,
|
183 |
inputs=[play, chatbot, user, quiz_count, generation, poke_types],
|
184 |
+
outputs=[play, msg, chatbot, leader_board])
|
185 |
skip.click(respond,
|
186 |
inputs=[skip, chatbot, user, quiz_count, generation, poke_types],
|
187 |
+
outputs=[play, msg, chatbot, leader_board])
|
|
|
|
|
|
|
188 |
|
189 |
def rs_change(rs):
|
190 |
global USERS
|
191 |
if rs not in USERS:
|
192 |
USERS += [rs]
|
193 |
+
new_dropdown = gr.Dropdown(sorted(USERS), value=rs, label="사용자", info="당신은 누구신가요?", allow_custom_value=True)
|
194 |
+
return new_dropdown
|
195 |
|
196 |
user.blur(rs_change, user, user)
|
197 |
|
|
|
200 |
lbdf = pd.DataFrame([dict(**a[1], name=a[0]) for a in leader_board])
|
201 |
lbdf.rename(columns={'name': "이름", 'best_score': "최고점수", 'best_time': "시간기록", 'comment': "퀴즈유형"}, inplace=True)
|
202 |
lbdf.index += 1
|
|
|
203 |
md = lbdf[['이름', '최고점수', '시간기록', '퀴즈유형']]
|
204 |
+
|
205 |
+
if info[user]['done']:
|
206 |
+
btn = gr.Button(value="퀴즈 시작", label="퀴즈 시작")
|
207 |
+
else:
|
208 |
+
btn = gr.Button(value="포기하기", label="퀴즈 중단")
|
209 |
+
|
210 |
+
return btn, md, gr.Dropdown(USERS, value=user, label="사용자", info="당신은 누구신가요?", allow_custom_value=True)
|
211 |
demo.load(update_table,
|
212 |
inputs=user,
|
213 |
+
outputs=[play, leader_board, user])
|
214 |
+
msg.submit(respond, [msg, chatbot, user, quiz_count, generation, poke_types], [play, msg, chatbot, leader_board])
|
215 |
|
216 |
demo.queue(concurrency_count=1)
|
217 |
demo.launch()
|