yoon-gu commited on
Commit
e444e3b
โ€ข
1 Parent(s): 5b5216a

Upload 2 files

Browse files
Files changed (2) hide show
  1. app.py +51 -0
  2. pokemon.json +0 -0
app.py ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ os.system("pip install gradio --upgrade")
3
+
4
+ import gradio as gr
5
+ from pyjosa.josa import Josa
6
+ import random
7
+ import json
8
+
9
+ with open('pokemon.json', 'r') as f:
10
+ pokemons = json.load(f)
11
+
12
+ QUESTION_TEMPLATE = {"question": "๋‹ค์Œ ํฌ์ผ“๋ชฌ์˜ ์ด๋ฆ„์€ ๋ญ˜๊นŒ์š”?![]({img_url})", "answer": "{name}"}
13
+ with gr.Blocks() as demo:
14
+ quiz_start = gr.State(value=False)
15
+ answer = gr.State(value="")
16
+ chatbot = gr.Chatbot(bubble_full_width=False)
17
+ msg = gr.Textbox()
18
+ clear = gr.ClearButton([msg, chatbot])
19
+
20
+
21
+ def respond(message, chat_history):
22
+ if not quiz_start.value:
23
+ chosen = random.choice(pokemons)
24
+ name = chosen['name']
25
+ image_path = chosen['image_path']
26
+ answer.value = QUESTION_TEMPLATE['answer'].format(name=name)
27
+ img_url = f"https://huggingface.co/spaces/yoon-gu/pokemon/resolve/main/{image_path}"
28
+ if "ํ€ด์ฆˆ ์‹œ์ž‘" == message:
29
+ bot_message = "ํ€ด์ฆˆ๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.\n" + QUESTION_TEMPLATE["question"].format(img_url=img_url)
30
+ quiz_start.value = True
31
+ else:
32
+ bot_message = "ํ€ด์ฆˆ๋ฅผ ์‹œ์ž‘ํ•˜๊ณ  ์‹ถ์œผ์‹œ๋ฉด, **ํ€ด์ฆˆ ์‹œ์ž‘**์ด๋ผ๊ณ  ๋ง์”€ํ•ด์ฃผ์„ธ์š”."
33
+ else:
34
+ trial = Josa.get_full_string(message, "๋Š”")
35
+ if answer.value == message:
36
+ chosen = random.choice(pokemons)
37
+ name = chosen['name']
38
+ image_path = chosen['image_path']
39
+ answer.value = QUESTION_TEMPLATE['answer'].format(name=name)
40
+ img_url = f"https://huggingface.co/spaces/yoon-gu/pokemon/resolve/main/{image_path}"
41
+ bot_message = "์ •๋‹ต์ž…๋‹ˆ๋‹ค! ๋‹ค์Œ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค." + QUESTION_TEMPLATE["question"].format(img_url=img_url)
42
+ else:
43
+ bot_message = f"{trial} ์ •๋‹ต์ผ๊นŒ์š”? ๋‹ค์‹œ ํ•œ๋ฒˆ ์ƒ๊ฐํ•ด๋ณด์„ธ์š”."
44
+
45
+ chat_history.append((message, bot_message))
46
+ return "", chat_history
47
+
48
+ msg.submit(respond, [msg, chatbot], [msg, chatbot])
49
+
50
+ demo.launch()
51
+
pokemon.json ADDED
The diff for this file is too large to render. See raw diff