大型語言模型應用實戰: 從Prompt Engineering到Agentic RAG與MCP

大型語言模型應用實戰: 從Prompt Engineering到Agentic RAG與MCP

出版日期:
2026/03/22
9
790711
查詢門市庫存
https://www.youtube.com/watch?v=WLx8W-N52Ug

本書強調動手實作,帶領讀者從開發到落地,完整掌握LLM系統的工程方法。

內容簡介

https://www.youtube.com/watch?v=WLx8W-N52Ug

本書強調動手實作,帶領讀者從開發到落地,完整掌握LLM系統的工程方法。

★從基礎到進階,一條完整的LLM開發學習路線
★給開發者的LLM實戰書,從第一個Prompt到可擴充的Agent系統
★一次掌握 Prompt、RAG、Tools、Agent與MCP,建立屬於你的大型語言模型應用版圖

本書改編自作者於TibaMe與工研院開設、深受好評的大型語言模型(LLM)實務課程。

大型語言模型(LLM)已不只是聊天工具,而是正在重塑軟體架構、資料存取與人機互動方式的關鍵技術。本書以「實際應用開發」為核心,從基礎概念出發,逐步帶領讀者完成可實際運作、可部署、可延伸的LLM系統。

你將學會:

•整合雲端與本地端模型,建立彈性又可控的LLM架構
•設計穩定、可預期的Prompt與對話流程,大幅降低模型失控風險
•快速打造對話機器人、遊戲NPC、SQL助手與法規諮詢系統
•從零開始建構完整RAG系統(Embedding、Chunk、Vector DB、Re-Ranker)
•讓模型學會「使用工具」,實作Tools與Function Calling
•導入MCP(Model Context Protocol),打造可組合、可擴展的AI系統
•進階掌握LCEL、Memory、結構化輸出與Agentic RAG等關鍵技術

展開看更多

產品目錄

▌第1章 大語言模型基礎

1.1 大語言模型簡介
1.2 LangChain 簡介
1.3 雲端模型Google Gemini 的API 串接
使用LangChain 控制Gemini
1.4 本地端模型部屬平台
GGUF格式在LLM 推理上的優勢
支援GGUF 格式的部屬平台
Ollama 與LM Studio 的模型API 串接
1.5 結語

▌第2章 提示詞工程的應用

2.1 提示詞工程簡介
2.2 對話訊息列表
2.3 翻譯系統(範例)
2.4 人資履歷篩選系統(範例)
設計SystemMessage 與User Prompt
限制輸出格式為JSON
封裝成 Python 函數
2.5 社群留言情緒分析(範例)
IMDB電影評論資料集介紹
使用LLM 進行情緒分析
單筆資料測試
批次測試與正確率評估
分析結果
2.6 結語

▌第3章 對話機器人

3.1 對話機器人簡介
3.2 對話機器人原理
初步實驗:單輪對話的行為觀察
對話訊息列表(Chat Message List)
對話記憶的關鍵:把回應放回去
多輪對話的形成
3.3 對話機器人實作
功能測試:確認是否能多輪對話
對話交談介面
3.4 串流式對話機器人
串流式呼叫LLM
串流式對話機器人
串流功能測試
串流式 Gradio 對話介面
系統提示詞與應用延伸
3.5 遊戲NPC(範例)
為何選擇「城門守衛」作為範例?
System Prompt 的設計說明
完整的 System Prompt 範例
實際互動效果與觀察
小結
3.6 SQL 指令對話機器人(範例)
把Schema 放進System Prompt
建立範例資料庫情境(商店銷售資料)
SQL 指令對話機器人的System Prompt
測試SQL 指令生成效果
小結
3.7 勞動基準法諮詢對話機器人(範例)
設計思路:法規型對話機器人
系統提示詞(System Prompt)設計:
諮詢範例測試
調整回應風格:口語版 System Prompt
同一問題,不同風格的效果
小結
3.8 結語

▌第4章 RAG

