推薦序
本書是「極簡 AI 入門系列」的教材,延續「Node.js Fullstack 原理與實務」一書,希望讓初學者有效率入門 AI 應用程式,也能修練 LLM 的思惟內功;讀完本書後,就能讓你的Node.js 應用程式具備「思惟能力」。
這本書是為 LLM 初學者設計的入門教材,這是一份幫助初學者,從零開始、逐步建立 LLM應用程式實作能力的學習指南。閱讀本書,您將學會:
1. 理解 LLM(大型語言模型)的基本概念
2. 如何用 Node.js 建立基本的 LLM 應用程式
3. 建立良好的 Node.js + LLM 應用程式架構(可擴充性)
4. 開發第一個 AI 對話程式
5. 導入外部資料庫,讓你的 LLM 應用程式更聰明,並降低成本
6. 能導入簡單的 In-Context Learning 與 MAML-en-LLM 大幅提升 LLM 的「腦力」
7. 使用 TAR 與 RAG 技術,打造「極簡 AI Agent」
本書延續 Node.js 系列著作的風格,採用清楚的步驟式教學,並搭配語意導向的說明,讓LLM 初學者了解每一段程式碼背後的設計邏輯。這是一本實務導向的Node.js + LLM 入門教科書,本書並不是一本操作手冊,而是一本在鍛練 AI 軟體開發內功的祕笈。
作者序
思考是什麼?何謂「思考」?人工智慧(AI)真的會像人類一樣「思考」嗎?特別是在體驗過像是 ChatGPT 等 AI 後,每個人的心中不免會產生這樣的疑問。
要能想通這個問題,能了解 LLM 的原理,就是重要的第一步,這也是本書第一章的寫作宗旨。
在閱讀完本書後,這個問題也可以更具體化:人類的思考,通常先有一個「目的」、有「主題」,即「動腦」。然後再根據自身的知識,運用大量知識,進行邏輯組識,這就是「思考」。思考是一個運用知識,來進行推理的過程。而 LLM 具備更大量的知識,以及更精密的推論能力,這正能「輔助」我們來進行品質更好的「思考」。
所以,人工智慧的角度不在取代人類,反而是君臣相輔的角色。軟體工程領域的 PairProgramming,便是一種君臣相輔的開發模式;將此模式結合 LLM 後,便是 VibeCoding。
在 AI 時代,人類更要多動動腦,讓 LLM 更好地輔佐我們,人類(君主)才會更強大。學習LLM 應用軟體開發,就是在指導 LLM 這個大臣,「如何好好地輔佐我」。
此外,寫程式要畫流程圖,是筆者過去接受資訊科學訓練,被教導的知識;開發軟體前的行前工作,例如:系統分析、架構設計、軟體工程方法等,幾乎可以說是「常識」。然而,有了 LLM 等人工智慧技術後,現今的軟體開發方法論,跟過去還是一樣嗎?以前,我們注意程式碼的「邏輯」,然而,在讀完本書,並且自行試作第一個「極簡 LLM應用程式後」,你就會發現,「邏輯已經是其次」,我們首要注意的是「語境」,以及「語意」。此外,更關心 LLM 生成文字的「語氣」是否符合心中的預期。簡而言之,「輸出結果的內容正確性」,正被「輸出結果的語氣是否符合預期」的模式取代。這正是過去典型的「應用軟體」開發,轉移到現念的 「LLM 應用軟體」開發,最主要的「思惟」轉換之一。
因此,先理解 LLM 的本質,再親自動力打造 LLM 應用程式後,就能開始解答「AI 是不是真的會思考」的疑問;並且,也能開始體會 LLM 的軟體開發方法論,與過去典型方法論「思惟」上的差異。這也是本書的寫作理念,注重 LLM 的軟體思惟,而不是 API 與語法;讓本書帶您進入「君臣相輔」的全新軟體開發時代。
Jollen