Amity123 commited on
Commit
59f470d
·
verified ·
1 Parent(s): 992f0fb

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +10 -9
app.py CHANGED
@@ -1,14 +1,15 @@
1
- from openai import OpenAI
2
- import gradio as gr
3
- import numpy as np
4
  import re
5
  import traceback
6
- import os
 
 
7
 
8
- # ======== 1. 初始化 OpenAI (使用 HF Secret Key) ========
9
- client = OpenAI(api_key=os.environ.get("OPENAIAPIKEY"))
 
10
 
11
- # ======== 2. 專業領域 ========
12
  PROFESSIONS = {
13
  "程式設計": "你是一位資深程式設計師,回答必須專業、詳細,附上程式範例與步驟。",
14
  "行銷": "你是一位行銷專家,回答必須專業、詳細,提供可執行行銷策略與步驟。",
@@ -72,7 +73,7 @@ def professional_agent(user_input, state):
72
  state["profession_prompt"] = profession_prompt
73
  question = re.sub(r"我是.*?(,|,)", "", user_input)
74
  if not question.strip():
75
- answer = "✅ 已設定你的專業領域請提出問題。"
76
  state["chat_history"].append([user_input, answer])
77
  return state["chat_history"], state
78
  else:
@@ -107,7 +108,7 @@ with gr.Blocks() as demo:
107
  gr.Markdown("## 🧑‍💼 全職業專業 AI 顧問")
108
  gr.Markdown("第一次輸入可以同時輸入職業 + 問題,例如:我是會計師,我想知道台灣稅務分析")
109
 
110
- chatbot = gr.Chatbot(type="messages") # 設定 type='messages' 避免 tuple 警告
111
  msg = gr.Textbox(label="輸入訊息")
112
  state = gr.State({"chat_history": [], "profession_prompt": None})
113
 
 
1
+ import os
 
 
2
  import re
3
  import traceback
4
+ import numpy as np
5
+ import gradio as gr
6
+ from openai import OpenAI
7
 
8
+ # ======== 1. 讀取 HF Space Secret 並轉給 SDK ========
9
+ os.environ["OPENAI_API_KEY"] = os.environ.get("OPENAIAPIKEY")
10
+ client = OpenAI() # SDK 會自動讀取 OPENAI_API_KEY
11
 
12
+ # ======== 2. 專業領域定義 ========
13
  PROFESSIONS = {
14
  "程式設計": "你是一位資深程式設計師,回答必須專業、詳細,附上程式範例與步驟。",
15
  "行銷": "你是一位行銷專家,回答必須專業、詳細,提供可執行行銷策略與步驟。",
 
73
  state["profession_prompt"] = profession_prompt
74
  question = re.sub(r"我是.*?(,|,)", "", user_input)
75
  if not question.strip():
76
+ answer = f"✅ 已設定你的專業領域:\n{profession_prompt}\n請提出問題。"
77
  state["chat_history"].append([user_input, answer])
78
  return state["chat_history"], state
79
  else:
 
108
  gr.Markdown("## 🧑‍💼 全職業專業 AI 顧問")
109
  gr.Markdown("第一次輸入可以同時輸入職業 + 問題,例如:我是會計師,我想知道台灣稅務分析")
110
 
111
+ chatbot = gr.Chatbot(type="messages") # 避免 tuple 警告
112
  msg = gr.Textbox(label="輸入訊息")
113
  state = gr.State({"chat_history": [], "profession_prompt": None})
114