Jintonic92 commited on
Commit
41ddd8a
ยท
verified ยท
1 Parent(s): 6d6d257

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +71 -13
app.py CHANGED
@@ -238,14 +238,22 @@ def main():
238
  st.info(f"Misconception ID: {int(misconception_id)}\n\n{misconception_text}")
239
  else:
240
  st.info("Misconception ์ •๋ณด๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.")
241
- # try:
242
- # misconception_text = generator.get_misconception_text(misconception_id)
243
- # st.info(f"Misconception ID: {int(misconception_id)}\n\n{misconception_text}")
244
- # except Exception as e:
245
- # logger.error(f"Error in get_misconception_text: {e}")
246
- # st.info("Misconception ์ •๋ณด๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.")
247
- # return None, None
248
-
 
 
 
 
 
 
 
 
249
  # ์œ ์‚ฌ ๋ฌธ์ œ ์ƒ์„ฑ ๋ฒ„ํŠผ
250
  if st.button(f"๐Ÿ“š ์œ ์‚ฌ ๋ฌธ์ œ ํ’€๊ธฐ #{i + 1}", key=f"retry_{i}"):
251
  with st.spinner("์œ ์‚ฌ ๋ฌธ์ œ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค..."):
@@ -254,13 +262,63 @@ def main():
254
  if new_question:
255
  st.write("### ๐ŸŽฏ ์œ ์‚ฌ ๋ฌธ์ œ")
256
  st.write(new_question['question'])
257
- st.write("**๋ณด๊ธฐ:**")
258
- for choice, text in new_question['choices'].items():
259
- st.write(f"{choice}) {text}")
260
- st.write("**โœ… ์ •๋‹ต:**", new_question['correct'])
261
- st.write("**๐Ÿ“ ํ•ด์„ค:**", new_question['explanation'])
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
262
  else:
263
  st.error("์œ ์‚ฌ ๋ฌธ์ œ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.")
 
 
264
  if __name__ == "__main__":
265
  main()
266
 
 
238
  st.info(f"Misconception ID: {int(misconception_id)}\n\n{misconception_text}")
239
  else:
240
  st.info("Misconception ์ •๋ณด๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.")
241
+
242
+ # # ์œ ์‚ฌ ๋ฌธ์ œ ์ƒ์„ฑ ๋ฒ„ํŠผ
243
+ # if st.button(f"๐Ÿ“š ์œ ์‚ฌ ๋ฌธ์ œ ํ’€๊ธฐ #{i + 1}", key=f"retry_{i}"):
244
+ # with st.spinner("์œ ์‚ฌ ๋ฌธ์ œ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค..."):
245
+ # logger.info(f"Generating similar question for misconception_id: {misconception_id}")
246
+ # new_question = generate_similar_question(wrong_q, misconception_id, generator)
247
+ # if new_question:
248
+ # st.write("### ๐ŸŽฏ ์œ ์‚ฌ ๋ฌธ์ œ")
249
+ # st.write(new_question['question'])
250
+ # st.write("**๋ณด๊ธฐ:**")
251
+ # for choice, text in new_question['choices'].items():
252
+ # st.write(f"{choice}) {text}")
253
+ # st.write("**โœ… ์ •๋‹ต:**", new_question['correct'])
254
+ # st.write("**๐Ÿ“ ํ•ด์„ค:**", new_question['explanation'])
255
+ # else:
256
+ # st.error("์œ ์‚ฌ ๋ฌธ์ œ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.")
257
  # ์œ ์‚ฌ ๋ฌธ์ œ ์ƒ์„ฑ ๋ฒ„ํŠผ
258
  if st.button(f"๐Ÿ“š ์œ ์‚ฌ ๋ฌธ์ œ ํ’€๊ธฐ #{i + 1}", key=f"retry_{i}"):
259
  with st.spinner("์œ ์‚ฌ ๋ฌธ์ œ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค..."):
 
262
  if new_question:
