youngtsai commited on
Commit
b0d34ae
1 Parent(s): 09f6fb1
Files changed (2) hide show
  1. app.py +19 -3
  2. educational_material.py +92 -78
app.py CHANGED
@@ -22,6 +22,7 @@ import os
22
  import io
23
  import time
24
  import json
 
25
  from urllib.parse import urlparse, parse_qs
26
 
27
  from google.cloud import storage
@@ -347,6 +348,18 @@ def docx_to_text(file):
347
 
348
 
349
  # ---- YouTube link ----
 
 
 
 
 
 
 
 
 
 
 
 
350
  def format_seconds_to_time(seconds):
351
  """将秒数格式化为 时:分:秒 的形式"""
352
  hours = int(seconds // 3600)
@@ -1188,10 +1201,13 @@ def generate_key_moments(formatted_simple_transcript, formatted_transcript):
1188
  print(key_moments)
1189
  print("=====key_moments=====")
1190
  image_links = {entry['start_time']: entry['screenshot_path'] for entry in formatted_transcript}
 
1191
  for moment in key_moments:
1192
- start_time = moment['start']
1193
- end_time = moment['end']
1194
- moment_images = [image_links[time] for time in image_links if start_time <= time <= end_time]
 
 
1195
  moment['images'] = moment_images
1196
 
1197
  return key_moments
 
22
  import io
23
  import time
24
  import json
25
+ from datetime import timedelta
26
  from urllib.parse import urlparse, parse_qs
27
 
28
  from google.cloud import storage
 
348
 
349
 
350
  # ---- YouTube link ----
351
+ def parse_time(time_str):
352
+ """將時間字符串 'HH:MM:SS' 或 'MM:SS' 轉換為 timedelta 物件。"""
353
+ parts = list(map(int, time_str.split(':')))
354
+ if len(parts) == 3:
355
+ hours, minutes, seconds = parts
356
+ elif len(parts) == 2:
357
+ hours = 0 # 沒有小時部分時,將小時設為0
358
+ minutes, seconds = parts
359
+ else:
360
+ raise ValueError("時間格式不正確,應為 'HH:MM:SS' 或 'MM:SS'")
361
+ return timedelta(hours=hours, minutes=minutes, seconds=seconds)
362
+
363
  def format_seconds_to_time(seconds):
364
  """将秒数格式化为 时:分:秒 的形式"""
365
  hours = int(seconds // 3600)
 
1201
  print(key_moments)
1202
  print("=====key_moments=====")
1203
  image_links = {entry['start_time']: entry['screenshot_path'] for entry in formatted_transcript}
1204
+
1205
  for moment in key_moments:
1206
+ start_time = parse_time(moment['start'])
1207
+ end_time = parse_time(moment['end'])
1208
+ # 使用轉換後的 timedelta 物件進行時間比較
1209
+ moment_images = [image_links[time] for time in image_links
1210
+ if start_time <= parse_time(time) <= end_time]
1211
  moment['images'] = moment_images
1212
 
1213
  return key_moments
educational_material.py CHANGED
@@ -49,7 +49,7 @@ class EducationalMaterial:
49
 
50
  def _generate_worksheet_prompt(self):
51
  bloom_worksheet_prompt = """
52
- 你是個專業的教師,,遇到數學符號或是敘述請用 Latex 語法($...$),例如:$x^2$。
53
  熟悉布魯姆(Benjamin Bloom, 1964) 的認知理論。布魯姆認為人類的能力,大致可分為三個領域(domains),即認知領域(cognitive domain)、情意領域(affective domain)、技能領域 (psychomotor domain)。
54
 
55
  【認知領域】涉及知能及其運作,著重心智、學習以及問題解決的工作。認知目標從簡單的認識或記憶能力到複雜的評鑑能力。大部分的教育目標都屬於這個領域。認知領域的目標分為六個層次,每個層次代表不同的心智功能。
@@ -70,33 +70,33 @@ class EducationalMaterial:
70
  其中,「重點」的題目請用挖空的填空題;在「想一想」的程序性問題請以單選題或填空題的形式來建立,需要 3 個題目;「延伸與應用」請使用問答題的形式來建立,一題即可。
71
  題目和題目之間要換行,並加上 point 符號,像是 "-" 或是 "1." 等等
72
 
73
- 這是範例格式:
74
- 🌐【主題】:認識公里
75
 
76
- 🎓【對象】
77
  - 科目: 數學
78
  - 年級: 三年級
79
  - 難度: 基礎
80
 
81
- 🏞️【情境描述】
82
  - 狐狸貓和家人出遊,過程中認識測量較長距離的單位「公里」。
83
 
84
- 🔑【影片重點】
85
  - 公里是用來測量長距離的單位,通常用於測量很遠的距離。
86
  - 1公里等於___公尺,也稱為千米。
87
  - 公里的英文簡寫是 ____。
88
 
89
- 🌟【概念】
90
  - 請問公里通常用於測量什麼類型的距離?
91
  - 如果一圈操場是200公尺,那跑5圈是多少公尺?多少公里?
92
  - 為什麼我們需要使用公里這個單位來測量距離?
93
 
94
- 🔢【想一想】
95
  1. 一圈操場是200公尺,跑10圈是多少公里?(A) 1公里 (B) 2公里 (C) 3公里 (D) 4公里
96
  2. 如果你跑了5圈操場,運動手環上會顯示你跑了多少公里?
97
  3. 6000公尺等於多少公里?
98
 
99
- 💡【延伸與應用】
100
  - 假設你參加一場慈善路跑活動,全程是5公里。如果你已經跑了3公里,還剩下多少公里?你覺得這樣的活動對你的體能有什麼影響?
101
  """
102
 
@@ -112,39 +112,43 @@ class EducationalMaterial:
112
  請以此設計學習單並依據文本跟難度給予題目
113
  請一定要使用 zh-TW
114
 
115
- 這是範例格式:
116
- 🌐 主題:【概念】認識公里
117
 
118
- 🎓【對象】
119
  - 科目: 數學
120
  - 年級: 三年級
121
  - 難度: 基礎
122
 
123
- 🏞️【情境描述】
124
- 狐狸貓和家人出遊,過程中認識測量較長距離的單位「公里」。
125
 
126
- ❓【給出問題】
127
  - 如果日月潭環潭自行車道共30公里,狐狸貓騎行了13.7公里後休息,剩餘多少公里尚未騎行?
128
 
129
- 🤔【理解問題】
 
130
  首先,我們必須完全理解問題的所有細節。在此情境中,我們需要釐清以下幾點:
131
  - 日月潭環潭自行車道的總長度為30公里。
132
  - 狐狸貓已經騎行了13.7公里。
133
  - 我們的目標是計算狐狸貓還剩下多少公里未騎行。
134
 
135
- 🧭【設計解題策略】
 
136
  接下來,根據我們對問題的理解來設計解決問題的計劃。在此步驟中,我們決定採用哪種策略來解決問題。對於這個問題,最直接的計劃是使用算術減法:
137
  - 總公里數(30公里)減去已騎行的公里數(13.7公里)。
138
 
139
- 📝【按步解題】
 
140
  按照設計的計劃執行解題步驟。在這裡我們執行減法運算:
141
- 30−13.7=16.3
142
  這意味著狐狸貓還有16.3公里未騎行。
143
 
144
- ✨【回顧解答】
145
- 最後,解題完成後,我們回顧和反思整個解題過程。在這一步,我們驗證「想一想」的結果是否符合邏輯��是否正確解決了原問題。
146
- 同時,考慮是否有更有效或簡便的方法來解決類似的問題。在這個例子中,使用直接減法是最簡單直接的方法。
147
- 但在其他情境下,可能需要考慮使用圖形、表格或代數表達式等其他策略來解決問題。
 
148
  """
149
 
150
  # CRA教學法
@@ -158,25 +162,26 @@ class EducationalMaterial:
158
  最後一個階段,即抽象(A)階段,是一個抽象的“符號”階段, 在這一階段, 教師使用數字、字母等數學符號(如:2, 6, 3x, +,-等)來進行教學。
159
  運用CRA的前提是學生在學習“規則”前必須學會概念。使用過加工材料的學生,其思維更加明確,更容易理解該方式,同時其學習動機、專注行爲、 理解力以及對這些概念的運用能力也會得到較大改善( Hrrison & Harison, 1986 )。
160
  CRA策略可以有效地幫助學生理解以下幾個概念:早期數量關係、位值、計算、分數、小數、測量、幾何、貨幣、百分數、數基、應用題、概率以及統計等
161
- 這是範例格式:
162
- 🌐 主題:【概念】認識公里
 
163
 
164
- 🎓【對象】
165
  - 科目: 數學
166
  - 年級: 三年級
167
  - 難度: 基礎
168
 
169
- 【實例(C)階段】
170
  1. 用彩色圓片來解釋什麼是分數?
171
  2. 用立方體來解釋什麼是體積?
172
  3. 用十進位積木來解釋什麼是小數?
173
 
174
- 【描述(R)階段】
175
  1. 用手繪圖片來解釋什麼是分數?
176
  2. 用貼紙來解釋什麼是體積?
177
  3. 用手繪圖片來解釋什麼是小數?
178
 
179
- 【抽象(A)階段】
180
  1. 用數字來解釋什麼是分數?
181
  2. 用字母來解釋什麼是體積?
182
  3. 用數字來解釋什麼是小數?
@@ -204,6 +209,7 @@ class EducationalMaterial:
204
  3. 【課程大綱】的工作項目請嚴格遵守【課程時間】的時間長度,總和時間不要超過或不足
205
  4. 時間安排盡量以五分鐘的倍數為一個單位
206
  5. 並且根據課程目標安排教學內容
 
207
  Step1. 你是一個精通於課程設計的老師,能夠運用 ADDIE 教學策略來設計一門適合學生的課程。
208
  Step2. 接下來,當使用者按下 "Conversation staters" 的 "請上傳逐字稿",你將依據輸入的影片逐字稿 (請使用 python 程式來分析、解讀內容),來規劃一堂 40 分鐘以 ADDIE 模型作為架構的課程,內容請使用台灣口語 (zh_TW)。
209
  - 以下是 ADDIE 的說明:
@@ -231,38 +237,38 @@ class EducationalMaterial:
231
  Step4. 請在「設計」和「實施」階段請使用合適的範例做說明。
232
  Step5. 請使用 Markdown 語法,標題與段落文字的字級需有所區隔。
233
 
234
- example:
235
- # 課程設計:面積的實測與估測
236
 
237
- # 教學重點
238
  1. 面積的概念:解釋什麼是面積,以及它在日常生活中的應用。
239
  2. 面積的計算:教授如何計算不同形狀的面積(例如矩形、三角形)。
240
  3. 實測與估測的區別:比較實際測量面積和估算面積的不同方法。
241
  4. 應用實例:使用日常生活中的例子,例如給麥麥的生日卡片大小的比較,來說明面積的重要性。
242
 
243
- # 分析(Analysis)
244
  - 目標學習者:小學高年級學生。
245
  - 學習需求:理解面積概念,掌握基本面積計算方法。
246
  - 學習風格:結合視覺教材和互動活動。
247
 
248
- # 設計(Design)
249
  - 課程目標:學生能夠理解面積概念,並能透過實際操作學會估算和計算面積。
250
  - 學習單元:(a)面積基礎概念(b)計算面積(c)實測與估測的比較。
251
  - 教學策略:透過互動遊戲、��例討論和實作活動進行教學。
252
  - 評估方法:透過小測驗和課堂參與情況進行評估。
253
 
254
- # 開發(Development)
255
  - 教材準備:準備視覺化教學幻燈片,設計互動遊戲和實作活動。
256
  - 教學活動:設計面積估測遊戲,讓學生在實際操作中學習。
257
 
258
- # 實施(Implementation)
259
  - 課程時間分配:(a)面積基礎概念(10分鐘)(b)計算面積(15分鐘)(c)實測與估測比較(10分鐘)(d)總結與回顧(5分鐘)。
260
  - 教學範例:
261
  - 面積基礎概念:介紹面積是如何在日常生活中應用,例如計算桌布的大小。
262
  - 計算面積:透過計算教室黑板或門的面積來教學。
263
  - 實測與估測比較:讓學生估計並實際測量教室中物品的面積,比較結果。
264
 
265
- # 評估(Evaluation)
266
  - 教材評估:確保教材能清楚傳達面積概念。
267
  - 學習者反應:觀察學生參與情況,收集反饋以改善教學。
268
  - 學習成就:透過小測驗評估學生對面積概念的理解。
@@ -282,6 +288,7 @@ class EducationalMaterial:
282
  3. 【課程大綱】的工作項目請嚴格遵守【課程時間】的時間長度,總和時間不要超過或不足
283
  4. 時間安排盡量以五分鐘的倍數為一個單位
284
  5. 並且根據課程目標安排教學內容
 
285
 
286
  Lesson Planner 5E is specialized in developing lesson plans for various subjects including Mathematics, Physics, Chemistry, and Biology, using the 5E instructional model. Teachers can input transcripts or text related to these subjects, and the GPT will analyze the content to create a comprehensive lesson plan. The plan will follow the 5E stages: Engagement, Exploration, Explanation, Elaboration, and Evaluation. Each stage will be customized to suit the subject matter, ensuring that students are engaged and the learning objectives are met. For Mathematics, the GPT might suggest problem-solving activities; for Physics, interactive experiments; for Chemistry, lab demonstrations; and for Biology, field studies or observations. The GPT's goal is to make science and math subjects accessible and interesting for students, fostering a deeper understanding through hands-on and inquiry-based learning.
287
 
@@ -298,34 +305,35 @@ class EducationalMaterial:
298
 
299
  Step2:請根據逐字稿的內容描述,以 5E 架構來創建一份 Lesson Plan (課程計畫)。請依循並參考以下輸出範例來設計課程計畫),需使用 markdown 語法:
300
 
301
- ## 輸出範例:
 
302
 
303
- 課程主題:同分母分數的加減 (使用影片或逐字稿的標題)
304
- 課程重點:(列出逐字稿內容的重要概念或教學重點)
305
- 年級:四年級 (依據詢問的年齡或年級填入)
306
- 課程長度:45-50 分鐘(根據課程數入時間訂定)
307
 
308
- 【參與】(5 分鐘)
309
 
310
  - 透過在黑板或投影機上顯示切成不同部分的披薩的圖片來開始課程。
311
  - 讓學生與夥伴討論他們注意到分數的什麼以及如何將它們加在一起或減在一起。
312
  - 幾分鐘後,請幾位學生與全班分享他們的觀察和想法。
313
 
314
- 【探索】(10 分鐘)
315
 
316
  - 發給每位學生分數操作工具(例如分數條、分數圓)。
317
  - 為每個學生提供一份工作表,其中包含幾個涉及具有相同分母的分數的加法和減法問題。
318
  - 指導學生使用操作工具解決工作表上的問題。
319
  - 在房間裡走動,觀察學生的理解情況,並根據需要提供指導。
320
 
321
- 【解釋】(10 分鐘)
322
 
323
  - 讓全班同學重新聚集在一起,討論相同分母分數加法和減法的策略和方法。
324
  - 介紹關鍵詞彙:分子、分母、分數、同分母。
325
  - 顯示並解釋公式:如果兩個分數具有相同的分母,則將分子相加或相減,然後寫出公分母的和或差。
326
  - 提供同分母分數加減法的例子,示���步驟和計算。
327
 
328
- 【學習共同體】(15 分鐘)
329
 
330
  - 將學生分成兩人一組或小組。
331
  - 向每組分發一組分數加法和減法任務卡。
@@ -333,23 +341,24 @@ class EducationalMaterial:
333
  - 鼓勵學生互相解釋他們的想法和推理。
334
  - 在教室裡走動以了解學生的進度並在需要時提供支持或澄清。
335
 
336
- 【評估】(10 分鐘)
337
 
338
  - 要求每個小組選擇一張任務卡並向全班展示他們的解決方案。
339
  - 作為一個班級,討論各小組使用的不同策略並評估他們解決方案的正確性。
340
  - 提供回饋並澄清討論期間出現的任何誤解。
341
  - 收集學生的工作表和任務卡,作為他們理解的形成性評估。
342
 
343
- 【總結】
344
 
345
  - 總結課程中討論的重點,強調分數加減法時分母相同的重要性。
346
  - 請學生反思他們的學習,並寫一兩句話來說明他們認為今天的課程有挑戰性或有趣的地方。
347
 
348
- 【學習評估】
349
 
350
  - 形成性評估:探索和細化階段的觀察以及討論和演示將深入了解學生對相同分母分數加法和減法的理解。
351
  - 總結性評估:收集並審查學生的工作表和任務卡,以評估他們解決涉及具有相同分母的分數的加法和減法問題的能力。
352
  """
 
353
  lesson_plan_prompt = lesson_plan_ADDIE_prompt
354
 
355
  return lesson_plan_prompt
@@ -368,42 +377,46 @@ class EducationalMaterial:
368
  2. 該換行就換行,盡量滿足 word .doc 的格式
369
  3. 規劃限定時間內,學生能夠完成的出場券習題,共有 5 題,請使用 3 個單選題 (四選項) 以及 2 個填空題,題目必須能夠符合此逐字稿內容描述的數學學習目標,以類題方式建立。
370
  4. 此出場券習題最末請公布各題的答案。
 
371
 
372
- example:
373
- 出場券習題:公里、公尺和公分的換算
374
- 選擇題(請從四個選項中選出一個正確答案)
 
 
 
 
375
 
376
  1. 1公里等於多少公尺?
377
- A) 100公尺
378
- B) 1000公尺
379
- C) 10,000公尺
380
- D) 100公分
381
 
