Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -1121,6 +1121,7 @@ if st.session_state.generation_complete:
|
|
1121 |
""", unsafe_allow_html=True)
|
1122 |
|
1123 |
# μΆκ°λ ν: μ 체 μΌμ , μμΈ μ 보, λ€μ΄λ‘λ/곡μ , μ§λ λ° μκ°ν, AI μ±λ΄ μΈν°νμ΄μ€
|
|
|
1124 |
itinerary_tab, details_tab, download_tab, map_tab, chatbot_tab = st.tabs([
|
1125 |
"ποΈ " + t("full_itinerary"),
|
1126 |
"πΌ " + t("details"),
|
@@ -1217,43 +1218,37 @@ if st.session_state.generation_complete:
|
|
1217 |
st.pydeck_chart(deck_chart)
|
1218 |
|
1219 |
|
1220 |
-
|
1221 |
-
# AI μ±λ΄ μΈν°νμ΄μ€ ν (μ λ―Έλμ΄ μ μ©)
|
1222 |
with chatbot_tab:
|
1223 |
-
|
1224 |
-
|
1225 |
-
|
|
|
1226 |
st.session_state.chat_history = []
|
1227 |
-
|
1228 |
-
|
1229 |
-
|
1230 |
-
|
1231 |
if user_message:
|
1232 |
-
|
1233 |
-
|
1234 |
-
|
1235 |
-
|
1236 |
-
|
1237 |
-
|
1238 |
-
|
1239 |
-
|
1240 |
-
|
1241 |
-
|
1242 |
-
|
1243 |
-
|
1244 |
-
|
1245 |
-
|
1246 |
-
|
1247 |
-
|
1248 |
time_str = chat["time"].strftime("%H:%M:%S")
|
1249 |
st.markdown(f"**{chat['speaker']}** ({time_str}): {chat['message']}")
|
1250 |
-
|
1251 |
-
|
1252 |
-
# Clear λ²νΌ μΆκ° (μμ λ λΆλΆ)
|
1253 |
-
if st.button("Clear", key="clear_button"):
|
1254 |
-
st.session_state.chat_history = []
|
1255 |
-
st.session_state.pop("chat_input", None) # chat_input ν€λ₯Ό μμ νμ¬ μμ ―μ κ°μ μ΄κΈ°ν
|
1256 |
-
st.experimental_rerun()
|
1257 |
|
1258 |
st.markdown("""
|
1259 |
<div style="margin-top: 50px; text-align: center; padding: 20px; color: #6c757d; font-size: 0.8rem;">
|
|
|
1121 |
""", unsafe_allow_html=True)
|
1122 |
|
1123 |
# μΆκ°λ ν: μ 체 μΌμ , μμΈ μ 보, λ€μ΄λ‘λ/곡μ , μ§λ λ° μκ°ν, AI μ±λ΄ μΈν°νμ΄μ€
|
1124 |
+
|
1125 |
itinerary_tab, details_tab, download_tab, map_tab, chatbot_tab = st.tabs([
|
1126 |
"ποΈ " + t("full_itinerary"),
|
1127 |
"πΌ " + t("details"),
|
|
|
1218 |
st.pydeck_chart(deck_chart)
|
1219 |
|
1220 |
|
|
|
|
|
1221 |
with chatbot_tab:
|
1222 |
+
st.markdown("### AI μ±λ΄ μΈν°νμ΄μ€")
|
1223 |
+
|
1224 |
+
# λν κΈ°λ‘μ μΈμ
μνμ μ μ₯ (λ©μμ§, λ°μ μ, νμμ€ν¬ν)
|
1225 |
+
if "chat_history" not in st.session_state:
|
1226 |
st.session_state.chat_history = []
|
1227 |
+
|
1228 |
+
# μ¬μ©μ μ
λ ₯μ°½ λ° μ μ‘ λ²νΌ
|
1229 |
+
user_message = st.text_input("λ©μμ§λ₯Ό μ
λ ₯νμΈμ:", key="chat_input")
|
1230 |
+
if st.button("μ μ‘", key="send_button"):
|
1231 |
if user_message:
|
1232 |
+
# μ λ―Έλμ΄ κΈ°λ° μ±λ΄ μλ΅: run_task()λ₯Ό νμ©νμ¬ chatbot_taskμ μ§μ
|
1233 |
+
response = run_task(chatbot_task, user_message)
|
1234 |
+
st.session_state.chat_history.append({
|
1235 |
+
"speaker": "μ¬μ©μ",
|
1236 |
+
"message": user_message,
|
1237 |
+
"time": datetime.now()
|
1238 |
+
})
|
1239 |
+
st.session_state.chat_history.append({
|
1240 |
+
"speaker": "AI",
|
1241 |
+
"message": response,
|
1242 |
+
"time": datetime.now()
|
1243 |
+
})
|
1244 |
+
|
1245 |
+
# λν κΈ°λ‘ μΆλ ₯ (νμμ€ν¬ν ν¬ν¨, μ€ν¬λ‘€ κ°λ₯ν μμ)
|
1246 |
+
st.markdown("<div style='max-height:400px; overflow-y:auto; padding:10px; border:1px solid #eaeaea; border-radius:6px;'>", unsafe_allow_html=True)
|
1247 |
+
for chat in st.session_state.chat_history:
|
1248 |
time_str = chat["time"].strftime("%H:%M:%S")
|
1249 |
st.markdown(f"**{chat['speaker']}** ({time_str}): {chat['message']}")
|
1250 |
+
st.markdown("</div>", unsafe_allow_html=True)
|
1251 |
+
|
|
|
|
|
|
|
|
|
|
|
1252 |
|
1253 |
st.markdown("""
|
1254 |
<div style="margin-top: 50px; text-align: center; padding: 20px; color: #6c757d; font-size: 0.8rem;">
|