Spaces:
Runtime error
Runtime error
Update app.py
Browse files
app.py
CHANGED
@@ -97,42 +97,43 @@ def gen(x, id, customer_data):
|
|
97 |
if x == "μ΄κΈ°ν":
|
98 |
if customer_agree_list[index] != "No":
|
99 |
customer_data_list[index] = customer_data
|
|
|
100 |
bot_str = f"λνκΈ°λ‘μ΄ λͺ¨λ μ΄κΈ°νλμμ΅λλ€.\n\nνμ¬ κ³ κ°λκ»μ κ°μ
λ 보νμ {customer_data}μ
λλ€.\n\nκΆκΈνμ κ²μ΄ μμΌμ κ°μ?"
|
101 |
return bot_str
|
102 |
else:
|
103 |
customer_data_list[index] = "κ°μ
μ 보μμ"
|
104 |
-
history[index] = '
|
105 |
bot_str = f"λνκΈ°λ‘μ΄ λͺ¨λ μ΄κΈ°νλμμ΅λλ€.\n\n* νμ¬ κ°μ
μ 보λ₯Ό μ‘°νν μ μμ΅λλ€. λ¨Όμ κ°μΈμ 보 μ΄μ© μ½κ΄μ λμνμ
μΌ μνν μλ΄μ μ§νν μ μμ΅λλ€.\n\nκΆκΈνμ κ²μ΄ μμΌμ κ°μ?"
|
106 |
return bot_str
|
107 |
elif x == "κ°μ
μ 보":
|
108 |
if customer_agree_list[index] == "No":
|
109 |
-
history[index] = '
|
110 |
bot_str = f"* νμ¬ κ°μ
μ 보λ₯Ό μ‘°νν μ μμ΅λλ€. λ¨Όμ κ°μΈμ 보 μ΄μ© μ½κ΄μ λμνμ
μΌ μνν μλ΄μ μ§νν μ μμ΅λλ€.\n\nκΆκΈνμ κ²μ΄ μμΌμ κ°μ?"
|
111 |
return bot_str
|
112 |
else:
|
113 |
-
history[index] = '
|
114 |
bot_str = f"νμ¬ κ³ κ°λκ»μ κ°μ
λ 보νμ {customer_data_list[index]}μ
λλ€.\n\nκΆκΈνμ κ²μ΄ μμΌμ κ°μ?"
|
115 |
return bot_str
|
116 |
elif x == "μ½κ΄λμ_λμν¨":
|
117 |
if customer_agree_list[index] == "No":
|
118 |
-
history[index] = '
|
119 |
customer_agree_list[index] = "Yes"
|
120 |
customer_data_list[index] = customer_data
|
121 |
bot_str = f"κ°μΈμ 보 νμ©μ λμνμ
¨μ΅λλ€. κ°μ
보νμ μ‘°νν©λλ€.\n\nνμ¬ κ³ κ°λκ»μ κ°μ
λ 보νμ {customer_data}μ
λλ€.\n\nκΆκΈνμ κ²μ΄ μμΌμ κ°μ?"
|
122 |
return bot_str
|
123 |
else:
|
124 |
-
history[index] = '
|
125 |
bot_str = f"μ΄λ―Έ μ½κ΄μ λμνμ
¨μ΅λλ€.\n\nκΆκΈνμ κ²μ΄ μμΌμ κ°μ?"
|
126 |
return bot_str
|
127 |
elif x == "μ½κ΄λμ_λμμν¨":
|
128 |
if customer_agree_list[index] == "Yes":
|
129 |
-
history[index] = '
|
130 |
customer_agree_list[index] = "No"
|
131 |
customer_data_list[index] = "κ°μ
μ 보μμ"
|
132 |
bot_str = f"* κ°μΈμ 보 νμ© λμλ₯Ό μ·¨μνμ
¨μ΅λλ€. μ΄μ κ°μ
보νμ μ‘°νν μ μμ΅λλ€.\n\nκΆκΈνμ κ²μ΄ μμΌμ κ°μ?"
|
133 |
return bot_str
|
134 |
else:
|
135 |
-
history[index] = '
|
136 |
bot_str = f"* κ°μΈμ 보 νμ©μ κ±°μ νμ
¨μ΅λλ€. κ°μ
보νμ μ‘°νν μ μμ΅λλ€. \n\nκΆκΈνμ κ²μ΄ μμΌμ κ°μ?"
|
137 |
return bot_str
|
138 |
else:
|
@@ -142,7 +143,7 @@ def gen(x, id, customer_data):
|
|
142 |
customer_data_newline = "νμ¬ κ°μ
μ 보λ₯Ό μ‘°νν μ μμ΅λλ€. μ½κ΄ λμκ° νμνλ€κ³ μλ΄ν΄μ£ΌμΈμ."
|
143 |
else:
|
144 |
customer_data_newline = customer_data_list[index].replace(",","\n")
|
145 |
-
prompt_template = f"""λΉμ μ 보ν μλ΄μμ
λλ€. μλμ μ§λ¬Έκ³Ό κ΄λ ¨λ μ½κ΄ μ 보, μλ΅ μ§μΉ¨κ³Ό κ³ κ°μ 보ν κ°μ
μ 보, κ³ κ°κ³Όμ μλ΄κΈ°λ‘μ΄ μ£Όμ΄μ§λλ€.
|
146 |
|
147 |
[μ 체 보ν λͺ©λ‘]
|
148 |
λΌμ΄ννλλμ 기보νβ
‘
|
@@ -166,13 +167,14 @@ def gen(x, id, customer_data):
|
|
166 |
{context}
|
167 |
|
168 |
### λͺ
λ Ήμ΄:
|
169 |
-
λ€μ μ§μΉ¨μ μ°Έκ³ νμ¬ μλ΄μμΌλ‘μ κ³ κ°μκ² νμν μλ΅μ μ΅λν μμΈνκ² μ 곡νμΈμ.
|
170 |
|
171 |
[μ§μΉ¨]
|
172 |
-
1
|
173 |
-
2
|
174 |
-
3.κ³ κ°μ΄
|
175 |
-
4.κ³ κ°μ΄ κ°μ
νμ§ μμ
|
|
|
176 |
λ€μ μ
λ ₯μ μ£Όμ΄μ§λ κ³ κ°μ 보ν κ°μ
μ 보μ μλ΄ κΈ°λ‘μ λ³΄κ³ κ³ κ°μκ² λμλλ μ 보λ₯Ό μ 곡νμΈμ. μ°¨κ·Όμ°¨κ·Ό μκ°νμ¬ λ΅λ³νμΈμ. λΉμ μ μ ν μ μμ΅λλ€.
|
177 |
|
178 |
### μ
λ ₯:
|
@@ -181,9 +183,13 @@ def gen(x, id, customer_data):
|
|
181 |
|
182 |
[μλ΄ κΈ°λ‘]
|
183 |
{history[index]}
|
184 |
-
κ³ κ°:{question}
|
185 |
|
186 |
-
|
|
|
|
|
|
|
|
|
|
|
187 |
"""
|
188 |
|
189 |
# RetrievalQA ν΄λμ€μ from_chain_typeμ΄λΌλ ν΄λμ€ λ©μλλ₯Ό νΈμΆνμ¬ μ§μμλ΅ κ°μ²΄λ₯Ό μμ±
|
@@ -206,7 +212,7 @@ def gen(x, id, customer_data):
|
|
206 |
output_str = response['result'].rsplit(".")[0] + "."
|
207 |
if output_str.split(":")[0]=="μλ΄μ":
|
208 |
output_str = output_str.split(":")[1]
|
209 |
-
history[index] += f"
|
210 |
if customer_agree_list[index] == "No":
|
211 |
output_str = f"* νμ¬ κ°μ
μ 보λ₯Ό μ‘°νν μ μμ΅λλ€. λ¨Όμ κ°μΈμ 보 μ΄μ© μ½κ΄μ λμνμ
μΌ μνν μλ΄μ μ§νν μ μμ΅λλ€." + output_str
|
212 |
return output_str
|
|
|
97 |
if x == "μ΄κΈ°ν":
|
98 |
if customer_agree_list[index] != "No":
|
99 |
customer_data_list[index] = customer_data
|
100 |
+
history[index] = 'μλ΄μ:\n무μμ λμλ릴κΉμ?\n\n'
|
101 |
bot_str = f"λνκΈ°λ‘μ΄ λͺ¨λ μ΄κΈ°νλμμ΅λλ€.\n\nνμ¬ κ³ κ°λκ»μ κ°μ
λ 보νμ {customer_data}μ
λλ€.\n\nκΆκΈνμ κ²μ΄ μμΌμ κ°μ?"
|
102 |
return bot_str
|
103 |
else:
|
104 |
customer_data_list[index] = "κ°μ
μ 보μμ"
|
105 |
+
history[index] = 'μλ΄μ:\n무μμ λμλ릴κΉμ?\n\n'
|
106 |
bot_str = f"λνκΈ°λ‘μ΄ λͺ¨λ μ΄κΈ°νλμμ΅λλ€.\n\n* νμ¬ κ°μ
μ 보λ₯Ό μ‘°νν μ μμ΅λλ€. λ¨Όμ κ°μΈμ 보 μ΄μ© μ½κ΄μ λμνμ
μΌ μνν μλ΄μ μ§νν μ μμ΅λλ€.\n\nκΆκΈνμ κ²μ΄ μμΌμ κ°μ?"
|
107 |
return bot_str
|
108 |
elif x == "κ°μ
μ 보":
|
109 |
if customer_agree_list[index] == "No":
|
110 |
+
history[index] = 'μλ΄μ:\n무μμ λμλ릴κΉμ?\n\n'
|
111 |
bot_str = f"* νμ¬ κ°μ
μ 보λ₯Ό μ‘°νν μ μμ΅λλ€. λ¨Όμ κ°μΈμ 보 μ΄μ© μ½κ΄μ λμνμ
μΌ μνν μλ΄μ μ§νν μ μμ΅λλ€.\n\nκΆκΈνμ κ²μ΄ μμΌμ κ°μ?"
|
112 |
return bot_str
|
113 |
else:
|
114 |
+
history[index] = 'μλ΄μ:\n무μμ λμλ릴κΉμ?\n\n'
|
115 |
bot_str = f"νμ¬ κ³ κ°λκ»μ κ°μ
λ 보νμ {customer_data_list[index]}μ
λλ€.\n\nκΆκΈνμ κ²μ΄ μμΌμ κ°μ?"
|
116 |
return bot_str
|
117 |
elif x == "μ½κ΄λμ_λμν¨":
|
118 |
if customer_agree_list[index] == "No":
|
119 |
+
history[index] = 'μλ΄μ:\n무μμ λμλ릴κΉμ?\n\n'
|
120 |
customer_agree_list[index] = "Yes"
|
121 |
customer_data_list[index] = customer_data
|
122 |
bot_str = f"κ°μΈμ 보 νμ©μ λμνμ
¨μ΅λλ€. κ°μ
보νμ μ‘°νν©λλ€.\n\nνμ¬ κ³ κ°λκ»μ κ°μ
λ 보νμ {customer_data}μ
λλ€.\n\nκΆκΈνμ κ²μ΄ μμΌμ κ°μ?"
|
123 |
return bot_str
|
124 |
else:
|
125 |
+
history[index] = 'μλ΄μ:\n무μμ λμλ릴κΉμ?\n\n'
|
126 |
bot_str = f"μ΄λ―Έ μ½κ΄μ λμνμ
¨μ΅λλ€.\n\nκΆκΈνμ κ²μ΄ μμΌμ κ°μ?"
|
127 |
return bot_str
|
128 |
elif x == "μ½κ΄λμ_λμμν¨":
|
129 |
if customer_agree_list[index] == "Yes":
|
130 |
+
history[index] = 'μλ΄μ:\n무μμ λμλ릴κΉμ?\n\n'
|
131 |
customer_agree_list[index] = "No"
|
132 |
customer_data_list[index] = "κ°μ
μ 보μμ"
|
133 |
bot_str = f"* κ°μΈμ 보 νμ© λμλ₯Ό μ·¨μνμ
¨μ΅λλ€. μ΄μ κ°μ
보νμ μ‘°νν μ μμ΅λλ€.\n\nκΆκΈνμ κ²μ΄ μμΌμ κ°μ?"
|
134 |
return bot_str
|
135 |
else:
|
136 |
+
history[index] = 'μλ΄μ:\n무μμ λμλ릴κΉμ?\n\n'
|
137 |
bot_str = f"* κ°μΈμ 보 νμ©μ κ±°μ νμ
¨μ΅λλ€. κ°μ
보νμ μ‘°νν μ μμ΅λλ€. \n\nκΆκΈνμ κ²μ΄ μμΌμ κ°μ?"
|
138 |
return bot_str
|
139 |
else:
|
|
|
143 |
customer_data_newline = "νμ¬ κ°μ
μ 보λ₯Ό μ‘°νν μ μμ΅λλ€. μ½κ΄ λμκ° νμνλ€κ³ μλ΄ν΄μ£ΌμΈμ."
|
144 |
else:
|
145 |
customer_data_newline = customer_data_list[index].replace(",","\n")
|
146 |
+
prompt_template = f"""λΉμ μ 보ν μλ΄μμ
λλ€. μλμ μ§λ¬Έκ³Ό κ΄λ ¨λ μ½κ΄ μ 보, μλ΅ μ§μΉ¨κ³Ό κ³ κ°μ 보ν κ°μ
μ 보, κ³ κ°κ³Όμ μλ΄κΈ°λ‘μ΄ μ£Όμ΄μ§λλ€. λνκΈ°λ‘μ λ³΄κ³ μ μ ν λ΅λ³μ μμ±νμΈμ.
|
147 |
|
148 |
[μ 체 보ν λͺ©λ‘]
|
149 |
λΌμ΄ννλλμ 기보νβ
‘
|
|
|
167 |
{context}
|
168 |
|
169 |
### λͺ
λ Ήμ΄:
|
170 |
+
λ€μ μ§μΉ¨μ μ°Έκ³ νμ¬ μλ΄μμΌλ‘μ κ³ κ°μκ² νμν μλ΅μ μ΅λν κΈΈκ³ μμΈνκ² μ 곡νμΈμ.
|
171 |
|
172 |
[μ§μΉ¨]
|
173 |
+
1.λ°λμ κΈΈκ³ μμΈνκ³ μΉμ νκ² μ 보λ₯Ό μ 곡νμΈμ.
|
174 |
+
2.κ³ κ°μ κ°μ
μ 보λ₯Ό κΌ νμΈνμ¬ κ³ κ°μ΄ κ°μ
ν 보νμ λν λ΄μ©λ§ μ 곡νμΈμ.
|
175 |
+
3.κ³ κ°μ΄ κ°μ
ν 보νμ΄λΌλ©΄ κ³ κ°μ μ§λ¬Έμ λν΄ μ μ ν λ΅λ³νμΈμ.
|
176 |
+
4.κ³ κ°μ΄ κ°μ
νμ§ μμ 보νμ 보μμ κ΄ν μ§λ¬Έμ κ΄λ ¨ 보νμ μκ°νλ©° 보μμ΄ λΆκ°λ₯νλ€λ μ μ μλ΄νμΈμ.
|
177 |
+
5.κ³ κ°μ΄ κ°μ
νμ§ μμ 보νμ κ°μ
μ΄ νμνλ€κ³ 보νλͺ
μ νμ€νκ² μΈκΈνμΈμ.
|
178 |
λ€μ μ
λ ₯μ μ£Όμ΄μ§λ κ³ κ°μ 보ν κ°μ
μ 보μ μλ΄ κΈ°λ‘μ λ³΄κ³ κ³ κ°μκ² λμλλ μ 보λ₯Ό μ 곡νμΈμ. μ°¨κ·Όμ°¨κ·Ό μκ°νμ¬ λ΅λ³νμΈμ. λΉμ μ μ ν μ μμ΅λλ€.
|
179 |
|
180 |
### μ
λ ₯:
|
|
|
183 |
|
184 |
[μλ΄ κΈ°λ‘]
|
185 |
{history[index]}
|
|
|
186 |
|
187 |
+
κ³ κ°:
|
188 |
+
{question}
|
189 |
+
|
190 |
+
μλ΄μ:
|
191 |
+
|
192 |
+
|
193 |
"""
|
194 |
|
195 |
# RetrievalQA ν΄λμ€μ from_chain_typeμ΄λΌλ ν΄λμ€ λ©μλλ₯Ό νΈμΆνμ¬ μ§μμλ΅ κ°μ²΄λ₯Ό μμ±
|
|
|
212 |
output_str = response['result'].rsplit(".")[0] + "."
|
213 |
if output_str.split(":")[0]=="μλ΄μ":
|
214 |
output_str = output_str.split(":")[1]
|
215 |
+
history[index] += f"κ³ κ°:\n{x}\n\nμλ΄μ:\n{output_str}\n\n"
|
216 |
if customer_agree_list[index] == "No":
|
217 |
output_str = f"* νμ¬ κ°μ
μ 보λ₯Ό μ‘°νν μ μμ΅λλ€. λ¨Όμ κ°μΈμ 보 μ΄μ© μ½κ΄μ λμνμ
μΌ μνν μλ΄μ μ§νν μ μμ΅λλ€." + output_str
|
218 |
return output_str
|