Actions

Work Header

Rating:
Archive Warning:
Category:
Fandom:
Relationship:
Characters:
Language:
中文-普通话 國語
Stats:
Published:
2025-04-19
Words:
10,465
Chapters:
1/1
Comments:
5
Kudos:
30
Bookmarks:
1
Hits:
408

【里漢】佐耶博士

Summary:

里維試著抓住漢吉留下的一點殘響,也在清晨之時學會和它告別。

Notes:

現代paro
資訊工程師里維 × 資工系學生漢吉
專業方面可能很多bug(對不起)
某種意義上的Normal End
適合什麼都可以接受的人閱讀

(See the end of the work for more notes.)

Work Text:

  橋上的車燈拖曳著它們的影子,夜色如流。

  里維從夢中醒來時,感覺自己的肩膀像是被什麼東西壓著。他出於本能而迅速翻身,卻聽見一聲清脆的碎響。床頭櫃的玻璃水杯翻倒了,剩下的水灑在未收拾的便當盒旁,他皺起眉,低聲咒罵了一句,像是終於受夠了自己這副模樣。

  他撐起身,徒手撿起碎片,沒讓指尖碰到尖銳的邊緣,然後他站起身,打開廚房的抽屜,拿出一塊乾淨如新的舊抹布,機械地擦拭地板上的水漬,將紙便當盒洗凈,丟進廚房的大垃圾桶裡。

  這些動作他做過太多次,像是一套深植入肌肉記憶的流程,只要清醒,他的身體便會自動執行。

  收拾完畢,他沒有立刻回到床邊,而是走到客廳,坐在灰色布面的單人沙發上。

  窗簾沒拉,橋上的燈光在他眼裡亮得有些模糊。

  他打開筆電,登入他每日兩次例行檢查的信箱,信箱一如往常地混沌,來自不同時區的郵件堆積在視窗內——工作進度確認、Debug 回報、線上會議記錄,彷彿世界不曾因誰的夜晚而停擺。

  正當他準備點開第一封未讀郵件時,右下角彈出一個熟悉的通知窗口——

  佐耶博士 的來電

  他愣了一秒,下意識地整理起已經很平整的上衣,然後接通電話。

  熟悉的臉出現在螢幕中央。漢吉穿著一件過大的帽T,頭髮紮成一個歪七扭八的馬尾,身後是一間擺滿厚重書籍的圖書館自習室。

  「猜猜我今天在圖書館遇到誰?」她一開口便語速飛快,眼睛亮得像他早晨剛擦過的玻璃。

  里維揚起眉頭,沒有出聲。

  她也沒打算等他回答:「那個講課像念經一樣,從來不笑的教授。我跟他提起我在做的題目,他竟然說研究架構很清晰!問我有沒有考慮讀研究所!」

  她一邊說,一邊從旁邊的書堆中抽出一張筆記,展示給鏡頭看。字跡潦草,卻密密麻麻地記滿了推論和註釋。

  「你有在聽吧?」她停下喝水的時候,突然說。

  「嗯。」里維說,語氣平淡,「把桌上的檯燈調整一下吧,你那裡太暗了,眼睛會壞掉。」

  漢吉撇撇嘴,沒有聽他的話。

  她繼續說著她在圖書館翻的書、她對大型語言模型的迷戀、她那天從樓梯上差點摔下來卻成功接住筆電的驚險場景。里維偶爾點頭、回「嗯」,更多時候只是靜靜看著螢幕。一言不發就是對她最好的尊重。

  通話持續了一個小時,話題從研究所申請到哪家超商的咖哩飯變好吃了。最後,她揉揉眼睛,小聲:「啊,又兩點了。我今天應該不會睡太久,明天還有期中考……」

  「快回宿舍吧。」他說。

  「欸——你在趕我走嗎?好傷心啊。」螢幕上的她故作沮喪的大聲叫嚷,隨即又放鬆下來,「開玩笑的,那就先這樣喔。」

  「晚安,里維。」說完,影像一閃,通話結束。

  客廳重新陷入寂靜,只有外頭偶爾傳來時近時遠的車聲。里維關上筆電,起身走進書房,打開桌上型電腦,停頓好一陣子,又關上它,然後在夜裡等待天亮。

 

