如果引用或轉貼,麻煩註明出處與本網誌連結,否則視為侵權。

2023年3月20日

政治觀點 - 太陽花學運"反服貿"八年之後

作者: Fred F.M. Wang (FW知識瑣記) 日期: 2023-3-20 

很多事件都要多年後才能正確地檢視,太陽花學運後台灣改變了甚麼? 反服貿的結果? 這些學運領袖都發生了甚麼事? 誰得到最大的利益? 誰被利用?  

反了服貿,並沒有阻止兩岸的經貿發展,很詭異地台灣對大陸出口的依存度由國民黨執政的23.7%到民進黨執政的2020年變成43.8%。

藉學生運動打垮黨內外勢力獲取政權,得到最大利益的蔡政府讓台灣更好了嗎? 說好的南向政策? 說好站在勞工的這一邊? 說好反萊豬? 房價持續飆漲,在蔡政府期間房價指數漲幅達50%,兩岸官方不再溝通與對話,台海衝突危機大增,發展成世界最危險的區域。

這是大家要的結果嗎? 您被利用了嗎? 

政客最擅長的是煽動民眾的熱情,激化對立,製造矛盾來攻擊政敵,以達其政治的目的。熱血是年輕人的本質,在火熱的心外,需要冷靜的腦,學習正反思辨與大格局思考的能力,才能不被洗腦與利用。

相關文章 : 

2023年3月7日

人工智慧會讓程式設計師失業嗎? 人工智慧輔助開發工具(Codex, Copilot)的優點與注意事項

作者: Fred F.M. Wang (FW知識瑣記) 日期: 2023-3-7

人工智慧會讓程式設計師失業嗎? 甚麼人工智慧技術會讓程式設計師失業?  有興趣的可以往下看。

    BCC 2021年9月8日的一篇報導,"人工智能:編程員為何喜愛這些可能令他們失業的新科技?" 文章中訪問了幾個專業程式設計人員,為什麼喜歡人工智慧工具,優點在哪裡,這篇文章也點出人工智慧工具的限制與注意事項。

    今年3/1日openAI公司發布了"chatGPT API"提供個人或企業自行開發對話機器人相關應用。相較chatGPT,更令我感興趣的是OpenAI公司2021年發布名為Codex的"程式碼產生與處理"APIs,以及以Codex為基礎開發出來的GitHub Copilot(需付費)工具。開發軟體的過程中可以運用此些工具協助快速產生程式,大幅提高生產力。

    OpenAI官網提供了Codex Javascript的測試網頁,只要輸入英文(自然語言)就可以幫你產生想要的Javascript程式碼,有網友藉由這個測試網頁單靠英語對話就開發出一個簡單的遊戲。因此Codex與Copilot被認為是讓程式設計師失業的人工智慧技術。

      但是,不需要專業程式設計訓練,就可以完成一套完整的系統嗎? 下面整理AI輔助開發程式的

優點與注意事項 :  

優點
1 透過AI輔助開發程式,相同的時間可以寫更多的程式。
2 減少查詢語法的時間,如正規表示式這些複雜難記的語法等。

注意事項
1 難以發現的錯誤 : 美國紐約大學2021 年研究發現 AI 建議的程式碼並不可靠,試驗了 89 個場景中,約有 40% 以 Copilot 編寫而成的程式碼具弱點[2]。 史丹佛大學電腦科學家研究發現,程式設計師在 Github Copilot 等 AI 輔助下,較容易對程式碼的品質產生錯誤的信任,因此寫出的程式碼相較獨立的程式設計師更不可靠[2]。
 
知名程式設計問答網站 Stack Overflow 官方宣佈,暫時禁止使用者分享由聊天機器人 ChatGPT 產生的回覆,根據官方表示:「由於從 ChatGPT 獲得正確答案的平均比例太低,發表由 ChatGPT 創造出的答案對網站上,不利於詢問或尋找正確答案的使用者。」[3]
 
AI產生的程式碼中的微小錯誤有可能非常難被發現,可能導致非常大的代價。因此Copilot雖然能提供相對好的程式碼,但有時候會需要一些微調。如果你經驗不足,或正在嘗試學習,可能會出一些差錯但是卻沒有意識到[1]。

2 侵權問題 : "使用AI工具「有可能會侵犯一些開源程式碼許可,因為它可能會有些東西是來源於訓練代碼」。而這可能會令你掉進剽竊的漩渦。”[1] -- BCC

3 只是輔助工具 : AI只提供一些短的程式片段,不會編寫完整的軟體程序[1]。

4 覆核與測試的重要性 : 程式碼仍然需要全面覆核,而且要進行完整的測試如單元測試與整合測試[1]。

