ll7098ll commited on
Commit
a06ec9f
Β·
verified Β·
1 Parent(s): 899bc84

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +14 -13
app.py CHANGED
@@ -1,6 +1,5 @@
1
  import os
2
  import time
3
-
4
  import streamlit as st
5
  import google.generativeai as genai
6
  from streamlit_extras.colored_header import colored_header
@@ -100,6 +99,9 @@ SYSTEM_PROMPT = """
100
  핡심 κ°œλ…κ³Ό κ΄€λ ¨λœ μ‹€μƒν™œ 사둀λ₯Ό μ œμ‹œν•˜μ—¬ ν•™μŠ΅μ˜ μ˜λ―Έμ™€ 관련성을 λ†’μ΄λŠ” λ°©μ•ˆμ„ μ œμ‹œν•˜μ„Έμš”. λ©€ν‹°λ―Έλ””μ–΄, μ‹œκ° 자료, κ²Œμž„, ν˜‘λ ₯ ν•™μŠ΅ λ“± λ‹€μ–‘ν•œ κ΅μˆ˜λ²•μ„ ν™œμš©ν•˜λŠ” λ°©μ•ˆμ„ μ œμ‹œν•˜μ„Έμš”.
101
  """
102
 
 
 
 
103
  def generate_curriculum(grade, achievement_standard):
104
  """ν•™λ…„κ³Ό 성취기쀀을 μž…λ ₯λ°›μ•„ κ°œλ…κΈ°λ°˜ νƒκ΅¬ν•™μŠ΅μ„ μƒμ„±ν•©λ‹ˆλ‹€."""
105
 
@@ -110,16 +112,16 @@ def generate_curriculum(grade, achievement_standard):
110
  "κ°œλ…κΈ°λ°˜ νƒκ΅¬ν•™μŠ΅:",
111
  ]
112
 
113
- full_text = ""
114
- output_area = st.empty() # 좜λ ₯ μ˜μ—­ μ •μ˜
115
-
116
  try:
117
- response = model.generate_content(prompt) # stream=True 제거
118
- full_text = response.text
119
-
120
- # Markdown to HTML λ³€ν™˜
121
- html_text = markdown.markdown(full_text, extensions=['tables']) # ν‘œ ν™•μž₯ μΆ”κ°€
122
- output_area.markdown(html_text, unsafe_allow_html=True) # markdown으둜 좜λ ₯
 
123
 
124
  except Exception as e:
125
  st.error(f"μ—λŸ¬ λ°œμƒ: {str(e)}")
@@ -146,8 +148,6 @@ with st.sidebar.expander("μž…λ ₯ μ„€μ •", expanded=True):
146
 
147
  generate_button = st.button("κ°œλ…κΈ°λ°˜ νƒκ΅¬ν•™μŠ΅ 생성")
148
 
149
- # 단일 좜λ ₯ μ˜μ—­μ„ μœ μ§€ν•˜κ³ , ν•„μš”ν•œ κ²½μš°μ—λ§Œ κ°±μ‹ 
150
- output_area = st.empty() # 좜λ ₯ μ˜μ—­μ„ ν•¨μˆ˜ λ°–μœΌλ‘œ μ΄λ™ν•˜μ—¬ μ „μ—­μœΌλ‘œ μ •μ˜
151
 
152
  if generate_button and achievement_standard:
153
  result = generate_curriculum(grade, achievement_standard)
@@ -157,4 +157,5 @@ elif generate_button and not achievement_standard:
157
 
158
  # 이미 μƒμ„±λœ κ΅μœ‘κ³Όμ •μ΄ μžˆμ„ 경우 이λ₯Ό 좜λ ₯
159
  if "generated_curriculum" in st.session_state and st.session_state.generated_curriculum:
160
- output_area.text_area("κ°œλ…κΈ°λ°˜ νƒκ΅¬ν•™μŠ΅", value=st.session_state.generated_curriculum, height=600)
 
 
1
  import os
2
  import time
 
3
  import streamlit as st
4
  import google.generativeai as genai
5
  from streamlit_extras.colored_header import colored_header
 
99
  핡심 κ°œλ…κ³Ό κ΄€λ ¨λœ μ‹€μƒν™œ 사둀λ₯Ό μ œμ‹œν•˜μ—¬ ν•™μŠ΅μ˜ μ˜λ―Έμ™€ 관련성을 λ†’μ΄λŠ” λ°©μ•ˆμ„ μ œμ‹œν•˜μ„Έμš”. λ©€ν‹°λ―Έλ””μ–΄, μ‹œκ° 자료, κ²Œμž„, ν˜‘λ ₯ ν•™μŠ΅ λ“± λ‹€μ–‘ν•œ κ΅μˆ˜λ²•μ„ ν™œμš©ν•˜λŠ” λ°©μ•ˆμ„ μ œμ‹œν•˜μ„Έμš”.
100
  """
101
 
102
+ # 좜λ ₯ μ˜μ—­μ„ ν•¨μˆ˜ 외뢀에 μ •μ˜
103
+ output_area = st.empty()
104
+
105
  def generate_curriculum(grade, achievement_standard):
106
  """ν•™λ…„κ³Ό 성취기쀀을 μž…λ ₯λ°›μ•„ κ°œλ…κΈ°λ°˜ νƒκ΅¬ν•™μŠ΅μ„ μƒμ„±ν•©λ‹ˆλ‹€."""
107
 
 
112
  "κ°œλ…κΈ°λ°˜ νƒκ΅¬ν•™μŠ΅:",
113
  ]
114
 
115
+ full_text = "" # 전체 ν…μŠ€νŠΈ μ €μž₯ λ³€μˆ˜ μ΄ˆκΈ°ν™”
116
+
 
117
  try:
118
+ response = model.generate_content(prompt, stream=True)
119
+ for chunk in response:
120
+ full_text += chunk.text
121
+ # Markdown to HTML λ³€ν™˜
122
+ html_text = markdown.markdown(full_text, extensions=['tables'])
123
+ output_area.markdown(html_text, unsafe_allow_html=True)
124
+ time.sleep(0.1) # μ§€μ—° μΆ”κ°€ (ν•„μš”μ— 따라 쑰절)
125
 
126
  except Exception as e:
127
  st.error(f"μ—λŸ¬ λ°œμƒ: {str(e)}")
 
148
 
149
  generate_button = st.button("κ°œλ…κΈ°λ°˜ νƒκ΅¬ν•™μŠ΅ 생성")
150
 
 
 
151
 
152
  if generate_button and achievement_standard:
153
  result = generate_curriculum(grade, achievement_standard)
 
157
 
158
  # 이미 μƒμ„±λœ κ΅μœ‘κ³Όμ •μ΄ μžˆμ„ 경우 이λ₯Ό 좜λ ₯
159
  if "generated_curriculum" in st.session_state and st.session_state.generated_curriculum:
160
+ html_text = markdown.markdown(st.session_state.generated_curriculum, extensions=['tables'])
161
+ output_area.markdown(html_text, unsafe_allow_html=True)