跳轉到

📚AI當助教・一起來教青少年學Python


📕 引言


近年來,生成式AI發展快速,網站上也多了許多文字、程式、圖片、音樂及影片等AI生成服務,非常神奇有趣。
不過除了有趣之外,也會有些嚴肅,甚至是令人擔憂的事。
比如以下與AI相關的報導或影片標題。
job_replace
(資料來源:1)



某些工作可能會因AI而消失?

(59秒, 資料來源:2)



(42秒, 資料來源:3)



ai_good_at_coding



ChatGPT是OpenAI所開發的大型語言模型,能夠以對話的方式理解並回應使用者的輸入內容,從2022年底發佈以來,受到全球的矚目。ChatGPT是資訊科學家研究深度學習的里程碑,你知道它是用什麼程式語言開發出來的嗎?

chatgpt_built_by_python



AI雖然為人們帶來了新的便利服務,但未來人們的工作真的會被AI取代嗎?程式設計師會被AI取代嗎?

以下課程以Python為例,一起來體驗ChatGPT與AI助理的程式設計輔助。

對於AI是否會取代人類的問題,相信在你心中將有屬於自己的看法。





📗 Coding工作解構


(1:06秒, 資料來源:3)


work_split



Coding(程式設計)有哪些步驟?

撰寫python程式需要人們需要做哪些事?

讓我們來寫個簡單的海龜程式吧 (使用Py4t簡化便利貼,適合非英文母語程式初學者)

範例程式 海龜畫多邊形 - - - - - - - (海龜畫多邊形 1/2 新檔)
from 海龜模組 import *

for  in range(5) :
    向前(100)
    右轉(360/5)    

完成()

想一想,在剛剛在程式設計的過程中,你做了哪些事情?(工作拆解)

coding_jobs1



海龜的原文是turltle,是一個初學者學習python可以使用模組,相關的功能可以到官網查詢。 turtle官網

turtle_star




接下來,利用官網上的說明,將程式改寫為英文程式。

(善用編輯器tab鍵補完功能,為一般python程式撰寫方式)


範例程式 turtle英文程式 - - - - - - - (海龜畫多邊形 2/2 接續)
from turtle import *
speed('fastest')

for i in range(500) :
    forward(i*2)
    right(360/5 - 1)    

done()

除了基本的編輯,在程式設計的過程中,人們還要做什麼事?

coding_jobs2

這些解構出來的程式工作,真的會被AI取代嗎?





📘 不用學程式?


Nvidia(輝達) 是美國一家以設計和銷售圖形處理器(GPU) 的科技公司,在2024年6月,它取代微軟成為全球市值最高的公司。這家公司與AI有什麼關係呢?
(1分52秒, 資料來源:4)



黃仁勳(Jensen Huang) 是臺灣裔美國人,出生於臺灣的台南,9歲時移居美國,是NVIDIA(輝達) 的共同創辦人暨執行長,他參加杜拜 (UNA/WAM) 2024 年世界政府高峰會,以下是在會議中的訪談片段:


(50秒, 播放速度請調為0.75, 資料來源:5)




no_one_need_to_write_program




接下來,讓我們使用 ChatGPT 來學習Python程式

chatgpt_com





試著向ChatGPT提出以下的問題,來認識Python程式語言。

(也可以從回答中,再追問感興趣的部分。)


Python是由誰創造的程式語言?
Python名稱的由來?
Python的常見應用有哪些?




試著向ChatGPT提出以下的問題,來認識Python基本輸入輸出input與print,並將範例在編輯器中執行。

Python中的input要如何使用,請給出範例程式。
Python中的print要如何使用,請給出範例程式。
將Python中的input與print結合,給一個輸入姓名並印出的範例程式。




在Windows10或11中,如果電腦有麥克風設備,可以使用語音輸入功能,來產生提問的文字。

開啟語音輸入 --- 在硬體鍵盤上按Windows 標誌鍵+ H,按觸控式鍵盤上空格鍵旁邊的麥克風鍵

若要開始聽寫,請選取文字欄位,然後按 Windows 標誌鍵 + H 以開啟聽寫工具列





試著向ChatGPT提出以下的問題,求平均數(引用自翰林9上資訊科技2-2)。

請設計一個程式,讓使用者輸入兩個數字後,再呈現兩個數字的平均值。




