Naz786 commited on
Commit
85a827a
·
verified ·
1 Parent(s): cb24a0a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +7 -13
app.py CHANGED
@@ -166,10 +166,8 @@ elif page == "Semantic Search":
166
  st.write(", ".join(EXAMPLE_QUESTIONS))
167
 
168
  # --- Voice input widget ---
169
- if 'voice_question' not in st.session_state:
170
- st.session_state['voice_question'] = ''
171
- if 'run_semantic_search' not in st.session_state:
172
- st.session_state['run_semantic_search'] = False
173
 
174
  voice_input = components.html('''
175
  <button id="voice-btn" style="margin-bottom:8px;">🎤 Speak your question</button>
@@ -205,23 +203,19 @@ elif page == "Semantic Search":
205
  </script>
206
  ''', height=60)
207
 
208
- # Use the return value from components.html as the transcript
209
  if voice_input and isinstance(voice_input, str) and voice_input.strip():
210
  if is_coding_question(voice_input):
211
- st.session_state['voice_question'] = voice_input
212
- st.session_state['run_semantic_search'] = True
213
  st.success(f"Question recognized: {voice_input}")
214
  else:
215
  st.warning("Please ask a relevant question.")
216
 
217
- # --- Main question input ---
218
- question = st.text_input("Ask a question about your code", value=st.session_state.get('voice_question', ''), key="sem_question")
219
 
220
  # Run Semantic Search button
221
- run_btn = st.button("Run Semantic Search")
222
- run_search = run_btn or st.session_state.get('run_semantic_search', False)
223
- if run_search:
224
- st.session_state['run_semantic_search'] = False # reset trigger
225
  if not code_input.strip() or not question.strip():
226
  st.error("Both code and question are required.")
227
  elif not code_matches_language(code_input, programming_language):
 
166
  st.write(", ".join(EXAMPLE_QUESTIONS))
167
 
168
  # --- Voice input widget ---
169
+ if "sem_question" not in st.session_state:
170
+ st.session_state["sem_question"] = ""
 
 
171
 
172
  voice_input = components.html('''
173
  <button id="voice-btn" style="margin-bottom:8px;">🎤 Speak your question</button>
 
203
  </script>
204
  ''', height=60)
205
 
206
+ # If voice input is received, update the question field directly
207
  if voice_input and isinstance(voice_input, str) and voice_input.strip():
208
  if is_coding_question(voice_input):
209
+ st.session_state["sem_question"] = voice_input
 
210
  st.success(f"Question recognized: {voice_input}")
211
  else:
212
  st.warning("Please ask a relevant question.")
213
 
214
+ # Single input field for question (typed or spoken)
215
+ question = st.text_input("Ask a question about your code", value=st.session_state["sem_question"], key="sem_question")
216
 
217
  # Run Semantic Search button
218
+ if st.button("Run Semantic Search"):
 
 
 
219
  if not code_input.strip() or not question.strip():
220
  st.error("Both code and question are required.")
221
  elif not code_matches_language(code_input, programming_language):