百葉窗外大雨滂沱,偵探事務所的檯燈泛著微黃的光芒。桌上散落著幾份剛列印出來的系統日誌,煙斗裡飄出陣陣淡雅的香氣。
我是這座數位都市的時空偵探。今晚,我們要聯手調查一起極度不尋常的懸疑案件:「智慧大副 AGY 的集體失憶迷案」。
案情是這樣的:昨晚,受害者(也就是你)與大副在黑小窗裡暢聊了一整夜,大副幫你寫好了一套極度複雜的網頁程式,甚至還親切地稱呼你的名字,記住了你所有的個人偏好。然而,當你今天早上滿懷期待地重新打開電腦、敲下 agy 指令啟動它時,大副卻用一雙無辜又陌生的眼神看著你,第一句話居然是:「你好!我是 Gemini 智慧大副,請問今天有什麼我可以幫您的?」
它把昨晚與你經歷的一切、把你寫到一半的程式碼,忘得乾乾淨淨!
這到底是怎麼一回事?大副大腦裡的記憶去哪裡了?它是不是被人秘密動了腦部手術?請拉過椅子坐下,警官,讓我們打開這卷偵探案卷,一步步還原真相!
經過本偵探在神經網路底層的深入調查,我發現了第一個震驚世人的核心事實:大語言模型(LLM)的數位大腦,在物理本質上是完全「無狀態(Stateless)」的!
什麼叫做無狀態? 這代表當雲端巨頭把一個千億參數的大模型(例如 Gemini)訓練完成、正式部署到伺服器上的那刻起,它的大腦旋鈕(神經元權重 Weight)就被徹底凍結了!它沒有人類那種可持續寫入的長期記憶器官,也不會在與你的日常對話中,自動改變它的大腦權重。
對於大腦來說,它的每一次接收訊息與回答,都是一個獨立的數學函數運算。每當你重開視窗發送一句新對話,對它來說都是生命中的「第一天」!它絕對不會自動記住你昨晚說過的話。
這就像是動漫《命運石之門》中那些沒有「Reading Steiner」能力的觀測者。一旦你關閉視窗重新開啟,大副就跳到了另一條全新的平行世界線上,記憶瞬間歸零。
那為什麼我們平時感覺 AI 好像有記憶? 偵探調查報告顯示:我們看到的「記憶」,根本不是大腦自己記住的,而是外部軟體系統在背景默默幫它「做筆記」,並在每次對話時「讀筆記」給它聽結果!
這就像是老醫生與「病歷表」的關係。老醫生一天要看幾百個病人,根本不可能記住你是誰、得了什麼病。但他手裡有一份病歷表。當你一走進診間,老醫生翻開病歷表快速瀏覽一遍,立刻就能抬起頭笑著對你說:「小明啊,你上次開的胃藥吃得怎麼樣了?」
agy 系統就是在扮演這個「幫大副翻開病歷表」的偵探助理!
transcript.jsonl 檔案的空間座標那麼,這份關鍵的病歷表檔案,在你的實體硬碟裡到底藏在什麼地方?
本偵探根據系統線索,在你的電腦中定位到了這個秘密檔案的實體座標:
C:\Users\你的用戶名\.gemini\antigravity-cli\brain\<對話 Session 唯一 ID>\transcript.jsonl
這個 .jsonl(JSON Lines)格式的檔案,就是大副的「時空對話筆記本」!
在這個檔案裡,每一行都用嚴密的結構記錄了一個歷史事件:
* 第 1 行:使用者在 14:00 發送了:「請幫我寫一個吉他節拍器。」
* 第 2 行:大腦模型在 14:01 回覆了 HTML 程式碼片段。
* 第 3 行:系統工具在 14:02 執行了檔案寫入動作。
當你輸入 agy -c 啟動時,agy 系統會像《命運石之門》裡的「電話微波爐(暫名)」一樣,在一瞬間把 transcript.jsonl 裡記載的所有歷史對話筆記,強行電訊號灌入大副的大腦中,讓大副在一秒內清醒過來:「報告船長!我已經同步了前一條世界線的記憶,程式寫到一半,請下達下一步指令!」
這時候,身為警官的你提出了第二個關鍵質疑:「偵探,既然有筆記本,那為什麼我跟大副聊了三天三夜之後,它還是開始忘記我第一天交代的重要變數名稱?」
問得好!這就牽涉到了大語言模型最核心的物理限制——「上下文窗口(Context Window)」!
為了讓所有人都能聽懂,我們用一個非常經典的「餐廳服務生與小筆記頁」來進行案情還原:
想像你來到一家高檔餐廳用餐。點餐的服務生手裡拿著一本空間非常狹小的「點餐筆記本」,這本筆記本的紙張最多只能寫下 20 道菜名。這個筆記本的實體容量,就是 Context Window(上下文窗口)!
當你和朋友一邊聊天一邊點菜,陸續點了「牛排、義大利麵、濃湯、沙拉...」等 20 道菜時,服務生老老實實地把這 20 道菜寫滿了整張筆記頁面。 這時候,如果你突然說:「請再幫我們加點一份舒芙蕾甜點!」
服務生低頭一看,筆記頁已經徹底寫滿了,沒有多餘的格子。為了解決這個問題,他不得不拿橡皮擦把最頂部、你最早點的「牛排」和「義大利麵」給擦掉,才能在最下面騰出空位寫上「舒芙蕾」。
當你吃完結帳時,服務生看著手裡的筆記本問你:「請問您今天有點牛排嗎?」 你驚訝地問他,不是剛吃完嗎?但他已經完全不記得了!因為「牛排」這兩個字,已經超出了他筆記本(Context Window)的實體範圍,被強制擦除淘汰了!
大語言模型也是一模一樣的!當你的對話內容太長,超過了它的 Context Window 上限時,舊的對話歷史就會被擠出這塊臨時黑板,大副就會開始丟三落四、忘記你之前交代的重要變數或規則!
這時候,偵探筆記本裡又記錄了兩個專業的技術謎團:
既然每次回答都要把整張黑板重新讀一遍,那大腦寫出幾千字程式碼時,速度不就慢得像蝸牛一樣? 這就必須提到大腦的高速暫存區——KV Cache(鍵值快取)!
在 Transformer 機制中,每次大副要寫下一個新單字時,原本必須把前面已經寫好的所有文字重新做一遍乘法計算。為了解決這個運算瓶頸,科學家發明了 KV Cache。 這就像是「做菜時的備料盤」。廚師在炒第一道菜時,順手把切好的洋蔥和胡蘿蔔放在旁邊的備料盤裡。等要炒第二道菜時,直接把盤子裡的洋蔥倒進鍋子,不需要每次下鍋都重新洗洋蔥、切洋蔥!這樣就大大省去了 GPU 重複計算的時間,讓大副輸出的速度流暢不停頓!
即便大副現在擁有像 Gemini 這樣高達百萬級(1M Tokens)的上下文窗口,我們怎麼知道它讀了幾十萬字後,真的有「看進去」,還是「讀了後面,忘了中間」?
在學術界,有一個非常著名的測試,叫做「大海撈針測試(Needle in a Haystack)」! 這就像是偵探把一行完全不相干的悄悄話(也就是「針」,例如:『欣梅爾最喜歡吃布丁。』),偷偷藏在一本 100 萬字的厚重案卷(也就是『乾草堆』)的正中央第 50 萬字處。接著把整本書丟給大副,問它:「請問欣梅爾最喜歡吃什麼?」
如果大副能在一瞬間,從百萬字堆裡精確抓出「布丁」兩個字,就代表它的 Context Window 沒有虛有其表的「中間丟失」隱疾,能完美掌握你大專案裡最深處的細節!
/clear 把黑板擦乾淨,開啟一個新對話,才是最明智的偵探選擇。結案時刻到了!身為這座都市的時空偵探,你現在可以掌握以下四個核心指令,像操控時空膠囊一樣管理大副的記憶:
agy -c 或 agy --continue)
當你重新打開 PowerShell,輸入這個指令啟動,大副會自動去尋找你本地硬碟中時間最新的一個 transcript.jsonl 檔案並加載它,直接帶你回到上一次對話中斷的最後一秒!/resume)
如果你同時在寫網頁和查資料,你不希望他們的對話歷史混在一起。你可以直接在對話中輸入 /resume,畫面會列出所有的歷史對話存檔與時間。你用上下鍵選中想回去的任務,按 Enter 就能穿越回那個特定的存檔點!/clear)
如果你覺得目前的對話被你問得太亂了,AI 大腦開始有些語無倫次,你可以輸入 /clear 把目前存檔封存,開啟一個全新、乾淨的對話,讓大腦恢復專注力。/logout)
如果你在公用電腦上使用,用完請務必輸入 /logout 以洗掉本地的金鑰與對話快取,防止隱私外洩。警官,讓我們對今晚的失憶迷案進行最後的結案審訊:
agy(不加任何參數)啟動時,它會記得你叫小明嗎?agy -c 讓系統自動加載 transcript.jsonl 病歷表,大副才能恢復記憶!.gemini/antigravity-cli/brain/ 中!這極大地保護了你的私有數據安全!迷案已經徹底水落石出!我們了解了 AI 記憶體的物理結構與時空恢復密碼。
但是,大副的這個數位大腦到底是由什麼構成的?新聞上常說的「Token 分詞」、「Transformer 矩陣」、「參數」與「微調」究竟是怎麼一回事?
下一堂課,讓我們拿起手術刀,直接剖析大語言模型的大腦構造!
👉 下一堂課:Lecture 02.5 上下文保潔學:防範 Context Drift(離題漂移)、大腦記憶截斷與動態摘要工程 👉 下一堂課:Lecture 03 字母湯與百億旋鈕迷宮:大語言模型(LLM)的物理長相、Token 與微調密碼 👉 回課程大綱:學習地圖
以下題目專為尋求真正硬核觀念與專家級實戰能力的學員設計。題目無法從講義表面抄寫解答,請嘗試獨立思考後再點擊展開解析。
【實戰情境問題】:在對話長度達到 128k Token 的長上下文場景中,為什麼即使模型標榜支援超大 Context,在對話中段(30%~70% 位置)插入關鍵指令時,模型依然容易出現「視而不見」的現象(Lost in the Middle)?這與 Transformer 自注意力機率稀釋有何關係?
【鑑別點說明】:測試學員是否明白長上下文視窗(Long Context Window)的「物理容量」並不等於「注意力涵蓋率 (Attention Coverage)」。
【專家級解答與深度剖析】: 在 Softmax Attention 運算中,注意力權重總和必須歸一化為 1.0。當上下文 Token 數量暴增至數萬字時,每個 Token 分到的 Attention Score 會被嚴重稀釋(Diluted)。此外,預訓練資料中絕大多數的重要資訊都出現在文章的開頭與結尾,這導致模型的位置偏置 (Positional Bias) 天然傾向於關注頭尾。工程上的解法包含:1. 將關鍵約束置於 Prompt 最底部;2. 透過 RAG 將關聯段落精準提取至尾部焦點區。
【實戰情境問題】:當我們使用 `agy -c` 恢復昨天的對話視窗時,從作業系統與 API 角度來看,昨天的 KV Cache 是否依然保存在雲端伺服器的 RAM 中?當你輸入第一句新問題時,API 經歷了什麼快取命中 (Cache Hit) 與快取未命中 (Cache Miss) 的過程?
【鑑別點說明】:深剖 LLM API 後台對 Session 歷史紀錄的快取處理機制。
【專家級解答與深度剖析】: 雲端 API 伺服器不可能無限期為離線使用者保留昂貴的 GPU 顯存 KV Cache。當視窗關閉一段時間後,顯存快取會被回收。使用 `agy -c` 恢復時,CLI 實際上是將歷史 `transcript` 文字重新打包發送。若雲端支援 Context Caching(且 Prefix 哈希匹配),伺服器能從 SSD 快速載入 Prefix 快取(Cache Hit);否則伺服器必須重新執行一次全量的 Prefill Phase 矩陣運算,產生第一次首字發聲(TTFT, Time to First Token)延遲。