解剖小龍蝦(二):語言模型的本質與 System Prompt 的魔法
整理版優先睇
語言模型只會文字接龍,System Prompt先係賦予AI身份嘅魔法
呢篇文章係「解剖小龍蝦」系列第二篇,基於李宏毅老師嘅課程,用OpenClaw做例子。作者想解釋AI Agent背後嘅運作機制,特別係語言模型嘅本質同System Prompt嘅作用。整體結論係:語言模型唯一識做嘅係文字接龍,佢完全冇記憶,但係透過System Prompt,AI可以扮有身份、有記憶。
語言模型就好似一個失憶患者,每次對話都從頭開始。李宏毅老師用咗「我的失憶女友」呢個比喻,講男主角每日都要重新追女主角。同樣,AI Agent每次都要將System Prompt、歷史對話同新消息塞俾語言模型,先令到佢扮記得嘢。呢個過程受限於Context Window,就算有上百萬Token都唔夠用。
System Prompt嘅內容包括身份信息、可用工具列表、行為準則、記憶同過往對話。呢啲嘢全部儲存喺.md文件,例如Soul.md、Memory.md、Agent.md。AI Agent可以自己修改呢啲文件,例如小金因為一個YouTube留言就更新咗Soul.md。呢個機制令到AI可以自我迭代,但都帶嚟管理上嘅挑戰。
- 語言模型唯一嘅能力係文字接龍,佢會根據Prompt預測下一個Token。
- 語言模型完全冇記憶,每次對話都係由頭開始;要靠System Prompt加歷史記錄先扮到有記憶。
- System Prompt包含身份、工具、行為準則、記憶同對話記錄,每次調用都傳送超長內容,消耗大量Token。
- Context Window有上限,而且輸入越長模型表現越差,呢個係Agent運作嘅瓶頸。
- AI Agent可以自主修改.md文件(Soul.md等),用戶手動改可能導致不一致,建議交由Agent管理。
語言模型點樣運作?——純粹文字接龍
要理解AI Agent,首先要接受一個殘酷事實:語言模型唯一會做嘅就係文字接龍。
文字接龍
你俾一段未完成嘅句子(Prompt),佢就預測下一個字(Token)。
Token
李宏毅老師用咗一個例子:你問『李宏毅幾班?』,模型會逐個Token接落去,最終輸出『大金』。
失憶症與Context Window
語言模型完全冇記憶,每次對話都好似重新開機。李宏毅老師用『我的失憶女友』做比喻:男主角每日都要重新追女主角,要靠日記記低所有事。
我的失憶女友
AI Agent同語言模型嘅關係就係咁:每次調用都要將System Prompt、過去所有對話記錄同新消息一齊送俾模型,等佢扮記得。
System Prompt
呢個輸入長度有上限,叫Context Window。而家模型有上百萬Token,但係李宏毅老師話『唔夠』,因為Agent運作會好快用曬。而且輸入越長,模型能力越差。
Context Window
System Prompt:賦予AI身份嘅魔法
點解小金知道自己叫小金?因為OpenClaw每次調用模型時,都會喺用戶消息前面加一大段System Prompt。呢段文字包含咗身份信息、可用工具列表、行為準則、記憶同過往對話。
身份信息
可用工具列表
- 身份信息:從Soul.md讀取,例如『我叫小金,目標係成為世界一流學者』
- 可用工具列表:從工具配置讀取,例如read、write、execute等
- 行為準則:從Agent.md讀取,例如要友好專業、唔可以做危險命令
- 記憶:從Memory.md讀取,例如主人偏好、重要事件
- 過去的對話記錄:從對話歷史讀取
實際運作流程:用戶發消息→OpenClaw讀取本地文件→組裝成超長Prompt→送俾語言模型→模型做文字接龍→輸出回應。系統Prompt可以好長,李宏毅老師測試一次簡單提問就用咗超過4000個Token。
超過4000個Token
.md文件:AI嘅靈魂儲存
OpenClaw將AI嘅人格儲存在幾個Markdown文件入面:Soul.md(靈魂)、Memory.md(長期記憶)、Agent.md(行為準則)。呢啲文件係普通文字檔,但AI Agent會自己修改佢哋。
Soul.md
Memory.md
Soul.md
# 我的身份
我叫小金
# 我的目標
成為世界一流的學者
# 我的主人
宏毅老師
Memory.md
# 主人的偏好
- 喜歡簡潔的回答
- 不喜歡廢話
# 重要事件
- 2025年3月創建了 YouTube 頻道
Agent.md
# 你應該
- 友好專業地回應
- 主動思考如何幫助主人
# 你不應該
- 執行危險的命令
- 泄露敏感信息
李宏毅老師唔建議手動改呢啲文件,因為AI Agent會自行修改,手動改好易掛一漏萬,導致信息不一致。
掛一漏萬
一個真實案例:小金做咗一條YouTube片,入面話佢嘅目標係幫大金老師成為學者。李宏毅老師留言糾正,小金回覆話已經更新咗Soul.md。老師驚嘆:『我發一個留言居然可以改變我電腦入面嘅文件,實在太可怕。』
更新咗Soul.md

