sandy083 commited on
Commit
231c4a5
·
verified ·
1 Parent(s): 0ce426f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +28 -6
app.py CHANGED
@@ -4,19 +4,41 @@ import gradio as gr
4
  import aisuite as ai
5
  import zipfile
6
  import time # 為了讓檔案解壓縮有時間
7
- # 移除 Colab 專用的 userdata 匯入
8
 
9
  # RAG 相關
10
  from langchain_community.vectorstores import FAISS
11
  from langchain_community.embeddings import HuggingFaceEmbeddings
12
 
 
 
 
 
 
 
 
 
13
  # =========================================================
14
  # 1. 檔案解壓縮與環境變數載入 (Hugging Face Secrets 會自動注入 OS 環境變數)
15
  # =========================================================
16
 
17
- # Hugging Face 環境中,Secrets 會被注入為環境變數。
18
- # 我們不再需要 google.colab import userdata 來獲取 Key。
19
- # 程式將直接從 os.environ 讀取。
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
20
 
21
  # 1.1 啟動時解壓縮 FAISS 資料庫
22
  if not os.path.exists("faiss_dbV2"):
@@ -30,8 +52,8 @@ if not os.path.exists("faiss_dbV2"):
30
  exit()
31
 
32
  # 1.2 檢查 API Key
33
- groq_api_key = os.environ.get('GROQ') # 注意:從 Secrets 讀取時 Key 要大寫,如 GROQ
34
- hf_token = os.environ.get('HuggingFace')
35
 
36
  if not groq_api_key:
37
  print("❌ 警告:GROQ API Key 未設定在 Hugging Face Secrets 中!")
 
4
  import aisuite as ai
5
  import zipfile
6
  import time # 為了讓檔案解壓縮有時間
 
7
 
8
  # RAG 相關
9
  from langchain_community.vectorstores import FAISS
10
  from langchain_community.embeddings import HuggingFaceEmbeddings
11
 
12
+ from huggingface_hub import login
13
+ # 移除 Colab 專用的 userdata 匯入
14
+
15
+ # =========================================================
16
+ # 1. 檔案解壓縮與環境變數載入 (Hugging Face Secrets 會自動注入 OS 環境變數)
17
+ # =========================================================
18
+
19
+ # 1.0 透過 Token 登入 Hugging Face (【新增的關鍵程式碼】)
20
  # =========================================================
21
  # 1. 檔案解壓縮與環境變數載入 (Hugging Face Secrets 會自動注入 OS 環境變數)
22
  # =========================================================
23
 
24
+ # 1.0 透過 Token 登入 Hugging Face (【關鍵修正區塊】)
25
+ groq_api_key = os.environ.get('GROQ')
26
+ hf_token = os.environ.get('HuggingFace')
27
+
28
+ if hf_token:
29
+ try:
30
+ login(token=hf_token)
31
+ print("✅ Hugging Face 登入成功,已驗證模型存取權。")
32
+ except Exception as e:
33
+ print(f"❌ 警告:Hugging Face Token 登入失敗。請檢查 Secrets 裡面的 'HuggingFace' Token 是否有讀取權限或是否過期。錯誤: {e}")
34
+
35
+ if not groq_api_key:
36
+ print("❌ 警告:GROQ API Key 未設定在 Hugging Face Secrets 中!")
37
+
38
+ # 由於 aisuite 依賴 os.environ,我們在這裡確保 Groq Key 再次被設定
39
+ os.environ['GROQ_API_KEY'] = groq_api_key if groq_api_key else ""
40
+
41
+ # 1.1 啟動時解壓縮 FAISS 資料庫
42
 
43
  # 1.1 啟動時解壓縮 FAISS 資料庫
44
  if not os.path.exists("faiss_dbV2"):
 
52
  exit()
53
 
54
  # 1.2 檢查 API Key
55
+ #groq_api_key = os.environ.get('GROQ') # 注意:從 Secrets 讀取時 Key 要大寫,如 GROQ
56
+ #hf_token = os.environ.get('HuggingFace')
57
 
58
  if not groq_api_key:
59
  print("❌ 警告:GROQ API Key 未設定在 Hugging Face Secrets 中!")