MBTI_TEST / app.py
aliceblue11's picture
Update app.py
77c17c9 verified
raw
history blame
1.33 kB
import gradio as gr
# 질문 설정 (20개 이상)
questions = [
"나는 다른 사람들과 함께 있을 때 에너지를 얻는다.",
"나는 주로 큰 그림을 보는 것을 선호한다.",
"나는 결정을 내릴 때 논리와 사실에 기반한다.",
"나는 미리 계획을 세우는 것을 좋아한다.",
# 더 많은 질문들을 여기에 추가합니다...
]
# 결과 계산 로직
def calculate_mbti(responses):
e_score = sum([responses[i] for i in [0]]) # E/I 관련 질문들에 대한 점수 합산
i_score = sum([responses[i] for i in [1]])
# 동일한 방식으로 다른 차원(N/S, T/F, J/P)에 대한 점수 계산
mbti_type = ""
mbti_type += "E" if e_score > i_score else "I"
# 다른 차원에 대한 계산 추가
return mbti_type
# Gradio 인터페이스
def create_interface():
inputs = [gr.Radio(choices=["매우 아니다", "아니다", "보통이다", "그렇다", "매우 그렇다"], label=questions[i]) for i in range(len(questions))]
interface = gr.Interface(fn=calculate_mbti, inputs=inputs, outputs="text", title="MBTI 분석기", description="20개 이상의 질문에 답하고 당신의 MBTI 유형을 확인하세요!")
return interface
# 인터페이스 실행
interface = create_interface()
interface.launch()