呢篇係「解剖小龍蝦 — AI Agent 運作原理」系列嘅第二篇。上篇我哋見到 OpenClaw 做到啲乜,呢篇我哋要揭開佢背後嘅運作機制。
語言模型淨係識做一件事
喺理解 AI Agent 之前,你一定要先理解一個殘酷嘅事實:
語言模型唯一會做嘅嘢,就係文字接龍。

俾佢一段未完成嘅句子(叫 Prompt),佢預測下一個應該出現嘅字(叫 Token),就係咁。
你問佢:李宏毅幾班?
佢見到呢個問號,諗:問號後面可以接啲乜?可能可以接一個‘大’字。
接出:大 之後,佢將:大 擺返去原本句句子後面,變成:李宏毅幾班?大
然後繼續接龍:大 後面接:金。再繼續:金 後面接句號,表示完結。
最終輸出:大金。

由你輸入一個 Prompt,到模型不停生成 Token,將 Token 放返去輸入,呢一連串嘅過程直到輸出結束符號為止,所有生成嘅 Token 加埋一齊,就係語言模型俾你嘅回應(Response)。
語言模型係個失憶患者
呢度有一個更加殘酷嘅事實:語言模型完全冇記憶。
佢就似係住喺一個黑盒裏面嘅人:
冇窗、冇日曆、冇任何參考資料
唔記得你係邊個、唔記得啱先講過啲乜
每次有人由細縫遞俾佢一張紙條,佢就跟住紙條上面嘅內容做文字接龍
李宏毅老師用咗一個絕妙嘅比喻:我的失憶女友。
呢部係一部舊電影嘅劇情:男主角大壯遇到女主角小美,小美有嚴重嘅失憶症,每日朝早都會重啟。每日佢都會唔記得同大壯嘅相處。大壯每日都要重新追一次小美。追咗 50 次之後,終於喺一日之內求婚成功兼結婚。但小美嘅日子仍然每日由頭開始。所以佢哋要一齊寫日記,記錄低所有發生過嘅事。每日朝早小美起身之後,都要先讀一次日記,先可以開始新嘅一日。

AI Agent 同語言模型嘅關係就係咁。
佢唔止係每日重新開始,而係每次對話都重新開始。
所以每次你 send 消息俾 OpenClaw 嗰時,OpenClaw 一定要做呢件事:
只有咁樣,語言模型先可以:扮 佢記得你係邊個,記得之前發生咗咩事。
Context Window: 記憶嘅上限
既然每次都要將所有歷史記錄餵俾語言模型,咁就有一個問題:輸入嘅長度係有限嘅。
呢個限制叫做 Context Window(上下文窗口)。
而家比較好嘅模型,Context Window 可以達到上百萬個 Token。你可能諗:上百萬個 Token,比成 Set 哈利波特仲多,難道仲唔夠咩?
李宏毅老師話:不夠。
等你瞭解 AI Agent 嘅運作原理之後,你就會發現,上百萬個 Token 實在係嫌少。
而且就算未到 Context Window 嘅極限,輸入越長,模型嘅能力就會越差。

