Update app.py
Browse files
app.py
CHANGED
@@ -42,10 +42,10 @@ def respond(
|
|
42 |
message,
|
43 |
history: List[Tuple[str, str]],
|
44 |
system_message="", # κΈ°λ³Έκ° μΆκ°
|
45 |
-
max_tokens=
|
46 |
-
temperature=0.7, # κΈ°λ³Έκ°
|
47 |
-
top_p=0.9, # κΈ°λ³Έκ°
|
48 |
-
):
|
49 |
global fashion_code, uhdimage_code, MixGEN_code, current_parquet_content
|
50 |
system_message = system_message or ""
|
51 |
system_prefix = """λ°λμ νκΈλ‘ λ΅λ³ν κ². λλ μ£Όμ΄μ§ μμ€μ½λλ₯Ό κΈ°λ°μΌλ‘ "μλΉμ€ μ¬μ© μ€λͺ
λ° μλ΄, Q&Aλ₯Ό νλ μν μ΄λ€". μμ£Ό μΉμ νκ³ μμΈνκ² 4000ν ν° μ΄μ Markdown νμμΌλ‘ μμ±νλΌ. λλ μ½λλ₯Ό κΈ°λ°μΌλ‘ μ¬μ© μ€λͺ
λ° μ§μ μλ΅μ μ§ννλ©°, μ΄μ©μμκ² λμμ μ£Όμ΄μΌ νλ€. μ΄μ©μκ° κΆκΈν΄ ν λ§ν λ΄μ©μ μΉμ νκ² μλ €μ£Όλλ‘ νλΌ. μ½λ μ 체 λ΄μ©μ λν΄μλ 보μμ μ μ§νκ³ , ν€ κ° λ° μλν¬μΈνΈμ ꡬ체μ μΈ λͺ¨λΈμ 곡κ°νμ§ λ§λΌ."""
|
@@ -93,8 +93,8 @@ def respond(
|
|
93 |
|
94 |
def upload_csv(file):
|
95 |
try:
|
96 |
-
# CSV νμΌ μ½κΈ° (
|
97 |
-
df = pd.read_csv(file)
|
98 |
|
99 |
# CSV νμΌμ μ»¬λΌ νμΈ
|
100 |
required_columns = {'id', 'text', 'label', 'metadata'}
|
@@ -127,24 +127,18 @@ def upload_csv(file):
|
|
127 |
return f"CSV νμΌ μ
λ‘λ λ° λ³ν μ€ μ€λ₯κ° λ°μνμ΅λλ€: {str(e)}", ""
|
128 |
|
129 |
# Gradio Blocks μΈν°νμ΄μ€ μ€μ
|
130 |
-
with gr.Blocks(
|
131 |
gr.Markdown("# LLM μλΉμ€ μΈν°νμ΄μ€")
|
132 |
|
133 |
with gr.Tab("μ±λ΄"):
|
134 |
gr.Markdown("### LLMκ³Ό λννκΈ°")
|
135 |
chat = gr.ChatInterface(
|
136 |
-
respond,
|
137 |
-
additional_inputs=[
|
138 |
-
gr.Textbox(label="System Message", value=""),
|
139 |
-
gr.Slider(minimum=1, maximum=8000, value=4000, label="Max Tokens"),
|
140 |
-
gr.Slider(minimum=0, maximum=1, value=0.7, label="Temperature"),
|
141 |
-
gr.Slider(minimum=0, maximum=1, value=0.9, label="Top P"),
|
142 |
-
],
|
143 |
examples=[
|
144 |
["ν¨μ
μ½λ μ€ν"],
|
145 |
["UHD μ΄λ―Έμ§ μ½λ μ€ν"],
|
146 |
["MixGEN μ½λ μ€ν"],
|
147 |
-
["test.parquet μ€ν"],
|
148 |
["μμΈν μ¬μ© λ°©λ²μ λ§μΉ νλ©΄μ 보면μ μ€λͺ
νλ―μ΄ 4000 ν ν° μ΄μ μμΈν μ€λͺ
νλΌ"],
|
149 |
["FAQ 20건μ μμΈνκ² μμ±νλΌ. 4000ν ν° μ΄μ μ¬μ©νλΌ."],
|
150 |
["μ¬μ© λ°©λ²κ³Ό μ°¨λ³μ , νΉμ§, κ°μ μ μ€μ¬μΌλ‘ 4000 ν ν° μ΄μ μ νλΈ μμ μ€ν¬λ¦½νΈ ννλ‘ μμ±νλΌ"],
|
@@ -152,10 +146,15 @@ with gr.Blocks(theme="Nymbo/Nymbo_Theme",) as demo:
|
|
152 |
["νΉν μΆμμ νμ©ν κΈ°μ λ° λΉμ¦λμ€λͺ¨λΈ μΈ‘λ©΄μ ν¬ν¨νμ¬ νΉν μΆμμ ꡬμ±μ λ§κ² νμ μ μΈ μ°½μ λ°λͺ
λ΄μ©μ μ€μ¬μΌλ‘ 4000 ν ν° μ΄μ μμ±νλΌ."],
|
153 |
["κ³μ μ΄μ΄μ λ΅λ³νλΌ"],
|
154 |
],
|
155 |
-
theme="
|
156 |
-
cache_examples=False, # μΊμ± λΉνμ±ν μ€μ
|
157 |
)
|
158 |
|
|
|
|
|
|
|
|
|
|
|
|
|
159 |
with gr.Tab("λ°μ΄ν° λ³ν"):
|
160 |
gr.Markdown("### CSV νμΌ μ
λ‘λ λ° Parquet λ³ν")
|
161 |
with gr.Row():
|
@@ -177,7 +176,7 @@ with gr.Blocks(theme="Nymbo/Nymbo_Theme",) as demo:
|
|
177 |
|
178 |
gr.Markdown("## μ£Όμ μ¬ν")
|
179 |
gr.Markdown("""
|
180 |
-
- **CSV μ
λ‘λ**: CSV νμΌμ μ
λ‘λνλ©΄ μλμΌλ‘ Parquet νμΌλ‘ λ³νλ©λλ€.
|
181 |
- **Parquet 미리보기**: μ
λ‘λλ Parquet νμΌμ 첫 10κ° νμ΄ λ―Έλ¦¬λ³΄κΈ°λ‘ νμλ©λλ€.
|
182 |
- **LLMκ³Όμ λν**: λ³νλ Parquet νμΌ λ΄μ©μ κΈ°λ°μΌλ‘ LLMμ΄ μλ΅μ μμ±ν©λλ€.
|
183 |
""")
|
|
|
42 |
message,
|
43 |
history: List[Tuple[str, str]],
|
44 |
system_message="", # κΈ°λ³Έκ° μΆκ°
|
45 |
+
max_tokens=4000, # κΈ°λ³Έκ° λ³κ²½
|
46 |
+
temperature=0.7, # κΈ°λ³Έκ° μ μ§
|
47 |
+
top_p=0.9, # κΈ°λ³Έκ° μ μ§
|
48 |
+
):
|
49 |
global fashion_code, uhdimage_code, MixGEN_code, current_parquet_content
|
50 |
system_message = system_message or ""
|
51 |
system_prefix = """λ°λμ νκΈλ‘ λ΅λ³ν κ². λλ μ£Όμ΄μ§ μμ€μ½λλ₯Ό κΈ°λ°μΌλ‘ "μλΉμ€ μ¬μ© μ€λͺ
λ° μλ΄, Q&Aλ₯Ό νλ μν μ΄λ€". μμ£Ό μΉμ νκ³ μμΈνκ² 4000ν ν° μ΄μ Markdown νμμΌλ‘ μμ±νλΌ. λλ μ½λλ₯Ό κΈ°λ°μΌλ‘ μ¬μ© μ€λͺ
λ° μ§μ μλ΅μ μ§ννλ©°, μ΄μ©μμκ² λμμ μ£Όμ΄μΌ νλ€. μ΄μ©μκ° κΆκΈν΄ ν λ§ν λ΄μ©μ μΉμ νκ² μλ €μ£Όλλ‘ νλΌ. μ½λ μ 체 λ΄μ©μ λν΄μλ 보μμ μ μ§νκ³ , ν€ κ° λ° μλν¬μΈνΈμ ꡬ체μ μΈ λͺ¨λΈμ 곡κ°νμ§ λ§λΌ."""
|
|
|
93 |
|
94 |
def upload_csv(file):
|
95 |
try:
|
96 |
+
# CSV νμΌ μ½κΈ° (ꡬλΆμ μ½€λ§)
|
97 |
+
df = pd.read_csv(file, sep=',')
|
98 |
|
99 |
# CSV νμΌμ μ»¬λΌ νμΈ
|
100 |
required_columns = {'id', 'text', 'label', 'metadata'}
|
|
|
127 |
return f"CSV νμΌ μ
λ‘λ λ° λ³ν μ€ μ€λ₯κ° λ°μνμ΅λλ€: {str(e)}", ""
|
128 |
|
129 |
# Gradio Blocks μΈν°νμ΄μ€ μ€μ
|
130 |
+
with gr.Blocks() as demo:
|
131 |
gr.Markdown("# LLM μλΉμ€ μΈν°νμ΄μ€")
|
132 |
|
133 |
with gr.Tab("μ±λ΄"):
|
134 |
gr.Markdown("### LLMκ³Ό λννκΈ°")
|
135 |
chat = gr.ChatInterface(
|
136 |
+
fn=respond,
|
|
|
|
|
|
|
|
|
|
|
|
|
137 |
examples=[
|
138 |
["ν¨μ
μ½λ μ€ν"],
|
139 |
["UHD μ΄λ―Έμ§ μ½λ μ€ν"],
|
140 |
["MixGEN μ½λ μ€ν"],
|
141 |
+
["test.parquet μ€ν"],
|
142 |
["μμΈν μ¬μ© λ°©λ²μ λ§μΉ νλ©΄μ 보면μ μ€λͺ
νλ―μ΄ 4000 ν ν° μ΄μ μμΈν μ€λͺ
νλΌ"],
|
143 |
["FAQ 20건μ μμΈνκ² μμ±νλΌ. 4000ν ν° μ΄μ μ¬μ©νλΌ."],
|
144 |
["μ¬μ© λ°©λ²κ³Ό μ°¨λ³μ , νΉμ§, κ°μ μ μ€μ¬μΌλ‘ 4000 ν ν° μ΄μ μ νλΈ μμ μ€ν¬λ¦½νΈ ννλ‘ μμ±νλΌ"],
|
|
|
146 |
["νΉν μΆμμ νμ©ν κΈ°μ λ° λΉμ¦λμ€λͺ¨λΈ μΈ‘λ©΄μ ν¬ν¨νμ¬ νΉν μΆμμ ꡬμ±μ λ§κ² νμ μ μΈ μ°½μ λ°λͺ
λ΄μ©μ μ€μ¬μΌλ‘ 4000 ν ν° μ΄μ μμ±νλΌ."],
|
147 |
["κ³μ μ΄μ΄μ λ΅λ³νλΌ"],
|
148 |
],
|
149 |
+
theme="default", # ν
λ§ λ³κ²½ κ°λ₯
|
|
|
150 |
)
|
151 |
|
152 |
+
with gr.Accordion("μμ€ν
ν둬ννΈ λ° μ΅μ
μ€μ ", open=False):
|
153 |
+
system_message = gr.Textbox(label="System Message", value="")
|
154 |
+
max_tokens = gr.Slider(minimum=1, maximum=8000, value=4000, label="Max Tokens")
|
155 |
+
temperature = gr.Slider(minimum=0, maximum=1, value=0.7, label="Temperature")
|
156 |
+
top_p = gr.Slider(minimum=0, maximum=1, value=0.9, label="Top P")
|
157 |
+
|
158 |
with gr.Tab("λ°μ΄ν° λ³ν"):
|
159 |
gr.Markdown("### CSV νμΌ μ
λ‘λ λ° Parquet λ³ν")
|
160 |
with gr.Row():
|
|
|
176 |
|
177 |
gr.Markdown("## μ£Όμ μ¬ν")
|
178 |
gr.Markdown("""
|
179 |
+
- **CSV μ
λ‘λ**: CSV νμΌμ μ
λ‘λνλ©΄ μλμΌλ‘ Parquet νμΌλ‘ λ³νλ©λλ€. CSV νμΌμ λ°λμ **μ½€λ§(`,`)**λ‘ κ΅¬λΆλμ΄μΌ ν©λλ€.
|
180 |
- **Parquet 미리보기**: μ
λ‘λλ Parquet νμΌμ 첫 10κ° νμ΄ λ―Έλ¦¬λ³΄κΈ°λ‘ νμλ©λλ€.
|
181 |
- **LLMκ³Όμ λν**: λ³νλ Parquet νμΌ λ΄μ©μ κΈ°λ°μΌλ‘ LLMμ΄ μλ΅μ μμ±ν©λλ€.
|
182 |
""")
|