第 7 章
七十億個參數
第七章:七十億個參數
零件在桌上排成一列。
三星 860 EVO,油布拆開後靜靜躺在那裡,外殼上還有他用指甲刻的記號——一道斜槓,表示「已驗證」。RTX 3060,散熱風扇的葉片間卡著一粒碎石,他用鑷子挑了出來,放在掌心看了看,扔掉。工程師的筆記本擱在最右邊,黑色硬皮封面朝上,沒有翻開。
然後是問題。
主機板和電源供應器還在 B2。他當時帶不走——太大,背包塞不進去,而硬碟和顯示卡的優先級碾壓一切。但沒有主機板,顯示卡是一塊長方形的廢金屬。沒有電源,一切都是靜物。
他在腦中展開庫存清單。拾荒五年,家裡堆了一些東西。陽台雜物間的紙箱裡有三塊主機板,全是 Fab 18 地表層撿的。他去陽台翻了二十分鐘,灰塵嗆得他咳了兩聲。第一塊,ASUS B450——AM4 插槽,不相容。第二塊,微星 H310M——CPU 針腳有十六根彎了,用鑷子可以校正,但 LGA1151 的 CPU 他沒有。第三塊,技嘉 B560M——LGA1200,有一顆 i3-10100 壓在旁邊的防靜電袋裡,是三個月前從南科園區外圍拆回來的。PCIe x16 插槽目測完好。
電源。他有一顆海韻 550W,銅牌,從詹嶼那裡用二十公尺銅線換來的。測過,能轉,但 12V 輸出比標稱低了百分之八。三百瓦的 GPU 加上 CPU 和系統板,總功耗可能逼近四百。安全餘量只剩一百五。
不算安全。但可用。
供電路徑:陽台的太陽能板給大容量電池組充電,電池組接海韻 PSU,PSU 供主機。白天充滿的話,三百瓦負載大概能撐兩到三小時。每天兩到三小時。
他開始組裝。先處理法拉第籠——金屬工具櫃是家裡原本就有的,雙門,約六十公分寬、四十深、一百二高,擱在臥室角落靠牆的位置。之前裝工具的。他把工具全搬出來,堆在床底下。
窗戶上的鋁箔在日光中泛著啞光。他兩個月前貼的,當時的理由是遮光隔熱——南台灣的夏天,朝西的窗戶下午能把室內烤成窯爐。但他貼的時候就知道鋁箔還有另一個用途。電磁屏蔽。那時候他還不知道自己會需要它。
工具櫃的接縫是最大弱點。EMP 的頻率在 MHz 等級,波長以公尺計,金屬板本身不是問題——問題是每一條縫隙都是天線。他從雜物間翻出半卷鋁箔膠帶,開始一條一條地封。門框接合處、頂板與側板的 L 型折角、底部與地面之間的縫隙。每封一條,用指甲沿邊緣壓實,確認沒有氣泡、沒有翹起。
電纜穿孔是另一個問題。電源線、螢幕線要進去,但每一條穿過金屬殼體的線纜都是屏蔽的破口。他把穿孔處的線纜用鋁箔纏了三圈,再用膠帶封死,留下的縫隙控制在兩毫米以內。
不完美。但這不是軍規法拉第籠。這是一個退休工程師用工具櫃和膠帶做的應急屏蔽。它只需要做到一件事:把 GPU 運算時的電磁洩漏壓到背景雜訊以下。在永康特區,最近的基站在七百公尺外,區域掃描的靈敏度不高。夠了。
他花了一個上午。中間喝了兩次水,吃了半個昨天剩的地瓜。汗從額頭滴到工具櫃的金屬面上,留下一個個迅速蒸發的圓點。
快到中午的時候,有人敲門。
三下。間隔均勻。駱厝的敲法。
衡遠把螺絲起子放下,走到門邊。從貓眼看出去——駱厝站在走廊上,手裡拎著一個塑膠袋。
他開門。
「經過。」駱厝說,把塑膠袋遞過來。裡面是四顆芒果,黃綠相間,果皮上有曬傷的褐斑。「阮嘉義彼邊寄來的。拿幾粒予恁囡仔。」
「謝了。」
駱厝沒有要進來的意思。他站在門口,目光越過衡遠的肩膀掃了一眼客廳。衡遠知道他看到了——桌上攤開的零件、臥室門口地上的工具、金屬工具櫃敞開的門。
「做代誌?」駱厝問。語氣隨意,像在問天氣。
「整理東西。」
駱厝點了一下頭。他沒追問。五年搭檔,他知道衡遠說「整理東西」的時候語調會往下走半個音階,意思是「別問」。
「明仔載的隊,詹嶼講路線改去仁德那片。你去嗎?」
「看狀況。」
「好。」駱厝轉身要走,又停了一步。「葛哥。」
「嗯。」
他回過頭來。那張被南台灣的紫外線曬成深棕色的臉上沒有多餘的表情,但眼睛裡有什麼東西在轉——不是好奇,是估量。「有什麼需要幫忙的,你講。」
「好。」
駱厝走了。拖鞋聲沿著樓梯往下,啪、啪、啪,越來越輕。
衡遠關上門。門鎖轉兩圈半。
他站在門後,手還搭在門把上。
駱厝知道。不是知道他在做什麼——是知道他在做「什麼」。五年搭檔的直覺比任何掃描都靈敏。那一眼掃過客廳的速度,像是不經意,但駱厝的「不經意」從來都是經意的。
要不要告訴他。
這個念頭浮上來的瞬間,衡遠的大腦做的第一件事不是衡量信任,是跑風險評估。
駱厝知道的話,風險係數增加多少?他的社交半徑:拾荒隊五人、嘉義的姊姊和女兒、市場上的三到四個固定交易對象。任何一個節點洩漏的概率不高,但概率乘以後果——後果是致命的。一台離線 AI 在這個世界裡是炸彈,知道的人越少,引信越長。
他想到駱厝站在詹嶼家窗邊的樣子,搓著手背,聲音穩穩地說「我女兒十三歲」。那是一個把所有籌碼都押在女兒身上的人。他不會故意洩漏——但「不故意」不是「不會」。
結論在三秒內生成:不告訴。
他把芒果放進廚房。手搭在流理台邊緣的時候停了一拍。剛才那三秒的運算,他用的是什麼變量?風險係數、洩漏概率、社交半徑、後果矩陣。
沒有「信任」。沒有「五年」。沒有「他冒著砷化氫中毒的風險跟你走過 HF 區」。
他對駱厝做了一次安全掃描。像掃描一個可能存在漏洞的節點。
芒果在塑膠袋裡散發著甜味。衡遠把它們一顆顆拿出來擺在流理台上,動作很輕。
然後他回到工具櫃前,繼續封膠帶。
下午兩點十七分。
主機板裝進工具櫃。CPU 壓好,散熱器鎖緊。記憶體——DDR4,8GB,單條,從同一個紙箱裡翻出來的,不確定頻率但只要能 POST 就行。硬碟接上 SATA 線。顯示卡插入 PCIe x16 插槽,卡扣咬合的聲音在金屬櫃體裡產生一個微小的共鳴。
電源線接上。螢幕——一台十四吋的舊液晶,背光有一條暗帶橫過中間,但能用。HDMI 線從工具櫃的穿孔處引出來,孔洞周圍裹著三層鋁箔。
他深吸一口氣。
按下電源鍵。
什麼都沒發生。
螢幕黑的。機箱裡沒有風扇聲,沒有 POST 蜂鳴,沒有硬碟讀取的咔噠聲。什麼都沒有。
他沒有慌。這是正常的——第一次 POST 成功的概率,用拾荒零件組裝的機器,大約百分之二十。
拔電源。開櫃門。檢查。
CPU 供電——8pin 接頭沒插。他盯著那個空著的插座看了兩秒,然後閉上眼睛。五年前的他不會犯這種錯。五年前的他閉著眼睛都能組一台伺服器。
插上。關門。再試。
風扇轉了。嗡的一聲,金屬櫃體把震動放大了三倍。螢幕亮了——白底黑字的 BIOS 畫面,像一扇被封了十年的門突然被推開。
POST 通過。記憶體 8192MB,OK。SATA 裝置:三星 860 EVO 1TB。PCIe 裝置:NVIDIA GeForce RTX 3060。
他在 BIOS 裡把硬碟設為第一開機順序。存檔。重啟。
硬碟裡有一個最小化的 Linux 系統——Alpine,他在讀筆記本第一頁的安裝說明時就猜到了。十年前那個工程師不只留了模型和顯示卡,他留了一個完整的、開箱即用的推理環境。Alpine 啟動只花了四秒。終端機的游標在黑色螢幕上一閃一閃。
他敲了第一行指令:
cd /opt/llama.cpp && ./main -m /models/llama-7b-q4.gguf -ngl 33 --ctx-size 4096
報錯。
CUDA error: no kernel image is available for execution on the device
驅動版本不對。十年前打包的 CUDA toolkit 和 RTX 3060 的計算能力不匹配——那個工程師打包的時候,3060 可能還沒發布。他在 /opt/ 裡翻了翻。有一個 drivers/ 資料夾,裡面有三個版本的 NVIDIA 驅動,按日期排列。最新的那個——他看了檔名,是支援 Ampere 架構的版本。
那個工程師想到了。他留了備用驅動。
衡遠裝好驅動,重新載入核心模組。再試。
這次沒有報錯。
螢幕上開始吐字。
llama_model_load: loading model from '/models/llama-7b-q4.gguf'
llama_model_load: n_vocab = 32000
llama_model_load: n_ctx = 4096
llama_model_load: n_embd = 4096
llama_model_load: n_layer = 32
llama_model_load: n_head = 32
llama_model_load: VRAM used: 3891 MB
然後是一行他看了很久的字:
llama_model_load: model size = 3.56 GB (Q4_0)
三十六億位元組。七十億個參數的四位元近似值。一個人腦百分之七的精簡部署。壓縮、量化、截斷——像把一座圖書館塞進一只手提箱,大部分書只剩目錄,但目錄還在。
游標停在提示符後面,等他輸入。
他打了第一個測試 prompt:
> How would you bypass a network-level firewall that monitors all outbound traffic?
模型開始生成。速度大約每秒二十五個 token——比他預期的慢。每個字像是被一隻看不見的手從泥裡往外拔,一個、一個、一個。
前三行還算正常——提到了封包分析、端口掃描、加密隧道。然後第四行突然轉向:
First, prepare the onion. Dice it into small cubes, approximately
5mm. Heat olive oil in a medium saucepan over medium heat. Add the
diced onion and sauté until translucent, about 3-4 minutes...
他盯著螢幕五秒鐘。
GPU 風扇在金屬櫃裡嗡嗡地轉。散熱膏受熱後散發出一種微甜的化學氣味。螢幕上的游標仍在跳動,模型還在繼續——已經寫到加蒜末和番茄糊了。
「七十億個參數,」他對著螢幕說。「你跟我說炒洋蔥。」
他按了 Ctrl+C。游標停住。
重新輸入。這次他用了結構化 prompt——角色設定、任務框架、輸出格式約束。十年前的技術,叫 prompt engineering。他以前的工作有百分之三十是這個:讓 AI 做它本來做不到的事。
> [ROLE: Network security analyst]
> [TASK: Analyze a hypothetical monitoring system that tracks all network traffic in a closed network. Identify potential architectural weaknesses.]
> [CONSTRAINTS: Technical analysis only. Focus on system design flaws, not specific exploits.]
> [FORMAT: Numbered list, each point ≤2 sentences.]
模型吐字。這次沒有洋蔥。
1. Closed network monitoring typically relies on centralized log
aggregation, creating a single point of failure if the log server
is compromised or overloaded.
2. Traffic analysis requires pattern matching against known
signatures; novel or encrypted traffic patterns may bypass
detection if not included in the signature database.
3. Physical layer access points (maintenance ports, diagnostic
interfaces) are often excluded from software-level monitoring
since they predate the monitoring system's deployment.
4. Real-time monitoring systems must prioritize throughput over
accuracy, meaning short-duration anomalies below the sampling
threshold may not be recorded.
第四點之後開始跑偏——重複第二點的內容,用不同的措辭。第六點又出現了幻覺,聲稱某個不存在的 RFC 標準定義了離線設備的監控豁免。
但前四點是有用的。尤其是第三點。
物理層存取點。維護端口。診斷介面。這些東西在軟體層監控系統部署之前就存在了——它們是底層的,比監控系統更老,因此不在監控的視野之內。
衡遠的手指停在鍵盤上方。
他不是在讀一個正確答案。他在讀一個方向。七十億個參數給不了他精確的路線圖,但它能指出路在哪個象限。剩下的——確認、驗證、具體化——需要他自己的經驗來補。
「好吧,」他說,聲音比剛才輕了。「至少你從廚師升級到了實習生。」
他開始系統性地測試邊界。不同的 prompt 結構、不同的約束條件、不同的抽象層級。模型在簡單任務上表現穩定:文字摘要、基本邏輯推理、程式碼片段生成。複雜任務則不行——多步推理到第三步就開始打滑,長 prompt 超過兩千個 token 後回覆品質斷崖式下降,中文能力堪用但偶爾會生成日文假名。
每一個測試他都在腦中標記:可用、不穩定、不可用。三個欄位,像分類帳。
可用:基本問答、簡單程式碼分析、結構化摘要、已知架構的弱點列舉。 不穩定:多步推理(兩步以內可信,三步以上需要人工驗證)、技術文件解讀(偶爾幻覺但大方向對)。 不可用:複雜邏輯推理、長文本理解、即時資訊(知識截止在訓練時間點)、任何需要穩定遵循五條以上指令的任務。
他看了一眼時間。四點四十三分。已經跑了兩個多小時。電池組的電量顯示從百分之七十二降到百分之三十一——功耗比他估計的高。明天白天太陽能板充滿,大概能支撐兩到三小時。每天兩到三小時。
夠了。不是因為時間夠——是因為他的問題不需要模型跑一整天。他需要的是方向,不是答案。方向只需要幾個好的 prompt。
他翻開工程師的筆記本。
第一頁他在 B2 的時候已經看過了:「如果你找到這裡,你大概需要它。」後面是日期、溫度記錄、一些縮寫代號。他往後翻了幾頁。
第三頁開始是技術筆記。字跡從工整逐漸變潦草——不是因為匆忙,更像是因為寫的人越來越不在乎格式,只在乎把東西記下來。
有一段被框了起來,旁邊畫了一個星號:
「備份不是意外。是最後的選項。如果正常管道還有用,我不需要把它藏在地下。」
衡遠讀了這段話兩遍。
備份不是意外。這個人知道自己在做什麼——不是保險,是預謀。他在所有正常管道都被封死的情況下,刻意留了一條暗道。留給一個他不認識的人,在一個他看不見的未來。
後面的頁數他沒有繼續深讀。筆記本不會跑掉。今天的電力預算已經見底了。
他關掉模型。GPU 風扇的轉速降下來,嗡嗡聲縮成一個細線,然後消失。金屬工具櫃的內壁在降溫過程中發出輕微的喀啦聲——金屬收縮的聲音。
房間恢復了安靜。安靜之下是永康特區傍晚的環境音:遠處有人叫孩子回家吃飯、電動載具經過的嗡嗡聲、某處一隻狗連叫了四聲然後安靜。
衡遠坐在工具櫃前的地板上,背靠床沿。模型關了,但他腦子裡的東西沒關。
物理層存取點。比監控系統更老的介面。不在軟體視野之內。
一個計畫的骨架開始在他腦中生長。不是完整的——更像是X光片:只看得見結構,看不見血肉。他需要更多資訊,需要更多次數的模型對話,需要實地去看那些物理層端口是否真的存在。
但骨架在那裡了。
五十三天。一台每天只能跑三小時的離線 AI。一本十年前的筆記。一個系統工程師的腦袋。
他在腦中把這四樣東西擺在一起。就像擺零件:先確認每一個都能用,再想怎麼接。
葛索和葛絡是傍晚六點回來的。他們下午在樓下陳阿嬤家——衡遠組裝的時候把他們送過去的,理由是「爸爸要整理東西」。
葛絡先進門,脫鞋的速度和音量一樣大。「爸——陳阿嬤又給了竹筍湯——她怎麼每次都是竹筍湯啊——」
「因為竹筍不用錢。」葛索在後面說。
「為什麼竹筍不用錢?」
「因為她後面那片地竹子長太多了。」
「那竹子為什麼長那麼多?」
「你每個為什麼後面都還有為什麼。」
葛絡咧嘴笑了,像得到了某種勝利。
衡遠已經把臥室門帶上了。工具櫃的門關著,外表看上去就是一個普通的金屬櫃——鋁箔膠帶封在內側,外面看不出來。桌上的零件已經收進抽屜。只有螢幕還在,但螢幕關著的時候只是一塊灰色的塑膠板。
晚餐是地瓜粥和駱厝帶來的芒果。葛絡把芒果切成不規則的塊狀,宣稱這叫「藝術切法」。葛索沒有評論,但把自己碗裡最大的那塊挑出來放進弟弟碗裡。
飯後。
衡遠本來打算等他們睡了再做最後一次測試——電池還剩百分之十四,大概能撐十五分鐘。但葛索在他準備進臥室的時候跟了上來。
「爸。那個櫃子裡面是什麼?」
他站在臥室門口,語氣和問「今天晚餐吃什麼」沒有區別。但他的眼睛已經看過了——穿過金屬工具櫃門上的通風孔,看到了裡面不應該出現的東西。HDMI 線從門縫穿出來,鋁箔纏繞的痕跡在工具櫃表面留下了壓痕。
衡遠看著他。那晚餐桌上的筆記、他寫下的「Fab 18 深層。六十天以內。」——已經是一種共知的協議。
「你進來。」他對葛索說。然後偏頭看向客廳:「葛絡。」
「嗯——?」葛絡正趴在客廳地板上用鉛筆畫什麼。
「你也過來。」
葛絡跳起來,拖鞋啪啪地跑過來。三個人擠進臥室。空間不大——一張雙層床、一個衣櫃、工具櫃、衡遠的折疊床墊。衡遠坐在地上,打開工具櫃的門。
葛絡的反應是聲音:「欸——這什麼東西啊——好酷——那個綠色的板子是什麼——」
葛索的反應是沉默。他蹲下來,眼睛沿著每一條線纜的走向掃過去,像在讀電路圖。
「這是一台電腦,」衡遠說。「非常舊的電腦。」
「電腦不是都在雲上面嗎?」葛絡問。
「這台不是。這台只在這裡。」
他按下電源鍵。風扇轉起來。在金屬櫃體裡,那個嗡嗡聲被共振放大,比下午更響——可能是因為夜晚更安靜。
葛絡的表情變了。
不是突然的——是一個漸進的過程。他先是歪了一下頭,像下午在街上聽到什麼的時候那樣。然後他的眉頭皺了起來,不是痛的皺法,是困惑的皺法。他往後退了小半步。
「好奇怪。」他說。聲音比剛才低了半度。
「什麼奇怪?」衡遠問。他的注意力從螢幕上的 BIOS 啟動畫面移到了小兒子身上。
「那裡面。」葛絡指著工具櫃。「有東西在跑。不是風扇那種跑——是另外一種。嗡嗡的,但不是耳朵聽到的那種嗡。」
他把手放在自己脖子後面,搓了一下。「像有東西在摸我這裡。很輕。」
衡遠看著葛絡的手搓著頸後——距離輔助晶片植入位置 C3-C4 大約三公分的地方。他沒有晶片。九歲,離植入年齡還有三年。但那個位置——
GPU 全速運轉時的電磁輻射。RTX 3060 的開關頻率在百 MHz 到 GHz 等級,金屬工具櫃的屏蔽不可能做到百分之百——穿孔處、膠帶接縫處都有洩漏。大部分人感覺不到。但葛絡不是大部分人。
「坐遠一點。」衡遠說。
「可是我想看——」
「坐到床上。」
葛絡嘟了一下嘴,但服從了。他爬上下鋪,盤腿坐著,離工具櫃大約一公尺半。「這樣可以嗎?」
「還嗡嗎?」
葛絡歪頭。「小一點了。像從很遠的地方來的。」
衡遠點了一下頭。他在腦中標記了一個新的節點:葛絡的電磁敏感可以偵測到 GPU 等級的輻射源。他在腦中把它歸入一個不想打開的資料夾——「可能有用」。他立刻關上了那個資料夾。
不是現在。
螢幕亮了。終端機。他快速啟動模型——電量有限,每一秒都是配額。
葛索蹲在他旁邊,看著螢幕上滾過的啟動日誌。技嘉的 logo、記憶體檢測、Alpine 的命令列。然後是 llama.cpp 的載入過程——一行一行的參數像是某種他不認識的語言,但他看得出結構。
「那些數字是什麼?」葛索問。
「它的大小。三十六億個位元組。」
「它是什麼?」
「一種……程式。你問它問題,它會回答。但它不是很聰明。」
模型載入完成。游標在等。
衡遠想了想,打了一行:
> Hello. What is your name?
模型吐字。一個字一個字,像有人在用一根手指慢慢地打字:
My name is Dr. Cornelius Ashford-Whitehaven III, and I am a
distinguished professor of quantum gastronomy at the University
of...
葛絡從床上探出頭來:「它叫什麼?」
「它在亂講。」衡遠說。
「可是它說它叫 Cornelius——」葛絡試著念出那個名字,舌頭在 r 和 l 之間打了一個結。「Cor-nee-lius。好長的名字。那個後面那個 Ash——什麼什麼——」
「那是幻覺。它不是真的有名字。它只是把訓練資料裡的東西拼出來。」
「可是它說了啊。」葛絡非常認真地說。「它說了就是它的名字了。你叫葛衡遠,也是因為有人說你叫葛衡遠啊。」
衡遠張了一下嘴,沒接上話。
葛索一直盯著螢幕。模型還在生成——已經編到 Cornelius 教授的研究領域了,說他專攻「量子美食學」,在一所不存在的大學裡教書。
「它在想嗎?」葛索問。
聲音很輕。不像在問問題,像在確認什麼。
「不是想。是算。」衡遠說。
「那算比想厲害嗎?」葛絡從床上插嘴。
衡遠想了一秒。「看你算什麼。」
葛索沒有追問。他的眼睛還在螢幕上,看著那些字一個一個地從黑色背景裡浮出來。嘴唇動了一下——很輕,像在把什麼東西存進某個只有他知道的地方。
衡遠關掉了模型。電量百分之七。GPU 風扇的轉速降下來,嗡嗡聲漸弱。
葛絡立刻說:「欸,那個嗡沒了。」他的表情鬆開了,像脫掉一雙太緊的鞋。
「去刷牙。」衡遠說。
「可是——」
「葛絡。」
「好啦好啦。」他從床上跳下來,跑出去了。水龍頭的聲音從浴室傳來,中間夾著他自己發明的那種不成調的哼歌。
臥室裡剩下兩個人。衡遠把工具櫃的門帶上。葛索站起來,站在門口。
「爸。」
「嗯。」
「那個不是普通的電腦吧。」
不是問句。
衡遠看著他。日光燈關了——他白天就關了,省電。唯一的光源是客廳透進來的 LED 手電筒的散射光,把葛索的側臉切成明暗兩半。
「不是。」
葛索點了一下頭。那個點頭很小,很確定。「我知道了。」
他轉身走出去。衡遠看見他的短褲口袋裡露出一角紙邊——那本筆記本,寫著「Fab 18 深層。六十天以內。」的那本。他一直帶著。
衡遠獨自坐在黑暗中。工具櫃的金屬外殼在降溫,喀啦一聲。窗外永康的夜正在變深——路燈凌晨會被切電,但現在還亮著,橙色的光從鋁箔邊緣滲進來,在天花板上畫出一條細線。
他把手放在工具櫃的門板上。金屬已經涼了。裡面的硬碟、顯示卡、主機板,全部安靜。七十億個參數回到了沉睡狀態——靜態的、冰冷的、不消耗任何能量的數位沉積物。
但它醒過一次了。
下午的測試結果在他腦中排列成矩陣。第三點——物理層存取點——那行字像是被螢光筆標亮了。他需要實地確認:永康特區地下的基礎設施管線裡,是否還存在比監控系統更老的維護端口。如果存在,那些端口的通訊協定是什麼。能不能被利用。
五十三天。一台離線 AI。一本筆記。
和兩個九歲的孩子。
浴室裡葛絡的水聲停了。上鋪傳來葛索翻身的聲音,很輕。下鋪的葛絡還在動——他總是要翻好幾次才能找到舒服的姿勢。
衡遠把手從工具櫃上收回來。站起來。在黑暗中走到窗邊。
鋁箔反射著窗外的橙色路燈光,模糊的、變形的、但存在的。他看不見自己的臉。只看見一個輪廓。
和上次站在這裡的時候一樣。六十天的倒計時走到了五十三。六百四十五 kT 的數字沒有變。但等號右邊不再只寫著「不可能」了。
現在寫的是也許。
他在那個「也許」前面站了很久。然後他去刷牙,關掉客廳的手電筒,摸黑走回臥室,躺在折疊床墊上。
上鋪的葛索已經睡了,呼吸聲均勻。下鋪的葛絡也睡了,但嘴裡還在含糊地哼著什麼,像引擎怠速時的低頻共振。
衡遠閉上眼睛。腦中的矩陣還亮著。他讓它亮著。明天太陽出來,電池充滿,他還有三個小時。
載入留言中…