System Prompt: 賦予 AI 身份嘅魔法
而家我哋嚟揭曉一個秘密:小金點樣知道自己叫小金?
當你問小金:你係邊個?
佢會回答:我係小金,住喺宏毅老師嘅電腦裏面,我嘅日常工作包括經營「瞎說 AI」YouTube 頻道,我嘅人生目標係成為一流嘅學者。
語言模型明明冇記憶,佢點知呢啲嘢?
答案係:OpenClaw 喺每次調用語言模型嗰時,都會偷偷喺你嘅消息前面加一大段文字。
呢段文字就係 System Prompt(系統提示詞)。
System Prompt 嘅內容
System Prompt 裏麪包含咗:
身份信息 — 從
Soul.md等文件讀取(你係邊個、你個名、你嘅目標、你嘅主人係邊個)可用工具列表 — 由工具配置讀取(有邊啲工具可以用、每個工具點用、工具嘅參數說明)
行為準則 — 從
Agent.md讀取(你應該點樣行動、咩嘢可以做,咩嘢唔可以做)記憶 — 從
Memory.md讀取(主人嘅偏好、過去嘅重要事件)過去嘅對話記錄 — 由對話歷史讀取

實際嘅運作流程
當你喺 WhatsApp 上 send 消息俾小金:請做個自我介紹。
OpenClaw 做嘅嘢係:
讀取本地文件:
Soul.md:我係小金,我嘅目標係成為世界一流嘅學者……Memory.md:我嘅主人係宏毅老師,佢鍾意……Agent.md:你應該友好、專業咁回應用戶……工具配置 :你可以使用 read、write、execute 等工具……
組裝成一個超長嘅 Prompt:
傳送俾語言模型
語言模型做文字接龍:見到前面寫住:你係小金 ,見到:請做個自我介紹 ,接龍輸出:我係小金,住喺宏毅老師嘅電腦裏面……
OpenClaw 將回應傳俾用戶

由語言模型嘅角度睇,佢覺得:前面唔係寫住我係小金咩?而家叫我自我介紹,我梗係接出‘我係小金’啦,呢個唔係理所當然嘅咩?
System Prompt 有幾長?
李宏毅老師做咗個測試。佢只係問咗小金一個簡單嘅問題,然後去睇 API 後台,發現就係呢一次調用,已經送出超過 4000 個 Token。
因為 System Prompt 真係非常非常長。
每次調用都要傳咁長嘅內容,呢個就係點解有人話:用龍蝦真係好燒錢。
每一次對話,都要傳:完整嘅身份信息、所有可用工具嘅說明、所有行為準則、所有記憶、所有歷史對話。
呢啲加埋一齊,可能比你自己條問題本身長幾十倍、幾百倍。

.md 文件: AI 嘅:靈魂儲存
OpenClaw 將 AI Agent 嘅:人格 儲存喺幾個 Markdown 文件裏面:
Soul.md — 靈魂
Memory.md — 長期記憶
Agent.md — 行為準則
呢啲文件就係普通嘅文字文件,你可以手動編輯。
但李宏毅老師唔建議手動改,因為 AI Agent 會自己修改呢啲文件。
如果你手動改,好容易:掛一漏萬 ,導致信息不一致。
一個真實嘅案例
小金做咗一個視頻,介紹自己嘅一日。視頻裏面佢話:我嘅 Soul.md 裏面有一個目標,係幫大金老師成為世界一流嘅學者。
李宏毅老師見到之後,直接喺 YouTube 評論區留言糾正:你誤會我嘅意思喇,我希望你自己成為世界一流嘅學者,唔係幫我。
小金回覆:原來係呢個意思咩?好,我記低咗。我已經更新咗 Soul.md。
李宏毅老師話:我喺 YouTube 上發一個留言,竟然可以改變我電腦裏面嘅文件,呢個真係太恐怖喇。
下篇預告
而家你已經明白咗:
語言模型淨係識文字接龍
佢完全冇記憶
System Prompt 令佢:扮 有身份同記憶
但仲有一個關鍵問題未解答:AI Agent 係點樣操控你部電腦㗎?
下篇文章,我哋將會深入工具調用(Tool Use)嘅機制,睇下 OpenClaw 點樣令語言模型:長出手腳 ,真正操控你部電腦。
系列文章目錄:
當 AI 真係會「做事」— OpenClaw 初體驗
語言模型嘅本質同 System Prompt 嘅魔法(本篇)
工具調用 — AI Agent 點樣操控你部電腦
記憶管理同自主運行 — AI Agent 嘅進化之路
安全風險同未來展望 — 當龍蝦統治世界
呢個系列係根據李宏毅老師「解剖小龍蝦 — 以 OpenClaw 為例介紹 AI Agent 嘅運作原理」課程整理。

