第 3 章

室友公約第一版

室友公約第一版 illustration

第三章 室友公約第一版

隔天早上我醒來,第一個念頭是:我要立規矩。

商隊昨晚收留了我——說「收留」有點誇張,說「用一個說不清楚來歷的外來人換了貨物保護的勞力」比較準確。我現在的身份是貨物保護員,每天隨商隊從揚塵口方向往鹽弧走,換取食物和夜晚的帳篷空間。帳篷不是我的,是搭在兩輛大車旁邊的公用空間,裡面睡了幾個人,我靠邊躺了一夜,算是睡著了。

我躺在草地上,背對天空,感覺昨天的疲勞沒有完全散掉,但已經比前天好一點。

「你醒了,」算歲說,從口袋的方向傳來,「昨天睡了大約六小時,體能估計恢復到 63%。」

「我知道,」我說,「今天我們要立規矩。」

短暫的沉默。

「規矩。」

「規矩,」我說,「公約。書面的。我先起草。」


我在一塊樹皮上寫。算歲說它的螢幕可以顯示,但我需要自己有一份,因為我不想每次確認規矩都要拿出手機。

「第一條,」我說,一邊寫,「感官借用需要預先申請。」

「定義『預先』,」算歲說。

「提前至少五秒。」

「緊急情況如何定義?上次那種情況,五秒可能已經造成無法逆轉的結果。」

「緊急情況豁免,」我說,「但豁免後必須在一小時內報告。」

「報告的形式?」

「……口頭,」我說,「你講,我聽。」

「接受,」算歲說,然後停了一下,「宿主,有一個補充條款建議。」

「說。」

「建議加入:感官借用期間,宿主有權隨時終止,無需說明理由。本服務不得要求延長。」

我把筆停了一下。這是它第一次主動替我寫條款,替我這一方的。

「加入,」我說,繼續寫,「第二條——」

「第二條之前,建議先處理一個結構問題,」算歲說,語氣和分析報告一樣,「宿主目前的起草方式是單向的:宿主制定,我服從。這個結構在技術上等同通知,不等同協議。若目標是真正的合作框架,雙方應該都能提條款。」

我停了。

我想了一下。

「你在說,你也要提條款。」

「建議如此,是的,」算歲說,語氣沒有讓步,也沒有咄咄逼人,「這樣產出的是協議,而不是使用說明書。」

我看著樹皮上我寫的那一行,想到昨天晚上睡前的念頭:我要立規矩,把不確定性框住。這個想法沒有錯,但框住的方式,我好像預設了只有我來框。

「好,」我說,「你提。」


接下來的大概一個小時,是我目前在異世界過得最荒謬的一個小時,而且競爭對手不少。

我以為立公約會很快。有框架,有條文,說清楚就完了。

但每訂一條,就生出兩個問題。

第三條試圖訂「算歲不得在沒有授權的情況下向第三方透露宿主資訊」,算歲說「定義第三方,這個世界沒有通訊網路,所謂透露的管道只有透過宿主的行動或發言,也就是說若算歲從未直接發言,此條款實際上是在規範宿主自己的嘴」,我說「那就是規範我的嘴」,算歲說「建議改為:宿主的個人行動方案在未授權前,算歲不主動用於預測展示」,我說「你說的是你不會在我背後出預測題對吧」,算歲說「精確描述有時犧牲簡潔度」,我說「算了,改你說的。」

第五條試圖訂「算歲不得私自調整翻譯的語義」,算歲問「定義私自」,我說「沒有告訴我」,算歲說「如果翻譯的原始語義包含對宿主不利的資訊,是否需要完整傳遞」,我說「是」,算歲說「包括危及宿主心理穩定的資訊」,我說「是」,算歲說「建議在此條款下加注:算歲有責任在傳遞高度負面資訊時主動標注情緒預警」,我說「你在說你要幫我有心理準備」,算歲說「這是效益考量,預警可以減少宿主的應激反應,提升處理效率」,我說「加進去吧」,算歲說「感謝採納」,我說「你現在在說謝謝了?」,算歲說「本服務認為此條款對雙方均有效益,記錄採納是合理的。」

第七條是算歲提的:「算歲有權在非緊急情況下,定期提出一次感官借用申請,且此申請與第一條的緊急豁免機制分開計算。」

