ll7098ll commited on
Commit
f2b5a15
·
verified ·
1 Parent(s): bd4f439

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +37 -17
app.py CHANGED
@@ -64,6 +64,13 @@ def generate_pairing_recommendation(input_text, input_type, situation):
64
  yield collected_text # 실시간 출력을 위해 yield 사용
65
  time.sleep(0.03) # 출력 속도 조절
66
 
 
 
 
 
 
 
 
67
  # Streamlit Interface
68
  st.set_page_config(
69
  page_title="티 페어링 도우미",
@@ -88,39 +95,52 @@ tabs = st.sidebar.tabs(["🍭 다과 입력", "🍵 티 입력"])
88
 
89
  with tabs[0]:
90
  st.markdown("#### 다과를 입력해 주세요:")
91
- input_text_snack = st.text_input("예: 마카롱, 스콘, 다크 초콜릿 등")
92
 
93
  with tabs[1]:
94
  st.markdown("#### 티를 입력해 주세요:")
95
- input_text_tea = st.text_input("예: 녹차, 홍차, 캐모마일 등")
96
-
97
- input_type = "다과" if input_text_snack else "티"
98
- input_text = input_text_snack if input_text_snack else input_text_tea
99
 
100
  # 상황 또는 분위기 입력 (사이드바로 이동)
101
  st.sidebar.markdown("#### 상황이나 분위기를 입력해 주세요:")
102
- situation = st.sidebar.text_area("예: 오후의 여유로운 시간, 친구들과의 티타임, 집중이 필요한 공부 시간 등", height=100)
103
 
 
104
  generate_button = st.sidebar.button("🍻 페어링 추천 받기")
105
 
 
 
 
106
  # 출력 영역 정의
107
  output_area = st.empty()
108
 
109
  # 추천 결과 생성 및 출력
110
- if generate_button and input_text:
111
- output_text = ""
112
- output_area.markdown(output_text)
113
- try:
114
- with st.spinner("페어링 정보를 생성 중입니다... 잠시만 기다려 주세요!"):
115
- for partial_output in generate_pairing_recommendation(input_text, input_type, situation):
116
- output_text = partial_output
117
- output_area.markdown(output_text)
118
- except Exception as e:
119
- st.error(f"오류가 했습니다: {str(e)}")
 
 
 
 
 
 
 
 
 
 
 
 
120
 
121
  # 추가 정보 및 FAQ
122
  add_vertical_space(2)
123
  stoggle(
124
  "📜 티 페어링 FAQ",
125
  "이 앱은 티와 다과에 대한 전문적인 페어링 정보를 제공합니다. 한국인의 입맛에 맞춘 추천을 통해 최고의 티와 다과 조합을 즐기세요!\n\n\n**Q: 모든 티와 다과를 추천받을 수 있나요?**\n\nA: 예, 다양한 티와 다과에 대해 추천받을 수 있으며, 지속적으로 업데이트됩니다.",
126
- )
 
64
  yield collected_text # 실시간 출력을 위해 yield 사용
65
  time.sleep(0.03) # 출력 속도 조절
66
 
67
+ # 입력 필드 초기화 함수
68
+ def clear_input_fields():
69
+ """입력 필드를 초기화합니다."""
70
+ st.session_state.input_text_snack = ""
71
+ st.session_state.input_text_tea = ""
72
+ st.session_state.situation = ""
73
+
74
  # Streamlit Interface
75
  st.set_page_config(
76
  page_title="티 페어링 도우미",
 
95
 
96
  with tabs[0]:
97
  st.markdown("#### 다과를 입력해 주세요:")
98
+ input_text_snack = st.text_input("예: 마카롱, 스콘, 다크 초콜릿 등", key="input_text_snack")
99
 
100
  with tabs[1]:
101
  st.markdown("#### 티를 입력해 주세요:")
102
+ input_text_tea = st.text_input("예: 녹차, 홍차, 캐모마일 등", key="input_text_tea")
 
 
 
103
 
104
  # 상황 또는 분위기 입력 (사이드바로 이동)
105
  st.sidebar.markdown("#### 상황이나 분위기를 입력해 주세요:")
106
+ situation = st.sidebar.text_area("예: 오후의 여유로운 시간, 친구들과의 티타임, 집중이 필요한 공부 시간 등", height=100, key="situation")
107
 
108
+ # 페어링 추천 받기 버튼
109
  generate_button = st.sidebar.button("🍻 페어링 추천 받기")
110
 
111
+ # 입력 초기화 버튼
112
+ clear_button = st.sidebar.button("🗑️ 입력 초기화")
113
+
114
  # 출력 영역 정의
115
  output_area = st.empty()
116
 
117
  # 추천 결과 생성 및 출력
118
+ if generate_button:
119
+ input_type = "다과" if st.session_state.input_text_snack else "티"
120
+ input_text = st.session_state.input_text_snack if st.session_state.input_text_snack else st.session_state.input_text_tea
121
+ situation = st.session_state.situation
122
+
123
+ if input_text: # 입력값이 있을 때만 추천 시작
124
+ output_text = ""
125
+ output_area.markdown(output_text)
126
+ try:
127
+ with st.spinner("페어링 정보를 성 중입니다... 잠시만 기다려 주세요!"):
128
+ for partial_output in generate_pairing_recommendation(input_text, input_type, situation):
129
+ output_text = partial_output
130
+ output_area.markdown(output_text)
131
+ clear_input_fields() # 입력 필드 초기화
132
+ except Exception as e:
133
+ st.error(f"오류가 발생했습니다: {str(e)}")
134
+ else:
135
+ st.warning("티 또는 다과를 입력해주세요.")
136
+
137
+ # 입력 초기화 기능
138
+ if clear_button:
139
+ clear_input_fields()
140
 
141
  # 추가 정보 및 FAQ
142
  add_vertical_space(2)
143
  stoggle(
144
  "📜 티 페어링 FAQ",
145
  "이 앱은 티와 다과에 대한 전문적인 페어링 정보를 제공합니다. 한국인의 입맛에 맞춘 추천을 통해 최고의 티와 다과 조합을 즐기세요!\n\n\n**Q: 모든 티와 다과를 추천받을 수 있나요?**\n\nA: 예, 다양한 티와 다과에 대해 추천받을 수 있으며, 지속적으로 업데이트됩니다.",
146
+ )