Update app.py
Browse files
app.py
CHANGED
@@ -2,176 +2,97 @@ import gradio as gr
|
|
2 |
|
3 |
# MBTI ์ ํ๋ณ ํด์
|
4 |
mbti_interpretations = {
|
5 |
-
"INTJ": "
|
6 |
-
"
|
7 |
-
# ๋๋จธ์ง 14๊ฐ ์ ํ์ ๋ํ
|
8 |
}
|
9 |
|
10 |
-
|
11 |
-
|
12 |
-
#
|
13 |
-
mbti_type = "INTJ"
|
14 |
-
|
15 |
-
return f"๋น์ ์ MBTI ์ ํ์ {mbti_type}์
๋๋ค. {interpretation}"
|
16 |
|
17 |
-
#
|
18 |
questions = [
|
19 |
"๋น์ ์ ์๋ก์ด ์ฌ๋๋ค์ ๋ง๋ ๋ ์ฃผ๋ก ์ด๋ป๊ฒ ํ๋ํ๋์?",
|
20 |
-
# ๋๋จธ์ง 9๊ฐ
|
21 |
]
|
22 |
-
options = [["์ต์
1", "์ต์
2", "์ต์
3", "์ต์
4"]] * 10 # ๊ฐ ์ง๋ฌธ์ ๋ํ ์ต์
|
23 |
-
|
24 |
-
iface = gr.Interface(
|
25 |
-
fn=determine_mbti,
|
26 |
-
inputs=[gr.Radio(options[i], label=question) for i, question in enumerate(questions)],
|
27 |
-
outputs="text",
|
28 |
-
title="MBTI ์ง๋จ ํ
์คํธ",
|
29 |
-
description="10๊ฐ์ ์ง๋ฌธ์ ๋ตํ์ฌ ๋น์ ์ MBTI ์ ํ์ ์์๋ณด์ธ์."
|
30 |
-
)
|
31 |
-
|
32 |
-
iface.launch()
|
33 |
-
requirements.txt ํ์ผ ์์
|
34 |
-
gradio
|
35 |
-
huggingface_hub
|
36 |
-
์ด ์ฝ๋์ requirements.txt ํ์ผ์ ์ฌ์ฉํ์ฌ Hugging Face Spaces์ ์ ํ๋ฆฌ์ผ์ด์
์ ๋ฐฐํฌํ ์ ์์ต๋๋ค. ์ฌ์ฉ์๋ ์น ์ธํฐํ์ด์ค๋ฅผ ํตํด ์ง๋ฌธ์ ๋ตํ๊ณ , ๊ทธ์ ๋ฐ๋ฅธ MBTI ์ ํ๊ณผ ๊ฐ๋จํ ํด์์ ๋ฐ๊ฒ ๋ฉ๋๋ค.
|
37 |
-
|
38 |
-
10๊ฐ ๋ชจ๋ ์ฑ์์ ์ ์ฒด์ฝ๋ ์ถ๋ ฅํ๋ผ
|
39 |
-
|
40 |
-
์๋๋ 10๊ฐ์ MBTI ์ง๋จ ์ง๋ฌธ๊ณผ ๊ฐ ์ ํ์ ๋ํ ๊ฐ๋จํ ํด์์ ํฌํจํ ์ ์ฒด ์ฝ๋์
๋๋ค. ์ด ์ฝ๋๋ Gradio๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌํ๋์์ผ๋ฉฐ, ์ฌ์ฉ์๊ฐ 10๊ฐ์ ์ง๋ฌธ์ ๋ตํ ํ ๊ทธ์ ๋ฐ๋ฅธ MBTI ์ ํ๊ณผ ํด์์ ์ถ๋ ฅํฉ๋๋ค.
|
41 |
-
|
42 |
-
import gradio as gr
|
43 |
-
|
44 |
-
# MBTI ์ ํ๋ณ ํด์
|
45 |
-
mbti_interpretations = {
|
46 |
-
"INTJ": "์ ๋ต๊ฐ, ๋
์ฐฝ์ ์ด๊ณ ๋
๋ฆฝ์ ์ธ ์ฌ๊ณ ๋ฅผ ๊ฐ์ง ์ฌ๋",
|
47 |
-
"INTP": "๋
ผ๋ฆฌ์ ์ธ ์ฌ์๊ฐ, ์ด๋ก ์ ์ธ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋๋ฐ ๋ฅ์",
|
48 |
-
"ENTJ": "๋๋ดํ ํต์์, ํ๋์ ์ด๊ณ ์ง๋๋ ฅ์ด ์๋ ์ฌ๋",
|
49 |
-
"ENTP": "๋จ๊ฑฐ์ด ๋
ผ์์ ์ฆ๊ธฐ๋ ๋ณ๋ก ๊ฐ, ์ง์ ํธ๊ธฐ์ฌ์ด ๋ง์ ์ฌ๋",
|
50 |
-
"INFJ": "์ ์์ ์นํธ์, ์กฐ์ฉํ๊ณ ์ ๋น๋ก์ด, ์๊ฐ์ ์ฃผ๋ ์ฌ๋",
|
51 |
-
"INFP": "์ด์ ์ ์ธ ์ค์ฌ์, ์ฐฝ์์ ์ด๊ณ ์น์ ํ ์ฌ๋",
|
52 |
-
"ENFJ": "์ฌ๊ต์ ์ธ ์ ์๋, ํ์ธ์ ๋๊ณ ์ ํ๋ ์ฌ๋",
|
53 |
-
"ENFP": "์ฌ๊ธฐ๋ฐ๋ํ ํ๋๊ฐ, ์ด์ ์ ์ด๊ณ ์ฐฝ์์ ์ธ ์ฌ๋",
|
54 |
-
"ISTJ": "์ฒญ๋ ด๊ฒฐ๋ฐฑํ ๋
ผ๋ฆฌ์ฃผ์์, ์ค์ฉ์ ์ด๊ณ ์ฌ์ค์ ๊ธฐ๋ฐํ ์ฌ๋",
|
55 |
-
"ISFJ": "์ฉ๊ฐํ ์ํธ์, ๋ณดํธํ๊ณ ์ ํ๋ ์ฌ๋",
|
56 |
-
"ESTJ": "์๊ฒฉํ ๊ด๋ฆฌ์, ์ง์์ ์ ํต์ ์ค์ํ๋ ์ฌ๋",
|
57 |
-
"ESFJ": "์ฌ๊ต์ ์ธ ์ธ๊ต๊ด, ์น์ ํ๊ณ ์์ฌ์ ์ธ ์ฌ๋",
|
58 |
-
"ISTP": "๋ง๋ฅ ์ฌ์ฃผ๊พผ, ํธ๊ธฐ์ฌ ๋ง๊ณ ์ค์ฉ์ ์ธ ์ฌ๋",
|
59 |
-
"ISFP": "ํธ๊ธฐ์ฌ ๋ง์ ์์ ๊ฐ, ์ ์ฐํ๊ณ ๋งค๋ ฅ์ ์ธ ์ฌ๋",
|
60 |
-
"ESTP": "๋ชจํ์ ์ฆ๊ธฐ๋ ์ฌ์
๊ฐ, ์๋์ง๊ฐ ๋์น๋ ์ฌ๋",
|
61 |
-
"ESFP": "์์ ๋ก์ด ์ํผ์ ์ฐ์์ธ, ์ฆ๊ฑฐ์์ ์ถ๊ตฌํ๋ ์ฌ๋"
|
62 |
-
}
|
63 |
|
64 |
-
#
|
65 |
-
|
66 |
-
#
|
67 |
-
#
|
68 |
-
|
69 |
-
|
70 |
-
|
|
|
|
|
71 |
|
72 |
-
#
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
"์ฌ๊ฐ ์๊ฐ์ ๋ณด๋ผ ๋ ์ ํธํ๋ ํ๋์?",
|
77 |
-
"์์ฌ ๊ฒฐ๏ฟฝ๏ฟฝ๏ฟฝ์ ํ ๋ ๊ฐ์ฅ ์ค์ํ๊ฒ ์๊ฐํ๋ ๊ฒ์?",
|
78 |
-
"์คํธ๋ ์ค๋ฅผ ๋ฐ์ ๋ ์ฃผ๋ก ์ด๋ป๊ฒ ๋์ฒํ๋์?",
|
79 |
-
"์๋ก์ด ํ๋ก์ ํธ๋ฅผ ์์ํ ๋ ๋น์ ์ ํ๋๋?",
|
80 |
-
"ํ ํ๋ก์ ํธ์์ ๋น์ ์ ์ญํ ์ ์ฃผ๋ก ๋ฌด์์ธ๊ฐ์?",
|
81 |
-
"๋ณํ๋ฅผ ๋ํ ๋ ๋น์ ์ ํ๋๋?",
|
82 |
-
"ํ์ตํ ๋ ์ ํธํ๋ ๋ฐฉ์์?",
|
83 |
-
"์น๊ตฌ๋ค๊ณผ์ ๊ด๊ณ์์ ๋น์ ์ ์ด๋ค ์ฌ๋์ธ๊ฐ์?"
|
84 |
-
]
|
85 |
-
options = [
|
86 |
-
["์คํ ๋ง์ธ๋๋ก ์ ๊ทผํ๋ค", "์กฐ์ฌ์ค๋ฝ๊ฒ ์ ๊ทผํ๋ค", "์ํฉ์ ๊ด์ฐฐํ๋ค", "์ ๊ทน์ ์ผ๋ก ์ฐธ์ฌํ๋ค"],
|
87 |
-
["๋
ผ๋ฆฌ์ ์ผ๋ก ๋ถ์ํ๋ค", "์ง๊ด์ ๋ฐ๋ฅธ๋ค", "๊ฒฝํ์ ์์กดํ๋ค", "๊ฐ์ ์ ๋ฐ๋ฅธ๋ค"],
|
88 |
-
["ํผ์๋ง์ ์๊ฐ์ ์ ํธํ๋ค", "์น๊ตฌ๋ค๊ณผ ์ด์ธ๋ฆฐ๋ค", "์๋ก์ด ํ๋์ ํ์ํ๋ค", "์ต์ํ ํ๋์ ์ฆ๊ธด๋ค"],
|
89 |
-
["์ฌ์ค๊ณผ ๋ฐ์ดํฐ", "์ง๊ด๊ณผ ๊ฐ๋ฅ์ฑ", "ํ์ธ์ ์๊ฒฌ", "๊ฐ์ธ์ ๊ฐ์น"],
|
90 |
-
["ํ๋์ ์ผ๋ก ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ค", "ํผ์๋ง์ ์๊ฐ์ ๊ฐ๋๋ค", "์น๊ตฌ๋ค๊ณผ ์ด์ผ๊ธฐํ๋ค", "๊ฐ์ ์ ํํํ๋ค"],
|
91 |
-
["๊ณํ์ ์ธ์ด๋ค", "์ฆํฅ์ ์ผ๋ก ํ๋ํ๋ค", "์์ด๋์ด๋ฅผ ๋ชจ์๋ค", "๊ฒฝํ์ ์์กดํ๋ค"],
|
92 |
-
["๋ฆฌ๋", "์กฐ์ธ์", "์คํ์", "์ง์์"],
|
93 |
-
["๋ณํ๋ฅผ ํ์ํ๋ค", "๋ณํ์ ์ ํญํ๋ค", "์ํฉ์ ๋ฐ๋ผ ๋ค๋ฅด๋ค", "๋ฌด๊ด์ฌํ๋ค"],
|
94 |
-
["์๊ฐ์ ์๋ฃ", "์ฒญ๊ฐ์ ์๋ฃ", "์ค์ต", "ํ ๋ก ๊ณผ ๋ํ"],
|
95 |
-
["๋ฆฌ๋", "์กฐ์ธ์", "๋ถ์๊ธฐ ๋ฉ์ด์ปค", "๋ฌ์งํ ์ง์์"]
|
96 |
-
]
|
97 |
|
98 |
-
|
99 |
-
fn=determine_mbti,
|
100 |
-
inputs=[gr.Radio(options[i], label=question) for i, question in enumerate(questions)],
|
101 |
-
outputs="text",
|
102 |
-
title="MBTI ์ง๋จ ํ
์คํธ",
|
103 |
-
description="10๊ฐ์ ์ง๋ฌธ์ ๋ตํ์ฌ ๋น์ ์ MBTI ์ ํ์ ์์๋ณด์ธ์."
|
104 |
-
)
|
105 |
|
106 |
-
|
107 |
-
์ด ์ฝ๋๋ ์ฌ์ฉ์๊ฐ 10๊ฐ์ ์ง๋ฌธ์ ๋ํด ์ ํํ ๋ต๋ณ์ ๊ธฐ๋ฐ์ผ๋ก MBTI ์ ํ์ ๊ฒฐ์ ํ๊ณ , ํด๋น ์ ํ์ ๋ํ ๊ฐ๋จํ ํด์์ ์ ๊ณตํฉ๋๋ค. ์ค์ MBTI ์ ํ์ ๊ฒฐ์ ํ๋ ๋ก์ง์ ๋ณต์กํ๋ฉฐ, ์ฌ๊ธฐ์๋ ์์๋ก ๋ชจ๋ ์๋ต์ "INTJ"๋ก ์ค์ ํ์ต๋๋ค. ์ค์ ์ ํ๋ฆฌ์ผ์ด์
์์๋ ์ฌ์ฉ์์ ์๋ต์ ๋ถ์ํ์ฌ ๋ค์ํ MBTI ์ ํ ์ค ํ๋๋ฅผ ๊ฒฐ์ ํ๋ ๋ก์ง์ ๊ตฌํํด์ผ ํฉ๋๋ค.
|
108 |
-
|
109 |
-
๊ฐ๊ด์ ์ ํ์์ ์ ํ์ ํ์ํ์ง ๋ง๊ตฌ ์ถ๋ ฅํด์ค
|
110 |
|
111 |
-
์๋๋
|
112 |
|
113 |
import gradio as gr
|
114 |
|
115 |
# MBTI ์ ํ๋ณ ํด์
|
116 |
mbti_interpretations = {
|
117 |
-
"INTJ": "
|
118 |
-
"
|
119 |
-
"
|
120 |
-
"
|
121 |
-
"
|
122 |
-
"
|
123 |
-
"ENFJ": "
|
124 |
-
"
|
125 |
-
"
|
126 |
-
"
|
127 |
-
"
|
128 |
-
"
|
129 |
-
"
|
130 |
-
"
|
131 |
-
"
|
132 |
-
"
|
133 |
}
|
134 |
|
135 |
-
|
136 |
-
|
137 |
-
#
|
138 |
-
#
|
139 |
-
mbti_type = "INTJ"
|
140 |
-
|
141 |
-
return f"๋น์ ์ MBTI ์ ํ์ {mbti_type}์
๋๋ค. {interpretation}"
|
142 |
|
143 |
-
#
|
144 |
questions = [
|
145 |
"์๋ก์ด ์ฌ๋๋ค์ ๋ง๋ ๋ ์ฃผ๋ก ์ด๋ป๊ฒ ํ๋ํ๋์?",
|
146 |
-
"๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ๋
|
147 |
-
"์ฌ๊ฐ ์๊ฐ์
|
148 |
-
"์์ฌ ๊ฒฐ์ ์ ํ ๋
|
149 |
-
"
|
150 |
-
"์๋ก์ด
|
151 |
-
"
|
152 |
-
"
|
153 |
-
"
|
154 |
-
"
|
155 |
]
|
156 |
-
options = [
|
157 |
-
["์คํ ๋ง์ธ๋๋ก ์ ๊ทผํ๋ค", "์กฐ์ฌ์ค๋ฝ๊ฒ ์ ๊ทผํ๋ค", "์ํฉ์ ๊ด์ฐฐํ๋ค", "์ ๊ทน์ ์ผ๋ก ์ฐธ์ฌํ๋ค"],
|
158 |
-
["๋
ผ๋ฆฌ์ ์ผ๋ก ๋ถ์ํ๋ค", "์ง๊ด์ ๋ฐ๋ฅธ๋ค", "๊ฒฝํ์ ์์กดํ๋ค", "๊ฐ์ ์ ๋ฐ๋ฅธ๋ค"],
|
159 |
-
["ํผ์๋ง์ ์๊ฐ์ ์ ํธํ๋ค", "์น๊ตฌ๋ค๊ณผ ์ด์ธ๋ฆฐ๋ค", "์๋ก์ด ํ๋์ ํ์ํ๋ค", "์ต์ํ ํ๋์ ์ฆ๊ธด๋ค"],
|
160 |
-
["์ฌ์ค๊ณผ ๋ฐ์ดํฐ", "์ง๊ด๊ณผ ๊ฐ๋ฅ์ฑ", "ํ์ธ์ ์๊ฒฌ", "๊ฐ์ธ์ ๊ฐ์น"],
|
161 |
-
["ํ๋์ ์ผ๋ก ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ค", "ํผ์๋ง์ ์๊ฐ์ ๊ฐ๋๋ค", "์น๊ตฌ๋ค๊ณผ ์ด์ผ๊ธฐํ๋ค", "๊ฐ์ ์ ํํํ๋ค"],
|
162 |
-
["๊ณํ์ ์ธ์ด๋ค", "์ฆํฅ์ ์ผ๋ก ํ๋ํ๋ค", "์์ด๋์ด๋ฅผ ๋ชจ์๋ค", "๊ฒฝํ์ ์์กดํ๋ค"],
|
163 |
-
["๋ฆฌ๋", "์กฐ์ธ์", "์คํ์", "์ง์์"],
|
164 |
-
["๋ณํ๋ฅผ ํ์ํ๋ค", "๋ณํ์ ์ ํญํ๋ค", "์ํฉ์ ๋ฐ๋ผ ๋ค๋ฅด๋ค", "๋ฌด๊ด์ฌํ๋ค"],
|
165 |
-
["์๊ฐ์ ์๋ฃ", "์ฒญ๊ฐ์ ์๋ฃ", "์ค์ต", "ํ ๋ก ๊ณผ ๋ํ"],
|
166 |
-
["๋ฆฌ๋", "์กฐ์ธ์", "๋ถ์๊ธฐ ๋ฉ์ด์ปค", "๋ฌ์งํ ์ง์์"]
|
167 |
-
]
|
168 |
-
|
169 |
-
iface = gr.Interface(
|
170 |
-
fn=determine_mbti,
|
171 |
-
inputs=[gr.Radio(options[i], label=question) for i, question in enumerate(questions)],
|
172 |
-
outputs="text",
|
173 |
-
title="MBTI ์ง๋จ ํ
์คํธ",
|
174 |
-
description="10๊ฐ์ ์ง๋ฌธ์ ๋ตํ์ฌ ๋น์ ์ MBTI ์ ํ์ ์์๋ณด์ธ์."
|
175 |
-
)
|
176 |
|
177 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
3 |
# MBTI ์ ํ๋ณ ํด์
|
4 |
mbti_interpretations = {
|
5 |
+
"INTJ": "์ ๋ต๊ฐ: ํ์ ์ ์ด๊ณ ๋
๋ฆฝ์ ์ธ ์ฌ๊ณ ๋ฅผ ๊ฐ์ง ๋น์ ์ ์ฐฝ์กฐ์์
๋๋ค.",
|
6 |
+
"INFP": "์ค์ฌ์: ์ด์์ ์ด๊ณ ์ฐฝ์์ ์ธ, ํญ์ ์ ์ ์ถ๊ตฌํ๋ ์ฌ๋์
๋๋ค.",
|
7 |
+
# ๋๋จธ์ง 14๊ฐ ์ ํ์ ๋ํ ํด์์ ์ฌ๊ธฐ์ ์ถ๊ฐํ์ธ์.
|
8 |
}
|
9 |
|
10 |
+
def calculate_mbti(*answers):
|
11 |
+
# ์ฌ๊ธฐ์ ์ฌ์ฉ์์ ๋ต๋ณ์ ๊ธฐ๋ฐ์ผ๋ก MBTI ์ ํ์ ๊ณ์ฐํ๋ ๋ก์ง์ ๊ตฌํํ์ธ์.
|
12 |
+
# ์ด ์์์์๋ ๋จ์ํ๋ฅผ ์ํด "INTJ"๋ฅผ ๋ฐํํ๋๋ก ์ค์ ํ์ต๋๋ค.
|
13 |
+
mbti_type = "INTJ"
|
14 |
+
return mbti_type, mbti_interpretations[mbti_type]
|
|
|
15 |
|
16 |
+
# ์ง๋ฌธ ๋ฆฌ์คํธ
|
17 |
questions = [
|
18 |
"๋น์ ์ ์๋ก์ด ์ฌ๋๋ค์ ๋ง๋ ๋ ์ฃผ๋ก ์ด๋ป๊ฒ ํ๋ํ๋์?",
|
19 |
+
# ๋๋จธ์ง 9๊ฐ ์ง๋ฌธ์ ์ฌ๊ธฐ์ ์ถ๊ฐํ์ธ์.
|
20 |
]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21 |
|
22 |
+
# Gradio ์ฑ ์ ์
|
23 |
+
with gr.Blocks() as app:
|
24 |
+
gr.Markdown("# MBTI ์ง๋จ ํ
์คํธ")
|
25 |
+
# ๊ฐ ์ง๋ฌธ์ ๋ํ ๋ต๋ณ์ ์
๋ ฅ๋ฐ๋ ๋ผ๋์ค ๋ฒํผ์ ์์ฑํฉ๋๋ค.
|
26 |
+
answers = [gr.Radio(["์ต์
1", "์ต์
2", "์ต์
3"], label=question) for question in questions]
|
27 |
+
submit_button = gr.Button("๊ฒฐ๊ณผ ๋ณด๊ธฐ")
|
28 |
+
output = gr.Textbox(label="๋น์ ์ MBTI ์ ํ")
|
29 |
+
|
30 |
+
submit_button.click(fn=calculate_mbti, inputs=answers, outputs=[output])
|
31 |
|
32 |
+
# ์ฑ ์คํ
|
33 |
+
if __name__ == "__main__":
|
34 |
+
app.launch()
|
35 |
+
์ด ์ฝ๋๋ MBTI ์ ํ์ ๊ฒฐ์ ํ๋ ๋ก์ง์ ๋จ์ํํ์ฌ ๊ตฌํํ ๊ฒ์
๋๋ค. ์ค์ ์ ํ๋ฆฌ์ผ์ด์
์์๋ ์ฌ์ฉ์์ ๋ต๋ณ์ ๋ถ์ํ์ฌ ์ ํํ MBTI ์ ํ์ ๊ณ์ฐํ๋ ๋ ๋ณต์กํ ๋ก์ง์ด ํ์ํ ์ ์์ต๋๋ค. ๋ํ, ๋ชจ๋ MBTI ์ ํ์ ๋ํ ํด์์ mbti_interpretations ๋์
๋๋ฆฌ์ ์ถ๊ฐํด์ผ ํฉ๋๋ค.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
36 |
|
37 |
+
์ด ์์ ์ฝ๋๋ฅผ ์คํํ๊ธฐ ์ ์, gradio ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์ค์น๋์ด ์๋์ง ํ์ธํ์ธ์. ํ์ํ ๊ฒฝ์ฐ, pip install gradio ๋ช
๋ น์ ์ฌ์ฉํ์ฌ ์ค์นํ ์ ์์ต๋๋ค.
|
|
|
|
|
|
|
|
|
|
|
|
|
38 |
|
39 |
+
10๊ฐ ๋ชจ๋ ์ฑ์์ ์ ์ฒด์ฝ๋ ์ถ๋ ฅํ๋ผ
|
|
|
|
|
|
|
40 |
|
41 |
+
์๋๋ MBTI ์ง๋จ ํ
์คํธ๋ฅผ ์ํ Gradio ์น ์ ํ๋ฆฌ์ผ์ด์
์ ์ ์ฒด ์ฝ๋์
๋๋ค. ์ด ์ฝ๋๋ ์ฌ์ฉ์๋ก๋ถํฐ 10๊ฐ์ ๊ฐ๊ด์ ์ง๋ฌธ์ ๋ํ ๋ต๋ณ์ ๋ฐ์, ๊ทธ์ ๋ฐ๋ฅธ MBTI ์ ํ์ ๋ถ์ํ์ฌ ๊ฒฐ๊ณผ์ ํจ๊ป ๊ฐ๋จํ ํด์์ ์ ๊ณตํฉ๋๋ค.
|
42 |
|
43 |
import gradio as gr
|
44 |
|
45 |
# MBTI ์ ํ๋ณ ํด์
|
46 |
mbti_interpretations = {
|
47 |
+
"INTJ": "์ ๋ต๊ฐ: ํ์ ์ ์ด๊ณ ๋
๋ฆฝ์ ์ธ ์ฌ๊ณ ๋ฅผ ๊ฐ์ง ๋น์ ์ ์ฐฝ์กฐ์์
๋๋ค.",
|
48 |
+
"INFP": "์ค์ฌ์: ์ด์์ ์ด๊ณ ์ฐฝ์์ ์ธ, ํญ์ ์ ์ ์ถ๊ตฌํ๋ ์ฌ๋์
๋๋ค.",
|
49 |
+
"INFJ": "์นํธ์: ์กฐ์ฉํ๊ณ ์ ๋น๋ก์ด, ์๊ฐ์ ์ฃผ๋ ์ด์์ฃผ์์์
๋๋ค.",
|
50 |
+
"INTP": "๋
ผ๋ฆฌํ์: ํ์ ์ ์ธ ๋ฐ๋ช
๊ฐ๋ก, ๋
์ฐฝ์ ์ธ ์ง์์ ์ถ๊ตฌํฉ๋๋ค.",
|
51 |
+
"ENTJ": "ํต์์: ๋๋ดํ๊ณ ์์๋ ฅ์ด ํ๋ถํ๋ฉฐ, ํญ์ ๋ชฉํ๋ฅผ ํฅํด ๋์๊ฐ๋๋ค.",
|
52 |
+
"ENFP": "ํ๋๊ฐ: ์ด์ ์ ์ด๊ณ ์ฐฝ์์ ์ผ๋ก, ์์ ๋ก์ด ์ํผ์ ๊ฐ์ง ์ฌ๋์
๋๋ค.",
|
53 |
+
"ENFJ": "์ ๋์: ์นด๋ฆฌ์ค๋ง์ ์๊ฐ์ ์ฃผ๋ ๋ฆฌ๋, ํ์ธ์ ์ฑ์ฅ์ ๋์ต๋๋ค.",
|
54 |
+
"ENTP": "๋ณ๋ก ๊ฐ: ๋๋ํ๊ณ ํธ๊ธฐ์ฌ์ด ๋ง์ผ๋ฉฐ, ์ง์ ๋์ ์ ์ฆ๊น๋๋ค.",
|
55 |
+
"ISFJ": "์ํธ์: ์ธ์ฌํ๊ณ ํ์ ์ ์ด๋ฉฐ, ๋ฐ๋ปํ ๋ณดํธ์์
๋๋ค.",
|
56 |
+
"ISTJ": "๋
ผ๋ฆฌ์ฃผ์์: ์ค์ฉ์ ์ด๊ณ ์ฌ์ค์ ๊ธฐ๋ฐํ ๊ฒฐ์ ์ ๋ด๋ฆฝ๋๋ค.",
|
57 |
+
"ISFP": "๋ชจํ๊ฐ: ์ ์ฐํ๊ณ ๋งค๋ ฅ์ ์ด๋ฉฐ, ์๋ก์ด ๊ฒฝํ์ ์ฆ๊น๋๋ค.",
|
58 |
+
"ISTP": "์ฅ์ธ: ์คํ์ ์ฆ๊ธฐ๊ณ ์์ผ๋ก ๋ง๋๋ ๊ฒ์ ์ข์ํ๋ ์ฌ๋์
๋๋ค.",
|
59 |
+
"ESFJ": "์ฌ๊ต์ ์ธ ์ธ๊ต๊ด: ํ๋ ฅ์ ์ด๊ณ ๋ฐ๋ปํ๋ฉฐ, ํ์ธ๊ณผ์ ์กฐํ๋ฅผ ์ค์ํฉ๋๋ค.",
|
60 |
+
"ESTJ": "๊ฒฝ์์: ์ง์์ ์ฐํ๊ณ ์ฑ
์๊ฐ์ด ๊ฐํ๋ฉฐ, ์ฌ๋ฌผ์ ๊ด๋ฆฌํ๋ ๋ฐ ๋ฅ์ํฉ๋๋ค.",
|
61 |
+
"ESFP": "์ฐ์์ธ: ์ฌ๊ต์ ์ด๊ณ ํ๋์ ์ด๋ฉฐ, ์ฆ๊ฑฐ์์ ์ถ๊ตฌํ๋ ์ฌ๋์
๋๋ค.",
|
62 |
+
"ESTP": "์ฌ์
๊ฐ: ์๋์ง๊ฐ ๋์น๊ณ ๋๋ดํ๋ฉฐ, ํ๋์ผ๋ก ์๊ฐ์ ์ฎ๊น๋๋ค."
|
63 |
}
|
64 |
|
65 |
+
def calculate_mbti(q1, q2, q3, q4, q5, q6, q7, q8, q9, q10):
|
66 |
+
# ๋จ์ํ๋ MBTI ์ ํ ๊ณ์ฐ ๋ก์ง
|
67 |
+
# ์ค์ ์ ํ๋ฆฌ์ผ์ด์
์์๋ ์ฌ์ฉ์์ ๋ต๋ณ์ ๋ถ์ํ์ฌ ์ ํํ MBTI ์ ํ์ ๊ณ์ฐํ๋ ๋ก์ง์ด ํ์ํฉ๋๋ค.
|
68 |
+
# ์ฌ๊ธฐ์๋ ๋ชจ๋ ๋ต๋ณ์ ๊ธฐ๋ฐ์ผ๋ก ๋ฌด์์๋ก MBTI ์ ํ์ ์ ํํฉ๋๋ค.
|
69 |
+
mbti_type = "INTJ" # ์์๋ก INTJ๋ฅผ ์ ํ
|
70 |
+
return mbti_type, mbti_interpretations[mbti_type]
|
|
|
71 |
|
72 |
+
# ์ง๋ฌธ ๋ฆฌ์คํธ
|
73 |
questions = [
|
74 |
"์๋ก์ด ์ฌ๋๋ค์ ๋ง๋ ๋ ์ฃผ๋ก ์ด๋ป๊ฒ ํ๋ํ๋์?",
|
75 |
+
"๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ๋ ์ด๋ค ์ ๊ทผ ๋ฐฉ์์ ์ ํธํ๋์?",
|
76 |
+
"์ฌ๊ฐ ์๊ฐ์ ์ด๋ป๊ฒ ๋ณด๋ด๋ ๊ฒ์ ์ ํธํ๋์?",
|
77 |
+
"์์ฌ ๊ฒฐ์ ์ ํ ๋ ๋ฌด์์ ๋ ์ค์ํ๊ฒ ์ฌ๊ธฐ๋์?",
|
78 |
+
"ํ ํ๋ก์ ํธ๋ฅผ ํ ๋ ์ด๋ค ์ญํ ์ ์ ํธํ๋์?",
|
79 |
+
"์๋ก์ด ์์ด๋์ด๋ ํ๋ก์ ํธ์ ๋ํด ์ด๋ป๊ฒ ๋๋ผ๋์?",
|
80 |
+
"์คํธ๋ ์ค๋ฅผ ๋ฐ์ ๋ ์ด๋ป๊ฒ ๋์ฒํ๋์?",
|
81 |
+
"ํ์ตํ ๋ ์ด๋ค ๋ฐฉ์์ ์ ํธํ๋์?",
|
82 |
+
"์ผ์์์ ์ด๋ค ๊ฒ๋ค์ ๊ฐ์ฅ ๊ฐ์น๋ฅผ ๋๋์?",
|
83 |
+
"๋ณํ์ ๋ํด ์ด๋ป๊ฒ ๋ฐ์ํ๋์?"
|
84 |
]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
85 |
|
86 |
+
# Gradio ์ฑ ์ ์
|
87 |
+
with gr.Blocks() as app:
|
88 |
+
gr.Markdown("# MBTI ์ง๋จ ํ
์คํธ")
|
89 |
+
# ๊ฐ ์ง๋ฌธ์ ๋ํ ๋ต๋ณ์ ์
๋ ฅ๋ฐ๋ ๋ผ๋์ค ๋ฒํผ์ ์์ฑํฉ๋๋ค.
|
90 |
+
answers = [gr.Radio(["์ต์
1", "์ต์
2", "์ต์
3"], label=question) for question in questions]
|
91 |
+
submit_button = gr.Button("๊ฒฐ๊ณผ ๋ณด๊ธฐ")
|
92 |
+
output_mbti, output_interpretation = gr.Textbox(label="๋น์ ์ MBTI ์ ํ"), gr.Textbox(label="์ ํ ํด์")
|
93 |
+
|
94 |
+
submit_button.click(fn=calculate_mbti, inputs=answers, outputs=[output_mbti, output_interpretation])
|
95 |
+
|
96 |
+
# ์ฑ ์คํ
|
97 |
+
if __name__ == "__main__":
|
98 |
+
app.launch()
|