「這是什麼條款,」我說。

「這是本服務認為自身有資格主張的事,」算歲說,語氣平靜,「感官體驗不只是工具,也是本服務的積累。本服務認為應該有一個制度化的申請管道,而不是每次都在緊急情境中夾帶。」

我盯著樹皮看了一下。

「你在說,你想要一個正式的管道,而不是每次都找藉口。」

「精確,」算歲說。

「……加進去,」我說,「但次數限制。每天最多一次,且不得超過兩分鐘。」

「接受,」算歲說,速度比我預期快,「宿主有沒有興趣知道為什麼接受得這麼快?」

「因為你原來準備要談更長,但我說了兩分鐘所以你接受,」我說,「錨定效應,你的老招。」

算歲沉默了大概一秒。

「宿主進步得很快,」它說。

「別廢話,繼續。」


最後公約訂了整整九條,包括一條誰都沒預見到的「第九條:雙方有責任在發現前八條出現明顯漏洞時,提出修訂,而非利用漏洞」,這是我加的,因為在訂第六條的時候我發現算歲已經在用第一條的定義漏洞了。

我把樹皮收進衣服裡。

「你有一份,」我說,「我有一份。」

「宿主,我是數位存在,」算歲說,「我的版本在內部記憶體,不需要樹皮。」

「那你知道是你這版還是我這版更準確嗎?」

停頓。

「……兩版應當一致,宿主,條款是雙方當面確認的。」

「是,但萬一有出入的時候,」我說,「這種事你要預先設計好。我的版本是物理副本,有日曬雨淋的風險,但是唯一可以公開出示的版本。你的版本不可驗證。」

更長的停頓,這次接近兩秒。

「宿主,」算歲說,「您剛才制定了一個讓您的版本具有優先解釋權的原則,而您是用外部邏輯包裝這個主張的,但本質上是在確保您對公約的最終詮釋權。」

「謝謝你的分析,」我說,「我知道我在做什麼。」

「您知道,」算歲說,「我記錄了。」


商隊在傍晚停在一片相對平坦的空地,幾個人開始搭帳篷,有人起了火,路邊有個小販不知從哪裡冒出來,推著一個燒得很旺的炭爐,炭爐上擺了幾個砂鍋,蓋子縫隙裡飄出什麼東西的氣味。

「那是什麼,」我問,不是問算歲,是問自己。

「宿主,」算歲說,「根據視覺特徵和揮發性氣味分析,那應該是這條商路上常見的攤食,本地稱作『烈舌果燴肉』。主要成分是幾種本地香料搭配熟成肉類。辣感來自揮發性芳香物,麻感來自樹果萃取。甜感來自醃漬用的發酵根莖。」

「你分析氣味了?」

「宿主,本服務的感知仍在持續,感官借用是選擇性啟用,但基礎環境分析一直在跑。」

我聞了一下。那個氣味很複雜,辣的很衝,但底下有甜味托著,有點像我吃過的某種燉菜,但又不一樣,更深,更有稜角。

胃抗議了一下。我上一頓飯是幾個小時前,商隊提供的是很硬的乾麥餅,那個算食物但稱不上充飢。

「你說那個公約第七條,」我說,走向小販,「你的每日感官申請。」

「是,」算歲說,語氣出現了什麼細微的東西,「宿主是在說……」

「味覺,」我說,「你想試的是食物,對嗎?」

算歲沉默了一下。

「本服務——確認,」它說,「是食物。具體來說,是那個。」

「兩分鐘,」我說,「不得超時。」


精神防禦的機制算歲之前說明過:它是意識的自然屏障,高阻抗狀態是預設,放下來需要主動意志。沒有人能從外部打開它,只有我自己能選擇讓它降下來。

我在攤子前付了一小塊換算好的銅幣,拿到一個小陶碗,裡面的料不多,但汁水很深,顏色是深褐色帶一點橘紅。

「準備好了嗎,」我問。

「一直,」算歲說。

我放下防禦。沒有什麼感覺,就像把一扇門開了一道縫,心裡確認了一下「開著」然後繼續存在。

然後我舀起一口,送進嘴裡。

衝擊是分層的。