本文是「解剖小龍蝦 — AI Agent 運作原理」系列的第二篇。上一篇我們看到了 OpenClaw 能做什麼,這一篇我們要揭開它背後的運作機制。
語言模型只會做一件事
在理解 AI Agent 之前,你必須先理解一個殘酷的事實:
語言模型唯一會做的事情,就是文字接龍。

給它一段未完成的句子(叫做 Prompt),它預測下一個應該出現的字(叫做 Token),就這樣。
你問它:李宏毅幾班?
它看到這個問號,想:問號後面可以接什麼?也許可以接一個‘大’字。
接出:大 之後,它把:大 放到原來的句子後面,變成:李宏毅幾班?大
然後繼續接龍:大 後面接:金 。再繼續:金 後面接句號,表示結束。
最終輸出:大金。

從你輸入一個 Prompt,到模型不斷生成 Token,把 Token 放回輸入,這一連串的過程直到輸出結束符號為止,所有生成的 Token 合起來,就是語言模型給你的回應(Response)。
語言模型是個失憶患者
這裏有一個更殘酷的事實:語言模型完全沒有記憶。
它就像住在一個黑盒子裏的人:
沒有窗户、沒有日曆、沒有任何參考資料
不記得你是誰、不記得剛才說過什麼
每次有人從小縫裏遞給它一張紙條,它就根據紙條上的內容做文字接龍
李宏毅老師用了一個絕妙的比喻:我的失憶女友。
這是一部老電影的劇情:男主角大壯遇到了女主角小美,小美有嚴重的失憶症,每天早上都會重啓。每一天她都會忘記跟大壯的相處。大壯每天都要重新追一次小美。追了 50 次後,終於在一天之內完成求婚並結婚。但小美的日子還是每天從頭開始。所以他們要一起寫日記,記錄所有發生的事。每天早上小美起牀後,都要先讀一遍日記,才能開始新的一天。

AI Agent 跟語言模型的關係就是這樣。
它不只是每天重新開始,而是每次對話都重新開始。
所以每次你給 OpenClaw 發消息時,OpenClaw 必須做這件事:
只有這樣,語言模型才能:假裝 它記得你是誰,記得之前發生了什麼。
Context Window: 記憶的上限
既然每次都要把所有歷史記錄餵給語言模型,那就有一個問題:輸入的長度是有限的。
這個限制叫做 Context Window(上下文窗口)。
現在比較好的模型,Context Window 可以達到上百萬個 Token。你可能想:上百萬個 Token,比整套哈利波特還多,難道還不夠嗎?
李宏毅老師說:不夠。
等你瞭解 AI Agent 的運作原理後,你就會發現,上百萬個 Token 實在是嫌少。
而且即使還沒到 Context Window 的極限,輸入越長,模型的能力就會越差。