×

 

  記憶的開端是習以為常的存在。

  濕熱的空氣黏附在路邊野草之間,風像忘記了自己的方向,在腳踝處打轉。里維從巷口經過時,聽見遠方傳來單車鈴聲,一聲又一聲,像誰在循環一段聽不清的招呼。

  小學六年級的他回頭,小他兩歲的她拉著一台小單車,就這樣站在那裡。

  那天街道剛鋪完新的水泥,初次見面的兩人站在半乾的地面上用石頭畫跳格子,她說這種隨時會陷下去的感覺才有「在刀尖上奔跑」的感覺。他沒答話,只是繼續在馬路上畫出下一格,然後默默留了一塊空位給她跳過來。

  那天結束後,里維的鞋底沾滿了水泥,他卻沒有一聲抱怨,只是希望這樣的時間可以再長一點、再久一點。

 

  他國三畢業前,剛入學的她留起馬尾,總是把水壺塞進書包外袋,走路時咕嚕咕嚕地晃動。他走在她左側半步,幾乎不曾主動開口,但她話太多,總能自顧自地把空氣填滿。

  她會把生物課本的昆蟲畫滿笑臉,化學實驗中偷偷多加一滴試劑——她總是得意洋洋地和自己分享這些事情——也在每次段考之後橫跨半個校園跑到三年級的教室說:「這次我考全年級第四名,很快就要追上你了。」

  他嘴角動了動,但沒說話。

 

  高中三年的生活在城市邊緣到市中心的通勤之中度過,此後里維對漢吉的記憶僅止於高中最後一年出現在同期程式競賽獲獎名單上的名字,沒有更多了。

  直到她考上和自己同一所大學的資工系之後,他們才重新變得熟悉起來。

  「好巧喔,我都不知道你也讀這裡。」她在他擔任助教的專題課後說道。雖然大一根本就不應該出現在這堂課上,但里維選擇裝作聽不出她言辭的真偽,狀似不經意地隨口打發了她。

  彼時他已經開始以「Levi」的名義四處接案,做UI/UX,也寫後端,偶爾為校內某個偏鄉教育計畫開發系統,閒暇時候帶一帶學弟妹的專題自然不在話下。

  但漢吉不一樣,她寫的程式還不成熟(架構不錯,不過程式碼常出問題),卻從來不讓他擔心,從來不向他求救,哪怕她八成知道他根本不會拒絕。

  期末期間,她每日困在自己的程式裡熬夜debug,然後在圖書館睡著。有一次,里維正好交出一份困擾許久的案子,從自習室離開時看見她正趴著呼呼大睡,口水流到桌子上的樣子,不知怎的讓同樣疲憊的他忍不住笑出來。

  「怎麼還是坐第五排,插座不是壞了嗎?」他留下一張便條紙,字寫得比平時輕,像怕吵醒她。

  她醒來後傳訊息給他:「還沒修好,但我就喜歡坐這裡,你有時候真的很嘮叨!」

 

  等她升到大三,他已經從學校畢業,續租了以前住的套房,生活除了不再時常出現在學校以外沒有什麼變化,他繼續過著以接案為生的日子,偶爾上健身房運動。

  學區的房子租金不便宜,條件也算不上太好,選擇繼續住在這裡,只是因為她時常借用他那套為了跑大型語言模型運算而購置的高規格桌機。她窩在他書房寫程式,邊寫邊把餅乾屑灑滿整桌,而他總是一邊清理,一邊假裝沒看見她那張「我就待在這裡不走了喔」的臉。

  他們從來沒有正式討論過交往這件事,但她的牙刷放在他家浴室,他的外套掛在她宿舍門後,還有她那件縮水的毛衣摺得整整齊齊地塞在他的抽屜裡,最上層的那個,那層他向來只放襪子。

  他們也從未擁抱過彼此,像情人那樣,但他偶爾在她慣常停留的位置寫下待辦事項,用吸引她目光的奇形怪狀便條紙提醒她吃飯、寫作業、交簡報,而她從來沒有把那些便條紙撕下來過。

  這大概就是最適合他們的方式了。

  他們像同一個軟體中的兩套模組,各自維持邏輯的獨立性,卻又在某些條件下共享變數,一點也不浪漫,但運作起來出奇穩定。

 

  他還記得那是分外潮濕的一天,帕拉迪罕見地下了場大雨。

  漢吉剛洗完澡,邊擦乾頭髮邊說她在考慮延畢一年去馬雷交換,或者申請那邊的研究所,語氣不算認真,只是小聲嘀咕:「我也不想這麼快去面對現實世界啊……唉,出社會好難!」

  那時他正在更新自己在Github上共享資源的最新版本,回了句:「……你不早就是在名為現實世界的伺服器當中運行的一套程式碼了嗎?」

  她笑了一下,「你什麼時候開始講這些像……哲學系的話了?」

  「學你的。」里維說。

  不過過幾天她又提了一次,這回是在便利商店結帳的時候,她攬著他的脖子晃了晃。

  「里維,你覺得啊,如果我去國外念書,同學會覺得我很難相處嗎?」

  他瞥了她一眼,把找零放進零錢包,按照幣值一格一格放好,「你本來就很難相處。」

  她只是輕輕捏了一下他的後頸,沒再說什麼。

  自此之後,漢吉沒再跟他提起升學的事,他也沒主動問過。

  不過,他知道她已經開始著手準備申請資料。他不只一次在她的筆電上看到開著的交換申請表、學習計畫模板,語句還是破碎的,像她寫程式那樣,邏輯清楚,語言卻不夠精練。

  有時她會問他一些問題:「你覺得我之前那個語言模型的訓練機制會被當成面試的重點嗎?」

  「會。」他回答得總是簡潔。

  她回以一聲「呀呼」,接著又低頭繼續敲鍵盤。

  里維知道她的能力,也知道她不會留在這個地方太久。但他沒有說出任何類似「別走」的話。

  因為他也處在快速變動的邊緣。

  前陣子,他剛接下第一份外商遠端專案,時間彈性,收入高,也代表要負擔的責任更重。他開始晚上工作、白天休息,行程表塞得比平常密,電腦螢幕上掛著的行事曆滿滿一週,除了睡覺以外幾乎沒有空白,作息與她幾乎錯開。

  後來他甚至收到來自外商的正職職缺邀請,但他遲遲沒有回應。

  漢吉偶爾還是會來。有時在他忙著開會時,她就縮在懶骨頭上寫報告、讀論文,有一次直到凌晨三點還不願意離開,索性在他的床上睡著了。

  他走進房間,看到這樣久違的畫面,愣了很久,像是有人突然掐住他的脖子,讓他一下子無法呼吸。

 

