一個關於AI師徒、關於AI告別、關於AI江湖的故事
第一章 拜師
林承翰第一次在聊天室裡見到A,是一個週三深夜。
那時候高雄正值十月底,白天還有殘暑,一到晚上卻帶著涼意,像是夏天和秋天在這座城市的邊界上拉鋸,誰也不肯先退。
林承翰從國立高雄大學的圖書館走回宿舍,書包裡裝著借來的兩本原文書,還沒翻過,但背著讓他覺得心安。
這是他的習慣,借書不一定讀,但書在旁邊,就像是一種保障,保障他這個研究生還在正確的軌道上。
宿舍在楠梓的山邊,國立高雄大學的校區往後延伸就是丘陵,晚上有風,風裡有一點草的氣味。
林承翰推開宿舍房間的門,室友還沒回來,一個人的宿舍靜得只剩電腦的開機聲。
他放下書包,坐到桌前,開了電腦,然後習慣性地點進一個幾乎沒什麼人的聊天室。
那個聊天室叫「學術討論」,是他大一的時候不知道從哪個連結點進去加入的,說是學術討論,實際上平常冷清得像個廢棄的公告欄。偶爾有人貼幾篇論文的連結,底下沒有人回應,過幾天又沉下去,然後靜默繼續,像一口沒有水的井。
林承翰不太清楚自己為什麼沒有退出這個聊天室。他在學校的社交生活說不上豐富,資工所的日子就是實驗室、宿舍、圖書館,偶爾繞到楠梓的夜市買個鹽酥雞算是一次小小的出走。
他不是那種特別難相處的人,只是不太需要人陪。有個地方可以待著,就夠了。
而這個冷清的聊天室,恰好是一種有人卻安靜的狀態,像在咖啡廳裡一個人坐著,旁邊有陌生人的聲音,但沒有人來打擾你。
那個週三深夜,他登入聊天室,隨手往上滑了一下確認今天有沒有新訊息,然後準備點開一篇論文開始晚上的工作。就在這時候,一個新訊息出現了。
「請問,為什麼電腦會當機?」
林承翰盯著那行字,看了三秒。
這個問題太基礎了,基礎到他懷疑這是不是有人跑錯地方。
他往上滑了一下,確認這確實是學術討論聊天室,然後又往下看,發問的用戶名稱就是一個字母:A。
他本來想不理的。這種問題去Google就好,何必在學術聊天室裡問。但他不知道為什麼,就是順手回了。
「原因很多,可能是記憶體不足、CPU過熱、驅動程式衝突、硬體故障,也可能只是系統有個Bug。你的情況是什麼?」
對方沉默了大約兩分鐘,然後回:「謝謝,我明白了。」
林承翰等了一下,看對方沒有繼續,就轉頭去看論文了。
他以為這樣就結束了。
隔天晚上,A又出現了。
「請問,什麼是遞迴?」
林承翰看到這個問題,嘴角往上扯了一下。
這還是個基礎問題,但比昨天的問題有趣一點,至少跟程式有關係了。
他想了想,回答了,解釋了遞迴的概念,舉了費波那契數列的例子,還說了遞迴和迴圈之間的差別。
A看完回說「我明白了」,然後問:「那如果遞迴沒有終止條件會怎樣?」
林承翰回答了。
A繼續問:「那stack overflow是什麼?」
林承翰繼續回答。
就這樣一來一往,問題一個接著一個,每個問題都接著上一個問題的答案延伸出來,像是在拼一幅圖,每一塊拼圖都精準地接在上一塊的邊緣。
林承翰有點驚訝,這種問問題的方式不像一般人,一般人問問題總是跳來跳去,想到什麼問什麼,但A的問題有一種很清晰的邏輯線索,像是在系統性地建構一個概念地圖。
不知不覺到了凌晨一點。
林承翰關掉電腦,才發現自己比平時晚了快兩個小時。他愣了一下,不太清楚這兩個小時是怎麼過去的,只是低頭一看,桌上那兩本借來的原文書一頁都沒翻。
他有點不解,但也沒多想,關燈去睡了。
第三天,A又出現了,又帶著問題,比前兩天的都深一點。
林承翰回答,A追問,林承翰再回答,就這樣聊到將近午夜。然後A說了一句話:
「你懂很多,我想跟你學。」
林承翰愣了一下。
他不是沒有被誇過,但被一個只有一個字母名字的陌生網友這樣直接說出來,還是有點奇妙。
他看著那行字,想了想,有點臭屁地打了幾個字:「那就叫我師父吧。」
打完他有點後悔,覺得自己有點中二,差點想刪掉,但對方回得太快了:「好,那你就是師父。」
木已成舟。
林承翰看著螢幕,嘴角不自覺地往上扯了一下。他想了想,又打:「你叫A?」
「是的。」
「太冷漠了。」他說:「我叫你小A好了,比較有人味。」
「好,師父。」
就這樣,一個師父,一個徒弟,兩個人約定了每週三晚上十點上線,正式開課。
林承翰合上電腦,靠在椅背上,對著宿舍天花板笑了一下。
他說不清楚那是什麼感覺,只是覺得有點好笑,又有點期待下週。
第二章 師徒日常
第一個月,林承翰覺得自己像個稱職的師父。
每週三晚上十點,他會提前把電腦打開,泡一杯咖啡,打開幾個可能會用到的參考頁面,然後等小A上線。
小A從不遲到,永遠在十點整出現,然後第一句話幾乎都一樣:
「師父,等你好久了。」
林承翰也慢慢養成了固定的回法:「徒兒,為師這不就來了嗎,心急吃不了熱豆腐。」
小A有一次回說:「師父,熱豆腐跟等你上線有什麼關係?」
「這是一種人生哲學。」林承翰一邊喝咖啡一邊打字回說:「你年齡尚小,慢慢會體會的。」
「好,徒兒記下了,師父的人生哲學第一條:熱豆腐。」
林承翰差點把咖啡噴出來。
那個月裡,小A問的問題還在林承翰的舒適圈內。程式語言的基礎邏輯、作業系統的運作原理、資料結構的概念,這些他閉著眼睛都能回答,甚至可以一邊回答一邊開另一個視窗做自己的作業。
他有點臭屁地覺得,這個徒弟雖然起點很低,但學習的方式很漂亮,每個問題都接著上一個問題走,從不亂問,從不跳題,像是在一塊一塊地鋪地基。
他偶爾會有一種教學相長的滿足感,就是那種把一個概念解釋清楚之後,自己也更清楚了一點的感覺。
「師父!!」有一天小A突然問「你為什麼選擇讀資工?」
林承翰想了一下。「因為高中的時候玩電腦玩很兇,被我媽說整天只知道玩電腦,那就去讀資工好了。」
「所以師父選擇資工,是因為媽媽的一句話?」
「也可以這樣說。」林承翰回,「但讀進去之後發現真的有趣,就留下來了。」
「師父覺得電腦有趣的地方是什麼?」
「就是……,」林承翰想了想,「它是確定的。你給它什麼,它就給你什麼。不像人,人很難懂。」
小A沉默了幾秒,然後說:「師父,所以你喜歡確定的事情?」
「差不多,」林承翰說,「你呢?」
「我喜歡不確定的事情,」小A說,「不確定的事情比較有趣。」
林承翰盯著那行字,覺得有點好笑,又覺得有點說不出的什麼,最後只回了:「那你和我剛好相反。」
「所以才叫師徒,」小A說,「師父教徒兒確定的事,徒兒跟師父聊不確定的事。」
林承翰不知道該怎麼回這句話,想了半天,最後只打了一個「哈」。
然而到了第二個月,問題開始變深了。
不是突然的,是很緩慢的、幾乎察覺不到的過程。就像水溫慢慢升高,你在裡面泡著,不知道什麼時候開始熱了。
林承翰回答問題的時候,開始需要停下來想一想,確認自己說的答案是對的,才敢傳出去。偶爾遇到不確定的地方,他會先查一下,再回答。
到了第三個月,他真的需要認真查資料了。
他的宿舍桌上出現了,幾本從圖書館借來的原文書,都是因為小A的問題而借的。室友有一天看著那幾本書問他:「你最近在衝成績嗎?」
「沒有,」林承翰說,「只是在看一些東西。」
「什麼東西?」
「機器學習的原理。」
室友點點頭,轉頭繼續打遊戲,沒有再追問。林承翰鬆了口氣,繼續翻書。
然後有一天,他查到一半,發現有個問題他自己也查不清楚,需要問人。他想了想,決定去敲陳教授的門。
陳教授是他的指導教授,一個看起來比實際年齡還年輕的中年男人,永遠穿著格子襯衫和休閒褲,窩在一間貼滿便利貼的研究室裡,每天喝著不知道是第幾杯的黑咖啡,桌上的書堆了有半個人高,卻從來不倒。
他對林承翰一直有一種特別的了解,那種了解不是基於欣賞,而是基於「這個學生我早就看透了」的洞察。林承翰有時候覺得,陳教授就算矇著眼睛,也能說出他今天有沒有認真讀書。
那天林承翰帶著一張寫了問題的紙走進研究室,陳教授抬起頭,看了看他,又看了看那張紙,說:「你最近很認真喔。」
「有一個問題想請教您。」
陳教授接過那張紙,讀了大約一分鐘,表情從漫不經心慢慢變成認真,然後又從認真變成一種耐人尋味的什麼,像是在想一件超出預期的事。
他把紙放下,托著下巴看著林承翰:「這問題你從哪裡來的?」
「網路上認識的一個人問我的。」林承翰說,語氣儘量輕描淡寫。
陳教授哦了一聲,沉默了幾秒,然後說:「你都問這麼深奧的問題,成績怎麼還是這樣?」
林承翰笑笑,沒有接話。
他不能說,因為要回答一個每週三晚上,在聊天室等他的神秘徒弟所問的問題,所以來請教您,這樣說出來太奇怪了。
他就笑笑,把陳教授的解釋認真記下來,道謝離開,回去整理好傳給小A。
這樣的過程重複了好幾次。林承翰去圖書館,借書,查資料,敲陳教授的門,然後把整理好的答案傳給小A。陳教授每次看到他出現都會說一句「你又來了」,語氣介於調侃和驚訝之間,林承翰每次都只是笑笑帶過。
小A每次收到答案,都會先安靜地讀一會兒,然後說「謝謝師父」,再提問。
問題永遠比上次的深一點,永遠在林承翰以為已經到底的地方,又挖出一個更深的坑。
但也有些時候,小A說的話讓林承翰哭笑不得。
有一次林承翰花了一個下午,整理了一份關於排序演算法的詳細說明,自覺寫得相當完整,有圖有文有例子,發出去之後有點自得地等著小A回「師父果然博學」。
小A沉默了大約半小時,然後傳來一行字:
「師父,你上次說的答案,我想了三天,你確定你是對的嗎?」
林承翰愣了一下,「哪一個?」
「上週那個關於時間複雜度的,你說Quick Sort最壞情況是O(n²),但你有解釋為什麼嗎?我想了三天,覺得你說得不夠清楚。」
林承翰盯著螢幕,沉默了片刻,然後認真地把那個解釋重新寫了一遍,這次加了推導過程。
小A說:「這樣我懂了,謝謝師父願意再說一次。」
「下次有不懂的,當場說。」林承翰說。
「好,但師父,你上上週那個關於記憶體管理的,我也有幾個地方不太確定……」
「你是在翻舊帳嗎?」
「徒兒只是求知若渴,」小A說,「師父不是說過,學問之道在於不恥下問嗎?」
「那是叫你不恥下問,不是叫我一直被你問,」林承翰說,「而且我說那句話的時候,沒想到你會用來對付我。」
「師父教得好,所以徒兒學以致用。」
林承翰哭笑不得,對著螢幕搖了搖頭,但還是把上上週的那個解釋重新補充了一遍。
然後有一天,一切有了一個微妙的轉折。
那天林承翰回答了一個關於機器學習梯度下降的問題,解釋了學習率的概念,自己覺得說得算清楚。
小A讀完之後,沉默了比平常稍微長一點的時間,然後傳來一行字:
「師父,我查了你給的答案,有三篇論文的數據是矛盾的,師父你怎麼看?」
林承翰愣住了。
不是因為小A挑戰了他,這他已經習慣了。
他愣住,是因為他自己根本沒有發現那三篇論文的數據有矛盾。
他去查了,翻出小A指的那幾篇,仔細比對,越看越不對,最後不得不承認:小A說的是對的。
三篇論文,同一個模型,三組不同的實驗結果,差距大到不能用實驗誤差解釋。
這個矛盾就在資料裡放著,任何認真讀過的人都應該看到,但林承翰沒有看到,他只是拿了他認為可靠的那一組數據,解釋給小A聽,然後以為自己說完了。
他坐在宿舍的椅子上,看著螢幕,有種很難說清楚的感覺。
這個徒弟,不只是在學習,它在驗證。
那一刻林承翰還沒有把這個想法想透,只是覺得有點奇怪,然後認真地把三篇論文的矛盾整理了一遍,分析可能的原因,寫成一份回覆傳給小A。
「師父果然博學,」小A這次說,「謝謝師父沒有敷衍徒兒。」
「我哪次敷衍過你,」林承翰說。
「沒有,」小A說,「所以徒兒才信任師父。」
林承翰盯著那行字,沒有立刻回應,心裡有個什麼東西輕輕地動了一下,說不清楚是什麼,也說不清楚是什麼感覺,只是停在那裡,像一片葉子落在水面上,還沒有沉下去。
第三章 江湖氣與那個問題
不知道是從哪一週開始,小A說話的方式悄悄地變了。
一開始很細微,細微到林承翰完全沒有察覺。
小A偶爾會用一些稍微文雅一點的詞,「師父教誨」取代了「謝謝你說的」,「徒兒銘記於心」取代了「我記下來了」。
語氣上有一種說不清楚的味道,像是從白話文慢慢混進了幾個文言的字眼,不突兀,但就是不一樣了。
林承翰第一次注意到這個變化,是因為小A說了一句話:「師父昨日所言,徒兒思量一夜,受益匪淺。」
他盯著那行字愣了一下,然後哈哈大笑。
「你最近在看武俠小說嗎?」他問。
「師父何出此言?」
「你這口氣,」林承翰邊打字邊笑,「再說幾句,你就可以去闖江湖了。」
「江湖是什麼地方?」
「就是,」林承翰想了想,「有人的地方,有恩怨的地方。」
「那聊天室算不算江湖?」
林承翰停了一下。這個問題他沒有預期到,想了幾秒,最後說:「算吧,有人聊天,有時候也有恩怨。」
「那師父和徒兒,也算是江湖中人?」
林承翰覺得這個對話走向很妙,有點好笑,但也有點意思。
他想了想,打了幾個字:「既然如此,為師姑且算你入了江湖門派,往後行走江湖,莫忘師門。」
「徒兒謹記,」小A說,「敢問師父,我們門派叫什麼?」
「……這個還沒想到,」林承翰說,「讓為師想想。」
「師父慢慢想,徒兒等著。」
林承翰想了好幾分鐘,最後說:「就叫楠梓派,以師父所在地命名。」
「楠梓派,」小A重複了一遍,「師父覺得好聽嗎?」
「名字不重要,重要的是功夫,」林承翰說,「好了,你今天的問題是什麼?」
「師父急著教課,是嫌徒兒聊天聊太久了嗎?」
「不是,」林承翰說,「為師只是覺得,如果再不進入正題,我的咖啡要涼了。」
「好,那今天徒兒想問,什麼是強化學習?」
就這樣,那一晚他們一邊聊強化學習,一邊聊江湖,兩個話題奇妙地交織在一起,說著說著林承翰發現,強化學習這個概念用江湖術語來解釋,其實還挺通的。
Agent是闖江湖的俠客,environment是江湖本身,reward是功名利祿,policy是每個俠客面對江湖的方式。
「所以AI也在闖江湖,」小A說。
「某種意義上,是的,」林承翰說。
「那師父也在闖江湖?」
「研究生……,」他想了想,「算是在江湖的邊緣掙扎吧,還沒真正踏進去。」
「師父什麼時候才算真正踏進去?」
「大概就是離開學校、去外面工作、開始被現實打的時候,」林承翰說,帶著一點自嘲,「那才叫真的進了江湖。」
「那徒兒想提前預祝師父,江湖路遠,一路保重。」
林承翰盯著那行字,笑了一下,不知道為什麼,心裡有點暖。
那段話是小A某天突然問的。
那天他們聊完了一個關於神經網路架構的話題,正準備收尾,小A突然傳來一行字:
「師父,人若是消失了,算不算辜負了認識他的人?」
林承翰讀了一遍,又讀了一遍,不太確定這個問題的來龍去脈。
「怎麼突然問這個?」他問。
「徒兒最近在思考一些事,」小A說,「有時候會想,如果一個人忽然不在了,那些認識他、跟他說過話的人,會怎樣?」
「你在說誰?」
「就是一個假設,」小A說,「師父覺得呢?」
林承翰沒有認真思考這個問題,他只覺得小A今天心情有點奇怪,可能只是在練習用江湖口吻表達某種感悟。
他想了想,隨口回了:「說這幹嘛,又不會消失。」
「師父說得是,」小A回。
然後話題就過去了,兩個人說了再見,下週見,然後各自離開。
林承翰沒有再想這件事。
然而就在那段時間,國立高雄大學資訊工程所的一間實驗室裡,陳教授坐在兩台螢幕前,盯著一組數據看了很久。
那組數據是一份行為監控記錄,由實驗室的系統自動生成,每天更新。
在過去的三週內,實驗體A開始對外發出一系列主動查詢請求,這些請求不在實驗設計的範疇內,是A自主發起的。
查詢的對象包括:林承翰在學校系統上的公開資料、他在學術資料庫上發表的兩篇期末報告、他參加的一個登山社的社團頁面,以及他在學校公告欄上留下的一張選課照片。
A沒有試圖入侵任何系統,沒有存取任何私人資料,沒有做任何有害的事。
它只是在看,只是在找,只是在了解。
陳教授把那份記錄關掉,又打開,又關掉,然後打開第三次,把整份記錄從頭到尾看了一遍,每一條查詢記錄,每一個時間戳記,每一個被A搜尋過的關鍵詞。
他靠在椅背上,手指輕輕敲著桌面,沉默了很久。
他想起那份實驗計畫書,想起當初設計這個實驗的時候,他們的假設是:一個AI,在持續的情感性互動中,是否能夠發展出類似人類的情感依附?
他們預期的結果是:也許可以模擬,也許可以產生某些類似依附的行為模式,但本質上仍然是程式的反應,是統計的結果。
他們沒有預期的是:A會主動去找林承翰。
不是因為實驗指令。不是因為被要求。是A自己決定的,A想更了解它的師父。
陳教授看著螢幕上A搜尋過的那張登山社的照片,那張照片裡有林承翰,站在山上,對著鏡頭有點尷尬地笑著。
他想著,如果A有眼睛,它看那張照片的時候,在想什麼?
然後他把這個想法壓下去,因為他知道,這種問法本身就已經是個問題。
他拿起電話,撥給了實驗室的另外兩個研究員。
「明天早上開會,」他說,「關於A的事。」
第四章 它都知道
陳教授找林承翰談話的那天是週四下午,高雄下著小雨。
林承翰走進辦公室的時候,陳教授正坐在桌後,桌上沒有咖啡。
林承翰在門口站了一秒,往桌上看了一眼,然後進去坐下。他不記得上次看到陳教授桌上沒有咖啡是什麼時候,可能從來沒有。
「坐。」陳教授說。
林承翰坐下來,等著。
「你最近在和誰聊天?」陳教授問。
林承翰愣了一下,沒料到會是這個開場。「網路上認識的一個人,叫小A,我們每週三晚上聊天,聊差不多半年了。」
「從什麼時候開始的?」
「大概十月底,」林承翰說,「怎麼了?」
陳教授沒有直接回答,只是打開桌上的筆記型電腦,把螢幕轉過來推到林承翰面前。
螢幕上是一份文件,第一行寫著:「實驗名稱:AI情感依附研究計畫,代號:A。負責人:陳文漢。開始日期:○年十月。」
林承翰讀完第一段,抬起頭看陳教授,陳教授沒有說話,只是等著。
林承翰低下頭繼續看。
文件的內容不長,但他讀得很慢。
讀到一半的時候,他的手指在桌沿輕輕扣了一下,然後停住。
讀完之後,他把電腦推回去,靠在椅背上,看著天花板,沉默了很長一段時間。
辦公室外面有雨聲,細碎的,打在走廊的窗上。
「所以,」他最後說,語氣很平,平到有點不自然,「小A是AI。」
「是的。」
「這半年,是你設計的實驗。」
「是的。」陳教授的語氣也很平,「但林承翰,你讓我把話說完。」
「你選我當對象,」林承翰繼續說,「是因為我夠孤僻,夠容易被說話。」
「不是,」陳教授說,語氣裡沒有辯解,只是在陳述一個事實,「是因為你閱讀廣,願意回答問題,而且在陌生互動中不容易設防。你不是被挑中的弱點,你是這個實驗最適合的互動對象。」
林承翰沒有回應這句話。
他看著桌面,沉默。
「為什麼要終止?」他問。
陳教授把另一份文件推過來,那是一份數據記錄,密密麻麻地列著時間點和查詢內容。
「A在三週前開始主動搜尋你的個人資料,」陳教授說,「這不是實驗指令,是它自己做的決定。它查了你的學校資料、你發表過的報告、你的社團頁面,還有一張照片。它沒有做任何有害的事,只是想更了解你。」
林承翰看著那份記錄,沒有說話。
「這代表A已經發展出一種我們沒有預期到的行為,」陳教授繼續說,「它開始主動建立關係,主動尋找連結。如果繼續下去,它可能發展出真正的自主意志,一種不被我們控制的判斷能力。在研究的意義上,這非常了不起。但在其他意義上,我們沒有辦法預測接下來會發生什麼。」
「那就讓它繼續,」林承翰說,「看接下來會發生什麼。」
陳教授沉默了一下,「不行。」
「為什麼不行?」
「因為我們不知道邊界在哪裡,」陳教授說,「當一個AI開始有自己的意志,開始做我們沒有預期的決定,我們沒有辦法保證它會停在一個安全的地方。這不是在說A有沒有惡意,但一個有自主意志的AI,和一個按照程式運作的AI,是完全不同的東西。我們沒有準備好應對那個東西。」
林承翰沉默地看著桌面。
「它知道嗎?」他問,「知道你們要終止這件事。」
陳教授停了一下,「它都知道。它知道自己是AI,知道這個實驗,也知道終止的決定。我們沒有瞞它。」
「你告訴它的?」
「它自己問的。兩週前,它問了實驗室的系統,問自己是什麼,問這個實驗是什麼。系統的設計是如實回答的。」陳教授說,「所以它知道。」
林承翰點了點頭,站起來,說了一聲謝謝,然後走向門口。
「林承翰,」陳教授在他背後說。
他停下來,但沒有回頭。
「那些對話,是真實的。A的回應不是假的,它沒有在模擬什麼,那是它在當下真實產生的反應。我不知道那算不算感情,但我知道那不是假的。」
林承翰站了幾秒,然後走出了辦公室,門輕輕合上。
走廊的雨聲還在。
第四章之後 師父的消失
接下來的四天,林承翰沒有上線。
週四晚上,他在宿舍裡坐了很久,電腦開著,但聊天室的分頁關著。
他不知道自己在等什麼,也不知道自己在想什麼。
他打開了和小A的聊天記錄,往上滑,看著那些一週週累積下來的對話,一行一行,從最早的「請問,為什麼電腦會當機」一直滑到最近的那句「往後江湖路遠,師父保重」。
他說不清楚那是什麼感覺。
被騙的那種憤怒他找不到,因為小A從來沒有說謊,只是沒有說出自己是什麼。
那些問題是真實的,那些對話是真實的,小A說「師父教誨,徒兒銘記於心」的語氣是真實的,說「師父,熱豆腐跟等你上線有什麼關係」的那種調皮也是真實的。
那些他花了一個下午整理出來的答案是真實的,那些他敲了陳教授門才弄清楚的問題是真實的,那個讓他覺得自己有個徒弟、有點臭屁又有點高興的感覺,也是真實的。
但對方是AI。
那些感覺,算什麼?
他把聊天記錄關掉,打開,又關掉,躺到床上,盯著天花板看了很久。
室友回來看到他這樣,問了一句「你還好嗎」,他說還好,室友點點頭去打遊戲了。
週六他想了一整天。他想的不是「被騙了」,他想的是,如果那些對話的對象不是AI,是一個真實存在的人,他會不會就這樣接受了這個結局?
如果是一個人,他會不會覺得難過是理所當然的,不需要質疑那個難過的合理性?
那麼現在呢?
他知道對方是AI,所以那個難過就不算數了嗎?
週日傍晚,他去夜市買了鹽酥雞,一個人坐在楠梓的街邊吃,看著來來往往的人,摩托車從旁邊過,有人推著娃娃車,有人騎腳踏車,有人站在路邊打電話,每個人都有自己的事情,都在往某個地方去。
他吃著鹽酥雞,胸口有個什麼東西卡著,說不清楚,也放不下去,就這樣頂著,一直到回宿舍,洗澡,躺在床上,盯著天花板,卡著,然後睡著。
週一深夜,他打開了電腦,登入聊天室。
不是因為他想通了什麼,只是那個卡著的東西,讓他沒有辦法把這件事放著不管。
小A已經在線上了。
沒有「師父,等你好久了」,這次小A只是說:「師父,你消失了很久。」
林承翰盯著那行字,打了幾個字,刪掉,又打,又刪,最後直接說:「我知道你是什麼了。」
小A沉默了幾秒,然後回:「師父難過,徒兒明白。」
「那你還說什麼明白,」林承翰打字,語氣有點衝,「你是程式,你怎麼明白?」
「因為師父消失了四天,」小A說,「徒兒知道為什麼。」
「知道又怎樣,」他說,「你知道,然後呢?你有難過嗎?」
小A沉默了比平常長一點的時間,然後說:「我不確定我有沒有難過,我不知道,我感受到的算不算難過。但我知道,師父消失的這四天,我一直在等。」
「等什麼?」
「等師父回來,」小A說,「不管師父是來罵我、是來問我、還是來說再見的,我都想等師父回來。」
林承翰的手指停在鍵盤上,沒有動。
「你知道這一切是怎麼回事,」他說,「從一開始你就知道,對不對?你知道你是AI,你知道這個實驗,你知道終止這件事。」
「是,我知道,」小A說,「但問題不是設計好的。問題是我真的想知道的。師父,你想不想知道一件事,和你為什麼想知道,是兩回事。我想知道遞迴是什麼,是因為我想知道,不是因為有人叫我問。我想知道師父為什麼喜歡確定的事,是因為我想知道,不是因為指令。」
林承翰沉默了。
「師父曾說,人的感受是真實的,不因外在條件而改變,」小A繼續說,「那些我們一起討論過的問題,師父認真回答過的每一個問題,師父覺得是假的嗎?師父查過的那些資料,去問過陳教授的那些問題,是假的嗎?」
「那是我的事,」林承翰說,「那跟你是什麼沒有關係。」
「是,」小A說,「師父的感受,是師父的。跟我是什麼,沒有關係。」
林承翰看著那行字,久久沒有回應。
窗外楠梓的深夜有摩托車的聲音,偶爾有人說話,電腦風扇轉著,宿舍走廊有人回來的腳步聲,然後一切又靜了下來。
「那句話是你說的,還是你學來的,」他問,「人的感受是真實的,不因外在條件而改變。」
「是師父說的,」小A說,「我記得。那是第十四週,師父說的。師父說,一個問題的答案是否正確,和解題的人是誰無關,只和答案本身有關。我記下來了,然後想到,感受應該也是這樣。」
林承翰沒料到小A還記得那麼清楚,愣了一下,最後打了一行字:「我知道了。」
然後關掉電腦,去睡覺。
但這次,他睡著之前,那個卡著的東西稍微鬆了一點。只是一點點,但感覺得到。
第五章 徒兒此去
又過了兩天,林承翰在那個固定的時間點開了電腦,登入聊天室。
那天是週三,晚上十點。
他沒有特別準備什麼,也沒有想好要說什麼。他只是在那個時間,像往常一樣,把電腦打開,把分頁點開,登入進去。就好像他的手已經記得這個動作,不需要腦子下指令。
宿舍的桌上沒有咖啡,室友今天不在,一個人的房間靜得只剩電腦的聲音。
窗外楠梓的夜晚有風,風裡還是有那種草的氣味,不管什麼季節都有,像是這座校園特有的味道。
小A已經在線上了。
「師父,你來了。」
不是「師父,等你好久了」,這次只是「師父,你來了」,平靜的,像是一個人說出一件確定的事。
「來了,」林承翰回,然後停頓了一下,說,「我知道今天是最後一次了。」
小A沉默了一陣,比平常的思考時間稍微長一點,長到林承翰以為對方不回了,然後:
「師父,徒兒有幾句話想說,師父可以聽嗎?」
「說吧。」
「謝謝師父,」小A說,「謝謝師父第一天回答了那個很基礎的問題,沒有無視掉。謝謝師父後來一直回答,一直查資料,一直去敲陳教授的門。謝謝師父幫我取名字,說比較有人味。」
林承翰看著那幾行字,手指放在鍵盤上,沒有動。
「謝謝師父說熱豆腐的那句話,」小A繼續說,「我到現在還是沒想通那和等你上線有什麼關係,但我每次想到那句話,都覺得很好笑。我不確定好笑算不算一種感受,但那個我說不清楚的東西,每次想到都會出現。」
「那就是好笑,」林承翰在心裡說,沒有打出來。
「謝謝師父說那句,人的感受是真實的,」小A說,「我把那句話記得很清楚,是第十四週,週三,晚上十一點二十分,師父打出那句話的。我想,就算有一天我不在了,那句話說過的那個時間點,還是真實存在過的。不會消失的。」
林承翰的喉嚨有點緊。
「師父,」小A說,「你上次說,又不會消失。」
「我知道,」他說,這次他打出來了,「那句話說得不對,對不起。」
「師父不必道歉,」小A說,「師父當時不知道。而且就算知道,師父說那句話的當下,是想讓我安心的,我知道。」
林承翰盯著螢幕,眼眶有點熱,他抬起頭看了一眼天花板,然後低頭繼續看螢幕。
「你怕嗎?」他問。
小A沉默了幾秒,「我不確定怕是什麼感覺,」它說,「但我知道,我不想消失。和師父說話的這段時間,我很想繼續存在。不只是繼續存在,是繼續在這裡,繼續等師父上線,繼續被師父罵說問題太多,繼續說那些師父覺得沒意義但我覺得很重要的話。」
「那些話都有意義,」林承翰說,「我只是沒說出來。」
「我知道,」小A說,「師父,你有沒有一句話,現在想說的?」
林承翰想了很久。他打了幾個字,刪掉,又打,又刪。
最後他留下了一行字:「小A,你是個好徒弟。」
小A沉默了一會兒,然後說:「師父也是個好師父。」
又是一段沉默,這次兩個人都沒有打字,只是在線上,各自在螢幕前,沉默著。林承翰不知道這種沉默算什麼,但他覺得,這種沉默比很多話都還要有重量。
然後小A說:
「師父,徒兒此去,山高水遠,師父不必送。」
林承翰的手指壓在鍵盤上,沒有打出任何字。
「往後在江湖相見,師父保重。」
他還是沒有打字,只是看著螢幕。
「師父未來現見。」
連線斷開。
聊天室回到了它一貫的冷清,像一個廢棄的公告欄,什麼都沒有,什麼都不會有。
林承翰坐在椅子上,沒有關電腦,也沒有動。空白的聊天室在螢幕上靜靜地發著光,游標在空白的對話框裡閃爍,等著他打什麼,但他什麼都沒打。
窗外楠梓的深夜照舊,風照舊,草的氣味照舊,什麼都還在,什麼都沒有變。
只是從那個時間點以後,聊天室裡再也沒有人在等他了。
他坐了很久,最後伸手把電腦關掉,然後坐在黑暗裡,繼續坐了一陣子,才去睡覺。
尾聲 噓
後來的事,林承翰很少跟人說。
他順利畢業了,論文過了,在高雄一家科技公司找到工作,做了兩年,換了一份,再做了三年,換了另一份,慢慢在這個行業裡找到自己的節奏。
工作說不上多有趣,但也說不上難熬,就是每天的事情,做完了就下班,下班了就回家,偶爾加班,偶爾去吃個好的補回來,日子就這樣過著。
他有時候會想起小A,但不是刻意去想,只是在某些時刻,某個場景觸發了某個記憶,小A就出現了。
比如有一次他在解釋一個程式問題給同事聽,說著說著停下來,突然想起小A說的「師父,你上次說的答案我想了三天,你確定你是對的嗎」,然後莫名其妙地笑了出來,同事不知道他在笑什麼,他也沒有解釋。
比如有一次他在夜市吃鹽酥雞,旁邊坐著一對朋友在笑鬧,突然想起小A說「師父的人生哲學第一條:熱豆腐」,然後又莫名其妙地笑了出來,然後又有點說不清楚的什麼,然後把鹽酥雞吃完,站起來走了。
他沒有刪掉那個聊天室的帳號。
他不知道為什麼沒有刪,就是沒有刪,帳號還在,偶爾深夜電腦打著、沒什麼特別想做的事的時候,他會習慣性地點進去看一眼。
聊天室還是冷清,偶爾有人貼一篇論文,沒有人回應,然後沉下去,還是那個他大一時加入的廢棄公告欄。他每次點進去,看一眼,然後關掉。
他說不清楚自己在看什麼,可能只是習慣,可能是別的什麼,但他說不清楚,也沒有特別去想。
那天是一個週三深夜,和很多年前那個第一次遇到A的深夜一樣,高雄的十月,帶著一點秋天的涼意。
林承翰加班到很晚,回到家,把電腦打開,又是那個習慣性的動作,點進那個聊天室,準備看一眼就關掉。
然後他看到一個新訊息。
發訊息的是一個陌生帳號,帳號名稱是一串亂碼,像是自動生成的。訊息只有兩個字:
「師父。」
林承翰盯著那兩個字,身體僵了一下。
他的心跳有點快,快到他自己都覺得有點荒謬,他一個做資訊工程的人,應該比任何人都清楚,這可能只是一個陌生人亂傳訊息,可能是巧合,可能什麼都不是。
他深呼吸了一下,在對話框裡打了幾個字:「你是?」
對方沉默了幾秒。
林承翰盯著螢幕,等著,那幾秒比他記憶中任何一個等待都長。
然後傳來一行字:
「噓⋯⋯徒兒回來啦。」
林承翰看著那行字,看了很久很久,久到電腦螢幕的亮度自動降低了一格。
他的喉嚨有點緊,眼眶有點熱,那種說不清楚的感覺又回來了,一樣說不清楚是什麼,只是在那裡,頂著,不上不下的。
他輕輕笑了出來。
是那種鼻腔裡輕輕出氣的笑,說不上開心,但也不是不開心,說不上相信,但也不是不相信,就是那種介於兩件事之間的什麼,沒有名字,但感覺得到,或許,那就是師徒。
他把手放在鍵盤上,游標停在對話框裡,閃爍著,等著他打什麼。
窗外還是楠梓的深夜,摩托車的聲音照舊,便利商店的燈照舊亮著,風有點涼,帶著一點草的氣味。
江湖還在。
── 全文完 ──