jeongsoo commited on
Commit
67649a2
Β·
1 Parent(s): ceaab21

Add application file

Browse files
Files changed (1) hide show
  1. app.py +11 -12
app.py CHANGED
@@ -861,7 +861,7 @@ class AutoRAGChatApp:
861
  def process_audio_auto(audio, chat_history):
862
  """λ…ΉμŒ μ™„λ£Œ μ‹œ μžλ™μœΌλ‘œ STT 처리 ν›„ 질의 처리"""
863
  if audio is None:
864
- return chat_history, None, gr.update(value=None, interactive=True), ""
865
 
866
  # 처리 쀑 μƒνƒœ λ©”μ‹œμ§€
867
  processing_msg = "μŒμ„± 처리 쀑..."
@@ -871,8 +871,7 @@ class AutoRAGChatApp:
871
  import scipy.io.wavfile as wav
872
 
873
  # μƒνƒœ μ—…λ°μ΄νŠΈ
874
- yield chat_history, gr.update(value=processing_msg, interactive=False), gr.update(
875
- interactive=False), "μŒμ„±μ„ ν…μŠ€νŠΈλ‘œ λ³€ν™˜ 쀑..."
876
 
877
  # numpy 배열을 WAV 파일둜 μ €μž₯
878
  with tempfile.NamedTemporaryFile(suffix=".wav", delete=False) as temp_file:
@@ -900,7 +899,7 @@ class AutoRAGChatApp:
900
  print(f"[STT] {error_msg}")
901
  new_history = list(chat_history)
902
  new_history.append(["μŒμ„± λ©”μ‹œμ§€", error_msg])
903
- yield new_history, None, gr.update(interactive=True), ""
904
  return
905
 
906
  # μΈμ‹λœ ν…μŠ€νŠΈ μΆ”μΆœ
@@ -910,14 +909,14 @@ class AutoRAGChatApp:
910
  print("[STT] μΈμ‹λœ ν…μŠ€νŠΈ μ—†μŒ")
911
  new_history = list(chat_history)
912
  new_history.append(["μŒμ„± λ©”μ‹œμ§€", error_msg])
913
- yield new_history, None, gr.update(interactive=True), ""
914
  return
915
 
916
  print(f"[STT] μΈμ‹λœ ν…μŠ€νŠΈ: {recognized_text}")
917
 
918
  # μƒνƒœ μ—…λ°μ΄νŠΈ
919
- yield chat_history, gr.update(value=f"μΈμ‹λœ ν…μŠ€νŠΈ: {recognized_text}\n\n응닡 생성 쀑...",
920
- interactive=False), gr.update(interactive=False), "응닡 생성 쀑..."
921
 
922
  # μΈμ‹λœ ν…μŠ€νŠΈλ‘œ 쿼리 처리 (μŒμ„± λ©”μ‹œμ§€ 접두어 μΆ”κ°€)
923
  query = f"🎀 {recognized_text}"
@@ -940,13 +939,13 @@ class AutoRAGChatApp:
940
  response = f"λ¬Έμ„œλ₯Ό λ‘œλ“œν•  수 μ—†μŠ΅λ‹ˆλ‹€. 'documents' 폴더에 PDF 파일이 μžˆλŠ”μ§€ ν™•μΈν•˜μ„Έμš”.\n였λ₯˜ 정보: {init_result}"
941
  new_history = list(chat_history)
942
  new_history.append([query, response])
943
- yield new_history, None, gr.update(interactive=True), ""
944
  return
945
  except Exception as e:
946
  response = f"λ¬Έμ„œ λ‘œλ“œ 쀑 였λ₯˜ λ°œμƒ: {str(e)}"
947
  new_history = list(chat_history)
948
  new_history.append([query, response])
949
- yield new_history, None, gr.update(interactive=True), ""
950
  return
951
  else:
952
  print("μŒμ„± 쿼리 처리: λ¬Έμ„œκ°€ 이미 λ‘œλ“œλ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.")
@@ -973,7 +972,7 @@ class AutoRAGChatApp:
973
  new_history.append([query, response]) # 리슀트 ν˜•μ‹μœΌλ‘œ μΆ”κ°€
974
 
975
  # μ΅œμ’… μƒνƒœ μ—…λ°μ΄νŠΈ
976
- yield new_history, None, gr.update(interactive=True), ""
977
 
978
  except Exception as e:
979
  error_msg = f"였λ₯˜ λ°œμƒ: {str(e)}"
@@ -983,7 +982,7 @@ class AutoRAGChatApp:
983
  # λ©”μ‹œμ§€ ν˜•μ‹μ— 맞게 μΆ”κ°€
984
  new_history = list(chat_history) # κΈ°μ‘΄ 리슀트λ₯Ό 볡사
985
  new_history.append([query, error_msg]) # 리슀트 ν˜•μ‹μœΌλ‘œ μΆ”κ°€
986
- yield new_history, None, gr.update(interactive=True), ""
987
 
988
  except Exception as e:
989
  error_msg = f"μŒμ„± 처리 쀑 였λ₯˜ λ°œμƒ: {str(e)}"
@@ -992,7 +991,7 @@ class AutoRAGChatApp:
992
  traceback.print_exc()
993
  new_history = list(chat_history)
994
  new_history.append(["μŒμ„± λ©”μ‹œμ§€", error_msg])
995
- yield new_history, None, gr.update(interactive=True), ""
996
 
997
  with gr.Blocks(title="μŒμ„±μΈμ‹ κΈ°λŠ₯이 μΆ”κ°€λœ PDF λ¬Έμ„œ 기반 RAG 챗봇") as app:
