用 Andrew Ng 的方法在 30 分鐘內打造自己的應用程式
用 Andrew Ng 的方法在 30 分鐘內打造自己的應用程式
非程式設計師的 AI 驅動軟體開發
打造功能性軟體不再需要手寫程式碼;現在只需要能夠有效地向 AI 系統發出提示。只要用純英文描述想法並不斷迭代結果,使用者就能在幾分鐘內建立在瀏覽器中直接執行的 Web 應用程式。
有效提示的五大構件
要把模糊的想法轉化為可預測、可運作的應用程式,Andrew Ng 建議在提示中加入以下五個具體構件。這些構件可以分次提供,也可以一次性寫在長提示裡,但一定要先確定目標。
- 目標:清楚說明你想要建立什麼(例如「產生一個網頁協助我寫生日卡」)。
- 輸入:說明使用者必須提供哪些資訊(例如姓名、年齡與興趣)。
- 輸出:根據輸入,軟體應產生什麼(例如一段有趣的生日祝福)。
- 版面配置:應用程式的視覺排版方式(例如「在右側顯示顏色,外觀像生日卡的內頁」)。
- 特殊功能:提升應用程式的額外功能(例如「複製到剪貼簿」按鈕或「我很幸運」按鈕,自動填入欄位)。
迭代開發與除錯
使用 AI 進行軟體開發是一個不斷精練的迭代過程,而非一次完成的單步執行。
精緻使用者體驗
從基本提示開始往往會得到功能完整但外觀平淡的結果。使用者可以透過後續指示「讓它更好看」、加入節慶色彩或更換主題來改善應用程式。指示越具體,結果就越可預測。例如,要求「在全麥麵包上放火腿與起司的素食三明治」比單純說「三明治」更能得到想要的結果。
修正「錯誤」
當 AI 產生的應用程式未如預期運作——例如點擊按鈕卻沒有反應——這就稱為「錯誤」。要修正時,使用者應清楚向 AI 描述失敗情況(例如「點擊產生卡片的按鈕時什麼都沒發生,請幫我修正」)。AI 通常能在不需要使用者了解底層技術術語(如 JavaScript 點擊事件)的情況下,找出並解決基本錯誤。
實作範例:從生日卡到遊戲
目標、輸入、輸出、版面配置與功能這套框架可套用於任何簡易的 Web 應用程式。
- 生日卡應用程式:根據使用者輸入產生個人化、搞笑的訊息,具備藍色或紫色主題與剪貼簿複製功能。
- 乒乓球遊戲:以單一 HTML 檔實作的桌上乒乓球遊戲,玩家使用方向鍵與電腦對戰。後續加入了難度等級、自訂勝點需求以及特定圖形(例如綠色玩家與米色球拍)。
「建構者」心態
成為「AI 建構者」需要理論學習與實務應用的平衡。Andrew Ng 強調,僅僅只做建構的人可能會重造輪子,而只上課的人則缺乏實作能力。最有效的建構者會結合理論與實作,將 AI 當作腦力激盪工具來產生新點子,並從朋友、家人或同事那裡取得回饋,持續優化自己的軟體。