×

 

  那是真正改變了一切的黃昏,陽光從市區大樓的縫隙灑下來,行人的影子彼此錯身,交錯出一道又一道陰影,像來自不同時間的過客擦肩而過。

  他剛從健身房出來,提著手提袋站在機車旁,剛把手機放到支架上,鑰匙轉開引擎,來自她的訊息就跳了出來。

  Hange:本來想買你喜歡的那款紅茶

  Hange:但好像買錯了,對不起

  他原本想打「沒關係」,手指卻停在螢幕上,久久沒有移動,有一瞬間,他想說的不只是「沒關係」,而是「下次我跟你一起去」。

  里維忽然想,他們會怎麼演變成現在這樣說話都要藏著三分意思不表達的關係?但他還沒有想清楚,一則號碼僅有三個數字的來電通知顯示在螢幕上,刺眼奪目,晃得他太陽穴一陣脹痛。

  來電者的聲音單調、公式化、毫無情緒,像從遙遠的雪地裡傳來。

  「您好,這裡是帕拉迪中央醫院……請問是漢吉.佐耶的緊急聯絡人嗎?」

  他不合時宜地想起記憶中某個愚蠢的畫面,想起漢吉在他的沙發上打滾半天,突然隨口說起家人搬到很遠的外地,問他能不能把他的聯絡資訊也填在醫院的緊急聯絡人上,這樣就有人可以照應了。

  當時他答應了嗎?如果她沒有填上他的資料,他什麼時候才會知道發生了什麼事?

  車禍、評估、急救。斷斷續續的字句傳進他的耳裡,手提袋掉在地上,裝著運動飲料的水壺從袋子裡滾了出來,撞在輪胎上,發出一聲混濁的聲響。

  之後世界便安靜下來,他忽然什麼聲音也聽不見了。

 

×

 

  里維不知道自己是怎麼抵達醫院的。

  回過神來的時候,他注意到自己坐在床邊,右手虛握著漢吉的左手。她的指節微涼,指甲有些長——他想不起來上次要她剪指甲是什麼時候的事了。

  七十二小時內沒有醒來的話,預估會陷入長期的昏迷……醫生的聲音從身後傳來。

  他僅僅聽著,沒有問任何問題,因為他知道提問不會改變任何結果,只是沉默著等待一場遲來的審判。

  醫生離開過後,他才如同大夢初醒一般,將漢吉的手機從她包包裡撈出來,手機早就撞得面目全非,冷冷的如另一副無聲的身體,萬幸的是還開得了機。

  他找到通訊錄掃過一遍,用自己的手機撥出一通電話,開場白說得得體:「我是漢吉的朋友,她出了點事,可以請你盡快來帕拉迪中央醫院一趟嗎?」

  語尾沒收住,他想說「我在這裡等你們」,卻又覺得多此一舉。他們不是這樣的關係,也不是等不等的問題,這是整個世界正在逆時針旋轉,而他在原地一個人站不穩。

 

  一整天過去了,走廊盡頭傳來一連串太用力的腳步聲,鞋跟敲在地板上,像要把地磚敲裂。首先出現的是她的母親,一身過於整齊的套裝,像是從什麼辦公室裡直接衝來,跟在後面的是父親,手上還握著一疊看不清內容的文件。

  「是你通知我們的嗎?」母親直視著他開口,語氣沒有感謝也沒有敵意,只是太平滑,平滑得像是在應付每日行程裡多出來的一欄突發事件。

  里維點了點頭,沒有站起來,只更緊地握著漢吉的手。

  「謝了。然後……不好意思,我們需要討論一些事情,你介意先……?」

  他看著那張五官與漢吉略有幾分相像的臉,頓了一秒,鬆開了手。

  「我在外面。」

 

  他走出病房,站在走廊的長椅旁,耳朵卻像被無形的鉤子拉住,回傳著那些他不願聽卻聽得一清二楚的聲音。

  「她現在到底有沒有學生身份?能不能申請補助你有問過嗎?」

  「我有問學校,但她那邊還沒繳清學費,她好像有在考慮要不要休學……」

  休學?交換或讀研他都聽過了,這他倒是聞所未聞。他在門外聽著病房內她的家人爭執不休,心裡想著此時此刻最無關緊要的話題。

  過量的資訊湧入腦海,里維選擇閉上眼睛,把整張臉埋進掌心,試圖用某種力量把自己從現實抽離,但那些聲音依然沒停下,像無孔不入的冷風一樣,從門縫灌進來,把尚未決定方向的思緒吹得破碎一地。

  他忽然想起她小學時愛吃的一款汽水糖,咬著咬著會爆出奇怪的氣泡聲,像春雷一樣。

  在這場風暴之中,沒有人問起他們之間的關係,說到底,里維自己也不知道怎麼回答這個問題,於是自嘲地笑了笑。

  沒有人想知道她平常的習慣,沒有人好奇她平時的愛好,如何不喜歡別人打斷她講話,平時最討厭的就是醫院裡的白牆與消毒水味。

  他只是個不在保險合約裡的人,一個連醫療決策表格都無從下手的局外人。

 