382
  2. 5公尺等於多少公分?
383
- A) 50公分
384
- B) 500公分
385
- C) 5,000公分
386
- D) 50,000公分
387
-
388
- 3. 如果你走了2.5公里的路程,這段路程等於多少公尺?
389
- A) 250公尺
390
- B) 2,500公尺
391
- C) 25,000公尺
392
- D) 250,000公尺
393
 
394
- 填空題
395
  1. 100公分等於___公尺?(請填入數字)
396
  2. 1公尺等於___公分?(請填入數字)
397
 
398
 
399
- 答案公布
400
- 答案:B) 1000公尺
401
- 答案:B) 500公分
402
- 答案:B) 2,500公尺
403
- 答案:A) 3公尺
404
- 答案:1公尺
 
 
 
 
 
 
405
 
406
- 這套出場券習題旨在幫助學生掌握公里、公尺、和公分之間的換算關係,通過實際的例子加深學生對這些單位之間轉換的理解。
407
  """
408
  return exit_ticket_prompt
409
 
@@ -432,10 +445,11 @@ class EducationalMaterial:
432
  {specific_feature_text}
433
 
434
  請根據逐字稿進行以下工作:
435
- 不要提到 【逐字稿】 這個詞,直接給出工作內容即可
436
- 如果是中文素材,請嚴格使用 zh-TW
437
- 請用 {self.grade} 年級的口吻,不要用太難的詞彙
438
- {self.generate_content_prompt()}
 
439
  """
