FauziIsyrinApridal commited on
Commit
a3a0e96
·
1 Parent(s): d9d2052

tambah feedback

Browse files
Files changed (2) hide show
  1. app/chat.py +36 -0
  2. evaluate_indo.py +2 -5
app/chat.py CHANGED
@@ -3,7 +3,32 @@ from streamlit_chat import message
3
  from streamlit_mic_recorder import speech_to_text
4
  import base64
5
  import gtts
 
 
6
  from io import BytesIO
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7
 
8
  # Inisialisasi state
9
  def initialize_session_state():
@@ -112,3 +137,14 @@ def display_chat_history(chain):
112
  elif st.session_state.get('tts_played'):
113
  st.session_state['tts_output'] = ""
114
  del st.session_state['tts_played']
 
 
 
 
 
 
 
 
 
 
 
 
3
  from streamlit_mic_recorder import speech_to_text
4
  import base64
5
  import gtts
6
+ import os
7
+ from dotenv import load_dotenv
8
  from io import BytesIO
9
+ import smtplib
10
+ from email.message import EmailMessage
11
+
12
+ load_dotenv()
13
+ def send_feedback_email(feedback):
14
+ email_sender = os.getenv("EMAIL_SENDER")
15
+ email_password = os.getenv("EMAIL_PASSWORD")
16
+ email_receiver = os.getenv("EMAIL_RECEIVER")
17
+
18
+ msg = EmailMessage()
19
+ msg.set_content(f"Feedback Chatbot:\n\n{feedback}")
20
+ msg["Subject"] = "Feedback Chatbot PNP"
21
+ msg["From"] = email_sender
22
+ msg["To"] = email_receiver
23
+
24
+ try:
25
+ with smtplib.SMTP_SSL("smtp.gmail.com", 465) as smtp:
26
+ smtp.login(email_sender, email_password)
27
+ smtp.send_message(msg)
28
+ return True
29
+ except Exception as e:
30
+ st.error(f"Gagal mengirim feedback: {e}")
31
+ return False
32
 
33
  # Inisialisasi state
34
  def initialize_session_state():
 
137
  elif st.session_state.get('tts_played'):
138
  st.session_state['tts_output'] = ""
139
  del st.session_state['tts_played']
140
+
141
+
142
+ with st.expander("💬 Kirim Feedback"):
143
+ with st.form("feedback_form"):
144
+ feedback_text = st.text_area("Masukkan feedback Anda untuk chatbot ini:")
145
+ submitted = st.form_submit_button("Kirim")
146
+
147
+ if submitted and feedback_text.strip():
148
+ success = send_feedback_email(feedback_text)
149
+ if success:
150
+ st.success("✅ Terima kasih! Feedback Anda telah dikirim.")
evaluate_indo.py CHANGED
@@ -305,7 +305,7 @@ Penjelasan: <alasan_detail_mengapa_skor_tersebut>"""
305
  results.append(result)
306
 
307
  # Save intermediate results every 5 items
308
- if i % 2 == 0:
309
  self._save_intermediate_results(results, save_path, i, total_items)
310
 
311
  # Add delay to avoid rate limiting
@@ -512,10 +512,7 @@ evaluation_dataset = [
512
  "question": "Bagaimana sejarah singkat berdirinya Politeknik Negeri Padang?",
513
  "ground_truth": "Politeknik Negeri Padang didirikan pada tahun 1987 sebagai salah satu dari 17 politeknik pertama di Indonesia. Awalnya bernama Politeknik Engineering Universitas Andalas. Pada 1997 menjadi Politeknik Universitas Andalas lalu berubah menjadi Politeknik Negeri Padang. Saat ini memiliki 32 program studi dari jenjang D3 hingga Magister Terapan."
514
  },
515
- {
516
- "question": "Apa saja jurusan dan program studi yang tersedia di Politeknik Negeri Padang?",
517
- "ground_truth": "Politeknik Negeri Padang memiliki 7 jurusan teknologi informasi, teknik mesin, teknik elektro, bahasa inggris, administrasi niaga, teknik sipil, dan akuntansi Saat ini memiliki 37 program studi dari jenjang D3 hingga Magister Terapan."
518
- },
519
  ]
520
 
521
  def main():
 
305
  results.append(result)
306
 
307
  # Save intermediate results every 5 items
308
+ if i % 5 == 0:
309
  self._save_intermediate_results(results, save_path, i, total_items)
310
 
311
  # Add delay to avoid rate limiting
 
512
  "question": "Bagaimana sejarah singkat berdirinya Politeknik Negeri Padang?",
513
  "ground_truth": "Politeknik Negeri Padang didirikan pada tahun 1987 sebagai salah satu dari 17 politeknik pertama di Indonesia. Awalnya bernama Politeknik Engineering Universitas Andalas. Pada 1997 menjadi Politeknik Universitas Andalas lalu berubah menjadi Politeknik Negeri Padang. Saat ini memiliki 32 program studi dari jenjang D3 hingga Magister Terapan."
514
  },
515
+
 
 
 
516
  ]
517
 
518
  def main():