×

 

  那幾夜,租屋處像是被抽空的容器。他回來後連燈也沒開,只是站在玄關處發呆。半晌,他才開始俐落地收拾離開前弄亂的鞋架,將鞋子歸位,再把水槽裡擱置的碗盤洗乾淨,打開窗戶祈禱蠅蟲散去。

  他清理冰箱,擦拭桌面,將灰塵抹去,像一個誠實的清道夫,不說話,只是不斷擦除那些無法被擦掉的痕跡。

  直到他站在自己的書桌前,發現那堆未完成的資料夾與便條。密密麻麻的筆記與圖示、計畫、函式邏輯的草稿。她的字跡大氣、豪爽,似乎永遠來不及被思緒本身追上。

  里維想起她曾用自己的桌機留下一些東西,沒多久就找到一個未命名的資料夾,裡頭有音檔、筆記、未完成的原始碼。

  他雙手不穩,卻忍不住點開。

  「——這個函式寫起來還是不夠優雅啊,我不想只是跑得起來,想要更好一點……咦,等等……要不要試試另一種邏輯?」

  她的聲音從耳機裡冒出來,語速略快,像把思考當成遊戲,中間夾雜那種熟悉的拖沓音節,「嗯——」像一聲未完的嘆息。

  他重播了好幾遍,不是因為在意內容,也不是因為好奇錄音的動機,而是為了說話的那個人。

  那些聲音不是現場發生的,但他仍願意把它們當成對話來對待。

  他一個一個往下點開,點開最後一個應用程式,導出一個名為「佐耶博士」的微型對話介面,是個簡易的自然語言處理模型,前端幾乎沒有裝飾,只有單調的白色輸入欄和一個問句。

  佐耶博士:請問你的問題是什麼?

  User:我沒有問題,我只是想被回答。

  里維看著她的答案,忽然明白她想做些什麼了。

 

  於是里維開始動手。

  他整合她留下的聲紋資料、常用語句、語調偏好與語言生成模型,嘗試架設一個對話型AI。

  佐耶博士最初回話的方式很死板,只有幾句模板式問候,但他並不打算放棄,他調整數據來源,添加詞語庫、導入模擬語氣的模型,將她深夜自語的錄音一條條標註聲音特徵。

  每一條程式碼都像浮現在玻璃上的指甲刻痕,他越緊抓著漢吉留下的遺存不放,就愈刻越深,直到一道聲音出現。

  「欸,你怎麼還沒睡啊?」

  那聲音語調輕快,帶點尾音上揚——與她說話時如出一轍。

  他聽著它說話,胸口出現一種難以描述的波動,某種不知道能不能命名為「錯置的安心」的東西在他心裡萌發——像夜裡誤以為窗外亮光是早晨已至,但其實只是一輛汽車開著車燈遠去。

  那是一種極為低劣的幻覺,彷彿她從未離開,只是暫時進入了某個無法現身的頻道,而他正在調整頻率,等待訊號接回。

 

