Spaces:
Sleeping
Sleeping
import gradio as gr | |
def mbti_diagnosis(*answers): | |
dimension_scores = {'E': 0, 'I': 0, 'N': 0, 'S': 0, 'T': 0, 'F': 0, 'J': 0, 'P': 0} | |
# κ° λ¬Ένμ λ°λΌ μ°¨μ μ μλ₯Ό μ λ°μ΄νΈ (보μ λ λ‘μ§) | |
for i, answer in enumerate(answers): | |
score = 1 if answer == "μ" else 0 | |
if i in [0, 1, 4, 5, 8, 9, 12, 13, 16, 17]: # E, N, T, J μ°¨μμ ν΄λΉνλ λ¬Έν μΈλ±μ€ | |
if i % 2 == 0: # E, N | |
dimension_scores['E' if i < 8 else 'N'] += score | |
else: # I, S | |
dimension_scores['I' if i < 8 else 'S'] += score | |
else: # T, F, J, P μ°¨μμ ν΄λΉνλ λ¬Έν μΈλ±μ€ | |
if i % 2 == 0: # T, J | |
dimension_scores['T' if i < 16 else 'J'] += score | |
else: # F, P | |
dimension_scores['F' if i < 16 else 'P'] += score | |
# MBTI μ ν κ²°μ | |
mbti_type = '' | |
mbti_type += 'E' if dimension_scores['E'] > dimension_scores['I'] else 'I' | |
mbti_type += 'N' if dimension_scores['N'] > dimension_scores['S'] else 'S' | |
mbti_type += 'T' if dimension_scores['T'] > dimension_scores['F'] else 'F' | |
mbti_type += 'J' if dimension_scores['J'] > dimension_scores['P'] else 'P' | |
return mbti_type | |
questions = [ | |
"μ¬λλ€κ³Ό μ΄μΈλ¦¬λ κ²μ μ’μνλμ?", | |
"ꡬ체μ μΈ μ¬μ€λ³΄λ€λ μμ΄λμ΄μ λ κ΄μ¬μ΄ λ§λμ?", | |
"κ²°μ μ λ΄λ¦΄ λ λ Όλ¦¬μ μ΄μ±μ μ€μμνλμ?", | |
"κ³νμ μΈμ°κ³ κ·Έμ λ°λΌ νλνλ κ²μ μ νΈνλμ?", | |
"μκ·λͺ¨ κ·Έλ£Ήμ΄λ νΌμ μλ μκ°μ μ νΈνλμ?", | |
"νμ€μ μΈ ν΄κ²°μ± μ μ νΈνλμ?", | |
"κ°μ 보λ€λ μ¬μ€μ κΈ°λ°νμ¬ μμ¬κ²°μ μ νλμ?", | |
"μ΅ν΅μ± μκ² κ³νμ λ³κ²½νλ κ²μ νΈμν¨μ λλΌλμ?", | |
"μλ‘μ΄ μ¬λλ€μ λ§λλ κ²μ ν₯λΆνλμ?", | |
"μμλ ₯μ μμ£Ό μ¬μ©νλμ?", | |
"μΉκ΅¬λ λλ£μ κ°μ μ κ³ λ €νλ νΈμΈκ°μ?", | |
"λͺ©νλ₯Ό μ€μ νκ³ κ·Έκ²μ λ¬μ±νκΈ° μν΄ μΌμ μ κ΄λ¦¬νλμ?", | |
"νΌμλ§μ μκ°μ μ€μνκ² μκ°νλμ?", | |
"μΈλΆ μ¬ν보λ€λ μ 체μ μΈ κ·Έλ¦Όμ 보λ κ²μ μ νΈνλμ?", | |
"νμΈμ μ μ₯μ μ΄ν΄νλ €κ³ λ Έλ ₯νλμ?", | |
"κ°μμ€λ¬μ΄ λ³νλ₯Ό μ λ°μλ€μ΄λμ?", | |
"λν보λ€λ κ΄μ°°μ μ νΈνλμ?", | |
"μ€μ κ²½νμ ν΅ν΄ λ°°μ°λ κ²μ μ’μνλμ?", | |
"곡μ μ±κ³Ό μ μλ₯Ό μ€μμνλμ?", | |
"κ³νμ λ°λΌ μΌνλ κ²μ΄ μμ κ°μ μ€λμ?" | |
] | |
# Gradio μΈν°νμ΄μ€ μ€μ | |
interface = gr.Interface( | |
fn=mbti_diagnosis, | |
inputs=[gr.Radio(["μ", "μλμ€"], label=question) for question in questions], | |
outputs="text", | |
title="MBTI μ ν μ§λ¨", | |
description="λ€μ λ¬Ένμ λν λ΅λ³μ ν΅ν΄ λΉμ μ MBTI μ νμ μμ보μΈμ." | |
) | |
# μΈν°νμ΄μ€ μ€ν | |
interface.launch() |