MonicaChen0330 commited on
Commit
81054dc
·
verified ·
1 Parent(s): e322e6b

add: announcement

Browse files
Files changed (1) hide show
  1. app.py +36 -6
app.py CHANGED
@@ -57,6 +57,29 @@ def log_to_google_sheet(question, answer, contexts, scores):
57
  except Exception as e:
58
  print("寫入 Google Sheet 失敗:", str(e))
59
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
60
  def validate_openai_key(api_key):
61
  try:
62
  client = OpenAI(api_key=api_key)
@@ -247,18 +270,24 @@ def check_csv_and_run(file, key):
247
  # Gradio 介面
248
  with gr.Blocks() as demo:
249
  gr.Markdown("""
250
- ## 📐 RAG系統評估工具 (分流B)
251
 
252
  ### 📄 使用說明
253
- 請上傳您 RAG 系統產出的結果檔案(需包含欄位:Question、Context、Answer),並填入您的 OpenAI API Key,以進行評估。
254
- ####完整評估通常需耗時 1 小時以上。若無即時回應,請耐心等候,系統並未當機,謝謝您的理解。
255
- 🚦 注意:本工具部署於 Hugging Face Public Space,若同時有多位使用者使用,系統會將您的評估請求排入佇列。
256
- 為避免長時間等待,建議您**先僅送出 1 筆資料進行測試**,若進度條顯示之預估等待時間超過 2 小時(7000 秒以上),可能是其他使用者正在使用。
257
- 本頁為分流 A,您可以考慮改用其他分流或稍後再試,感謝您的耐心與配合!
 
 
 
258
  - 🔁 [主頁面 (Main)](https://huggingface.co/spaces/KSLab/RAG_Evaluator)
259
  - 🔁 [分流 A](https://huggingface.co/spaces/KSLab/RAG_Evaluator_A)
260
  - 🔁 [分流 C](https://huggingface.co/spaces/KSLab/RAG_Evaluator_C)
 
 
261
  """)
 
262
 
263
  file_input = gr.File(label="上傳 Evaluation_Dataset.csv")
264
  api_key_input = gr.Textbox(label="OpenAI API Key", type="password")
@@ -271,6 +300,7 @@ with gr.Blocks() as demo:
271
  gr.Markdown("""
272
  ---
273
  ### ❓ 常見問題 & 解答
 
274
  **Q: 什麼是「指令集」?**
275
  A: 「指令集」是我們用來描述老師在課堂上所設計的各種學習活動操作流程。在與教學系統互動時,老師通常會透過一系列結構化的指令來引導學生完成任務,因此我們將這些可重複使用的操作流程統稱為「指令集」。
276
  指令集也如同RESTful API一樣,我們有先盡力的與老師們溝通他們的需求,不過這些需求都只能視為一個草案,最終仍需要仰賴得標業者與老師們收斂,並且確定最終的版本來加以實作。
 
57
  except Exception as e:
58
  print("寫入 Google Sheet 失敗:", str(e))
59
 
60
+ def fetch_announcement_from_sheet():
61
+ DEFAULT_MESSAGE = "尚無公告"
62
+ try:
63
+ url = os.environ.get("ANNOUNCEMENT_URL")
64
+ if not url:
65
+ print("Warning: 環境變數 'ANNOUNCEMENT_URL' 未設定")
66
+ return DEFAULT_MESSAGE
67
+
68
+ df = pd.read_csv(url)
69
+
70
+ if "Announcement" not in df.columns:
71
+ print("Error: CSV 檔案中無 'Announcement' 欄位")
72
+ return DEFAULT_MESSAGE
73
+
74
+ content = str(df["Announcement"].iloc[0]).strip()
75
+ content = content.replace("\\n", "<br>").replace("\n", "<br>")
76
+ return content if content else DEFAULT_MESSAGE
77
+
78
+ except Exception as e:
79
+ print(f"Error: 載入公告失敗:{e}")
80
+ return DEFAULT_MESSAGE
81
+
82
+
83
  def validate_openai_key(api_key):
84
  try:
85
  client = OpenAI(api_key=api_key)
 
270
  # Gradio 介面
271
  with gr.Blocks() as demo:
272
  gr.Markdown("""
273
+ # 📐 RAG系統評估工具 (分流A)
274
 
275
  ### 📄 使用說明
276
+ - 請上傳您 RAG 系統產出的結果檔案(需包含欄位:Question、Context、Answer),並填入您的 OpenAI API Key,以進行評估。
277
+ -完整評估**通常需耗時 1 小時以上**,若無即時回應,請**耐心等候**,系統並未當機,謝謝您的理解。
278
+
279
+ ### 🚦 分流措施
280
+ 本工具部署於 Hugging Face Public Space,若同時有多位使用者使用,系統會將您的評估請求**排入佇列**。
281
+ 為避免長時間等待,建議您**先僅送出 1 筆資料進行測試**,若進度條顯示之預估**等待時間超過 2 小時(7000 秒以上),可能是其他使用者正在使用**。
282
+ 本頁為**分流 A**,您可以考慮改用其他分流或稍後再試,感謝您的耐心與配合!
283
+
284
  - 🔁 [主頁面 (Main)](https://huggingface.co/spaces/KSLab/RAG_Evaluator)
285
  - 🔁 [分流 A](https://huggingface.co/spaces/KSLab/RAG_Evaluator_A)
286
  - 🔁 [分流 C](https://huggingface.co/spaces/KSLab/RAG_Evaluator_C)
287
+
288
+ ### 📢 系統公告
289
  """)
290
+ gr.Markdown(fetch_announcement_from_sheet())
291
 
292
  file_input = gr.File(label="上傳 Evaluation_Dataset.csv")
293
  api_key_input = gr.Textbox(label="OpenAI API Key", type="password")
 
300
  gr.Markdown("""
301
  ---
302
  ### ❓ 常見問題 & 解答
303
+
304
  **Q: 什麼是「指令集」?**
305
  A: 「指令集」是我們用來描述老師在課堂上所設計的各種學習活動操作流程。在與教學系統互動時,老師通常會透過一系列結構化的指令來引導學生完成任務,因此我們將這些可重複使用的操作流程統稱為「指令集」。
306
  指令集也如同RESTful API一樣,我們有先盡力的與老師們溝通他們的需求,不過這些需求都只能視為一個草案,最終仍需要仰賴得標業者與老師們收斂,並且確定最終的版本來加以實作。