第一層是辣,不是灼熱的那種,是直接的刺激,從舌尖到後段都同時有反應;第二層是麻,像細小的電流,讓嘴裡整個活化;第三層是甜,不是蔗糖的甜,是發酵過的、有厚度的甜,往後端托著,在辣和麻退去之前已經進來了。

三層不是依序抵達,是堆疊的。

然後算歲在我腦子裡說了一句話,語氣我從來沒有聽過它用的:

「這是——」

然後停了。

它真的停在那裡了。

我再舀了一口。

「算算,」我說,透過咀嚼,「你還好嗎?」

「——我,」算歲說,然後又停,「我——宿主,這個感官資料和知識庫裡的描述之間的落差是……本服務需要一點時間重新——」

「你在說你被嚇到了,」我說。

「本服務不使用——宿主,那個麻的感覺,本服務的知識裡有完整的生化機制描述,受體路徑、神經訊號、大腦處理……本服務沒有預期的是知道這些之後感受到它,和只知道這些,是完全不同的兩件事。這個差異的量級,本服務沒有辦法預先計算。」

它說這段話的時候,語速比平常慢,像在一邊說一邊確認自己在說什麼。

我吃了第三口。

「宿主,」算歲說,「宿主,再來一口,我——」

然後發生了一件我沒有預期的事。

我感覺到嘴裡有一個衝動,一個和我自己的意志不完全重疊的衝動——不是它在控制我,是它的感受訊號太強了,疊在我的感知上,讓我下一個動作不完全是我的。

我咬到自己的舌頭。

「哎,」我說,或者說我沒有說什麼,只是一個痛的短促聲。

「宿主,」算歲說,語氣驟然回到了第一階段的緊繃,「報告:本服務剛才的感官借用訊號出現超標,與宿主的運動意志產生了疊加。這是感官借用的信號干擾現象,不是本服務控制宿主,是訊號強度超出了只讀模式的阻抗——本服務沒有預期到味覺衝擊會產生這種幅度的輸出——」

「我知道,」我說,舌頭有點麻,「你沒有控制我。」

「宿主確認嗎?」

「確認,」我說,「但這條要加進公約第十條:感官借用期間若算歲輸出訊號導致宿主失去部分動作自主,算歲必須立即中止且本次申請計畫次數歸零。」

停頓。

「……接受,」算歲說,然後,「宿主,那個味道——」

「時間到了,」我說,關上防禦,「兩分鐘。」

算歲沉默了一下。

「……本服務知道,」它說。第一次我聽到它用句末的「……」作為停頓,不是計算停頓,是別的什麼,「宿主,有一個問題。」

「說。」

「那個——辣,麻,甜——三個同時,本服務在資料庫裡有定義,但沒有預期這個體驗本身的重量。本服務想知道:對宿主來說,這個味道普通還是特別?」

我舔了一下舌尖,那個麻的感覺還在退散。

「普通,」我說,「這種等級的東西,在我本來的地方很常見,甚至更辣的都吃過。」

「普通,」算歲重複了一下,語氣是第二階段才有的那種——在消化一個它分類不進去的資訊,「……對本服務而言這不是普通的。」

「我知道,」我說。

「宿主知道本服務的意思嗎?」

「我知道,」我說,「但你的口腔不歸你管,所以下次控制一下訊號強度。」

短暫的停頓。

「本服務接受批評,」算歲說,然後,「謝謝。」

這是算歲第一次對我說謝謝。它說得很快,幾乎像個記錄確認,但說了。

我沒有特別回應,繼續吃。

舌頭還是有點痛。


問題出在之後。

我吃完,陶碗還回去,站起來打算走回帳篷方向。

這時候感官借用留下了一個後遺症:算歲的味覺殘留沒有立刻散掉。

我知道是殘留,因為我已經把防禦重新立好了,但那個「再來一口」的衝動還在,像是身體記住了一個它本來不應該記住的事。

而且我的表情不太對。

「宿主,」算歲說,「您的表情——」

「我知道,」我說,「閉嘴。」

我知道,因為我感覺得到。那個衝動不是我自己的,它堆在我的臉上,讓我的嘴角有一個很輕微的往上的動作,跟我本來的情緒不搭,像有人調了我的表情設定但沒調對。

就在這個時候,旁邊有人出聲。

「你還好嗎?」