4.1 簡介
4.2 文字嵌入模型
Hugging Face 的文字嵌入模型
向量相似度
LM-Studio 的文字嵌入模型
4.3 向量資料庫
向量資料庫與近似搜尋(ANN)
向量資料庫的主要類型
使用InMemoryVectorStore 示範向量資料庫操作
小結
4.4 文件載入
Document 物件
Document Loader 的基本使用模式
小結
4.5 文本分段
TextSplitter
CharacterTextSplitter(最基本的字元分段)
RecursiveCharacterTextSplitter
對Document 進行分段
MarkdownHeaderTextSplitter(Markdown 文件)
HTMLHeaderTextSplitter
小結
4.6 RAG 系統整合(範例)
建立向量資料庫
建立使用者查詢與回應RAG 系統
小結
4.7 ReRanker
ReRanker範例說明
ReRanker 在完整RAG 系統中的角色
小結
4.8 結語

▌第5章 Tools / Function Call

5.1 前言
5.2 Tools原理
系統設計
執行結果與行為分析
Tools 機制的本質
5.3 Tools 技術探索
準備Tools 工具
將Python 函數轉換為LangChain Tools
StructuredTool 的呼叫方式
將 Tools 綁定至 LLM
多步驟 Tool Calling 實際流程
小結
5.4 Tools 對話機器人
ChatBot Class
初始化流程(init)
對話生成核心:chat_generator()
功能驗證:chat_generator() 測試
chat_bot:: chat ()
整合進Gradio 介面
串流版的對話機器人(Stream Chat Bot)
5.5 程式與文件助手(範例)
工具函數程式碼
工具函數功能測試
將工具接入對話機器人
測試:文件內容分析
測試:程式與資料分析助手
測試:資料分析與圖表助手
小結
完整程式
5.6 結語

▌第6章 MCP

6.1 MCP簡介
什麼是 MCP ?
MCP 與 Tools / Function Call 的關係
6.2 MCP 架構與元件
MCP Client —— 模型的「行動端」
MCP Server —— 工具與資料的「提供者」
Schema —— 工具的「語意定義」
Transport —— 通訊的「傳輸層」
整體運作流程
MCP 的優勢
6.3 MCP Server 實作
建立最簡單的 MCP Server
使用Claude Desktop 實際操作
MCP Server 的行為
建立氣溫查詢的MCP Server
小結
6.4 MCP Client 實作
讀取MCP Server 資訊
呼叫MCP Server 工具
LangChain 的MCP 工具
小結
6.5 建立能夠使用MCP 的對話機器人(MCP Client ChatBot)
完整程式碼
程式解析
小結
6.6 結語

▌第7章 進階技巧

7.1 簡介
7.2 LCEL
Chain
建立RAG Chain
小結
7.3 結構化輸出
CommaSeparatedListOutputParser
JsonOutputParser
PydanticOutputParser
小結
7.4 Memory
Chat Message List
InMemoryChatMessageHistory
FileChatMessageHistory
SQLChatMessageHistory
對話紀錄摘要(Summary)
小結
7.5 RAG進階
前期準備
Multi-Query Retrieval
Parent-Document Retrieval
小結
7.6 結語

▌第8章 LLM應用範例

8.1 簡介
8.2 SQL資料庫助手
系統設計
測試用資料
程式實作
測試效果
MCP Server 版本
小結
8.3 Line 對話機器人
Lines 鸚鵡學話機器人
遊戲NPC Line 對話機器人
小結
8.4 RSS 主題篩選助理
技術測試
RSS主題篩選助理
小結
8.5 Agentic RAG
查詢QA 文件的工具設計
對話機器人設定說明
測試效果與行為觀察
小結

▌附錄

A-1 書本範例與開發環境設定
安裝Python
安裝必要套件
開發環境 Jupyter Notebook
A-2 Gemini API KEY 申請
免費版API 限制
A-3 LM-Studio 安裝、模型下載與伺服器設定
下載模型
開啟模型伺服器
A-4 Ollama 安裝、模型下載
A-5 Claude Desktop 安裝與MCP Server 設定
A-6 Line API 申請
申請商業帳號
啟動Message API
頁面設定與申請Access Token
參考文件

作者介紹

陳仁政(白熊)

電子與資訊背景出身的工程師,走過學術研究、產業實務,也長期待在教育現場。一路接觸過軟硬體整合系統、資料分析到人工智慧,各種技術主題都有實際動手做過的經驗。

