18/09/2024
警告, 你的魔力點數用完囉!
[前因]
這幾天在練習使用 cursor 公司的 AI 輔助功能撰寫網頁軟體專案. 既然有 14天的 AI 服務試用期, 當然是要盡力測試.
[過程]
從 Hello World 開始, 到單一功能, 到整合多項條件限制與篩選, 要求搬遷到 NAS 環境執行 (有 Python & Node.js 的環境), 然後試著讓 AI 幫忙改善程式效率以及美觀, 再對網頁進行分割畫面利用, 將查詢結果輸出成檔案...
[結果]
沒有半行程式是自己寫的, 都是 AI 輔助設計, 我提需求, AI 協助完成程式碼的撰寫與修正.
[產出分布]
最後大約產出 五六百行程式碼或者指令.
(包含在: server.js, specs.json, index.html, script.js, styles.css ...檔案內)
[得到的經驗]
1. 程式片段很容易完成:
小程式, 單一功能, 對於 AI 輔助, 都很容易寫出來.
2. 等到程式長大一點, 或者複雜度增加後, 溝通成本大增:
忽然就覺得自己像是 產品經理, 得要在各種 "與AI溝通失敗" 後,
回頭檢討自己是有哪邊沒有表達清楚, 導致於程式執行結果,
並不是我想要的. 但是, 程式不是自己寫的, 人工 review code
自己功力太差, 也搔不著痛點或者癢處.
無法善解人意的 AI, 其實到了一定程式複雜程度之後, 變成了悲劇.
每次答應會修改, 好幾次也不會成功改正. 換個 AI 助手選項,
或者 要使用者 循循善誘, 打掉重做, 都可能比較有機會改進.
3. 以前一個人作業, 並不會想到 改版問題:
開始用 AI 助手之後, 人類使用者幾乎不必去記程式關鍵字及語法,
AI 助手可以一秒鐘產生數行程式碼的速率, 橫掃整個設計過程.
框架式的設計, 程式修改一般會動到許多檔案, 也意味著, 萬一改錯,
要回到前一版本的可能性, 前提是: 你有隨時備份當前版本的習慣.
備份或者版本管理忽然就出現重要性了.
另一個問題是, 雖然程式撰寫速率, 比起新手快上數十倍
(新手根本不知道要使用哪個函數, 不知道運作架構) 差不多就是
產品經理 站在軟體工程師旁邊, 看著他(她)(它)改 code 的樣子.
當AI 聽不懂你的設計用意, 要嘛自己好好檢討, 看是哪裡沒說清楚,
要麼趕緊換個聽得懂程式需求/錯誤修正要求描述的 AI 助手.
Cursor 列出: gpt-4o/ cursor-small/ claude-3.5-sonnet/ gpt-40-mini/ o1-mini/ o1-preview
重點是:
AI 助手效率再高都會遇到:
1. 溝通不良, 產品經理(使用者本人)沒把規格定義清楚, 那就只好
邊寫邊執行, 看哪邊可以改善, 一路修改過來, 到一定程度,
再要求 AI 完整檢討一次, 冒著下一版不知道能否正常運作的風險,
挑戰進版, 隨時準備退一版.
2. 今日重點: 魔力點數用完
AI 助手幫忙寫程式, 對於靠一張嘴的使用者來說, 確實很猛,
但是這個 AI 的猛, 是要靠 錢錢 來支撐的, AI 輔助如果需要許多算力,
那就是有成本的意思, AI 廠商也是要賺錢的, 用得開心之後, 廠商就
會在適當時刻告知: "你今天的魔力點數用完喔"
如果是工作需求, 不得不 AI 成癮, 那就得乖乖付錢, 成癮後的戒斷
徵候群實在是難忍, 剛才下午四點, 程式寫到一個段落, 當我把
每個 AI 來源免費額度用到快光時, 各種的 AI 助手 反映延遲/
網路斷線現象都來了, 然後就是電腦畫面出現警語:
"要到晚上六點才會得到額度."
今天就先這樣吧, 寫軟體專案的人, 現階段好像不能不乖乖付錢去挑幾個 AI 助手.