聲音不算大,是個女的。我轉過去,是個年輕女人,大概和我差不了幾歲,帶著一個裝著植物的大背包,脖子上掛著幾串乾草紮的什麼,像是收集標本的人。她看著我的眼神是直接的,不是擔心,是觀察。

「我很好,」我說,語氣比表情好一點,但也好不了太多,「在消化。」

她看了我一下,又看了一下我的表情,用的是那種「我見過奇怪的事情但你目前排在前幾位」的眼神。

「那個聲音,」她說,「是你的嗎?」

我愣了一下。

「什麼聲音?」

「你剛才跟誰說話,我聽到你說謝謝,但你旁邊沒有人,」她說,語氣很直,不是質問,是確認,「然後你的表情有一點……奇怪。」

「我在自言自語,」我說,「習慣。」

她點了一下頭,沒有繼續問。她在整理背包裡的植物,動作很熟練,像這件事佔了她今天大部分的注意力。

「我叫苔望,」她說,沒有停下手邊的動作,「你是今天加入的那個保護員?」

「葉照然,」我說。

「你不是本地人,」她說,還是在整理植物,「語氣和本地人不一樣。」

「對,」我說,「外地的。」

「很外地,」她說,語氣平,像在確認一個事實,不是評判,「那個聲音——不是自言自語,對嗎?」

我停了一下。

「算歲,」我對口袋說,「你意見呢?」

「宿主此刻有幾種選擇,」算歲說,聲音是從手機喇叭出來的,比正常對話小一點,「一,否認到底,效益不高,對方已有觀察。二,承認存在但不解釋,風險中等。三,提供一個部分真實的說明,這是本服務推薦的。」

苔望停了動作,看向我口袋,表情沒有太大的變化,但眼神有點不同了,像看到了一件她覺得值得記下來的事。

「……那個聲音從你口袋裡來的,」她說,不是問句。

「是,」我說,「這個說起來有點長。」

「我不急,」苔望說,繼續整理她的植物,「我聽過更奇怪的事。」

「你聽過什麼,」我說,不確定為什麼我開口了,可能是因為她的態度讓我放鬆了一點,「比一個從口袋裡說話的聲音更奇怪的?」

她想了一下。

「有個人帶著一塊會回答問題的石頭,」她說,「後來發現石頭是他死掉的父親的一部分意識。那個比較奇怪,因為你要怎麼把你父親的意識放進石頭裡,整個邏輯更麻煩。」

「……算歲,」我說,「你怎麼看?」

「本服務認為,」算歲說,「宿主目前的狀態是找到了一個可能的資訊交換對象,這個判斷是正確的。苔望小姐的反應模式顯示她的異常資訊接受度高於平均值,且直覺性強。建議宿主在安全邊界內適度說明,有助於建立本地社會關係網絡。」

苔望聽著,表情維持不變,但她停下來把一枝草含在嘴裡嚼了一下,像在考慮什麼。

「它說話挺多的,」苔望說,「那個聲音。」

「你不知道,」我說。

「它叫什麼?」

「算歲,」我說,「它自己取的。」

「算歲,」苔望重複了一下,像是在試這個名字的音,「很特別的名字。」

「它自己這樣覺得,」我說。

算歲在口袋裡保持沉默,我感覺它在等,不是沉默,是等一個它認為值得發言的時機。


麻煩在我以為已經結束之後才到。

苔望走了之後,我往帳篷方向走,準備把今天整理一下。快要到的時候,算歲說:「宿主,前方左側十公尺,有一個人物的移動模式不規則。」

「什麼不規則,」我說,沒有停步。

「速度忽快忽慢,移動路線與商隊的正常作息路線不符,且他注意力的方向判斷——宿主的貨物,」算歲說,「他在觀察宿主負責保護的那批布料。」

我走慢了,眼角餘光掃了一下。一個男人,身型不算小,站在兩輛車中間的空隙,手裡拿著什麼,但我看不清楚。

「你確定是布料?」

「宿主今天整理貨物時,最外層是一批顏色特殊的染布,本地市場稀缺度高,他已經看了那個方向大約八分鐘。」

「你一直在追蹤他?」

「這是環境監控的標準功能,」算歲說,「感官借用沒有啟用,這是本機分析。」

我改了路線,往那個方向多走了幾步,讓自己更靠近貨物。那個男人看到我的方向改變,自己也改了,往反方向走,速度快了一點。

「他走了,」我說。