在執行求平均數程式後,可以問問看下列問題,來理解程式。

python的設值是什麼?
python的資料型態有哪些?
python的數值運算符號有哪些?






📙 整合AI助理


撰寫程式碼通常是在編輯器中進行。
我們有辦法將ChatGPT與編輯器整合嗎?


首先來看一下chatgpt的新功能canvas

(47秒, 資料來源:6)



下方是另一種應用,Github Copilot的使用。

(58秒, 資料來源:7)



Github Copilot是專業的程式助理服務,整合起來利用AI輔助寫程式變得更便利。但即使申請試用一個月的帳號,也需登錄信用卡,介面上也較多英文,教育免費帳號主要是針對高中以上學校,對中小學生來說,有推廣上的困難。


有沒有其他類似,但簡單、免帳號的服務呢?於是筆者試著自己動手整合。




這邊有找一個在終端機使用LLM(大型語言模型)的python函式庫, python-tgpt ,可使用多種LLM服務。


python_tgpt_website





請在py4t的工具選單 -> 開啟系統終端機 中,輸入以下指令來體驗看看

python -m pytgpt.console




利用這個函式庫,再加上python的threading與tkinter函式庫,將簡易的AI助理整合至py4t中,讓中小學生也可以體驗AI助理的功能。( 原始碼網站 )


py4t_ai_assist


ui_design





試著向Py4t的AI助理提出以下的問題,來認識AI助理是如何整合到py4t。也可以從回答中,再追問感興趣的部分。


什麼是tkinter函式庫?請給一個簡易的範例。
什麼是threading函式庫?請給一個簡易的範例。






📕 AI助理應用



試著詢問AI助理,以漸進提問的方式,來完成計算學期成績的程式。

(引用自翰林9上資訊科技2-2)


請設計一個程式,讓使用者輸入作業成績、測驗成績與平時成績 




其中,作業成績占40%,測驗成績占40%,平時成績占20% 




學期成績60分為及格分數




使用者輸入的成績需介於0到100之間




ai_replace_thinking





amaras_law

(資料來源:8)


(1分15秒, 資料來源:3)


universal_tech




接著讓我們來做一個有關AQI空氣品質指標的公開資料處理練習,請到 環境部環境資料開放平台 ,並下載單一月份的AQI歷史資料的csv公開資料,並將資料檔名改為aqi.csv。


search_aqi

aqi_csv





試著利用向AI助理提問,驗証執行,並不斷修正,來產生一個可以讀取csv公開資料的python程式。



請載入csv檔,它的檔名是aqi.csv




請以utf8載入,使用pandas,請以utf8載入




請將欄位county值為'臺北市'
計算符合資料的筆數




而且欄位aqi值大於150





📗 思考未來程式教育


想一想今天的課程,我們是如何寫程式的呢?

human_is_programming_language





(3分48秒, 資料來源:9)




what_to_learn




ai_learn_attitude





  1. youtube頻道 -- USTV 非凡電視、Joen99、朱宥勳使出人生攻擊!、HackBear 泰瑞 

  2. 3億工作即將消失?AI 熱潮半年,你的工作真的有改變嗎?, by 志祺七七 X 圖文不符 , youtube連結 

  3. 打造AI職場力|程世嘉 Sega|人文講堂|完整版 20231216, by 大愛人文講棠 , youtube連結 

  4. 看懂 #Nvidia 如何因20年前的一個決定,成為今天AI霸主【懂商業 看商周】Ep.25 #GTC #黃仁勳, by 商業周刊 , youtube連結 

  5. Nvidia 黃仁勳談AI時代該如何教育下一代, by 麥塊程式教育 , youtube連結 

  6. 終於解決ChatGPT最大痛點!新功能 Canvas 文章編輯 寫程式神器 , by 蘋果妹 , youtube連結 

  7. 【GitHub Copilot】GitHub Copilot完整範例與步驟解說教你開始使用 | 用AI配對程式設計師幫你寫程式 | 恆逸課程介紹 |, by 恆逸教育訓練中心 , youtube連結 

  8. 維基百科、https://anthonyiannarinopt.com/2020/12/10/amaras-law-and-behavior-change/ 

  9. 黄仁勋:“别再学编程,如果一切重来,我会学习。。。” 聊聊 AI 阴影下的程序员生存技能 | 回到Axton, by 回到Axton , youtube連結