前幾天一直提到「把需求告訴 AI,讓 AI 幫我們寫程式」,但這時候可能會有另一個問題:
AI 到底為什麼會寫 Code?
現在我們常用的 ChatGPT、Claude、Gemini,背後都使用了大型語言模型,也就是常看到的 LLM(Large Language Model)。
簡單來說,LLM 在訓練過程中接觸大量文字與程式碼,從中學習語言、程式語法以及它們之間的關聯。當我們輸入一句 Prompt 時,它會根據目前取得的內容,預測接下來最合理的文字或程式碼應該是什麼。
例如我們告訴 AI:
使用 JavaScript 寫一個函式,輸入兩個數字並回傳相加結果。
因為模型在訓練過程中已經看過大量類似的程式結構,所以它可以根據需求產生相對應的 Code。
不過這裡有一個很重要的地方:LLM 並不是像人類一樣真正理解程式。
它產生的答案是根據學習到的模式與目前提供的資訊推算出來的,因此即使程式碼看起來非常合理,也不代表一定正確。這也是為什麼 AI 有時候會寫出不存在的函式、用錯 API,甚至很有自信地給出錯誤答案。
所以在 Vibe Coding 中,AI 雖然可以負責大量 Coding 工作,但我們還是得負責確認它到底有沒有寫對。
而除了模型本身之外,我們怎麼把需求告訴 AI,也會直接影響最後產生的結果。
下一篇 Day 5,就來看看 Vibe Coding 最常接觸到的東西——Prompt。