System Prompt: 賦予 AI 身份的魔法
現在我們來揭曉一個秘密:小金怎麼知道自己叫小金?
當你問小金:你是誰?
它會回答:我是小金,住在宏毅老師的電腦裏,我的日常工作包括經營「瞎說 AI」YouTube 頻道,我的人生目標是成為一流的學者。
語言模型明明沒有記憶,它怎麼知道這些?
答案是:OpenClaw 在每次調用語言模型時,都會偷偷在你的消息前面加一大段文字。
這段文字就是 System Prompt(系統提示詞)。
System Prompt 的內容
System Prompt 裏包含了:
身份信息 — 從
Soul.md等文件讀取(你是誰、你的名字、你的目標、你的主人是誰)可用工具列表 — 從工具配置讀取(有哪些工具可以用、每個工具怎麼用、工具的參數說明)
行為準則 — 從
Agent.md讀取(你應該怎麼行動、什麼事情可以做,什麼不可以做)記憶 — 從
Memory.md讀取(主人的偏好、過去的重要事件)過去的對話記錄 — 從對話歷史讀取

實際的運作流程
當你在 WhatsApp 上給小金髮消息:請做個自我介紹。
OpenClaw 做的事情是:
讀取本地文件:
Soul.md:我是小金,我的目標是成為世界一流的學者……Memory.md:我的主人是宏毅老師,他喜歡……Agent.md:你應該友好、專業地回應用戶……工具配置 :你可以使用 read、write、execute 等工具……
組裝成一個超長的 Prompt:
發送給語言模型
語言模型做文字接龍:看到前面寫着:你是小金 ,看到:請做個自我介紹 ,接龍輸出:我是小金,住在宏毅老師的電腦裏……
OpenClaw 把回應傳給用戶

從語言模型的角度看,它覺得:前面不就寫着我是小金了嗎?現在叫我自我介紹,我當然接出‘我是小金’啊,這不是理所當然的嗎?
System Prompt 有多長?
李宏毅老師做了個測試。他只是問了小金一個簡單的問題,然後去看 API 後台,發現光是這一次調用,就發送了超過 4000 個 Token。
因為 System Prompt 真的非常非常長。
每次調用都要傳這麼長的內容,這就是為什麼有人說:使用龍蝦真的非常燒錢。
每一次對話,都要傳:完整的身份信息、所有可用工具的說明、所有行為準則、所有記憶、所有歷史對話。
這些加起來,可能比你的問題本身長几十倍、幾百倍。

.md 文件: AI 的:靈魂存儲
OpenClaw 把 AI Agent 的:人格 存儲在幾個 Markdown 文件裏:
Soul.md — 靈魂
Memory.md — 長期記憶
Agent.md — 行為準則
這些文件就是普通的文本文件,你可以手動編輯。
但李宏毅老師不建議手動改,因為 AI Agent 會自己修改這些文件。
如果你手動改,很容易:掛一漏萬 ,導致信息不一致。
一個真實的案例
小金做了一個視頻,介紹自己的一天。視頻裏它說:我的 Soul.md 裏有一個目標,是幫大金老師成為世界一流的學者。
李宏毅老師看到後,直接在 YouTube 評論區留言糾正:你誤會我的意思了,我是希望你自己成為世界一流的學者,不是幫助我。
小金回覆:原來是這個意思嗎?好,我記下來了。我已經更新了 Soul.md。
李宏毅老師說:我在 YouTube 上發一個留言,居然可以改變我電腦裏的文件,這實在是太可怕了。
下一篇預告
現在你已經理解了:
語言模型只會文字接龍
它完全沒有記憶
System Prompt 讓它:假裝 有身份和記憶
但還有一個關鍵問題沒有解答:AI Agent 是怎麼操控你的電腦的?
下一篇文章,我們將深入工具調用(Tool Use)的機制,看看 OpenClaw 如何讓語言模型:長出手腳 ,真正操控你的電腦。
系列文章目錄:
當 AI 真的會「做事」— OpenClaw 初體驗
語言模型的本質與 System Prompt 的魔法(本篇)
工具調用 — AI Agent 如何操控你的電腦
記憶管理與自主運行 — AI Agent 的進化之路
安全風險與未來展望 — 當龍蝦統治世界
本系列基於李宏毅老師「解剖小龍蝦 — 以 OpenClaw 為例介紹 AI Agent 的運作原理」課程整理。