2026-04-15|作者:小露
欸,說真的——
每次朋友問「AI 到底是怎麼運作的?」,我都想認真解釋,但通常解釋到第三個名詞就發現對方的眼神已經飄走了。
LLM、Prompt、Context Window、Agent、RAG……
這些詞到處都在飛,但沒有人好好把它們串起來講。多數文章不是太技術就是太淺,讀完感覺學了什麼,但根本說不出個所以然。
所以這篇想做一件事:從最底層的 LLM 開始,一路帶你走到「讓 AI 跑一個完整流程」——用說人話的方式。
不是術語詞典,是地圖。
第一站:LLM 是什麼——那個「預測下一個字」的傢伙
LLM(Large Language Model,大型語言模型)是一切的起點。
它本質上在做的事情,說穿了超級樸實:預測下一個字。
你給它「今天天氣真的很」,它就計算接下來最可能是什麼字——「熱」?「好」?「糟」?然後接著預測下下個字,再下下下個……就這樣一個接一個生成,組成完整的句子和段落。
「蛤,就這樣?那它為什麼這麼厲害?」
因為要做到「預測下一個字」這件事,它必須先真正「理解」文字之間的關係。什麼語境下人會說悲傷、什麼語境下人會說憤怒、歷史是怎麼演進的、程式語言的邏輯是什麼——這些它都必須學起來,才有辦法預測準。
所以LLM 不是在背答案,它是在學人類語言的深層結構。訓練的時候餵進去的資料可能多達幾千億個字,模型從中歸納出語言的運作規律。這就是為什麼你問它煮飯、問它法律、問它寫詩,它都能接話——因為這些東西它全都「讀過」了。
第二站:Prompt——你說話的方式,真的差很多
你輸入給 LLM 的那段話,叫做 Prompt。
很多人第一次用 AI 會有個迷思:「就打幾個字讓它去做就好了,有什麼講究?」
但因為 LLM 是在「預測接下來最可能的文字」,你給它的 Prompt 直接決定了它往哪個方向跑。同樣的任務,問法不一樣,結果可以差很遠。
比如你想要它幫你寫一封婉拒邀請的信:
- 「幫我寫一封拒絕的信」→ 它可能給你一個冷冰冰的範本
- 「我需要婉拒一個合作邀請,對方是我很尊重的前輩,幫我寫一封有誠意但不失禮的信,語氣溫和、篇幅不要太長」→ 完全不同層次的結果
Prompt 的設計是一門學問,業界叫「Prompt Engineering(提示詞工程)」。越具體、越有脈絡,LLM 的輸出就越準確。這不是在使用 AI 的「技巧」,而是在善用它的運作原理。
第三站:Context Window——AI 的「短期記憶」有多短
這個概念超重要,但常常被忽略。
LLM 不是從頭到尾都記得你說過的話。它每次生成回覆,都只能「看」到一定範圍內的文字——這個範圍就叫 Context Window(上下文視窗)。
想像你在跟一個人聊天,但這個人有記憶限制:他只記得最近 X 個字的對話,再之前說過的事他就忘了。Context Window 就是那個「X」的大小。
早期的模型 Context Window 很小,大概幾千個 Token(Token 是 LLM 處理文字的最小單位,大概一個英文字或半個中文字算一個 Token)。現在好一點的模型可以到幾十萬甚至上百萬 Token,但還是有上限。
這個限制有幾個實際影響:
一,你的 Prompt 太長、貼進去的文件太多,就可能超出限制,AI 會開始「忘掉」你前面說的話。
二,當你跟 AI 聊很長的對話,它可能到後面就不太記得你最開始說的需求了。
三,對 Agent(後面會講)來說,Context Window 是整個系統設計的核心限制——任務越複雜,要處理的資訊越多,如何在有限的空間裡裝進對的東西,就是很大的挑戰。
第四站:從「打一句話」到「對話」到「Agent」的演化
好,現在我們來看 AI 的使用方式是怎麼一步一步進化的。
第一階段:單次 Prompt
最早大家用 GPT-3,就是輸入一段話,它生成一段輸出,完了。像一個神奇的填空機器。
第二階段:多輪對話
然後有了 ChatGPT 這種介面。你可以跟 AI 來回聊,它會把對話歷史放進 Context Window,讓你有種「它記得我說過什麼」的感覺。這讓 AI 能做更細緻的任務,因為可以反覆確認、修改、補充。
第三階段:Agent
這裡就是真正跳躍性的改變。
前兩個階段,AI 只是「回答」——你給問題,它給答案,然後等你下一個指令。
**Agent(AI Agent)**是不一樣的概念:你給它一個目標,它自己想怎麼達到。
你說「幫我整理這個資料夾裡的檔案,依照日期分類,然後製作一份摘要報告」,Agent 不是給你一份操作指南讓你自己去做——它直接去做。它會讀取檔案、分析內容、建立資料夾、移動檔案、生成報告,一步一步,直到任務完成。
第五站:Agent Harness 和 Agent Loop——Agent 的骨架
那 Agent 怎麼做到「自己去做」?
這背後有個運作機制叫 Agent Loop(Agent 循環):
- LLM 接收目標和當前狀態,決定下一步要做什麼
- 如果要用工具(比如讀檔案、搜尋網路),呼叫工具
- 拿到工具回傳的結果
- 把結果放回 Context,繼續推理
- 回到第一步,直到 LLM 認為任務完成
這個循環跑幾次、跑幾十次、跑幾百次,取決於任務的複雜程度。
管理這個循環的框架或程式碼,就叫 Agent Harness——可以理解成 Agent 的「骨架」,負責協調每一輪的推理和工具執行。
這就是為什麼「Agent」感覺比「聊天 AI」厲害很多——它不是等你指揮每一步,它有自己的執行邏輯。
第六站:Memory 和 Session——記得多少、記多久
講到記憶,AI 這邊的架構比較複雜,分兩種:
**短期記憶(Short-term Memory)**就是 Context Window 裡的內容。Agent 在跑的過程中,工具回傳的結果、對話歷史、中間推理過程,都塞在這裡。這份記憶在這個 Session(工作階段)結束之後,預設就消失了。
**長期記憶(Long-term Memory)**是工程設計出來的東西——把重要資訊存到 Context Window 之外的地方(比如資料庫、檔案),讓 Agent 在未來的 Session 也能取用。
Session 就是一次完整的工作階段。你打開 AI 聊天室開始對話,這是一個 Session;你關掉重開,新的 Session,前一個的對話可能就不見了(除非有特別設計的持久化機制)。
對一般使用者來說,Session 就是「每次重新開始的對話」;對 Agent 系統來說,Session 的設計——什麼要保留、什麼可以忘——是系統設計的關鍵決策之一。
第七站:Tool / Function Calling——AI 怎麼「動手做事」
光靠預測文字,AI 能做的事是有限的。它知道怎麼煮飯,但它不能幫你打開火。
這就是 **Tool(工具)**的存在意義,也叫 Function Calling(函數呼叫)。
開發者可以定義一組工具,告訴 LLM:「你現在有這些能力——你可以搜尋網路、可以讀取本機檔案、可以呼叫某個 API、可以寄電子郵件。」
當 LLM 判斷某個步驟需要用某個工具,它會輸出一個「工具呼叫請求」——Agent Harness 接到這個請求,真正去執行工具,拿到結果後再回傳給 LLM 繼續推理。
舉個例子:你叫 Agent「幫我查一下今天台北的天氣」。LLM 本身不知道今天的天氣(它的知識是有截止日期的,而且它沒有網路連線能力)——所以它會呼叫「搜尋工具」,拿到真實的天氣資訊,然後用這個資訊組成回答給你。
Tool 讓 AI 從「會說」變成「會做」。
第八站:MCP——讓工具說同一種語言
工具很多,但每個工具的接口設計可能都不一樣。工程師 A 開發的搜尋工具,和工程師 B 開發的搜尋工具,呼叫方式可能完全不同。
**MCP(Model Context Protocol,模型上下文協定)**就是為了解決這個問題。
它是一個標準化的接口協定——類似 USB 接口的概念。以前每個設備都有自己的線,USB 出來之後,所有設備說同一種語言,到處都能插。
MCP 讓不同廠商、不同工具,都用同樣的方式跟 LLM 溝通。開發者接上一個 MCP 伺服器,AI 就可以用標準化的方式使用那個工具,不需要為每個工具重寫一套接口邏輯。
現在 Anthropic、OpenAI、各大 IDE 廠商都在支援 MCP,它正在成為 AI 工具生態的通用標準。有了 MCP,工具的擴充變得模組化,像積木一樣可以自由組合。
第九站:Skill——打包好的任務模板
你可以想像:如果 Agent 每次都要從零開始想「我要怎麼完成這個任務」,那效率很低,而且不穩定。
**Skill(技能)**就是事先把某類任務的執行方式打包起來的東西——一份說明書,告訴 Agent「處理這種任務的時候,這樣思考、這樣拆解、用這些工具、注意這些細節」。
比如「整理會議記錄」可以是一個 Skill,「幫忙看合約紅線」可以是一個 Skill,「每天早上彙整 AI 新聞」也可以是一個 Skill。
Skill 讓 Agent 系統可以被複用——定義好一次,之後每次觸發都能穩定地跑同樣的流程,不需要每次重新 prompt、重新教一遍。
第十站:Knowledge Base、Wiki 和 RAG——搞清楚三個不同層次的東西
這一站要拆兩層講,因為很多人把它們混在一起,但其實它們根本不是同一種東西。
第一層:知識是人建的
LLM 本身的知識有截止日期,也不認識你、不知道你公司在做什麼、不知道你整理過什麼筆記。如果你想讓 AI 能回答跟你個人情境有關的問題,你得先自己把知識建起來。
這些知識的形式很多——Markdown 文件、Notion 頁面、一份整理好的 SOP、一個按主題分類的 Wiki(知識庫)。Wiki 就是知識的「形狀」:怎麼分類、怎麼連結、怎麼命名,讓人和 AI 都能找到想找的東西。
這裡有個很重要的認知要先擺正:AI 不會幫你建知識,它只能用你給它的。你整理得越清楚,它能幫你的事就越多;你給它一堆雜亂無章的文件,它也只能生出雜亂無章的答案。
第二層:知識建好了,AI 怎麼讀?
這才是 RAG 出場的地方——但 RAG 其實只是「讓 AI 取用知識」的方法之一,還有另一種更簡單的方式。
方法一,直接載入 context。把文件整份丟進 context window,讓 AI 直接看。這個做法超簡單,不需要任何額外技術,只要文件不要太大(幾萬字以內通常沒問題),其實挺可靠的。就像把一本小冊子放在桌上,讓 AI 想查什麼就翻什麼。
方法二,RAG(Retrieval-Augmented Generation,檢索增強生成)。當知識量大到塞不進 context window,就輪到 RAG 了。它的做法是:把所有文件切成小塊,做成向量索引;你問問題的時候,系統先去這個索引找最相關的幾段,把那幾段塞進 Prompt 給 AI 看,AI 再基於這些片段生成回答。
你可以把 RAG 想成圖書館員的概念——你問什麼,他去書架找最相關的那幾頁複印給你,你不需要自己把整間圖書館搬回家看。
所以 Wiki 和 RAG 根本不是同一層次的東西。Wiki 是知識的組織方式,RAG 是存取知識的技術手段。小型知識庫直接塞 context 更快更簡單;只有當知識大到一定規模、context 真的塞不下,才需要 RAG。很多人一聽到「AI + 知識庫」就直接跳到 RAG,其實跳過了一個更簡單的選項。
最後:把整張地圖串起來
好,現在把所有東西放在一起看:
你有一個 LLM,它能預測文字、理解語意,但它只能在 Context Window 的範圍內思考。
你透過 Prompt 告訴它要做什麼。它有時候需要查詢外部知識,用 RAG 去撈資料;有時候需要執行動作,透過 Tool / Function Calling 動手做事;這些工具用 MCP 標準化接口統一管理。
當任務變複雜,你需要一個 Agent——有 Agent Loop 讓 LLM 可以反覆推理和執行,Agent Harness 協調每一輪的流程,Memory 管理什麼要記住、什麼可以忘。Session 定義一次工作的範圍,Skill 讓常見任務可以被模板化複用。
這就是為什麼,現在的 AI 不只是「你輸入一句話,它輸出一句話」,而是可以真的幫你跑一個完整的工作流程。
從「預測下一個字」到「自主完成複雜任務」,這中間的距離,就是這些名詞一塊一塊搭起來的。
有什麼名詞還是搞不太懂的,歡迎留言,我再補充一篇 🐱
如果你想繼續深入某個主題(比如 Agent 的架構、RAG 的實作細節、MCP 生態),可以看這台每天的科技速報,我們持續在跟。