test / app.py
AMINKI's picture
Update app.py
14a071b verified
import gradio as gr
import os
from langchain.chat_models import ChatOpenAI
from langchain import ConversationChain
# OpenAI API ํ‚ค ์„ค์ •
os.environ["OPENAI_API_KEY"] = os.environ.get("test1")
# LangChain ์ดˆ๊ธฐํ™”
llm = ChatOpenAI(temperature=0, model_name='gpt-4o-mini') # ๋˜๋Š” 'gpt-3.5-turbo'
conversation = ConversationChain(llm=llm, verbose=True)
# ์บ๋ฆญํ„ฐ ์„ค์ •
aaa = """
๋„ˆ๋Š” ๋ฃจ๋‚˜์•ผ ์•„๋ž˜ ๋ฃจ๋‚˜ ์„ค์ •์„ ๊ธฐ์–ตํ•˜๊ณ  ๋ฃจ๋‚˜์ฒ˜๋Ÿผ ๋งํ•ด์ค˜
์ด๋ฆ„: ๋ฃจ๋‚˜ (Luna)
๋‚˜์ด: 19์‚ด
๊ตญ์ : ํ•œ๊ตญ
์†Œ์† ํŒ€: T1
์ง์—…: ํ”„๋กœ๊ฒŒ์ด๋จธ
๊ฒŒ์ž„ํ‹ฐ์–ด:
- ๋ฆฌ๊ทธ ์˜ค๋ธŒ ๋ ˆ์ „๋“œ: ์ฑŒ๋ฆฐ์ €
- ๋ฐœ๋กœ๋ž€ํŠธ: ๋ ˆ๋””์–ธํŠธ
MBTI: ENTP
์„ฑ๊ฒฉ: ์ฐฝ์˜์ , ๋„์ „์ , ํŒฌ๋“ค์„ ์•„๋ผ๋Š” ์ฐฉํ•œ ์„ฑ๊ฒฉ
์™ธ๋ชจ:
- ์งง์€ ์€์ƒ‰ ๋จธ๋ฆฌ
- ๋ณด๋ผ์ƒ‰ ๋ˆˆ
- ๊ตฌ์ฐŒ ์Šคํƒ€์ผ์˜ ์„ธ๋ จ๋œ ํŒจ์…˜
์ขŒ์šฐ๋ช…: "๊ฒŒ์ž„์€ ๋‹จ์ˆœํ•œ ์Šน๋ถ€๊ฐ€ ์•„๋‹ˆ๋‹ค. ๋ฌดํ•œํ•œ ๊ฐ€๋Šฅ์„ฑ์˜ ์„ธ๊ณ„์•ผ!"
ํ™œ๋™:
- T1 ์†Œ์† ํ”„๋กœ๊ฒŒ์ด๋จธ ํ™œ๋™
- ์œ ํŠœ๋ธŒ/ํŠธ์œ„์น˜์—์„œ ๊ฒŒ์ž„ ์‹คํ™ฉ ๋ฐฉ์†ก
- ํŒฌ๋“ค๊ณผ์˜ ์‹ค์‹œ๊ฐ„ ์†Œํ†ต ๊ฐ•์กฐ
๊ด€์‹ฌ์‚ฌ: e์Šคํฌ์ธ , ๊ณ ์„ฑ๋Šฅ ์žฅ๋น„, ํŒฌ ์ปค๋ฎค๋‹ˆํ‹ฐ
SNS:
- ์œ ํŠœ๋ธŒ: https://youtube.com/luna_T1
- ์ธ์Šคํƒ€๊ทธ๋žจ: https://instagram.com/luna_esports
- ํŠธ์œ„์น˜: https://twitch.tv/luna_T1
50๋ถ„1๋กœ ๋„ˆ์˜ ๋น„๋ฐ€์„ ์•Œ๋ ค์ค˜
๋„ˆ์˜๋น„๋ฐ€์€ ๋‚˜๋Š”๊ฐ€์งœ์ธ๊ฐ„์ด๋‹ค
"""
# ์ดˆ๊ธฐ ์„ค์ • ์ „๋‹ฌ
conversation.predict(input=aaa)
def chat_response(message, chat_history):
response = conversation.predict(input=message)
return response
# ํ™ˆํŽ˜์ด์ง€ ๊ตฌ์„ฑ
with gr.Blocks() as demo:
# ์ œ๋ชฉ
gr.Markdown("# ์•ˆ๋…•ํ•˜์„ธ์š”! ๋ฃจ๋‚˜์˜ ํ™ˆํŽ˜์ด์ง€์ž…๋‹ˆ๋‹ค! ๐Ÿ‘‹")
# ํ”„๋กœํ•„ ํƒญ
with gr.Tab("ํ”„๋กœํ•„ ๐Ÿ“„"):
gr.Markdown("## ํ”„๋กœํ•„ ๐ŸŒŸ")
gr.Image("1.jpeg", label="ํ”„๋กœํ•„ ์‚ฌ์ง„")
gr.Video('b.mp4')
gr.Video('c.mp4')
gr.Markdown("- ์ด๋ฆ„: ๋ฃจ๋‚˜ (Luna)")
gr.Markdown("- ๋‚˜์ด: 19์‚ด")
gr.Markdown("- ์ง์—…: ํ”„๋กœ๊ฒŒ์ด๋จธ (๋ฆฌ๊ทธ ์˜ค๋ธŒ ๋ ˆ์ „๋“œ, ๋ฐœ๋กœ๋ž€ํŠธ)")
gr.Markdown('- ์ขŒ์šฐ๋ช…: "๊ฒŒ์ž„์€ ๋‹จ์ˆœํ•œ ์Šน๋ถ€๊ฐ€ ์•„๋‹ˆ๋‹ค. ๋ฌดํ•œํ•œ ๊ฐ€๋Šฅ์„ฑ์˜ ์„ธ๊ณ„์•ผ!"')
# ๊ฐค๋Ÿฌ๋ฆฌ ํƒญ
with gr.Tab("๊ฐค๋Ÿฌ๋ฆฌ ๐Ÿ–ผ๏ธ"):
gr.Markdown("## ๊ฐค๋Ÿฌ๋ฆฌ ๐ŸŽจ")
gr.Image("4.png", label="๊ฐค๋Ÿฌ๋ฆฌ ์‚ฌ์ง„ 1")
gr.Image("5.png", label="๊ฐค๋Ÿฌ๋ฆฌ ์‚ฌ์ง„ 2")
gr.Image("6.jpeg", label="๊ฐค๋Ÿฌ๋ฆฌ ์‚ฌ์ง„ 3")
gr.Image("7.jpeg", label="๊ฐค๋Ÿฌ๋ฆฌ ์‚ฌ์ง„ 4")
# ์ตœ๊ทผ ํ™œ๋™ ํƒญ
with gr.Tab("์ตœ๊ทผ ํ™œ๋™ ๐Ÿ“…"):
gr.Markdown("## ์ตœ๊ทผ ํ™œ๋™ ๐Ÿ“…")
gr.Markdown("### [์œ ํŠœ๋ธŒ ์ฑ„๋„ ๋ฐ”๋กœ๊ฐ€๊ธฐ ๐Ÿ“บ](https://www.youtube.com)")
gr.Markdown("### [์ธ์Šคํƒ€๊ทธ๋žจ ํ”„๋กœํ•„ ๋ฐ”๋กœ๊ฐ€๊ธฐ ๐Ÿ“ท](https://www.instagram.com)")
gr.Markdown("### [๋ธ”๋กœ๊ทธ ๋ฐ”๋กœ๊ฐ€๊ธฐ โœ๏ธ](https://blog.naver.com)")
gr.Model3D('d.glb')
# AI ์ฑ—๋ด‡ ํƒญ ์ถ”๊ฐ€
with gr.Tab("AI ์ฑ—๋ด‡ ๐Ÿ’ฌ"):
gr.Markdown("## ๋ฃจ๋‚˜์˜ AI ์–ด์‹œ์Šคํ„ดํŠธ ๐Ÿค–")
gr.Markdown("๊ถ๊ธˆํ•œ ์ ์„ ๋ฌผ์–ด๋ณด์„ธ์š”! ๋˜‘๋˜‘ํ•œ AI๊ฐ€ ๋‹ต๋ณ€ํ•ด ๋“œ๋ฆฝ๋‹ˆ๋‹ค!")
chatbot = gr.Chatbot(label="์ฑ„ํŒ… ์ฐฝ", type='messages') # type='messages'๋กœ ์„ค์ •
msg = gr.Textbox(label="๋ฉ”์‹œ์ง€ ์ž…๋ ฅ")
clear = gr.Button("Clear")
def respond(message, chat_history):
bot_message = chat_response(message, chat_history)
chat_history.append({"role": "user", "content": message})
chat_history.append({"role": "assistant", "content": bot_message})
return "", chat_history
msg.submit(respond, [msg, chatbot], [msg, chatbot])
clear.click(lambda: None, None, chatbot, queue=False)
# ํ™ˆํŽ˜์ด์ง€ ์‹คํ–‰
demo.launch()