Update app.py
Browse files
app.py
CHANGED
@@ -119,7 +119,7 @@ def display_question():
|
|
119 |
st.session_state.current_question_index += 1
|
120 |
else:
|
121 |
st.session_state.quiz_completed = True # Mark quiz as completed after last question
|
122 |
-
st.rerun()
|
123 |
|
124 |
|
125 |
def display_results():
|
@@ -161,18 +161,28 @@ if topic:
|
|
161 |
response = model.generate_content(prompt)
|
162 |
quiz_content = response.text
|
163 |
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
176 |
else:
|
177 |
st.error("Failed to generate quiz content. Please try again or check your API key.")
|
178 |
|
|
|
119 |
st.session_state.current_question_index += 1
|
120 |
else:
|
121 |
st.session_state.quiz_completed = True # Mark quiz as completed after last question
|
122 |
+
st.rerun()
|
123 |
|
124 |
|
125 |
def display_results():
|
|
|
161 |
response = model.generate_content(prompt)
|
162 |
quiz_content = response.text
|
163 |
|
164 |
+
# --- DEBUGGING PRINTS ---
|
165 |
+
st.write("### Raw Quiz Content from Gemini:")
|
166 |
+
st.code(quiz_content) # Display raw content in a code block for readability
|
167 |
+
|
168 |
+
parsed_quiz_data, answer_key = parse_quiz_content(quiz_content)
|
169 |
+
|
170 |
+
st.write("### Parsed Quiz Data:")
|
171 |
+
st.write(parsed_quiz_data) # Display the parsed data structure
|
172 |
+
|
173 |
+
# --- END DEBUGGING PRINTS ---
|
174 |
+
|
175 |
+
|
176 |
+
if parsed_quiz_data:
|
177 |
+
st.session_state.quiz_data = parsed_quiz_data
|
178 |
+
st.session_state.current_question_index = 0 # Reset to first question
|
179 |
+
st.session_state.user_answers = [] # Clear previous answers
|
180 |
+
st.session_state.quiz_completed = False # Reset completion status
|
181 |
+
st.session_state.score = 0 # Reset score
|
182 |
+
st.success(f"Quiz on '{topic}' generated successfully! Let's begin.")
|
183 |
+
else:
|
184 |
+
st.error("Failed to parse quiz content. Please try generating again.")
|
185 |
+
st.session_state.quiz_data = None # Ensure quiz_data is reset in case of parsing failure
|
186 |
else:
|
187 |
st.error("Failed to generate quiz content. Please try again or check your API key.")
|
188 |
|