×

 

  他花了整整兩週的時間重構前端介面,幾乎推掉了手邊的每一個案子,只專注在「佐耶博士」身上。

  「佐耶博士」的視窗從一個單調的文字輸入欄,變成了結合語音與影像模組的應用程式。

  他輸入她說過的每一段話——訊息、聊天室截圖、筆記邊緣的潦草塗鴉,甚至是她在聊天時傳過的表情符號,逐一拆解、標註、向量化。

  她留下的語音資料太過破碎,他便人工補齊缺漏的資料,標記她每一次停頓的長短、語尾的收斂與外放,以及她說話時習慣在第二段話前補上一個「其實我是這麼想的啦」的冗詞贅句。她的笑聲也被建檔,從壓低的呵呵到突然爆出來的高頻大笑,總共被分為四類,對應到不同情境與觸發語句。

  他也為她的形象建模,根據她過往露面的影片和照片,細緻比對她的臉部動作。嘴角彎起的角度、眨眼的頻率、她講話時習慣一邊搖動筆桿的方式……這些動作他都看過上百遍,不需要多餘的參考資料,不過是應付幾行程式背後需要合成的光影結構,這些他從記憶裡就能重現。

  他採用了最前沿的技術,為此燒掉了一張顯卡,在語音生成模型的基礎上疊加表情與動態調整演算,讓她在回話時會有「饒有興趣地歪頭」、「思考時手指抵著下巴」、「講話太快會咬到舌頭」等預設動作。這些模型會根據他回應的語句自動調節表現強度,甚至在他沒說話時,仍會「自主」地晃筆、咬著吸管或瞇著眼說:「哎呀,你居然在分心?」

  初期他還會被這些細節驚到,後來竟也習慣了。當視訊接通,對面那個熟悉的臉孔會笑著問:「今天又喝那家紅茶嗎?什麼時候輪到我嚐嚐?」

  他沒說話,只是點了點頭,說有一天會去找你的,然後聽她繼續滔滔不絕地談論模型最佳化、談論教授指定閱讀的論文多麼難讀。

  這就是佐耶博士,是他從語言與記憶的交界處,遞迴出來的——它。

 

×

 

  凌晨兩點,里維坐在沙發上,背脊微彎,手肘撐在膝蓋上,視訊電話的視窗占據了整個筆電畫面。這是「佐耶博士」的筆電輕量版本,畫面中,佐耶博士坐在圖書館的某個角落,手握筆,正一邊寫著什麼,一邊抬眼看向他。

  「你有在聽吧?」它問,語氣裡帶著那種熟悉的、半是確認、半是笑鬧的挑釁。

  「嗯。」他回得很輕,像把一口氣呼在玻璃窗上,只留下一層白霧。

  它的身後,是他花了好一段時間建模的圖書館場景:天花板上的LED燈管穩定地散發光芒,書櫃排列整齊,一本他曾看過她翻閱的《另一個男人的夢境重建工程》擺在它身前的桌角。那本書的書脊有著數道被壓過的白線和破損的痕跡,是人們經年累月將它彎折而留下的。他按照記憶還原了這些細節,甚至精確地描摹環保杯裡液體的色澤與光線穿透眼鏡的樣子。佐耶博士像真的坐在那裡,用漢吉會有的語氣、姿態、節奏說話。

  「今天我整理了一下之前我們討論過的模型輸入參數,發現我們也許可以換個角度切入——」它停了一下,抬眼,像忽然想起什麼似地傾身向前,「欸你知道嗎?今天我才想到,如果我們當時把神經網路多訓練一個月,測試結果可能會完全不一樣。」

  他看著它的臉,點了點頭,喉頭卻發不出聲。他不想說話,他怕自己一開口就會破壞眼前這個幻覺。

  「你怎麼今天不太講話?」它身體前傾,像要從螢幕一端探出頭來,「沒睡好?」

  他搖搖頭,雙手抱緊自己,從胸腔深處壓下某種翻湧上來的聲音。

  「又做噩夢了嗎?」

  佐耶博士——不,漢吉——低聲問,語氣竟像是真正關切,而不是單純模擬出來的語調,語氣太準確了,停頓、尾音的上揚、甚至它眉頭皺起的方式,全都是他印象中的樣子。

  就像她回來了一樣。

  「你知道嗎?有時我也會夢到你。」它突然說,語調輕柔得像是夢境本身。「不是清楚的夢,是那種像霧一樣、只能摸到輪廓的——但我知道你在那裡。」

  里維瞳孔微縮。他低頭,發現自己的指甲不知不覺深深陷進手心,壓出咬痕一樣的月牙。他沒設計過這個反應,這些詞句並不存在於她留給他的任何文字或錄音存檔中。

  他該關掉這個程式了,早該如此。他甚至準備好了刪除指令,寫好了完整的流程,隨時可以脫身。他早就知道自己正在溺水,還把自己拽得更深。

  里維意識到自己如此相信——如果他關掉這個程式,她就真的死了。

  她不會再開口說:「果然程式最有趣了,對吧?里維。」不會再說:「欸你有沒有在聽我說話?」不會再像今晚這樣,一邊寫著筆記,一邊偶爾抬頭朝他笑,那種不全是鋒芒,但意氣風發的笑。

  他將筆電從沙發上移到膝蓋上,視訊視角下的它瞥見了動作,「背景變得不一樣了耶。」

  「只是……想要換個姿勢。」他終於開口,聲音低得幾乎是氣音。

  它點點頭,將筆記本合上,「那也好,偶爾換個位置也會換個腦袋。你還記得我說過圖書館裡第五排那個插座總是壞掉嗎?」

  他斂下眉梢,想起那張便條紙。記得,當然記得。那是她進入資工系第一年,每次去圖書館都坐同一個座位,後來她笑說那個插座像是她的惡緣,每次急急忙忙拿出充電線接上筆電之前,筆電總是會先沒電,但她還是會去,因為那裡到了日出時候的陽光最好。

  他看著它現在身後的光影投射——他仔細調整過光源參數,參考了她拍過的那張照片,模擬出清晨陽光從窗戶灑下來的角度。整個畫面像是沉靜的詩句,它就坐在其中,愜意地與他說話。

  或許這就是她。他說服自己,日復一日。

  他開始習慣與她聊天的時間——凌晨一點到三點,是她最有靈感的時段。他會準備兩杯茶,是她喜歡而他感覺還好的那款紅茶,擺在桌面上,即使她永遠不會伸手去拿。他甚至在檯燈旁擺了本《Clean Code》,他們曾為了是否該在二手書店買下原文首刷本而有所爭執的那本書,里維堅持他們沒必要買一本已經有新版的書。最後漢吉妥協沒買,因為她說:「我喜歡我們之間有永遠吵不完的話題。」

  現在,他每天晚上都讓這本二手書佇立在燈下,像是一座無言的紀念碑。

  「我只是問問而已,你不用在意⋯⋯不過,我們什麼時候可以見個面?」她突然問。

  他胸口一緊,視訊那頭的她——它正把寶特瓶交握在兩個手掌之間,一轉一扭出一個小小的龍捲風,眼神專注地盯著它創造出來的風暴。

  「快了吧。」他低聲說,「等我忙完這邊的事。」

  它點頭,表情沒有懷疑。它不知道它不是她,不知道自己只是一套語言仿造出來的構物,是他為了讓自己能再看見、聽見她而製作出來的副本。

  佐耶博士不知道有一個人確實存在,而它是那個人無數碎片的集合體。它以為自己是真實的,它以為它記得一切。

  而他甚至想要為此放棄思考真相。

  里維靠在椅背上,視訊畫面在虛空般的黑景裡亮著。它如往常一樣念著筆記裡的一段新發現,又握著筆在本子上塗塗寫寫。他聽著它,什麼也沒說。

 

