subwaybot / app.py
Hyun05's picture
Update app.py
f2b55be verified
Raw History Blame Contribute Delete
1.18 kB
from transformers import pipeline
import gradio as gr
# βœ… KoAlpaca-Polyglot λͺ¨λΈμ€ ν•œκ΅­μ–΄ λŒ€ν™”μ— νŠΉν™”λœ λͺ¨λΈμž…λ‹ˆλ‹€.
generator = pipeline("text-generation", model="beomi/KoAlpaca-Polyglot-12.8B")
# βœ… 감정 톀별 λŒ€ν™” 생성 ν•¨μˆ˜
def chat_with_emotion(user_input, tone="μžμ—°μŠ€λŸ¬μš΄"):
if not user_input:
return "μž…λ ₯을 μž…λ ₯ν•΄μ£Όμ„Έμš”!"
prompt = f"({tone} ν†€μœΌλ‘œ μ‘λ‹΅ν•΄μ€˜)\nμ‚¬μš©μž: {user_input}\nAI:"
response = generator(prompt, max_new_tokens=150, do_sample=True, temperature=0.7)
return response[0]["generated_text"].replace(prompt, "").strip()
# βœ… Gradio μΈν„°νŽ˜μ΄μŠ€ ꡬ성
demo = gr.Interface(
fn=chat_with_emotion,
inputs=[
gr.Textbox(label="μ‚¬μš©μž μž…λ ₯", placeholder="였늘 ν•˜λ£¨κ°€ νž˜λ“€μ—ˆμ–΄..."),
gr.Radio(["μžμ—°μŠ€λŸ¬μš΄", "μœ„λ‘œν•˜λŠ”", "κ³΅κ°ν•˜λŠ”", "μ•ˆμ‹¬μ‹œν‚€λŠ”", "ν™œκΈ°μ°¬"], label="감정 톀", value="μžμ—°μŠ€λŸ¬μš΄"),
],
outputs=gr.Textbox(label="AI 응닡"),
title="감정 기반 ν•œκ΅­μ–΄ 챗봇 (KoAlpaca-Polyglot)",
description="ν•œκ΅­μ–΄λ‘œ 감정 톀에 따라 κ³΅κ°ν˜• 닡변을 μƒμ„±ν•©λ‹ˆλ‹€."
)
demo.launch()