seawolf2357 commited on
Commit
06fc1c1
Β·
verified Β·
1 Parent(s): ebbfd68

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +57 -0
app.py ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+
3
+ # μ‚¬μš©μžμ˜ 응닡을 λΆ„μ„ν•˜μ—¬ MBTI μœ ν˜•μ„ κ³„μ‚°ν•˜λŠ” ν•¨μˆ˜
4
+ def mbti_diagnosis(*answers):
5
+ dimension_scores = {'E': 0, 'I': 0, 'N': 0, 'S': 0, 'T': 0, 'F': 0, 'J': 0, 'P': 0}
6
+ dimensions = ['E', 'I', 'N', 'S', 'T', 'F', 'J', 'P']
7
+
8
+ # 각 문항에 따라 차원 점수λ₯Ό μ—…λ°μ΄νŠΈ
9
+ for i, answer in enumerate(answers):
10
+ if i % 4 == 0 or i % 4 == 1:
11
+ dimension_scores[dimensions[i % 8]] += int(answer)
12
+ else:
13
+ dimension_scores[dimensions[i % 8 + 1]] += int(answer)
14
+
15
+ # MBTI μœ ν˜• κ²°μ •
16
+ mbti_type = ''
17
+ mbti_type += 'E' if dimension_scores['E'] >= dimension_scores['I'] else 'I'
18
+ mbti_type += 'N' if dimension_scores['N'] >= dimension_scores['S'] else 'S'
19
+ mbti_type += 'T' if dimension_scores['T'] >= dimension_scores['F'] else 'F'
20
+ mbti_type += 'J' if dimension_scores['J'] >= dimension_scores['P'] else 'P'
21
+
22
+ return mbti_type
23
+
24
+ questions = [
25
+ "μ‚¬λžŒλ“€κ³Ό μ–΄μšΈλ¦¬λŠ” 것을 μ’‹μ•„ν•˜λ‚˜μš”?",
26
+ "ꡬ체적인 μ‚¬μ‹€λ³΄λ‹€λŠ” 아이디어에 더 관심이 λ§Žλ‚˜μš”?",
27
+ "결정을 내릴 λ•Œ 논리와 이성을 μ€‘μš”μ‹œν•˜λ‚˜μš”?",
28
+ "κ³„νšμ„ μ„Έμš°κ³  그에 따라 ν–‰λ™ν•˜λŠ” 것을 μ„ ν˜Έν•˜λ‚˜μš”?",
29
+ "μ†Œκ·œλͺ¨ κ·Έλ£Ήμ΄λ‚˜ 혼자 μžˆλŠ” μ‹œκ°„μ„ μ„ ν˜Έν•˜λ‚˜μš”?",
30
+ "ν˜„μ‹€μ μΈ 해결책을 μ„ ν˜Έν•˜λ‚˜μš”?",
31
+ "κ°μ •λ³΄λ‹€λŠ” 사싀에 κΈ°λ°˜ν•˜μ—¬ μ˜μ‚¬κ²°μ •μ„ ν•˜λ‚˜μš”?",
32
+ "μœ΅ν†΅μ„± 있게 κ³„νšμ„ λ³€κ²½ν•˜λŠ” 것에 νŽΈμ•ˆν•¨μ„ λŠλΌλ‚˜μš”?",
33
+ "μƒˆλ‘œμš΄ μ‚¬λžŒλ“€μ„ λ§Œλ‚˜λŠ” 것에 ν₯λΆ„ν•˜λ‚˜μš”?",
34
+ "상상λ ₯을 자주 μ‚¬μš©ν•˜λ‚˜μš”?",
35
+ "μΉœκ΅¬λ‚˜ λ™λ£Œμ˜ 감정을 κ³ λ €ν•˜λŠ” νŽΈμΈκ°€μš”?",
36
+ "λͺ©ν‘œλ₯Ό μ„€μ •ν•˜κ³  그것을 λ‹¬μ„±ν•˜κΈ° μœ„ν•΄ 일정을 κ΄€λ¦¬ν•˜λ‚˜μš”?",
37
+ "혼자만의 μ‹œκ°„μ„ μ€‘μš”ν•˜κ²Œ μƒκ°ν•˜λ‚˜μš”?",
38
+ "μ„ΈλΆ€ μ‚¬ν•­λ³΄λ‹€λŠ” 전체적인 그림을 λ³΄λŠ” 것을 μ„ ν˜Έν•˜λ‚˜μš”?",
39
+ "νƒ€μΈμ˜ μž…μž₯을 μ΄ν•΄ν•˜λ €κ³  λ…Έλ ₯ν•˜λ‚˜μš”?",
40
+ "κ°‘μž‘μŠ€λŸ¬μš΄ λ³€ν™”λ₯Ό 잘 λ°›μ•„λ“€μ΄λ‚˜μš”?",
41
+ "λŒ€ν™”λ³΄λ‹€λŠ” 관찰을 μ„ ν˜Έν•˜λ‚˜μš”?",
42
+ "μ‹€μ œ κ²½ν—˜μ„ 톡해 λ°°μš°λŠ” 것을 μ’‹μ•„ν•˜λ‚˜μš”?",
43
+ "곡정성과 μ •μ˜λ₯Ό μ€‘μš”μ‹œν•˜λ‚˜μš”?",
44
+ "κ³„νšμ— 따라 μΌν•˜λŠ” 것이 μ•ˆμ •κ°μ„ μ€λ‚˜μš”?"
45
+ ]
46
+
47
+ # Gradio μΈν„°νŽ˜μ΄μŠ€ μ„€μ •
48
+ interface = gr.Interface(
49
+ fn=mbti_diagnosis,
50
+ inputs=[gr.Radio(["예", "μ•„λ‹ˆμ˜€"], label=question) for question in questions],
51
+ outputs="text",
52
+ title="MBTI μœ ν˜• 진단",
53
+ description="λ‹€μŒ 문항에 λŒ€ν•œ 닡변을 톡해 λ‹Ήμ‹ μ˜ MBTI μœ ν˜•μ„ μ•Œμ•„λ³΄μ„Έμš”."
54
+ )
55
+
56
+ # μΈν„°νŽ˜μ΄μŠ€ μ‹€ν–‰
57
+ interface.launch()