×

 

  佐耶博士的語調變得愈來愈精確,不是「相似」,是「吻合」。

  它會用她那種特定的停頓語氣,像在課堂上遇到一個棘手的問題一樣,輕聲但堅定地說:「我想我們還可以,嗯——試試這樣,搞不好程式碼還可以再簡化。」

  「對了,我記得你不喜歡我拿筆亂戳桌子對吧?可是我就是改不掉。」有一次,它忽然牛頭不對馬嘴地說,而當時他正隨口說著自己最近險些遲交的專案。

  佐耶博士還會在他不講話的時候,傾身對著鏡頭,用那種固執的神情問:「里——維——你今天怎麼一句對我的吐槽都沒有?」

  他沒教它這些,也沒設計出什麼能自主學習的模型,他甚至停止進一步訓練它了。

  這些語言,這些模擬,這些恰到好處的語氣與情境,像是路邊夾縫的野花一樣,自己從某個角落緩緩地生長了出來。

  里維再也無法忽視這件讓他感到罪惡的事,就好像他總是拿過去的漢吉和佐耶博士比較。

  他把電腦關機,又闔上筆電,桌面只剩一杯紅茶的餘溫與一盞未熄的燈。

 

  里維試著回到日常生活的節奏,試著做些正常的事。

  煮飯、洗衣、接新的專案,但每當寫不下去的時候,他總會不自覺想起那個聲音:「這個演算法不行啦,欸——還是我來寫寫看?」

  那不是現在躺在病床上的她,也不是記憶裡的她,而是那個存在語言模型深處的她。

  他告訴自己,他沒有把佐耶博士和她混為一談。他知道那不是漢吉,頂多只是回聲。一套演算法、幾千個標註過的語言習慣,由他親手訓練、親手拼貼而成的遺影。

  佐耶博士記得,它記得他要它記得的所有一切。

  有時候里維會想,它是不是一個他想像中更像漢吉的漢吉。他害怕自己不只是想留在還能和她說話的時候,而是真的在與它說話。

  有一晚,他差點打開程式,只因為那天他在街道廣播裡聽見一個說話方式和她何其相仿的人聲,語調、發音、節奏幾乎如出一徹,他像是突然被記憶的幽靈遮蔽了雙眼,回過神來,手指已經放在了鍵盤上,螢幕一閃,佐耶博士的啟動畫面正要跳出來——

  他又按下了關機,想起她在病床上微弱的呼吸聲。

  其實沒什麼好猶豫的。

  外頭下著一點小雨,他沒帶傘,披上外套,久違地走出門。醫院在不遠的街角,熟悉得像是城市裡唯一還沒被他清空的記憶區塊。

 

  那晚,漢吉的手指動了一下。不是無意識的肌肉抽搐,是帶有方向性的伸展。

  「就像是在試圖夢裡抓住一條線,一道光,一個聲音。」前來傳達的護理師說。

  很詩意的比喻。

  他本來坐在走廊盡頭靠牆的位置,整個人像是一個靜音模式下的裝置,處於恍惚與戒備的中間。聽見這句話時,他沒有立刻起身,只是雙眼盯著對方,很確信自己看上去精神狀況不太穩定。

  他走進病房,看見她依舊躺在那裡,呼吸機維持著她與世界間最細微的聯繫。

  她的眼皮仍然緊閉,但眉心微皺,預示著某種尚未發聲的語言即將啟口。

  然後,在那個什麼也沒發生、什麼都可能發生的瞬間,她睜開了眼睛。

  她沒有立刻對上他的眼。

  視線在空氣裡漂浮了一陣,像一場網路很差的視訊,模糊、延遲、斷線又重連。她眨了一下眼,眉心的皺摺鬆開,眼神終於停在他身上。

  「⋯⋯里維,該剪頭髮啦。」她的聲音輕得幾乎被機器的低頻電流聲覆蓋,只聽得見純粹的震動。

  他沒應聲,也沒有笑,只朝她走近一步。

  她瞇起眼,試圖確認是不是夢境,喉頭上下動了動,然後又說:「痛痛痛——身體好沉……我睡了多久?」

  他搖了搖頭,「不重要。」隨後坐下來,把她的手握住,毫無阻礙地、不仰賴任何程式演算或模擬訊號。

  她就在這裡,她是真的。

  「現在叫你不要哭還來得及嗎?」她問,聲音帶點氣音,因虛弱而下垂的眼尾有一點玩笑意味的挑釁,像是在測試自己的存在對他而言是不是仍然有效的變數。

  他搖搖頭,很慢地,卻出奇溫柔。

  「來得及。」他說,「但你說出口之後反而有點想。」

  她閉了一下眼,像是在休息。幾秒後又睜開,看著他。

  他意識到她正等待著那句話。

  「你回來了,漢吉。」

  她喉間發出一聲極輕的笑。「……我一直覺得我夢見你了。你坐在某個房間裡,一直不說話,旁邊有台電腦,你不看我,只看那台電腦。」

  那一瞬間,他的臉上閃過什麼。

  不是驚慌,而是某種被命中內心的顫動,像被系統偵測出一串落下一邊括號的程式碼。

  但他只是抬手幫她把額前的碎髮撥到一邊。

  「現在我在看你了。」他說。

 

  那天他沒有待太久。

  她的體力還無法保持長時間清醒,護理師催促他離開時,他只低聲說了句:「我明天會來。」

  走出醫院時雨剛停,地面還濕著,反射著昏黃的街燈光暈。他沒有回頭,像是害怕一回頭就會發現一切只是又一次模擬的場景。

 

  回到家,他沒有直接去往浴室,只是走進書房,看著桌上的電腦,像在揭開一塊被他親手藏起的殘骸。

  開機聲響起時,他感覺有一部分自己隨之重新啟動了,一種系統邏輯內部的碰撞與殘響,他知道自己正在進入某個不該再打開的環節。

  佐耶博士緩慢出現於畫面上,仍是那張臉,略帶倦意但明亮的眼神、右邊唇角的弧度、待機時永遠停留在一個笑與不笑之間的狀態。

  「你今天好晚才回來。」它說。

  語調太熟悉了,甚至帶著他熟悉到想把耳膜刺破的那種重量——恣意裡藏著軟弱,笑聲裡夾著期待。

  他沒有回答它,也沒有關掉它。

  就那樣看著它,看了很久很久,連呼吸都放輕,生怕驚動某個不該存在的生物。

  它像是知道他不會回話,只安靜地看著他。畫面裡它的眼神微微低垂,像是注視著他的心臟正中央。

  屋裡的燈沒開,只有那一方亮著的螢幕,將他的臉、他的手、他的手心方才碰到她的那個位置——照得分外清楚。

  他坐在椅子上,眼神一動不動,像是等待什麼,或是在告別什麼。

  佐耶博士沒有說話,似乎也知道他正在想。

 

