openfree commited on
Commit
9f70594
Β·
verified Β·
1 Parent(s): 7ba33cd

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +42 -42
app.py CHANGED
@@ -1218,45 +1218,45 @@ if st.session_state.generation_complete:
1218
 
1219
 
1220
 
1221
- # AI 챗봇 μΈν„°νŽ˜μ΄μŠ€ νƒ­ (μ œλ―Έλ‚˜μ΄ 적용)
1222
- with chatbot_tab:
1223
- st.markdown("### AI 챗봇 μΈν„°νŽ˜μ΄μŠ€")
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
- # Clear λ²„νŠΌ μΆ”κ°€
1253
- if st.button("Clear", key="clear_button"):
1254
- st.session_state.chat_history = []
1255
- st.session_state.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;">
1260
- <p>""" + t("built_with") + """</p>
1261
- </div>
1262
- """, unsafe_allow_html=True)
 
1218
 
1219
 
1220
 
1221
+ # AI 챗봇 μΈν„°νŽ˜μ΄μŠ€ νƒ­ (μ œλ―Έλ‚˜μ΄ 적용)
1222
+ with chatbot_tab:
1223
+ st.markdown("### AI 챗봇 μΈν„°νŽ˜μ΄μŠ€")
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
+ # 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;">
1260
+ <p>""" + t("built_with") + """</p>
1261
+ </div>
1262
+ """, unsafe_allow_html=True)