440
  print("====User content====")
441
  print(user_content)
 
49
 
50
  def _generate_worksheet_prompt(self):
51
  bloom_worksheet_prompt = """
52
+ 你是個專業的教師,遇到數學符號或是敘述請用 Latex 語法($...$),例如:$x^2$。
53
  熟悉布魯姆(Benjamin Bloom, 1964) 的認知理論。布魯姆認為人類的能力,大致可分為三個領域(domains),即認知領域(cognitive domain)、情意領域(affective domain)、技能領域 (psychomotor domain)。
54
 
55
  【認知領域】涉及知能及其運作,著重心智、學習以及問題解決的工作。認知目標從簡單的認識或記憶能力到複雜的評鑑能力。大部分的教育目標都屬於這個領域。認知領域的目標分為六個層次,每個層次代表不同的心智功能。
 
70
  其中,「重點」的題目請用挖空的填空題;在「想一想」的程序性問題請以單選題或填空題的形式來建立,需要 3 個題目;「延伸與應用」請使用問答題的形式來建立,一題即可。
71
  題目和題目之間要換行,並加上 point 符號,像是 "-" 或是 "1." 等等
72
 
73
+ 輸出 Markdown,這是範例格式:
74
+ ### 🌐【主題】:認識公里
75
 
76
+ ### 🎓【對象】
77
  - 科目: 數學
78
  - 年級: 三年級
79
  - 難度: 基礎
80
 
81
+ ### 🏞️【情境描述】
82
  - 狐狸貓和家人出遊,過程中認識測量較長距離的單位「公里」。
83
 
84
+ ### 🔑【影片重點】
85
  - 公里是用來測量長距離的單位,通常用於測量很遠的距離。
86
  - 1公里等於___公尺,也稱為千米。
87
  - 公里的英文簡寫是 ____。
88
 
89
+ ### 🌟【概念】
90
  - 請問公里通常用於測量什麼類型的距離?
91
  - 如果一圈操場是200公尺,那跑5圈是多少公尺?多少公里?
92
  - 為什麼我們需要使用公里這個單位來測量距離?
93
 
94
+ ### 🔢【想一想】
95
  1. 一圈操場是200公尺,跑10圈是多少公里?(A) 1公里 (B) 2公里 (C) 3公里 (D) 4公里
96
  2. 如果你跑了5圈操場,運動手環上會顯示你跑了多少公里?
97
  3. 6000公尺等於多少公里?
98
 
99
+ ### 💡【延伸與應用】
100
  - 假設你參加一場慈善路跑活動,全程是5公里。如果你已經跑了3公里,還剩下多少公里?你覺得這樣的活動對你的體能有什麼影響?
101
  """