998
  gr.Markdown("# μŒμ„±μΈμ‹ κΈ°λŠ₯이 μΆ”κ°€λœ PDF λ¬Έμ„œ 기반 RAG 챗봇")
 
861
  def process_audio_auto(audio, chat_history):
862
  """λ…ΉμŒ μ™„λ£Œ μ‹œ μžλ™μœΌλ‘œ STT 처리 ν›„ 질의 처리"""
863
  if audio is None:
864
+ return chat_history, gr.update(interactive=True), "λ…ΉμŒ ν›„ μžλ™μœΌλ‘œ μ²˜λ¦¬λ©λ‹ˆλ‹€", ""
865
 
866
  # 처리 쀑 μƒνƒœ λ©”μ‹œμ§€
867
  processing_msg = "μŒμ„± 처리 쀑..."
 
871
  import scipy.io.wavfile as wav
872
 
873
  # μƒνƒœ μ—…λ°μ΄νŠΈ
874
+ yield chat_history, gr.update(interactive=False), processing_msg, "μŒμ„±μ„ ν…μŠ€νŠΈλ‘œ λ³€ν™˜ 쀑..."
 
875
 
876
  # numpy 배열을 WAV 파일둜 μ €μž₯
877
  with tempfile.NamedTemporaryFile(suffix=".wav", delete=False) as temp_file:
 
899
  print(f"[STT] {error_msg}")
900
  new_history = list(chat_history)
901
  new_history.append(["μŒμ„± λ©”μ‹œμ§€", error_msg])
902
+ yield new_history, gr.update(interactive=True), error_msg, ""
903
  return
904
 
905
  # μΈμ‹λœ ν…μŠ€νŠΈ μΆ”μΆœ
 
909
  print("[STT] μΈμ‹λœ ν…μŠ€νŠΈ μ—†μŒ")
910
  new_history = list(chat_history)
911
  new_history.append(["μŒμ„± λ©”μ‹œμ§€", error_msg])
912
+ yield new_history, gr.update(interactive=True), error_msg, ""
913
  return
914
 
915
  print(f"[STT] μΈμ‹λœ ν…μŠ€νŠΈ: {recognized_text}")
916
 
917
  # μƒνƒœ μ—…λ°μ΄νŠΈ
918
+ yield chat_history, gr.update(
919
+ interactive=False), f"μΈμ‹λœ ν…μŠ€νŠΈ: {recognized_text}\n\n응닡 생성 쀑...", "응닡 생성 쀑..."
920
 
921
  # μΈμ‹λœ ν…μŠ€νŠΈλ‘œ 쿼리 처리 (μŒμ„± λ©”μ‹œμ§€ 접두어 μΆ”κ°€)
922
  query = f"🎀 {recognized_text}"
 
939
  response = f"λ¬Έμ„œλ₯Ό λ‘œλ“œν•  수 μ—†μŠ΅λ‹ˆλ‹€. 'documents' 폴더에 PDF 파일이 μžˆλŠ”μ§€ ν™•μΈν•˜μ„Έμš”.\n였λ₯˜ 정보: {init_result}"
940
  new_history = list(chat_history)
941
  new_history.append([query, response])
942
+ yield new_history, gr.update(interactive=True), response, ""
943
  return
944
  except Exception as e:
945
  response = f"λ¬Έμ„œ λ‘œλ“œ 쀑 였λ₯˜ λ°œμƒ: {str(e)}"
946
  new_history = list(chat_history)
947
  new_history.append([query, response])
948
+ yield new_history, gr.update(interactive=True), response, ""
949
  return
950
  else:
951
  print("μŒμ„± 쿼리 처리: λ¬Έμ„œκ°€ 이미 λ‘œλ“œλ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.")
 
972
  new_history.append([query, response]) # 리슀트 ν˜•μ‹μœΌλ‘œ μΆ”κ°€
973
 
974
  # μ΅œμ’… μƒνƒœ μ—…λ°μ΄νŠΈ
975
+ yield new_history, gr.update(interactive=True), f"처리 μ™„λ£Œ: {recognized_text}", ""
976
 
977
  except Exception as e:
978
  error_msg = f"였λ₯˜ λ°œμƒ: {str(e)}"
 
982
  # λ©”μ‹œμ§€ ν˜•μ‹μ— 맞게 μΆ”κ°€
983
  new_history = list(chat_history) # κΈ°μ‘΄ 리슀트λ₯Ό 볡사
984
  new_history.append([query, error_msg]) # 리슀트 ν˜•μ‹μœΌλ‘œ μΆ”κ°€
985
+ yield new_history, gr.update(interactive=True), error_msg, ""
986
 
987
  except Exception as e:
988
  error_msg = f"μŒμ„± 처리 쀑 였λ₯˜ λ°œμƒ: {str(e)}"
 
991
  traceback.print_exc()
992
  new_history = list(chat_history)
993
  new_history.append(["μŒμ„± λ©”μ‹œμ§€", error_msg])
994
+ yield new_history, gr.update(interactive=True), error_msg, ""
995
 
996
  with gr.Blocks(title="μŒμ„±μΈμ‹ κΈ°λŠ₯이 μΆ”κ°€λœ PDF λ¬Έμ„œ 기반 RAG 챗봇") as app:
997
  gr.Markdown("# μŒμ„±μΈμ‹ κΈ°λŠ₯이 μΆ”κ°€λœ PDF λ¬Έμ„œ 기반 RAG 챗봇")