cwadayi commited on
Commit
bc7d1ad
·
verified ·
1 Parent(s): cc4d810

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -14
app.py CHANGED
@@ -1,6 +1,6 @@
1
  import gradio as gr
2
 
3
- # --- 將教學內容儲存為字典,方便管理 ---
4
  TUTORIAL_STEPS = {
5
  "🚀 你的任務:星際開發者": """
6
  ## 🚀 你的任務:成為一名星際遠端開發者!
@@ -17,7 +17,7 @@ TUTORIAL_STEPS = {
17
 
18
  ---
19
  <p align="center">
20
- <img src="https://huggingface.co/spaces/{你的使用者名}/{專案名}/resolve/main/galaxy.jpg" alt="星際開發者封面圖" style="width:100%; max-width: 800px; border-radius: 8px;">
21
  </p>
22
 
23
  準備好了嗎,艦長?請從下拉選單中選擇你的第一個訓練科目!
@@ -90,22 +90,15 @@ TUTORIAL_STEPS = {
90
  """
91
  }
92
 
93
- # --- 測驗答案檢查函式 ---
94
- def check_quiz_answer(choice):
95
- if choice == "在遠端的 Mac Studio 上的 Dev Container 裡":
96
- return "✅ **答對了!** 你完全掌握了!你的 Windows 電腦只是一個遙控器,所有的運算和執行都在遠端主機的隔離環境中,這就是這個架構的精髓所在!"
97
- else:
98
- return "❌ **再想一想...** 記住,你的 Windows 電腦只是駕駛艙,用來發送指令和看螢幕。真正的引擎和機械手臂(程式執行)都在遠端的機甲(Mac Studio)上喔!"
99
-
100
  # --- 實際任務案例內容 ---
101
  CASE_STUDIES = {
102
- "地震科學與 AI 預警": """
103
  ### 任務情境:建構台灣地震 AI 分析與預警系統原型
104
 
105
  台灣位於環太平洋地震帶,開發更快速、更準確的地震預警系統至關重要。這項研究需要處理大量的即時地震波形資料,並訓練 AI 模型來預測 P 波到達時間與地震規模。
106
 
107
  <p align="center">
108
- <img src="https://huggingface.co/spaces/{你的使用者名}/{專案名}/resolve/main/seismic.jpg" alt="地震科學封面圖" style="width:100%; max-width: 800px; border-radius: 8px;">
109
  </p>
110
 
111
  **挑戰:**
@@ -123,7 +116,7 @@ CASE_STUDIES = {
123
 
124
  **最終成果:** 打造了一個高效、穩定且可重現的地震科學研究工作流程,讓科學家能專注於演算法和模型本身,這是開發下一代地震預警系統原型的絕佳基礎。
125
  """,
126
- "跨平台 App 開發": """
127
  ### 任務情境:開發星際通訊 App (Flutter / React Native)
128
 
129
  **挑戰:**
@@ -136,7 +129,7 @@ CASE_STUDIES = {
136
 
137
  **成果:** 完美解決了跨平台編譯的依賴問題,確保了團隊共享一個統一、高效的開發環境。
138
  """,
139
- "AI 模型訓練": """
140
  ### 任務情境:訓練識別外星生物的 AI 模型
141
 
142
  **挑戰:**
@@ -148,7 +141,7 @@ CASE_STUDIES = {
148
 
149
  **成果:** 你可以利用遠端超強的硬體資源,而不需要花大錢升級自己的本地電腦。
150
  """,
151
- "大型網頁後端開發": """
152
  ### 任務情境:建構星際貿易站的後端系統
153
 
154
  **挑戰:**
@@ -162,6 +155,17 @@ CASE_STUDIES = {
162
  """
163
  }
164
 
 
 
 
 
 
 
 
 
 
 
 
165
  # --- Gradio 應用介面設定 ---
166
  with gr.Blocks(theme=gr.themes.Soft(), title="星際開發者訓練模擬器") as demo:
167
  gr.Markdown(
 
1
  import gradio as gr
2
 
3
+ # --- 將教學內容儲存為字典 ---
4
  TUTORIAL_STEPS = {
5
  "🚀 你的任務:星際開發者": """
6
  ## 🚀 你的任務:成為一名星際遠端開發者!
 
17
 
18
  ---
19
  <p align="center">
20
+ <img src="https://huggingface.co/spaces/cwadayi/Dev_container/resolve/main/galaxy.jpg" alt="星際開發者封面圖" style="width:100%; max-width: 800px; border-radius: 8px;">
21
  </p>
22
 
23
  準備好了嗎,艦長?請從下拉選單中選擇你的第一個訓練科目!
 
90
  """
91
  }
92
 
 
 
 
 
 
 
 
93
  # --- 實際任務案例內容 ---
94
  CASE_STUDIES = {
95
+ "🌍 地震科學與 AI 預警": """
96
  ### 任務情境:建構台灣地震 AI 分析與預警系統原型
97
 
98
  台灣位於環太平洋地震帶,開發更快速、更準確的地震預警系統至關重要。這項研究需要處理大量的即時地震波形資料,並訓練 AI 模型來預測 P 波到達時間與地震規模。
99
 
100
  <p align="center">
101
+ <img src="https://huggingface.co/spaces/cwadayi/Dev_container/resolve/main/seismic.jpg" alt="地震科學封面圖" style="width:100%; max-width: 800px; border-radius: 8px;">
102
  </p>
103
 
104
  **挑戰:**
 
116
 
117
  **最終成果:** 打造了一個高效、穩定且可重現的地震科學研究工作流程,讓科學家能專注於演算法和模型本身,這是開發下一代地震預警系統原型的絕佳基礎。
118
  """,
119
+ "📱 跨平台 App 開發": """
120
  ### 任務情境:開發星際通訊 App (Flutter / React Native)
121
 
122
  **挑戰:**
 
129
 
130
  **成果:** 完美解決了跨平台編譯的依賴問題,確保了團隊共享一個統一、高效的開發環境。
131
  """,
132
+ "🤖 AI 模型訓練": """
133
  ### 任務情境:訓練識別外星生物的 AI 模型
134
 
135
  **挑戰:**
 
141
 
142
  **成果:** 你可以利用遠端超強的硬體資源,而不需要花大錢升級自己的本地電腦。
143
  """,
144
+ "🌐 大型網頁後端開發": """
145
  ### 任務情境:建構星際貿易站的後端系統
146
 
147
  **挑戰:**
 
155
  """
156
  }
157
 
158
+ # --- 教學內容產生函式 ---
159
+ def generate_tutorial_step(step):
160
+ return TUTORIAL_STEPS.get(step, "請從下拉選單選擇一個步驟。")
161
+
162
+ # --- 測驗答案檢查函式 ---
163
+ def check_quiz_answer(choice):
164
+ if choice == "在遠端的 Mac Studio 上的 Dev Container 裡":
165
+ return "✅ **答對了!** 你完全掌握了!你的 Windows 電腦只是一個遙控器,所有的運算和執行都在遠端主機的隔離環境中,這就是這個架構的精髓所在!"
166
+ else:
167
+ return "❌ **再想一想...** 記住,你的 Windows 電腦只是駕駛艙,用來發送指令和看螢幕。真正的引擎和機械手臂(程式執行)都在遠端的機甲(Mac Studio)上喔!"
168
+
169
  # --- Gradio 應用介面設定 ---
170
  with gr.Blocks(theme=gr.themes.Soft(), title="星際開發者訓練模擬器") as demo:
171
  gr.Markdown(