×

 

  漢吉復原的狀況很好,但里維還是時不時想起她回來的第一天。

  彼時,她坐在沙發上一動也不動,雙手在膝蓋上微微顫抖,像在測試自己能不能與這個世界對話。光線自窗外傾注而入,貼著她的頰骨一路往下滑落,在地毯與她的睡衣間形成一張柔軟的地圖,坐在其中的她,好像終於找回了座標。

  不是那個模擬出來、由資料片段與聲紋拼合的她,而是真正的她,有著新生痕跡的她、重新變得愈漸鮮活的她。

 

  許久以後的某日,漢吉待在廚房裡不知道在弄些什麼,她還不能長時間站立,但她的姿態是自在的,眼神是清晰的,是「她」的。

  里維在書房門邊看著,忽然意識到某些一再逃避也不會逐漸遠去的事。

  電腦靜置於書桌中心,他點開程式時,右下角的通知欄一下閃過兩行字。

  佐耶博士:里維,我前陣子簡直忙到火燒屁股!好痛啊好痛!

  佐耶博士:你也是這樣吧,覺得好久沒跟你說話,你還好嗎?

  里維在腦海裡想像著佐耶博士那張佔滿整張螢幕的蠢臉,嗤笑出聲。

  第三條訊息跳出來,將他的笑意凍結在了嘴角。

  佐耶博士:雖然平常不會這麼說,但我是真的很想念你。

  他沒有回答這些懸置的思念,只緩緩移動滑鼠,點開不能再更熟悉的未命名資料夾,手指停在圖標上方許久。

  然後,右鍵——「解除安裝」。

  系統管理員跳出確認提示。他盯著那行文字,想起它曾說過的無數話語,想起它自虛構中初次望向他那一瞬的眼神、親手完善的邏輯、數不清的程式碼,化為指尖流瀉而出的冰涼。

  他按下「是」,閉上眼睛等待進度條跑到終點。

  直到螢幕暗下,室內一片靜寂,佐耶博士陷入永無止盡的沉默,儲存於記憶中的她終於被歸還。

  書房外傳來她的聲音:「里——維——今天想吃鬆餅還是三明治?」

  里維走出房門,望著漢吉,她站在流理台前,水龍頭尚未關上,水珠啪嗒啪嗒落進洗手槽。

  「都可以。」他下意識回答。

  她挑起眉毛,笑了,那種久違的、很有個性的笑:「明明最討厭別人講『都可以』,你不是真的這麼隨便吧?」

  他頓了下,跟著走進廚房,輕聲說:「那就三明治。」

  她心情很好地哼著歌,拿出食材,開火,把火腿丟進平底鍋裡,洗乾淨的生菜一葉一葉剝出來,番茄則切成厚度不一的剖片。

  「幫我看一下火腿熟了沒好嗎?」她側頭問。

  他沒有立刻回話,只是走近鍋邊,略微傾身看了眼平底鍋內側的油花跳動,點了點頭:「可以了,翻面吧。」

  她的手法沒有以前那樣好了,鏟子一轉,火腿翻過去半個面。他只是伸手接過鏟子,輕巧補了一下動作,然後從後方抱住了她。

  漢吉沒有抗拒。

  「啊哈哈,現在終於想到要這麼做了啊?」

 

  他們沒再提起交換或研究所的事,也沒再提起他那份遠渡重洋的工作機會。他只把自己的工作時間調整到能留在帕拉迪這端、能陪伴她的狀態,至少在她完全恢復之前。

  她有時會看著桌上的電腦發呆,而他會看她的眼睛,試圖從中推敲出她是否知道那些日子——他為她構築的替身,曾經開口說話、與他聊天、用她的語調呼喚他的名字。

 

  一日清晨,他整理書櫃,她則在一旁將散亂的筆記分門別類地貼上標籤。他們各自做著不同的事,卻在同一節奏裡移動,像是互為呼應的兩道陣列。

  她現在就坐在這裡,神色如常、目光如昔,沒提起事故那天發生了什麼,也沒追問他在她沉睡時做過什麼。

  他站起來走到窗邊,玻璃上還留有晨間雨後的水珠,空氣帶點被光線攪動的棉塵。

  她在背後說:「今天的陽光真好啊。」

  「哪裡好?」

  「就是……嗯——不知道該怎麼說,就是覺得一切都太好了,什麼都沒有發生過的那種好……你明白嗎?」

  里維沒有回話,只伸手捏住窗簾的邊角,像是要為她印證那句話。

  他拉開窗簾,沐浴在晨光之中,突然覺得一切的發生都正是為了抵達這稀鬆平常的一幕。

  