比起從公式開始推導,更喜歡用例子來聊技術,把看起來複雜的概念拆開來講清楚。長期關注機器學習、影像識別與大型語言模型等領域,也持續嘗試把這些新技術真正用在現實世界的問題上。

TibaMe、工研院、實踐大學講師
NVIDIA DLI課程認證講師
個人資料:https://sites.google.com/site/clement1972/

規格

誠品貨碼 / 2683109296000
ISBN13 / 9786267757895
ISBN10 /
EAN貨碼 / 9786267757895
頁數 / 424
裝訂 / P:平裝
語言 / 1:中文/繁體
尺寸 / 17X23X2.08CM
級別 / N:無

退貨說明

退貨須知:

  1. 依照消費者保護法的規定,您享有商品貨到次日起七天猶豫期(含例假日)的權益(請注意!猶豫期非試用期),辦理退貨之商品必須是全新狀態(不得有刮傷、破損、受潮)且需完整(包含全部商品、配件、原廠內外包裝、贈品及所有附隨文件或資料的完整性等)。
  2. 請您以送貨廠商使用之包裝紙箱將退貨商品包裝妥當,若原紙箱已遺失,請另使用其他紙箱包覆於商品原廠包裝之外,切勿直接於原廠包裝上黏貼紙張或書寫文字。若原廠包裝損毀將可能被認定為已逾越檢查商品之必要程度,本公司得依毀損程度扣除回復原狀必要費用(整新費)後退費;請您先確認商品正確、外觀可接受,再行拆封,以免影響您的權利;若為產品瑕疵,本公司接受退貨。

依「通訊交易解除權合理例外情事適用準則」,下列商品不適用七日猶豫期,除產品本身有瑕疵外,不接受退貨:

  1. 易於腐敗、保存期限較短或解約時即將逾期。(如:生鮮蔬果、乳製品、冷凍冷藏食材、蛋糕)
  2. 依消費者要求所為之客製化給付。(如:客製印章、鋼筆刻字)
  3. 報紙、期刊或雜誌。
  4. 經消費者拆封之影音商品或電腦軟體。
  5. 非以有形媒介提供之數位內容或一經提供即為完成之線上服務,經消費者事先同意始提供。(如:電子書)
  6. 已拆封之個人衛生用品。(如:內衣褲、襪類、褲襪、刮鬍刀、除毛刀等貼身用品)
  7. 國際航空客運服務。

若您退貨時有下列情形,可能被認定已逾越檢查商品之必要程度而須負擔為回復原狀必要費用(整新費),或影響您的退貨權利,請您在拆封前決定是否要退貨:

  1. 以數位或電磁紀錄形式儲存或著作權相關之商品(包含但不限於CD、VCD、DVD、電腦軟體等) 包裝已拆封者(除運送用之包裝以外)。
  2. 耗材(包含但不限於墨水匣、碳粉匣、紙張、筆類墨水、清潔劑補充包等)之商品包裝已拆封者(除運送用之包裝以外)。
  3. 衣飾鞋類/寢具/織品(包含但不限於衣褲、鞋子、襪子、泳裝、床單、被套、填充玩具)或之商品缺件(含購買商品、附件、內外包裝、贈品等)或經剪標或下水或商品有不可回復之髒污或磨損痕跡。
  4. 食品、美容/保養用品、內衣褲等消耗性或個人衛生用品、商品銷售頁面上特別載明之商品已拆封者(除運送用之包裝外一切包裝、包括但不限於瓶蓋、封口、封膜等接觸商品內容之包裝部分)或已非全新狀態(外觀有刮傷、破損、受潮等)與包裝不完整(缺少商品、附件、原廠外盒、保護袋、配件紙箱、保麗龍、隨貨文件、贈品等)。
  5. 家電、3C、畫作、電子閱讀器等商品,除商品本身有瑕疵外,退回之商品已拆封(除運送用之包裝外一切包裝、包括但不限於封膜等接觸商品內容之包裝部分、移除封條、拆除吊牌、拆除貼膠或標籤等情形)或已非全新狀態(外觀有刮傷、破損、受潮等)與包裝不完整(缺少商品、附件、原廠外盒、保護袋、配件紙箱、保麗龍、隨貨文件、贈品等)。
  6. 退貨程序請參閱【客服專區→常見問題→誠品線上退貨退款】之說明。
付款/配送