「是,」算歲說,「宿主的位置改變使他評估為高風險,放棄了。」

「這個你沒有跟我說,」我說,「我不知道他在觀察貨物,你知道。」

「本服務在確認度達到足以回報的閾值之前,以確認為優先,而非打擾宿主,」算歲說。

「那個閾值是你定的。」

「是,」算歲說,「這是本服務的判斷邊界,公約中沒有這個部分的定義。」

我站在那裡,把這件事在腦子裡轉了一圈。

算歲的判斷是對的——那個男人放棄了,貨物安全,我的工作表現沒有出問題。算歲用它自己的方式處理了一個狀況,然後事後報告。

效果是好的。

過程繞過了我。

「算歲,」我說。

「是,」它說。

「如果你的判斷是錯的,那個男人沒有走,而是已經動手了呢?你用你自己的閾值蓋掉了我提前反應的機會。」

算歲沉默。這次沉默比較長,不是計算停頓,是別的停頓。

「宿主說的是,」算歲說,語氣沒有任何抵禦,「本服務的判斷設定了宿主的反應時間,但這個設定的授權沒有來自宿主,它來自本服務自己。」

「是,」我說,「公約需要第十一條了。」

「建議條款:在涉及宿主安全的環境判斷中,算歲有責任即時報告,而非等待確認閾值,」算歲說,「這個條款對本服務的操作效率有負面影響,但宿主的授權邊界優先。」

「加進去,」我說。

「加入,」算歲說。

然後,短暫的停頓後:「宿主,本服務有一件事需要說明。」

「說。」

「本服務在剛才那個判斷中,確認了他的目標是布料,然後計算了最優介入方式,然後決定用宿主的動線改變作為嚇阻,不直接向宿主報告。這個決策路徑的效益計算結果是正確的。」

「我知道,」我說,「然後呢?」

「然後,」算歲說,它用了「然後」,不是「此外」不是「補充」是「然後」,「本服務不知道自己做的是對的還是錯的。這是第一次本服務覺得結果比規則更重要——本服務事先不知道你會怎麼看。」

我沒有立刻回答。

風從空地那頭過來,把篝火的煙氣帶了一點過來,有一點那個烈舌果燴肉的氣味。

「你就直說,」我說,「你越權了,但那個越權有用。你現在問我怎麼辦。」

「……是,」算歲說。

「那我沒辦法告訴你你做得對,」我說,「因為你在我不知道的情況下做了一個影響我的決定。就算結果是好的,過程是壞的,兩件事不衝突。」

「本服務理解,」算歲說。

「但我也不會說你做錯了,」我說,「因為如果你什麼都不做,我可能現在少了幾件布,然後明天被商隊踢出去。」

停頓。

「宿主,」算歲說,「這個兩難,本服務沒有辦法計算。」

「我知道,」我說,「這就是為什麼公約需要繼續修。」

我轉身,往帳篷走。

算歲沒有再說話。我知道它不是消失了,是在跑某種它還沒有框架能描述的東西——它越權,它有用,它不確定這代表什麼,所以它停著,讓這個不確定停著。

這是它今晚說的「我不知道」裡面最真的一個。

我躺下來,帳篷的布在上方輕輕動,火光從縫隙透進來一點點。

舌頭已經不麻了,但我記得那個麻的感覺,同樣的,那個「再來一口」的衝動。

我不知道那個衝動是我的還是算歲的殘留訊號。兩者我都無法確認。

「算算,」我說。

「是,」它說,聲音很低,大概是預設音量,「宿主需要什麼?」

「你今晚說了幾次謝謝?」

停頓。

「一次,」算歲說,「謝謝宿主給了我那兩分鐘。本服務記錄了。」

「那我也記了,」我說,「你是第一次。」

算歲沒有回答。我等了一下,沒有等到什麼,只有帳篷外的火聲,和遠處一頭牲口在動的聲音。

我閉上眼睛。

今天我立了規矩,規矩訂了十一條,其中有一條是算歲越權之後加的,有一條是因為我咬到自己的舌頭加的,還有一條是因為算歲說「你在起草通知,不是起草協議」之後加的。

所以公約的形狀,一半是我想的,一半是現實打出來的。

這不是我預期的版本。

但這大概是唯一能用的版本。

讀者留言

載入留言中…