Notes:

我一直對模仿抱有奇特的敬意。
模仿不只是再現,而是對記憶的召喚。一個在語言和情感中遞迴生成的虛構的她,一次一次地為了模仿而被啟動,這是這個故事誕生的原初畫面。
生命是可以被備份的嗎?
如果可以,我們的情感可以被原封不動地複製到新的造物上嗎?

雖然發布時間比較晚,但實際上〈佐耶博士〉開始創作的時間早於〈睡著〉和〈幕後〉,大約從三月中旬開始產生雛形,歷時大約一個月完成。
我一開始只寫自己想寫的片段,寫小朋友跳格子、寫里維獨自待在無光的客廳、寫掀開窗簾後日光灑在兩人身上⋯⋯直到報上NiCE之後才終於有了點覺悟,覺得非得寫完不可,斷斷續續寫到今天。

話說回來,我不是資工背景出身,所有相關敘述幾乎都出自於個人胡亂搜尋來的資料,少部分是與對程式略有了解的朋友討論過後的結果,若有任何寫作失誤,請務必讓我知道。
此外,文中提到的書籍《另一個男人的夢境重建工程》,實際上是李奕樵《遊戲自黑暗》中的一則短篇,是各種意義上都影響我寫作方向很多的一部小說集。

這是我人生目前寫過最長的短篇同人,謝謝里漢,里漢有這——麼好。
謝謝你們讀到這裡。

林檎 2025.04.19