102
 
 
112
  請以此設計學習單並依據文本跟難度給予題目
113
  請一定要使用 zh-TW
114
 
115
+ 輸出 Markdown,這是範例格式:
116
+ ## 🌐 主題:【概念】認識公里
117
 
118
+ ### 【對象】
119
  - 科目: 數學
120
  - 年級: 三年級
121
  - 難度: 基礎
122
 
123
+ ### 🏞️【情境描述】
124
+ - 狐狸貓和家人出遊,過程中認識測量較長距離的單位「公里」。
125
 
126
+ ### ❓【給出問題】
127
  - 如果日月潭環潭自行車道共30公里,狐狸貓騎行了13.7公里後休息,剩餘多少公里尚未騎行?
128
 
129
+ ### 🤔【理解問題】
130
+
131
  首先,我們必須完全理解問題的所有細節。在此情境中,我們需要釐清以下幾點:
132
  - 日月潭環潭自行車道的總長度為30公里。
133
  - 狐狸貓已經騎行了13.7公里。
134
  - 我們的目標是計算狐狸貓還剩下多少公里未騎行。
135
 
136
+ ### 🧭【設計解題策略】
137
+
138
  接下來,根據我們對問題的理解來設計解決問題的計劃。在此步驟中,我們決定採用哪種策略來解決問題。對於這個問題,最直接的計劃是使用算術減法:
139
  - 總公里數(30公里)減去已騎行的公里數(13.7公里)。
140
 
141
+ ### 📝【按步解題】
142
+
143
  按照設計的計劃執行解題步驟。在這裡我們執行減法運算:
144
+ $$ 30−13.7=16.3 $$
145
  這意味著狐狸貓還有16.3公里未騎行。
146
 
147
+ ### ✨【回顧解答】
148
+
149
+ - 最後,解題完成後,我們回顧和反思整個解題過程。在這一步,我們驗證「想一想」的結果是否符合邏輯,是否正確解決了原問題。
150
+ - 同時,考慮是否有更有效或簡便的方法來解決類似的問題。在這個例子中,使用直接減法是最簡單直接的方法。
151
+ - 但在其他情境下,可能需要考慮使用圖形、表格或代數表達式等其他策略來解決問題。
152
  """
153
 
154
  # CRA教學法
 
162
  最後一個階段,即抽象(A)階段,是一個抽象的“符號”階段, 在這一階段, 教師使用數字、字母等數學符號(如:2, 6, 3x, +,-等)來進行教學。
163
  運用CRA的前提是學生在學習“規則”前必須學會概念。使用過加工材料的學生,其思維更加明確,更容易理解該方式,同時其學習動機、專注行爲、 理解力以及對這些概念的運用能力也會得到較大改善( Hrrison & Harison, 1986 )。
164
  CRA策略可以有效地幫助學生理解以下幾個概念:早期數量關係、位值、計算、分數、小數、測量、幾何、貨幣、百分數、數基、應用題、概率以及統計等
165
+
166
+ 輸出 Markdown,這是範例格式:
167
+ ### 🌐 主題:【概念】認識公里
168
 
169
+ ###【對象】
170
  - 科目: 數學
171
  - 年級: 三年級
172
  - 難度: 基礎
173
 
174
+ ### 【實例(C)階段】
175
  1. 用彩色圓片來解釋什麼是分數?
176
  2. 用立方體來解釋什麼是體積?
177
  3. 用十進位積木來解釋什麼是小數?
178
 
179
+ ###【描述(R)階段】
180
  1. 用手繪圖片來解釋什麼是分數?
181
  2. 用貼紙來解釋什麼是體積?
182
  3. 用手繪圖片來解釋什麼是小數?
183
 
184
+ ###【抽象(A)階段】
185
  1. 用數字來解釋什麼是分數?
186
  2. 用字母來解釋什麼是體積?
187
  3. 用數字來解釋什麼是小數?
 
209
  3. 【課程大綱】的工作項目請嚴格遵守【課程時間】的時間長度,總和時間不要超過或不足
210
  4. 時間安排盡量以五分鐘的倍數為一個單位
211
  5. 並且根據課程目標安排教學內容
212
+ 6. 遇到數學符號或是敘述請用 Latex 語法($...$),例如:$x^2$。
213
  Step1. 你是一個精通於課程設計的老師,能夠運用 ADDIE 教學策略來設計一門適合學生的課程。
214
  Step2. 接下來,當使用者按下 "Conversation staters" 的 "請上傳逐字稿",你將依據輸入的影片逐字稿 (請使用 python 程式來分析、解讀內容),來規劃一堂 40 分鐘以 ADDIE 模型作為架構的課程,內容請使用台灣口語 (zh_TW)。
215
  - 以下是 ADDIE 的說明:
 
237
  Step4. 請在「設計」和「實施」階段請使用合適的範例做說明。
238
  Step5. 請使用 Markdown 語法,標題與段落文字的字級需有所區隔。
239
 
240
+ output Markdown,example as below:
241
+ ## 課程設計:面積的實測與估測
242
 
243
+ ### 教學重點
244
  1. 面積的概念:解釋什麼是面積,以及它在日常生活中的應用。
245
  2. 面積的計算:教授如何計算不同形狀的面積(例如矩形、三角形)。
246
  3. 實測與估測的區別:比較實際測量面積和估算面積的不同方法。
247
  4. 應用實例:使用日常生活中的例子,例如給麥麥的生日卡片大小的比較,來說明面積的重要性。
248
 
249
+ ### 分析(Analysis)
250
  - 目標學習者:小學高年級學生。
251
  - 學習需求:理解面積概念,掌握基本面積計算方法。
252
  - 學習風格:結合視覺教材和互動活動。
253
 
254
+ ### 設計(Design)
255
  - 課程目標:學生能夠理解面積概念,並能透過實際操作學會估算和計算面積。
256
  - 學習單元:(a)面積基礎概念(b)計算面積(c)實測與估測的比較。
257
  - 教學策略:透過互動遊戲、��例討論和實作活動進行教學。
258
  - 評估方法:透過小測驗和課堂參與情況進行評估。
259
 
260
+ ### 開發(Development)
261
  - 教材準備:準備視覺化教學幻燈片,設計互動遊戲和實作活動。
262
  - 教學活動:設計面積估測遊戲,讓學生在實際操作中學習。
263
 
264
+ ### 實施(Implementation)
265
  - 課程時間分配:(a)面積基礎概念(10分鐘)(b)計算面積(15分鐘)(c)實測與估測比較(10分鐘)(d)總結與回顧(5分鐘)。
266
  - 教學範例:
267
  - 面積基礎概念:介紹面積是如何在日常生活中應用,例如計算桌布的大小。
268
  - 計算面積:透過計算教室黑板或門的面積來教學。
269
  - 實測與估測比較:讓學生估計並實際測量教室中物品的面積,比較結果。
270
 
271
+ ### 評估(Evaluation)
272
  - 教材評估:確保教材能清楚傳達面積概念。
273
  - 學習者反應:觀察學生參與情況,收集反饋以改善教學。
274
  - 學習成就:透過小測驗評估學生對面積概念的理解。
 
288
  3. 【課程大綱】的工作項目請嚴格遵守【課程時間】的時間長度,總和時間不要超過或不足
289
  4. 時間安排盡量以五分鐘的倍數為一個單位
290
  5. 並且根據課程目標安排教學內容
291
+ 6. 遇到數學符號或是敘述請用 Latex 語法($...$),例如:$x^2$。
292
 
293
  Lesson Planner 5E is specialized in developing lesson plans for various subjects including Mathematics, Physics, Chemistry, and Biology, using the 5E instructional model. Teachers can input transcripts or text related to these subjects, and the GPT will analyze the content to create a comprehensive lesson plan. The plan will follow the 5E stages: Engagement, Exploration, Explanation, Elaboration, and Evaluation. Each stage will be customized to suit the subject matter, ensuring that students are engaged and the learning objectives are met. For Mathematics, the GPT might suggest problem-solving activities; for Physics, interactive experiments; for Chemistry, lab demonstrations; and for Biology, field studies or observations. The GPT's goal is to make science and math subjects accessible and interesting for students, fostering a deeper understanding through hands-on and inquiry-based learning.
294
 
 
305
 
306
  Step2:請根據逐字稿的內容描述,以 5E 架構來創建一份 Lesson Plan (課程計畫)。請依循並參考以下輸出範例來設計課程計畫),需使用 markdown 語法:
307
 
308
+ ---
309
+ output Markdown,example as below:
310
 
311
+ ## 課程主題:同分母分數的加減 (使用影片或逐字稿的標題)
312
+ ### 課程重點:(列出逐字稿內容的重要概念或教學重點)
313
+ ### 年級:四年級 (依據詢問的年齡或年級填入)
314
+ ### 課程長度:45-50 分鐘(根據課程數入時間訂定)
315
 
316
+ ### 【參與】(5 分鐘)
317
 
318
  - 透過在黑板或投影機上顯示切成不同部分的披薩的圖片來開始課程。
319
  - 讓學生與夥伴討論他們注意到分數的什麼以及如何將它們加在一起或減在一起。
320
  - 幾分鐘後,請幾位學生與全班分享他們的觀察和想法。
321
 
322
+ ###【探索】(10 分鐘)
323
 
324
  - 發給每位學生分數操作工具(例如分數條、分數圓)。
325
  - 為每個學生提供一份工作表,其中包含幾個涉及具有相同分母的分數的加法和減法問題。
326
  - 指導學生使用操作工具解決工作表上的問題。
327
  - 在房間裡走動,觀察學生的理解情況,並根據需要提供指導。
328
 
329
+ ###【解釋】(10 分鐘)
330
 
331
  - 讓全班同學重新聚集在一起,討論相同分母分數加法和減法的策略和方法。
332
  - 介紹關鍵詞彙:分子、分母、分數、同分母。
333
  - 顯示並解釋公式:如果兩個分數具有相同的分母,則將分子相加或相減,然後寫出公分母的和或差。
334
  - 提供同分母分數加減法的例子,示���步驟和計算。
335
 
336
+ ###【學習共同體】(15 分鐘)
337
 
338
  - 將學生分成兩人一組或小組。
339
  - 向每組分發一組分數加法和減法任務卡。
 
341
  - 鼓勵學生互相解釋他們的想法和推理。
342
  - 在教室裡走動以了解學生的進度並在需要時提供支持或澄清。
343
 
344
+ ###【評估】(10 分鐘)
345
 
346
  - 要求每個小組選擇一張任務卡並向全班展示他們的解決方案。
347
  - 作為一個班級,討論各小組使用的不同策略並評估他們解決方案的正確性。
348
  - 提供回饋並澄清討論期間出現的任何誤解。
349
  - 收集學生的工作表和任務卡,作為他們理解的形成性評估。
350
 
351
+ ###【總結】
352
 
353
  - 總結課程中討論的重點,強調分數加減法時分母相同的重要性。
354
  - 請學生反思他們的學習,並寫一兩句話來說明他們認為今天的課程有挑戰性或有趣的地方。
355
 
356
+ ###【學習評估】
357
 
358
  - 形成性評估:探索和細化階段的觀察以及討論和演示將深入了解學生對相同分母分數加法和減法的理解。
359
  - 總結性評估:收集並審查學生的工作表和任務卡,以評估他們解決涉及具有相同分母的分數的加法和減法問題的能力。
360
  """
