AI 程式大挑戰:比賽辦法

昨天晚上的 Python 全攻略說明會,一位網友在自我介紹時,關於未來打算用學會的 Python 來做什麼,想不出來。

我經常使用 ChatGPT(或類似服務)寫程式來協助日常瑣事,今天想了一下,決定辦個系列活動,當作範例來開拓大家的想像力。

參賽者只能透過 prompt 與各服務溝通來產生程式碼,所有程式碼必須來自該服務的回應。

參賽者不能自行修改程式碼,也不能手動補充程式。

▌比賽辦法

1. 賽制與時間安排

  • 比賽形式:原則上每個月一次,視活動是否熱絡而調整。

  • 比賽時長:每次比賽時間為一週,公佈題目後,一週內提供程式與 prompt 連結,參賽者可提供多次解答。

  • 比賽平台:參賽者可自行選擇 ChatGPT 或類似服務,付費免費皆可,也不限只能用一種服務,透過 prompt 與該服務溝通來產生程式碼。

2. 比賽規則

  • 題目:每次比賽提供 1 個題目,說明完成目標,參賽者的解決方案,可以盡量接近該目標,超越更好。

  • Prompt 限制:參賽者只能透過 prompt 與各服務溝通來產生程式碼,所有程式碼必須來自該服務的回應。參賽者不能自行修改程式碼,也不能手動補充程式(超過 prompt 長度不限,唯必須提供前一 prompt 產生的相同程式碼)。

  • 繳交資料一:prompt 連結,可不限一個連結。

  • 繳交資料二:單一 Python 檔,可以在 DOS Prompt 或 google colab 環境下執行,繳交時請說明。

3. 計分方式

完全由評審自由心證,但會參考以下項目:

  • 正確性:根據程式碼是否解決題目要求,給予分數。例如執行結果是否正確、是否涵蓋所有測試情境來評分。

  • 溝通技巧:根據參賽者與 ChatGPT 之間的溝通有效性進行評分。prompt 設計清晰且能引導 ChatGPT 生成正確程式碼的參賽者,將獲得較高分數。

  • 效率:考慮 prompt 的次數和每次的成功率,使用較少 prompt 且生成更高效的解決方案將獲得加分。

  • 創意性:對於有創意解決方案的參賽者,提供額外加分,這包括如何巧妙引導 ChatGPT 寫出不只是正確,而是優雅的程式碼。

4. 評審團

  • 初期由我來負責,評估程式的正確性、prompt 的創意性。如果活動持續辦下去,我會找其他專家加入。

5. 公開展示

  • 每位參賽者的 prompt 連結和生成的程式碼,請同意公開展示。

6. 賽後討論

  • 比賽結束後,歡迎參加賽後討論,分享各自的 prompt 策略,以及如何優化生成的程式碼。

7. 冠軍獎品

  • 由我協助,代為註冊一週的 Udemy 限免課程,一週的課程數量加總大約300堂,價值超過1萬元。得獎者請自行決定提供現有 Udemy 帳號或建新帳號,於公佈冠軍後提供。

比賽方法可能依進展調整


▌提交作答

請在 AI 程式大挑戰 這個類別中 發文(+ 新話題 ,並將 Python 程式碼寫在文章中即可。

提醒:ChatGPT(或其他同類型服務)的連結,建議於截止後再提供,讓其他參賽者有自己思考的機會。

如何將 Python 程式碼寫在文章中,請參考這篇文章:Code Block 程式碼區塊支援的程式語言

以下是簡單說明及範例:

說明

  • 在你要放入程式的第一行和最後一行,分別以 ``` 標示,就會以程式碼的格式呈現。

  • 要指定哪一種程式語言,只要在第一行的 ``` 後方,加上你想顯示的程式語法。例如 Python 的寫法就是 ```python ,依此類推。

範例

@requires_authorization(roles=["ADMIN"])
def somefunc(param1='', param2=0):
    r'''A docstring'''
    if param1 > param2: # interesting
        print 'Gre\'ater'
    return (param2 - param1 + 1 + 0b10l) or None

class SomeClass:
    pass

>>> message = '''interpreter
... prompt'''

圖檔來源:Pixabay

4個讚