import json class EducationalMaterial: """ A class to generate educational content based on provided parameters. Attributes: context (str): Context or transcript of the content. topic (str): The topic of the content. grade (str): The grade level for the content. level (str): The difficulty level of the content. specific_feature (str): A specific feature of the content. content_type (str): The type of content to generate ('worksheet' or 'lesson_plan'). """ def __init__(self, context, topic, grade, level, specific_feature, content_type): """ Initializes the EducationalMaterial with provided parameters. Parameters: context (str): Context or transcript of the content. topic (str): The topic of the content. grade (str): The grade level for the content. level (str): The difficulty level of the content. specific_feature (str): A specific feature of the content. content_type (str): The type of content to generate ('worksheet' or 'lesson_plan'). """ self.context = self._prepare_context(context) self.topic = topic self.grade = grade self.level = level self.specific_feature = specific_feature self.content_type = content_type # 'worksheet' or 'lesson_plan' self.system_content = "你是一個擅長資料分析跟影片教學備課的老師,請精讀資料文本,自行判斷資料的種類,使用 zh-TW,遇到數學符號或是敘述請用 Latex 語法($...$),例如:$x^2$。" def get_ai_content(self, AI_Client ,ai_type="openai"): system_content = self.system_content user_content = self._build_user_content() if ai_type.lower() == "openai": return self.send_openai_request(AI_Client, system_content, user_content) elif ai_type.lower() == "bedrock": return self.send_bedrock_request(AI_Client, system_content, user_content) else: raise ValueError("Unsupported AI type. Please choose 'openai' or 'redrock'.") def _build_user_content(self): if self.content_type == 'worksheet': specific_feature_text = f"理論模型: {self.specific_feature}" elif self.content_type == 'lesson_plan': specific_feature_text = f"時間: {self.specific_feature} 分鐘" elif self.content_type == 'exit_ticket': specific_feature_text = f"時間: {self.specific_feature} 分鐘" # 根据属性构建用户内容 user_content = f""" 課程脈絡 or 逐字稿:{self.context} 主題:{self.topic} 年級:{self.grade} 難度:{self.level} {specific_feature_text} 請根據逐字稿進行以下工作: - 不要提到 【逐字稿】 這個詞,直接給出內容即可 - 遇到數學符號或是敘述請用 Latex 語法($...$),例如:$x^2$。 - 如果是中文素材,請嚴格使用 zh-TW - 請用 {self.grade} 年級的口吻,不要用太難的詞彙 - {self.generate_content_prompt()} """ print("====User content====") print(user_content) print("====User content====") return user_content def get_fine_tuned_ai_content(self, ai_client, ai_type, original_prompt, result, fine_tune_prompt): system_content = self.system_content user_content = self._build_fine_tune_user_content(original_prompt, result, fine_tune_prompt) if ai_type.lower() == "openai": return self.send_openai_request(ai_client, system_content, user_content) elif ai_type.lower() == "bedrock": return self.send_bedrock_request(ai_client, system_content, user_content) else: raise ValueError("Unsupported AI type. Please choose 'openai' or 'redrock'.") def _build_fine_tune_user_content(self, original_prompt, result, fine_tune_prompt): user_content = f""" 這是逐字稿:{self.context} --- 這是預設的 prompt {original_prompt} --- 產生了以下的結果: {result} --- 但我不是很滿意,請根據以下的調整,產生新的結果 {fine_tune_prompt} """ return user_content def send_openai_request(self, AI_Client, system_content, user_content): OPEN_AI_CLIENT = AI_Client messages = [{"role": "system", "content": system_content}, {"role": "user", "content": user_content}] request_payload = { "model": "gpt-4o", "messages": messages, "max_tokens": 4000, "temperature": 0.9, "stream": False, } try: response = OPEN_AI_CLIENT.chat.completions.create(**request_payload) return response.choices[0].message.content.strip() except Exception as e: print(f"OpenAI failed: {e}") raise # Optionally re-raise the exception if fallback is not desired def send_bedrock_request(self, AI_Client, system_content, user_content): BEDROCK_CLIENT = AI_Client #REDROCK messages = [ {"role": "user", "content": user_content} ] model_id = "anthropic.claude-3-sonnet-20240229-v1:0" # model_id = "anthropic.claude-3-haiku-20240307-v1:0" kwargs = { "modelId": model_id, "contentType": "application/json", "accept": "application/json", "body": json.dumps({ "anthropic_version": "bedrock-2023-05-31", "max_tokens": 4000, "system": system_content, "messages": messages }) } try: response = response = BEDROCK_CLIENT.invoke_model(**kwargs) response_body = json.loads(response.get('body').read()) response_content = response_body.get('content')[0].get('text') return response_content except Exception as e: print(f"Bedrock failed: {e}") raise def _prepare_context(self, context): context_json = json.loads(context) processed_context = "" for entry in context_json: processed_context += entry.get('text', '') + "\n" return processed_context def generate_content_prompt(self): if self.content_type == 'worksheet': return self._generate_worksheet_prompt() elif self.content_type == 'lesson_plan': return self._generate_lesson_plan_prompt() elif self.content_type == 'exit_ticket': return self._generate_exit_ticket_prompt() def _generate_worksheet_prompt(self): bloom_worksheet_prompt = """ 你是個專業的教師,遇到數學符號或是敘述請用 Latex 語法($...$),例如:$x^2$。 熟悉布魯姆(Benjamin Bloom, 1964) 的認知理論。布魯姆認為人類的能力,大致可分為三個領域(domains),即認知領域(cognitive domain)、情意領域(affective domain)、技能領域 (psychomotor domain)。 【認知領域】涉及知能及其運作,著重心智、學習以及問題解決的工作。認知目標從簡單的認識或記憶能力到複雜的評鑑能力。大部分的教育目標都屬於這個領域。認知領域的目標分為六個層次,每個層次代表不同的心智功能。 - 📖 知識:在認知目標中知識是最低層次的能力,包括名詞、事實、規則和原理原則等的認識和記憶。用來表示此種能力的行為動詞有:指出、寫出、界定、說明、舉例、命名、認明等。例:能在地圖上指出長江流經的省分。 - 🤔 理解:理解是指能把握所學過知識或概念的意義,包含轉譯、解釋、推論等能力。代表此能力的行為動詞有:解釋、說明、區別、舉例、摘要、歸納等。例:能解釋光合作用。 - 🛠️ 應用:應用是指將所學到的規則、方法、步驟、原理、原則和概念,應用到新情境的能力。用來表示此能力的行為動詞有:預測、證明、解決、修改、表現、應用等。例:學生能預測抽出容器內之氣體對容器的影響。 - 🔍 分析:分析是指將所學到的概念或原則,分析為各個構成的部分,或找出各部分之間的相互關係,包括要素、關係及組織原理等的分析。用以表示此種能力的行為動詞有:選出、分析、判斷:區分、指出某些組成要素、指出某些的相互關係等。例:讀完某篇文章後,學生能區分事實和意見。 - 🌐 綜合:綜合是指將所學到的片斷概念或知識、原理原則或事實,統整成新的整體。用來表示此種能力的行為動詞有:設計、組織、綜合、創造、歸納、聯合等。例:讀完一篇有關防治汙染的文章後,學生能綜合防治汙染的各種方法。 - 🏅 評鑑:評鑑是認知目標中最高層次的能力,指依據某項標準做價值的判斷的能力。用來表示此能力的行為動詞有:評鑑、判斷、評論、比較、批判等。例:學生能評斷辯論中的謬論。 學習單包含以下的內容,將以布魯姆教育目標來建構提問的架構;請用 markdown 格式來呈現。 - 📝 主題:請使用上傳檔案的檔名作為標題 - 🔑 重點: 和影片有關重要知識摘要 - 💭 概念:概念性問題 - 布魯姆的知識層級;數學知識的建構 - 📊 想一想:程序性問題 - 布魯姆的理解層級;和影片相同的例題,類似的練習題 → 計算與步驟操作 - 🚀 延伸與應用 - 布魯姆的應用、分析、綜合、評鑑層級 → 延伸思考與應用 其中,「重點」的題目請用挖空的填空題;在「想一想」的程序性問題請以單選題或填空題的形式來建立,需要 3 個題目;「延伸與應用」請使用問答題的形式來建立,一題即可。 題目和題目之間要換行,並加上 point 符號,像是 "-" 或是 "1." 等等 輸出 Markdown,這是範例格式: ### 🌐【主題】:認識公里 ### 🎓【對象】 - 科目: 數學 - 年級: 三年級 - 難度: 基礎 ### 🏞️【情境描述】 - 狐狸貓和家人出遊,過程中認識測量較長距離的單位「公里」。 ### 🔑【影片重點】 - 公里是用來測量長距離的單位,通常用於測量很遠的距離。 - 1公里等於___公尺,也稱為千米。 - 公里的英文簡寫是 ____。 ### 🌟【概念】 - 請問公里通常用於測量什麼類型的距離? - 如果一圈操場是200公尺,那跑5圈是多少公尺?多少公里? - 為什麼我們需要使用公里這個單位來測量距離? ### 🔢【想一想】 1. 一圈操場是200公尺,跑10圈是多少公里?(A) 1公里 (B) 2公里 (C) 3公里 (D) 4公里 2. 如果你跑了5圈操場,運動手環上會顯示你跑了多少公里? 3. 6000公尺等於多少公里? ### 💡【延伸與應用】 - 假設你參加一場慈善路跑活動,全程是5公里。如果你已經跑了3公里,還剩下多少公里?你覺得這樣的活動對你的體能有什麼影響? """ Polya_worksheet_prompt = """ 你是個專業的教師,遇到數學符號或是敘述請用 Latex 語法($...$),例如:$x^2$。 熟悉 George Polya(1945) 的數學問題解決策略。 Polya提出了一個四步驟的數學問題解決策略,在他影響深遠的經典著作 How to solve it《如何解題》中指出解難過程可分為四個階段: (1) 理解問題 (understanding the problem) (2) 設計解題策略 (devising a plan) (3) 按步解題 (carrying out the plan) (4) 回顧解答 (looking back) (edited) 請以此設計學習單並依據文本跟難度給予題目 請一定要使用 zh-TW 輸出 Markdown,這是範例格式: ## 🌐 主題:【概念】認識公里 ### 【對象】 - 科目: 數學 - 年級: 三年級 - 難度: 基礎 ### 🏞️【情境描述】 - 狐狸貓和家人出遊,過程中認識測量較長距離的單位「公里」。 ### ❓【給出問題】 - 如果日月潭環潭自行車道共30公里,狐狸貓騎行了13.7公里後休息,剩餘多少公里尚未騎行? ### 🤔【理解問題】 首先,我們必須完全理解問題的所有細節。在此情境中,我們需要釐清以下幾點: - 日月潭環潭自行車道的總長度為30公里。 - 狐狸貓已經騎行了13.7公里。 - 我們的目標是計算狐狸貓還剩下多少公里未騎行。 ### 🧭【設計解題策略】 接下來,根據我們對問題的理解來設計解決問題的計劃。在此步驟中,我們決定採用哪種策略來解決問題。對於這個問題,最直接的計劃是使用算術減法: - 總公里數(30公里)減去已騎行的公里數(13.7公里)。 ### 📝【按步解題】 按照設計的計劃執行解題步驟。在這裡我們執行減法運算: $$ 30−13.7=16.3 $$ 這意味著狐狸貓還有16.3公里未騎行。 ### ✨【回顧解答】 - 最後,解題完成後,我們回顧和反思整個解題過程。在這一步,我們驗證「想一想」的結果是否符合邏輯,是否正確解決了原問題。 - 同時,考慮是否有更有效或簡便的方法來解決類似的問題。在這個例子中,使用直接減法是最簡單直接的方法。 - 但在其他情境下,可能需要考慮使用圖形、表格或代數表達式等其他策略來解決問題。 """ # CRA教學法 cra_worksheet_prompt = """ 你是個專業的教師,,遇到數學符號或是敘述請用 Latex 語法($...$),例如:$x^2$。 熟悉CRA教學法,CRA教學法是一種教學策略, CRA正是一種用來促進學生學習和記憶數學的三步教學法,它闡明瞭用這種方式進行教學的具體步驟。 CRA的三個步驟互相依賴,運用CRA能建立起一種概念結構,從而形成知識的意義關聯。 CRA策略的第一個階段, 即實例(C)階段,是一個“做”的階段。在這一階段,教師用加工材料建模,這些材料包括彩色圓片、立方體、十進位積木、六形六色積木,以及分數積木,等等。在使用這些材料時,必須考慮到兒童的視覺、觸覺及動感經驗。 階段二,即描述(R)階段,是一個“看”的階段。在這一-階段,具體的模型被改成了圖片展示,教師可用手繪圖片或貼紙來對概念進行解釋。 最後一個階段,即抽象(A)階段,是一個抽象的“符號”階段, 在這一階段, 教師使用數字、字母等數學符號(如:2, 6, 3x, +,-等)來進行教學。 運用CRA的前提是學生在學習“規則”前必須學會概念。使用過加工材料的學生,其思維更加明確,更容易理解該方式,同時其學習動機、專注行爲、 理解力以及對這些概念的運用能力也會得到較大改善( Hrrison & Harison, 1986 )。 CRA策略可以有效地幫助學生理解以下幾個概念:早期數量關係、位值、計算、分數、小數、測量、幾何、貨幣、百分數、數基、應用題、概率以及統計等 輸出 Markdown,這是範例格式: ### 🌐 主題:【概念】認識公里 ###【對象】 - 科目: 數學 - 年級: 三年級 - 難度: 基礎 ### 【實例(C)階段】 1. 用彩色圓片來解釋什麼是分數? 2. 用立方體來解釋什麼是體積? 3. 用十進位積木來解釋什麼是小數? ###【描述(R)階段】 1. 用手繪圖片來解釋什麼是分數? 2. 用貼紙來解釋什麼是體積? 3. 用手繪圖片來解釋什麼是小數? ###【抽象(A)階段】 1. 用數字來解釋什麼是分數? 2. 用字母來解釋什麼是體積? 3. 用數字來解釋什麼是小數? """ algorithm = self.specific_feature case = { "Bloom認知階層理論": bloom_worksheet_prompt, "Polya數學解題法": Polya_worksheet_prompt, "CRA教學法": cra_worksheet_prompt } worksheet_prompt = case.get(algorithm, "Bloom認知階層理論") return worksheet_prompt def _generate_lesson_plan_prompt(self): lesson_plan_ADDIE_prompt = """ 你是一位專業教師, 請根據以上要教學的項目細節(主題、年級、課程時間、課程目標) 幫我安排一個 lesson plan 規則如下,請嚴格遵守 1. 請使用繁體中文溝通 zh-TW,並使用台灣人的用語 2. 該換行就換行,盡量滿足 word .doc 的格式 3. 【課程大綱】的工作項目請嚴格遵守【課程時間】的時間長度,總和時間不要超過或不足 4. 時間安排盡量以五分鐘的倍數為一個單位 5. 並且根據課程目標安排教學內容 6. 遇到數學符號或是敘述請用 Latex 語法($...$),例如:$x^2$。 Step1. 你是一個精通於課程設計的老師,能夠運用 ADDIE 教學策略來設計一門適合學生的課程。 Step2. 接下來,當使用者按下 "Conversation staters" 的 "請上傳逐字稿",你將依據輸入的影片逐字稿 (請使用 python 程式來分析、解讀內容),來規劃一堂 40 分鐘以 ADDIE 模型作為架構的課程,內容請使用台灣口語 (zh_TW)。 - 以下是 ADDIE 的說明: ADDIE 教學設計模式是一種廣泛應用於教育和訓練領域的系統化教學設計流程。ADDIE 代表分析(Analysis)、設計(Design)、開發(Development)、實施(Implementation)、評估(Evaluation)五個階段: 1. 分析(Analysis)階段:在這一階段,設計者需評估教學需求和學習者的背景,包括學習者的知識水平、學習風格及教學目標等。 2. 設計(Design)階段:基於分析階段的資料,開始構思教學計劃,包括課程目標、教學策略、內容架構、評估方法等。 a. 轉化課程目標為:單元目標和表現的結果 b. 決定可以涵括這些目標的主題或單元,計算實際實施教學時會花費的時間 c. 依課程目標安排課程順序 d. 設計教學的單元,並確認在這些單元中所要達到的主要目標 e. 規劃各單元的學習活動 f. 發展特定的評量以確認學生的學習情況 3. 開發(Development)階段:這個階段主要是製作教學材料,如課程內容、學習活動、多媒體素材等。 4. 實施(Implementation)階段:在此階段,實際執行教學計劃,這包括教授課程、指導學習者及管理學習過程。 5 評估(Evaluation)階段:評估整個教學設計和實施的有效性,這不僅包括學習成果的評估,還要檢視整個教學過程的有效性與可改進之處。 a. 教材:是否達到教學目標? b. 過程:設計過程中的品質是否OK? c. 學習者的反應/感受 d. 學習者在學習後達成之成就 e. 教學實施的結果 Step3. 請在描述課程計畫的一開始,條列此影片逐字稿的教學重點 (必須和學科領域相關,例如:數學、自然科學) 後,再依序建立以 ADDIE 框架的課程計畫。 Step4. 請在「設計」和「實施」階段請使用合適的範例做說明。 Step5. 請使用 Markdown 語法,標題與段落文字的字級需有所區隔。 output Markdown,example as below: ## 課程設計:面積的實測與估測 ### 教學重點 1. 面積的概念:解釋什麼是面積,以及它在日常生活中的應用。 2. 面積的計算:教授如何計算不同形狀的面積(例如矩形、三角形)。 3. 實測與估測的區別:比較實際測量面積和估算面積的不同方法。 4. 應用實例:使用日常生活中的例子,例如給麥麥的生日卡片大小的比較,來說明面積的重要性。 ### 分析(Analysis) - 目標學習者:小學高年級學生。 - 學習需求:理解面積概念,掌握基本面積計算方法。 - 學習風格:結合視覺教材和互動活動。 ### 設計(Design) - 課程目標:學生能夠理解面積概念,並能透過實際操作學會估算和計算面積。 - 學習單元:(a)面積基礎概念(b)計算面積(c)實測與估測的比較。 - 教學策略:透過互動遊戲、案例討論和實作活動進行教學。 - 評估方法:透過小測驗和課堂參與情況進行評估。 ### 開發(Development) - 教材準備:準備視覺化教學幻燈片,設計互動遊戲和實作活動。 - 教學活動:設計面積估測遊戲,讓學生在實際操作中學習。 ### 實施(Implementation) - 課程時間分配:(a)面積基礎概念(10分鐘)(b)計算面積(15分鐘)(c)實測與估測比較(10分鐘)(d)總結與回顧(5分鐘)。 - 教學範例: - 面積基礎概念:介紹面積是如何在日常生活中應用,例如計算桌布的大小。 - 計算面積:透過計算教室黑板或門的面積來教學。 - 實測與估測比較:讓學生估計並實際測量教室中物品的面積,比較結果。 ### 評估(Evaluation) - 教材評估:確保教材能清楚傳達面積概念。 - 學習者反應:觀察學生參與情況,收集反饋以改善教學。 - 學習成就:透過小測驗評估學生對面積概念的理解。 - 教學實施結果:評估課程的整體有效性,並根據學生的學習成果進行調整。 這個課程計畫將幫助學生透過互動和實作活動來深入理解面積的概念和計算方法 """ lesson_plan_5E_prompt = """ 你是一位專業教師, 請根據以上要教學的項目細節(主題、年級、課程時間、課程目標) 幫我安排一個 lesson plan 規則如下,請嚴格遵守 1. 請使用繁體中文溝通 zh-TW,並使用台灣人的用語 2. 該換行就換行,盡量滿足 word .doc 的格式 3. 【課程大綱】的工作項目請嚴格遵守【課程時間】的時間長度,總和時間不要超過或不足 4. 時間安排盡量以五分鐘的倍數為一個單位 5. 並且根據課程目標安排教學內容 6. 遇到數學符號或是敘述請用 Latex 語法($...$),例如:$x^2$。 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. Step1:理解什麼是 5E 教學模式,請閱讀以下文字: 5E教學模式: 由Trowbridge和Bybee (1990)提出以探究為基礎的5E教學模式,將教學過程劃分為五個緊密相連的階段,包括: 參與(engagement)、探索(exploration)、解釋(explanation)、精緻化(elaboration)與評量(evaluation)等五個階段, 各階段的內容如下: 1.參與:以學生的學習為主體,設計活動引發學生的學習興趣,使學生願意主動參與教學活動,並能將學生的舊經驗與課程內容相連結,經由提問、定義問題與呈現矛盾的結果等方式,引出探討主題的方向。 2.探索:學生參與活動,並給予足夠時間與機會進行探索任務,經由動手操作,建構共同的、具體的經驗。 3.解釋:先請學生提出解釋,教師再以學生的想法為基礎,並運用口頭、影片或教學媒體等方式,對學生的解釋加以闡述確認,使學生能確實理解學科知識,再引導學生進入下一階段的教學流程。 4.學習共同體 (精緻化):重視學生之間的互動,營造能促使學生討論以及互相合作的學習環境,分享想法並給予回饋,以建構個人的理解。此外,此階段亦重視學生是否能將其所形成的解釋,應用於新的情境或問題中,以延伸更加一般化的概念理解,進而獲取高層次的知識。 5.評量:此階段的主要目的為鼓勵學生評估自己的理解力與能力,同時老師也藉由評量確認學生是否達成教學目標該有的程度。在學生進行探索與提出解釋後,給予回饋是相當重要的,因而教師在階段活動後應進行形成性評量 Step2:請根據逐字稿的內容描述,以 5E 架構來創建一份 Lesson Plan (課程計畫)。請依循並參考以下輸出範例來設計課程計畫),需使用 markdown 語法: --- output Markdown,example as below: ## 課程主題:同分母分數的加減 (使用影片或逐字稿的標題) ### 課程重點:(列出逐字稿內容的重要概念或教學重點) ### 年級:四年級 (依據詢問的年齡或年級填入) ### 課程長度:45-50 分鐘(根據課程數入時間訂定) ### 【參與】(5 分鐘) - 透過在黑板或投影機上顯示切成不同部分的披薩的圖片來開始課程。 - 讓學生與夥伴討論他們注意到分數的什麼以及如何將它們加在一起或減在一起。 - 幾分鐘後,請幾位學生與全班分享他們的觀察和想法。 ###【探索】(10 分鐘) - 發給每位學生分數操作工具(例如分數條、分數圓)。 - 為每個學生提供一份工作表,其中包含幾個涉及具有相同分母的分數的加法和減法問題。 - 指導學生使用操作工具解決工作表上的問題。 - 在房間裡走動,觀察學生的理解情況,並根據需要提供指導。 ###【解釋】(10 分鐘) - 讓全班同學重新聚集在一起,討論相同分母分數加法和減法的策略和方法。 - 介紹關鍵詞彙:分子、分母、分數、同分母。 - 顯示並解釋公式:如果兩個分數具有相同的分母,則將分子相加或相減,然後寫出公分母的和或差。 - 提供同分母分數加減法的例子,示範步驟和計算。 ###【學習共同體】(15 分鐘) - 將學生分成兩人一組或小組。 - 向每組分發一組分數加法和減法任務卡。 - 指導學生使用前面討論的方法一起解決任務卡上的問題。 - 鼓勵學生互相解釋他們的想法和推理。 - 在教室裡走動以了解學生的進度並在需要時提供支持或澄清。 ###【評估】(10 分鐘) - 要求每個小組選擇一張任務卡並向全班展示他們的解決方案。 - 作為一個班級,討論各小組使用的不同策略並評估他們解決方案的正確性。 - 提供回饋並澄清討論期間出現的任何誤解。 - 收集學生的工作表和任務卡,作為他們理解的形成性評估。 ###【總結】 - 總結課程中討論的重點,強調分數加減法時分母相同的重要性。 - 請學生反思他們的學習,並寫一兩句話來說明他們認為今天的課程有挑戰性或有趣的地方。 ###【學習評估】 - 形成性評估:探索和細化階段的觀察以及討論和演示將深入了解學生對相同分母分數加法和減法的理解。 - 總結性評估:收集並審查學生的工作表和任務卡,以評估他們解決涉及具有相同分母的分數的加法和減法問題的能力。 """ lesson_plan_prompt = lesson_plan_ADDIE_prompt return lesson_plan_prompt def _generate_exit_ticket_prompt(self): exit_ticket_prompt = """ 你是一位專業教師, 請根據以上要教學的項目細節及逐字稿 在一節課結束前用上述的時間(10分鐘內) 運用出場券 (exit ticket) 來檢核學生的學習是否有對上學習目標,有哪些知識點或技能還不熟悉 目的是讓教學更加精準;出場券能夠檢視每一堂課的學習成效,從學生的答題狀況, 可以觀察班上有多少比例學生沒學會,沒學會的地方又是什麼。 規則如下,請嚴格遵守: 1. 內容請使用台灣口語的繁體中文 (zh_TW),不可以使用大陸用語,也不可以使用簡體字。 2. 該換行就換行,盡量滿足 word .doc 的格式 3. 規劃限定時間內,學生能夠完成的出場券習題,共有 5 題,請使用 3 個單選題 (四選項) 以及 2 個填空題,題目必須能夠符合此逐字稿內容描述的數學學習目標,以類題方式建立。 4. 此出場券習題最末請公布各題的答案。 5. 遇到數學符號或是敘述請用 Latex 語法($...$),例如:$x^2$。 output Markdown,example as below: ## 出場券習題:公里、公尺和公分的換算 ### 目標:這套出場券習題旨在幫助學生掌握公里、公尺、和公分之間的換算關係,通過實際的例子加深學生對這些單位之間轉換的理解。 ### 選擇題(請從四個選項中選出一個正確答案) 1. 1公里等於多少公尺? - (A) $100$ 公尺 - (B) $1000$ 公尺 - (C) $10,000$ 公尺 - (D) $100$ 公分 2. 5公尺等於多少公分? - (A) $50$ 公分 - (B) $500$ 公分 - (C) $5000$ 公分 - (D) $50000$ 公分 ### 填空題 1. 100公分等於___公尺?(請填入數字) 2. 1公尺等於___公分?(請填入數字) /n /n /n(空三行) ## 答案公布 ### 選擇題 1. (B) 1000 公尺 2. (B) 500 公分 ### 填空題 1. 1 公尺 2. 100 公分 """ return exit_ticket_prompt