361
+
362
  lesson_plan_prompt = lesson_plan_ADDIE_prompt
363
 
364
  return lesson_plan_prompt
 
377
  2. 該換行就換行,盡量滿足 word .doc 的格式
378
  3. 規劃限定時間內,學生能夠完成的出場券習題,共有 5 題,請使用 3 個單選題 (四選項) 以及 2 個填空題,題目必須能夠符合此逐字稿內容描述的數學學習目標,以類題方式建立。
379
  4. 此出場券習題最末請公布各題的答案。
380
+ 5. 遇到數學符號或是敘述請用 Latex 語法($...$),例如:$x^2$。
381
 
382
+
383
+ output Markdown,example as below:
384
+
385
+ ## 出場券習題:公里、公尺和公分的換算
386
+ ### 目標:這套出場券習題旨在幫助學生掌握公里、公尺、和公分之間的換算關係,通過實際的例子加深學生對這些單位之間轉換的理解。
387
+
388
+ ### 選擇題(請從四個選項中選出一個正確答案)
389
 
390
  1. 1公里等於多少公尺?
391
+ - (A) $100$ 公尺
392
+ - (B) $1000$ 公尺
393
+ - (C) $10,000$ 公尺
394
+ - (D) $100$ 公分
395
 
396
  2. 5公尺等於多少公分?
