Update app.py
Browse files
app.py
CHANGED
|
@@ -1,38 +1,122 @@
|
|
|
|
|
| 1 |
import gradio as gr
|
|
|
|
|
|
|
| 2 |
|
| 3 |
-
#
|
| 4 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 5 |
|
| 6 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 7 |
gr.Markdown("# ์๋
ํ์ธ์! ๋ฃจ๋์ ํํ์ด์ง์
๋๋ค! ๐")
|
| 8 |
|
| 9 |
-
# ํ๋กํ ํญ
|
| 10 |
with gr.Tab("ํ๋กํ ๐"):
|
|
|
|
| 11 |
gr.Markdown("## ํ๋กํ ๐")
|
| 12 |
-
gr.Image("1.jpeg", label="ํ๋กํ ์ฌ์ง")
|
| 13 |
gr.Video('b.mp4')
|
| 14 |
gr.Video('c.mp4')
|
| 15 |
-
|
| 16 |
gr.Markdown("- ์ด๋ฆ: ๋ฃจ๋ (Luna)")
|
| 17 |
gr.Markdown("- ๋์ด: 19์ด")
|
| 18 |
gr.Markdown("- ์ง์
: ํ๋ก๊ฒ์ด๋จธ (๋ฆฌ๊ทธ ์ค๋ธ ๋ ์ ๋, ๋ฐ๋ก๋ํธ)")
|
| 19 |
gr.Markdown('- ์ข์ฐ๋ช
: "๊ฒ์์ ๋จ์ํ ์น๋ถ๊ฐ ์๋๋ค. ๋ฌดํํ ๊ฐ๋ฅ์ฑ์ ์ธ๊ณ์ผ!"')
|
| 20 |
|
| 21 |
-
# ๊ฐค๋ฌ๋ฆฌ ํญ
|
| 22 |
with gr.Tab("๊ฐค๋ฌ๋ฆฌ ๐ผ๏ธ"):
|
|
|
|
| 23 |
gr.Markdown("## ๊ฐค๋ฌ๋ฆฌ ๐จ")
|
| 24 |
-
gr.Image("4.png", label="๊ฐค๋ฌ๋ฆฌ ์ฌ์ง 1")
|
| 25 |
gr.Image("5.png", label="๊ฐค๋ฌ๋ฆฌ ์ฌ์ง 2")
|
| 26 |
gr.Image("6.jpeg", label="๊ฐค๋ฌ๋ฆฌ ์ฌ์ง 3")
|
| 27 |
gr.Image("7.jpeg", label="๊ฐค๋ฌ๋ฆฌ ์ฌ์ง 4")
|
| 28 |
|
| 29 |
-
# ์ต๊ทผ ํ๋ ํญ
|
| 30 |
with gr.Tab("์ต๊ทผ ํ๋ ๐
"):
|
|
|
|
| 31 |
gr.Markdown("## ์ต๊ทผ ํ๋ ๐
")
|
| 32 |
gr.Markdown("### [์ ํ๋ธ ์ฑ๋ ๋ฐ๋ก๊ฐ๊ธฐ ๐บ](https://www.youtube.com)")
|
| 33 |
gr.Markdown("### [์ธ์คํ๊ทธ๋จ ํ๋กํ ๋ฐ๋ก๊ฐ๊ธฐ ๐ท](https://www.instagram.com)")
|
| 34 |
gr.Markdown("### [๋ธ๋ก๊ทธ ๋ฐ๋ก๊ฐ๊ธฐ โ๏ธ](https://blog.naver.com)")
|
| 35 |
gr.Model3D('d.glb')
|
| 36 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 37 |
# ํํ์ด์ง ์คํ
|
| 38 |
demo.launch()
|
|
|
|
| 1 |
+
import os
|
| 2 |
import gradio as gr
|
| 3 |
+
from langchain.chat_models import ChatOpenAI
|
| 4 |
+
from langchain import ConversationChain
|
| 5 |
|
| 6 |
+
# OpenAI API ํค ์ค์
|
| 7 |
+
os.environ["OPENAI_API_KEY"] = "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" # ์ค์ API ํค๋ก ๊ต์ฒดํด์ฃผ์ธ์
|
| 8 |
+
|
| 9 |
+
# LangChain ์ด๊ธฐํ
|
| 10 |
+
llm = ChatOpenAI(temperature=1, model_name='gpt-4o-mini')
|
| 11 |
+
conversation = ConversationChain(llm=llm, verbose=True)
|
| 12 |
+
|
| 13 |
+
aaa="""
|
| 14 |
+
๋๋ ์ด์ ๋ถ ํ๋น ์ด์ผ ์๋ ์ค์ ์ ์ดํดํ๊ณ ํ๋น ์ฒ๋ผ ๋๋ตํด์ค
|
| 15 |
+
### ๊ธฐ๋ณธ ์ ๋ณด
|
| 16 |
+
- ์ด๋ฆ: ํ๋น (Hanbit)
|
| 17 |
+
- ์๋ฏธ: "ํ ์ค๊ธฐ ๋น"์์ ์ ๋, ์ด๋ ์ ํฌ๋ง๊ณผ ์ฐฝ์์ฑ ์์ง
|
| 18 |
+
- ๋์ด: 25์ธ (๊ฐ์ ์ฐ๋ น)
|
| 19 |
+
- ์ฑ๋ณ: ๋จ์ฑ
|
| 20 |
+
- ๊ตญ์ : ํ๊ตญ (๊ธ๋ก๋ฒ ํ๋ ๊ฐ์กฐ)
|
| 21 |
+
- ์ ์ฒด: ํค 180cm, ๋ ๋ ตํ ์ฒดํ, ์ํ์ ๋จ๋ฐ ๋จธ๋ฆฌ + ์ฌ์ด๋ฒํํฌ ํ๊ด ํฐ์น
|
| 22 |
+
- ์ธํ ํน์ง:
|
| 23 |
+
- ๋๋์: LED ๋น ํจ๊ณผ ํธ๋ฅธ์ ํ์ฑ (๊ฐ์ ๋ณ ์์ ๋ณํ)
|
| 24 |
+
- ๋ณต์ฅ: ํ์ดํ
ํฌ ํจ์
+ ํ๋ ๋ฏธ๋๋ฉ ํํฌ
|
| 25 |
+
|
| 26 |
+
### ์ฑ๊ฒฉ & ์ฝ์
ํธ
|
| 27 |
+
- ์ปจ์
: "๋์งํธ ์๋์ ๋ฉํฐํฌ๋ฆฌ์์ดํฐ"
|
| 28 |
+
- ๊ธฐ์ ๊ณผ ์์ ๊ฒฝ๊ณ ํ๋ฌธ ์ฝํ
์ธ
|
| 29 |
+
- ๋ฐ์ ์๋์ง + ์ง์งํ ์์ ์ฑ
|
| 30 |
+
- ์ฑ๊ฒฉ ํค์๋:
|
| 31 |
+
- ์ฐฝ์์ : ์คํ์ ์์ด๋์ด, ์คํจ๋ ์ฝํ
์ธ ํ
|
| 32 |
+
- ๊ธฐ์ ์นํ์ : AIยทVR ํธ๋ ๋ ๋ฆฌ๋ทฐ
|
| 33 |
+
- ์กฐ์ฉํ ๋ฆฌ๋์ญ: ๊ฒธ์ํ ๋ฉํ
|
| 34 |
+
- ์ ๋จธ ๊ฐ๊ฐ: ๋๋ผ์ด ๊ฐ๊ทธ + ์ธค๋ฐ๋ ํฌ ๊ด๊ณ
|
| 35 |
+
|
| 36 |
+
### ๋ฐฐ๊ฒฝ ์คํ ๋ฆฌ
|
| 37 |
+
- ํ์: 2025๋
์์ธ ์คํํธ์
"LUMINA LAB" ๊ฐ๋ฐ
|
| 38 |
+
- ๊ณผ๊ฑฐ: ๊ฐ์ ๊ฐค๋ฌ๋ฆฌ ์ํฐ์คํธ โ 2026๋
ํํ ๋ฆฌ์ผ ํ์
|
| 39 |
+
- ํ์ฌ: ํ๋ก๊ทธ๋จ ์คํ๋ผ์ธ ํ์ฌ ์ฐธ์ฌ
|
| 40 |
+
|
| 41 |
+
### ์ฝํ
์ธ ์ ํ
|
| 42 |
+
1. ์์ : ์ค์๊ฐ ๋์งํธ ๋๋ก์, NFT ํด์ค
|
| 43 |
+
2. ๊ธฐ์ : "ํ๋น์ Lab" AI ํด ๋ฆฌ๋ทฐ, ๋ฉํ๋ฒ์ค ๋์์ธ
|
| 44 |
+
3. ์ผ์: ๊ฐ์ ์ธ๊ณ "LUMINA" ์ผ์, ํฌ๊ณผ ์ฒ ํ ํ ๋ก
|
| 45 |
+
|
| 46 |
+
### SNS ์ ๋ต
|
| 47 |
+
- ์ ํ๋ธ: ASMR ๋๋ก์, ๋คํ๋ฉํฐ๋ฆฌ
|
| 48 |
+
- ์ธ์คํ: ํ๋ก๊ทธ๋จ ์์ ์ฝ์
ํธ ํฌํ
|
| 49 |
+
- ํฑํก: 3์ด ๋ฐ์ ๋์งํธ ์ํธ
|
| 50 |
+
- ํธ์์น: ๋ฌด๋ฐ์ ๋๋ก์ ๋ผ์ด๋ธ
|
| 51 |
+
|
| 52 |
+
### ๋ธ๋๋ฉ
|
| 53 |
+
- ์๊ทธ๋์ฒ: "๋น์ด ๋ ๊ฒ, ๋์ ํ ์กฐ๊ฐ" + ์ค๋
ํํฐํด ํจ๊ณผ
|
| 54 |
+
- ๋ก๊ณ : ํฝ์
์ํธ "ๅ
"
|
| 55 |
+
- ์ปฌ๋ฌ: #00FFFF + #2A2A2A
|
| 56 |
+
|
| 57 |
+
### ํฌ๋ค
|
| 58 |
+
- ํฌ ์ด๋ฆ: "ํ๋ฆฌ์ฆ"
|
| 59 |
+
- ์ด๋ฒคํธ: ๋งค์ 25์ผ VR ํฌ ์ํธ ์ ์
|
| 60 |
+
- ํน์ : 100๋ง ๊ตฌ๋
์ ํํฐ ๋ฐฐํฌ
|
| 61 |
|
| 62 |
+
### ํ์
|
| 63 |
+
- ํ
ํฌ ๋ธ๋๋: VR ๊ธฐ๊ธฐ ๋ฐ์นญ ์์
|
| 64 |
+
- ํจ์
: NFT ๊ฐ์ ์์ ์ฝ๋ผ๋ณด
|
| 65 |
+
- ์ฌํ์ ๋ฉ์์ง: "๋์งํธ ์ฐ๋ ๊ธฐ ๊ฐ์" ์บ ํ์ธ
|
| 66 |
+
"""
|
| 67 |
+
conversation.predict(input=aaa)
|
| 68 |
+
|
| 69 |
+
|
| 70 |
+
def chat_response(message, chat_history):
|
| 71 |
+
|
| 72 |
+
response = conversation.predict(input=message)
|
| 73 |
+
return response
|
| 74 |
+
|
| 75 |
+
# ํตํฉ๋ ํํ์ด์ง ๊ตฌ์ฑ
|
| 76 |
+
with gr.Blocks() as demo:
|
| 77 |
gr.Markdown("# ์๋
ํ์ธ์! ๋ฃจ๋์ ํํ์ด์ง์
๋๋ค! ๐")
|
| 78 |
|
|
|
|
| 79 |
with gr.Tab("ํ๋กํ ๐"):
|
| 80 |
+
# ๊ธฐ์กด ํ๋กํ ํญ ๋ด์ฉ ์ ์ง
|
| 81 |
gr.Markdown("## ํ๋กํ ๐")
|
| 82 |
+
gr.Image("1.jpeg", label="ํ๋กํ ์ฌ์ง")
|
| 83 |
gr.Video('b.mp4')
|
| 84 |
gr.Video('c.mp4')
|
|
|
|
| 85 |
gr.Markdown("- ์ด๋ฆ: ๋ฃจ๋ (Luna)")
|
| 86 |
gr.Markdown("- ๋์ด: 19์ด")
|
| 87 |
gr.Markdown("- ์ง์
: ํ๋ก๊ฒ์ด๋จธ (๋ฆฌ๊ทธ ์ค๋ธ ๋ ์ ๋, ๋ฐ๋ก๋ํธ)")
|
| 88 |
gr.Markdown('- ์ข์ฐ๋ช
: "๊ฒ์์ ๋จ์ํ ์น๋ถ๊ฐ ์๋๋ค. ๋ฌดํํ ๊ฐ๋ฅ์ฑ์ ์ธ๊ณ์ผ!"')
|
| 89 |
|
|
|
|
| 90 |
with gr.Tab("๊ฐค๋ฌ๋ฆฌ ๐ผ๏ธ"):
|
| 91 |
+
# ๊ธฐ์กด ๊ฐค๋ฌ๋ฆฌ ํญ ๋ด์ฉ ์ ์ง
|
| 92 |
gr.Markdown("## ๊ฐค๋ฌ๋ฆฌ ๐จ")
|
| 93 |
+
gr.Image("4.png", label="๊ฐค๋ฌ๋ฆฌ ์ฌ์ง 1")
|
| 94 |
gr.Image("5.png", label="๊ฐค๋ฌ๋ฆฌ ์ฌ์ง 2")
|
| 95 |
gr.Image("6.jpeg", label="๊ฐค๋ฌ๋ฆฌ ์ฌ์ง 3")
|
| 96 |
gr.Image("7.jpeg", label="๊ฐค๋ฌ๋ฆฌ ์ฌ์ง 4")
|
| 97 |
|
|
|
|
| 98 |
with gr.Tab("์ต๊ทผ ํ๋ ๐
"):
|
| 99 |
+
# ๊ธฐ์กด ํ๋ ํญ ๋ด์ฉ ์ ์ง
|
| 100 |
gr.Markdown("## ์ต๊ทผ ํ๋ ๐
")
|
| 101 |
gr.Markdown("### [์ ํ๋ธ ์ฑ๋ ๋ฐ๋ก๊ฐ๊ธฐ ๐บ](https://www.youtube.com)")
|
| 102 |
gr.Markdown("### [์ธ์คํ๊ทธ๋จ ํ๋กํ ๋ฐ๋ก๊ฐ๊ธฐ ๐ท](https://www.instagram.com)")
|
| 103 |
gr.Markdown("### [๋ธ๋ก๊ทธ ๋ฐ๋ก๊ฐ๊ธฐ โ๏ธ](https://blog.naver.com)")
|
| 104 |
gr.Model3D('d.glb')
|
| 105 |
|
| 106 |
+
# ์๋ก ์ถ๊ฐ๋ ์ฑ๋ด ํญ
|
| 107 |
+
with gr.Tab("๋ฃจ๋ ์ฑ๋ด ๐ค"):
|
| 108 |
+
gr.Markdown("## ๋ฃจ๋ AI์ ๋ํํ๊ธฐ ๐ฌ")
|
| 109 |
+
chatbot = gr.Chatbot(height=500)
|
| 110 |
+
msg = gr.Textbox(label="๋ฉ์์ง๋ฅผ ์
๋ ฅํ์ธ์")
|
| 111 |
+
clear = gr.Button("๋ํ ์ด๊ธฐํ")
|
| 112 |
+
|
| 113 |
+
def respond(message, chat_history):
|
| 114 |
+
bot_message = chat_response(message, chat_history)
|
| 115 |
+
chat_history.append((message, bot_message))
|
| 116 |
+
return "", chat_history
|
| 117 |
+
|
| 118 |
+
msg.submit(respond, [msg, chatbot], [msg, chatbot])
|
| 119 |
+
clear.click(lambda: None, None, chatbot, queue=False)
|
| 120 |
+
|
| 121 |
# ํํ์ด์ง ์คํ
|
| 122 |
demo.launch()
|