File size: 1,405 Bytes
e140027
 
7450f4e
e140027
7450f4e
e140027
 
 
 
 
7450f4e
 
 
 
 
e140027
7450f4e
 
 
 
 
 
 
 
 
 
 
 
 
e140027
7450f4e
e140027
 
7450f4e
 
e140027
 
7450f4e
 
e140027
 
7450f4e
e140027
7450f4e
 
e140027
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
import gradio as gr

# MBTI 분석을 위한 간단한 함수
def mbti_analysis(answers):
    # 각 성격 지표에 대한 점수 계산
    extroversion = sum(answers[:5])
    introversion = sum(answers[5:10])
    sensing = sum(answers[10:15])
    intuition = sum(answers[15:20])
    
    # 각 성향에 대한 퍼센트 계산
    e_percentage = (extroversion / (extroversion + introversion)) * 100
    i_percentage = 100 - e_percentage
    s_percentage = (sensing / (sensing + intuition)) * 100
    n_percentage = 100 - s_percentage
    
    # 성향 결정
    if e_percentage > i_percentage:
        e_or_i = "E"
    else:
        e_or_i = "I"
        
    if s_percentage > n_percentage:
        s_or_n = "S"
    else:
        s_or_n = "N"
    
    # 성격 유형 결과 출력
    return f"외향형: {e_percentage:.2f}%, 내향형: {i_percentage:.2f}%\n감각형: {s_percentage:.2f}%, 직관형: {n_percentage:.2f}%"

# Gradio 인터페이스 구성
questions = [
    "새로운 사람들과 어울리는 것을 즐깁니까?",
    "혼자 있는 시간이 나를 충전시킵니까?",
    # 추가 질문 18개...
]

inputs = [gr.Slider(1, 5, label=q) for q in questions]

demo = gr.Interface(
    fn=mbti_analysis,
    inputs=inputs,
    outputs="text",
    title="MBTI 분석기",
    description="MBTI 성격 유형을 분석하여 결과를 퍼센트로 보여줍니다."
)

demo.launch()