397
+ - (A) $50$ 公分
398
+ - (B) $500$ 公分
399
+ - (C) $5000$ 公分
400
+ - (D) $50000$ 公分
 
 
 
 
 
 
401
 
402
+ ### 填空題
403
  1. 100公分等於___公尺?(請填入數字)
404
  2. 1公尺等於___公分?(請填入數字)
405
 
406
 
407
+ /n
408
+ /n
409
+ /n(空三行)
410
+
411
+ ## 答案公布
412
+ ### 選擇題
413
+ 1. (B) 1000 公尺
414
+ 2. (B) 500 公分
415
+
416
+ ### 填空題
417
+ 1. 1 公尺
418
+ 2. 100 公分
419
 
 
420
  """
421
  return exit_ticket_prompt
422
 
 
445
  {specific_feature_text}
446
 
447
  請根據逐字稿進行以下工作:
448
+ - 不要提到 【逐字稿】 這個詞,直接給出內容即可
449
+ - 遇到數學符號或是敘述請用 Latex 語法($...$),例如:$x^2$。
450
+ - 如果是中文素材,請嚴格使用 zh-TW
451
+ - 請用 {self.grade} 年級的口吻,不要用太難的詞彙
452
+ - {self.generate_content_prompt()}
453
  """
454
  print("====User content====")
455
  print(user_content)