5 程式語言限制 : 
Codex目前支援的程式語言: Bash, C#, Go, Java, Javascript, Python, Ruby, Rust。
Github Copilot目前支援的程式語言 : C, C++, C#, Go, Java, Javascript, PHP, Python, Ruby, Scala, Typescript。。

由上面幾個事項,可以了解AI輔助工具很好用但還沒有強大到可以取代專業程式設計師。
參考 

由上面幾個事項,可以了解AI輔助工具很好用但還沒有強大到可以取代專業程式設計師。Codex, Copilot背後的人工智慧模組仍持續學習與進步中,值得持續關注,或許有一天上面這些問題都會解決。

人工智慧程式設計輔助開發工具 - GitHub Copilot介紹

作者: Fred F.M. Wang (FW知識瑣記) 日期: 2023-3-7

       今年3/1日因chatGPT爆紅的openAI公司正式發布了"chatGPT API",提供ChatGPT的引擎與應用程式庫給個人或企業自行開發對話機器人相關應用,加上該公司原有的文字產生與處理,程式碼產生與處理,影像產生與處理等APIs,給有人工智慧應用開發需求的個人或企業更豐富的選擇。

    相較chatGPT API我更感興趣的是OpenAI公司在2021年發布的"程式碼產生與處理"APIs,OpenAI公司將這部分命名為Codex。OpenAI官網提供了Javascript的測試網頁,只要輸入英文(自然語言)就可以幫你產生想要的Javascript程式碼

    除此之外,我找到以Codex為基礎建立的開發工具GitHub Copilot,包含許多IDE的插件,可以在開發軟體的過程中運用AI幫助自己快速產生程式,大幅提高生產力。如果這個工具可以運用到自己的工作上,就太好了,很可惜目前支援的程式語言不包含PHP。

    下面是整理自網路的GitHub Copilot介紹。

簡介

GitHub Copilot是GitHub和OpenAI合作開發的一個人工智慧工具,使用者在使用Visual Studio Code、Microsoft Visual Studio、Vim或JetBrains整合式開發環境時,可以透過GitHub Copilot自動補全代碼。GitHub於2021年6月29日對開公開該軟體。(維基百科)

GitHub Copilot 由 OpenAI Codex 提供支援,OpenAI Codex 是由人工智慧研究實驗室 OpenAI 建立的人工智慧模型。(維基百科)
OpenAI Codex 是 GPT-3(生成型已訓練變換模型 3) 的修改後生產版本,GPT-3 是一種使用深度學習生成類人類文字的語言模型。例如,當給出一個自然語言的程式問題時,Codex能夠產生解法代碼。它也可以用英語描述輸入代碼和在不同程式語言之間翻譯代碼。Codex的GPT-3僅授權給 GitHub 的母公司微軟。(維基百科)
Copilot的OpenAI Codex接受了一系列英語語言、公共 GitHub 儲存庫和其他公開可用原始碼的訓練。這包括來自 5400 萬個公共 GitHub 儲存庫的 159 GB Python 代碼的過濾資料集。(維基百科)

功能與準確度

GitHub Copilot協助程式設計師的功能,包含 :
一 寫上函數名稱自動補全程式碼
二 將註釋轉換成程式碼(Convert comments to code)
三 自動補全重覆的程式碼(Autofill for repetitive code)
四 自動產生測試案例
GitHub 報告稱,Copilot 的自動完成功能大約有一半時間是準確的; 例如,當使用者提供Python 函式頭代碼後,Copilot 在第一次嘗試時有 43% 的時間正確地自動完成了函式體代碼的其餘部分,而在十次嘗試後有 57% 的時間正確地自動完成了函式體代碼的其餘部分。
GitHub 表示,Copilot 的功能能夠幫助程式設計師減省閱讀軟體文件的時間,快速瀏覽不熟悉的編碼框架和語言。

支援的程式語言

GitHub Copilot目前支援的程式語言有C, C++, C#, Go, Java, Javascript, PHP, Python, Ruby, Scala, Typescript

功能介紹

一 寫上函數名稱自動補全程式碼
例如寫一個函數 calculateDaysBetweenDates(date1, date2),你只要函數名稱語意清楚,Copilot會自動填入程式碼。 

二 將註釋轉換成程式碼(Convert comments to code)
例如寫一段註釋,註釋中描述要處理的邏輯,Copilot就會自動產生程式碼。 

三 自動補全重覆的程式碼(Autofill for repetitive code)
例如: 你寫一個常數集合,內容為各種程式語言的註釋符號,你寫了三個程式語言後,Copilot會自動填入其他程式語言。
四 自動產生測試案例
完成一個函示後,可以讓Copilot針對此函示產生測試案例程式。

費用

Copilot個人版: 每月 10 美元,或每年 100 美元。

Copilot企業版 :每個月19美元


安裝與使用



資料來源 
1 維基百科
4.Github - About GitHub Copilot for Individuals