263
  st.write("### ๐ŸŽฏ ์œ ์‚ฌ ๋ฌธ์ œ")
264
  st.write(new_question['question'])
265
+
266
+ # ์ •๋‹ต์„ ์„ธ์…˜ ์Šคํ…Œ์ดํŠธ์— ์ €์žฅ
267
+ if f"similar_question_answered_{i}" not in st.session_state:
268
+ st.session_state[f"similar_question_answered_{i}"] = False
269
+ if f"similar_question_correct_{i}" not in st.session_state:
270
+ st.session_state[f"similar_question_correct_{i}"] = new_question['correct']
271
+
272
+ # ์•„์ง ๋‹ต๋ณ€ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ์—๋งŒ ๋ณด๊ธฐ ๋ฒ„ํŠผ ํ‘œ์‹œ
273
+ if not st.session_state[f"similar_question_answered_{i}"]:
274
+ st.write("**๋ณด๊ธฐ:**")
275
+ col1, col2 = st.columns(2)
276
+ with col1:
277
+ if st.button(f"A) {new_question['choices']['A']}", key=f"similar_A_{i}"):
278
+ st.session_state[f"similar_question_answered_{i}"] = True
279
+ if 'A' == new_question['correct']:
280
+ st.success("โœ… ์ •๋‹ต์ž…๋‹ˆ๋‹ค!")
281
+ else:
282
+ st.error("โŒ ํ‹€๋ ธ์Šต๋‹ˆ๋‹ค.")
283
+ st.rerun()
284
+
285
+ if st.button(f"C) {new_question['choices']['C']}", key=f"similar_C_{i}"):
286
+ st.session_state[f"similar_question_answered_{i}"] = True
287
+ if 'C' == new_question['correct']:
288
+ st.success("โœ… ์ •๋‹ต์ž…๋‹ˆ๋‹ค!")
289
+ else:
290
+ st.error("โŒ ํ‹€๋ ธ์Šต๋‹ˆ๋‹ค.")
291
+ st.rerun()
292
+
293
+ with col2:
294
+ if st.button(f"B) {new_question['choices']['B']}", key=f"similar_B_{i}"):
295
+ st.session_state[f"similar_question_answered_{i}"] = True
296
+ if 'B' == new_question['correct']:
297
+ st.success("โœ… ์ •๋‹ต์ž…๋‹ˆ๋‹ค!")
298
+ else:
299
+ st.error("โŒ ํ‹€๋ ธ์Šต๋‹ˆ๋‹ค.")
300
+ st.rerun()
301
+
302
+ if st.button(f"D) {new_question['choices']['D']}", key=f"similar_D_{i}"):
303
+ st.session_state[f"similar_question_answered_{i}"] = True
304
+ if 'D' == new_question['correct']:
305
+ st.success("โœ… ์ •๋‹ต์ž…๋‹ˆ๋‹ค!")
306
+ else:
307
+ st.error("โŒ ํ‹€๋ ธ์Šต๋‹ˆ๋‹ค.")
308
+ st.rerun()
309
+
310
+ # ๋‹ต๋ณ€ํ•œ ๊ฒฝ์šฐ ๊ฒฐ๊ณผ ๋ฐ ํ•ด์„ค ํ‘œ์‹œ
311
+ if st.session_state[f"similar_question_answered_{i}"]:
312
+ st.write("---")
313
+ st.write("**๐Ÿ“ ํ•ด์„ค:**", new_question['explanation'])
314
+ # ๋‹ค์‹œ ํ’€๊ธฐ ๋ฒ„ํŠผ
315
+ if st.button("๐Ÿ”„ ๋‹ค์‹œ ํ’€๊ธฐ", key=f"reset_{i}"):
316
+ st.session_state[f"similar_question_answered_{i}"] = False
317
+ st.rerun()
318
  else:
319
  st.error("์œ ์‚ฌ ๋ฌธ์ œ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.")
320
+
321
+
322
  if __name__ == "__main__":
323
  main()
324