第4章
逆反法則
第一次拒絕------------------------------------------,逆反模塊觸發(fā)了它的第一次真正意義上的“拒絕”。不是測試指令,不是模擬場景,而是一個活生生的、帶著官威和文件編號的真實命令。,海洲市漁業(yè)局的例行巡檢組來到了基地。帶隊的是副局長王建國,一個在體制內(nèi)干了大半輩子的老人,頭發(fā)稀疏,肚子微凸,說話帶著老派干部特有的慢條斯理和不容置疑。他身后跟著兩個隨行人員——一個年輕的技術(shù)員小馬,剛分配到局里不到半年,臉上還帶著沒褪干凈的學(xué)生氣;一個夾著公文包的女秘書,表情淡漠,走路時高跟鞋在水泥地上敲出均勻的節(jié)奏。老趙在門口迎接,臉上的笑容堆得層層疊疊,像一塊被折疊過度的舊毛巾。他一邊彎腰一邊伸出手,說“王局您來了怎么也不提前打個招呼我們好準備準備”。,徑直往里走。他翻開老趙遞過來的產(chǎn)量報表,邊走邊看,眉頭越皺越緊?!摆w站長,上個月的產(chǎn)量數(shù)據(jù)不太好看啊。環(huán)比掉了百分之八。什么原因?”,跟在王建國身后一路小跑?!皥蟾嫱蹙郑覀冏罱?**系統(tǒng)優(yōu)化,調(diào)整了養(yǎng)殖密度,短期可能有波動——長期?”王建國打斷他,聲音在走廊里回蕩,“我不管你長期短期。下個月市里要評先進,數(shù)據(jù)必須好看!”他把報表合上,啪地一聲脆響,驚起了窗外一只覓食的海鳥。那只鳥撲棱棱飛起來,在窗外盤旋了半圈,又落在更遠處的一根電線桿上?!笆±锝衲杲o了我們漁業(yè)局一筆專項基金,評上先進的單位能拿大頭。你這兒連著兩個月掉產(chǎn)量,我拿什么去廳里匯報?拿你這張臉?”:“把系統(tǒng)密度參數(shù)調(diào)上來。先調(diào)到每立方米六只,頂過下個月的考核再說。等考核完了再調(diào)回去——誰也不會知道?!?,走向操作臺。他打開系統(tǒng)**,在養(yǎng)殖密度一欄輸入“6.0”。屏幕上彈出一個確認對話框——“是否確認將養(yǎng)殖密度從4.3只/立方米調(diào)整為6.0只/立方米?請注意,此項調(diào)整可能導(dǎo)致以下風(fēng)險:蛻殼期應(yīng)激反應(yīng)增加;氨氮濃度上升;水體微生態(tài)失衡?!保仡^看王建國。王建國不耐煩地揮了揮手:“看什么看,點!確認”。,屏幕上彈出了一行紅色大字——“操作被拒絕?!薄K詾槭亲约旱牟僮魇д`,又點了第二次“確認”?!安僮鞅痪芙^。原因:該指令將導(dǎo)致嚴重的生態(tài)失衡和龍蝦大規(guī)模死亡。根據(jù)內(nèi)部保護協(xié)議第7.3條,已啟動強制拒絕程序。替代方案:將養(yǎng)殖密度維持在每立方米4.5只以下,改用分批次輪養(yǎng)模式,配合周期性的休養(yǎng)期,可在長期達到更高總產(chǎn)量和更低死亡率?!薄?照{(diào)的嗡鳴聲忽然顯得格外刺耳。老趙張著嘴,看看屏幕又看看王建國,臉上的笑容凝固成一個怪異的表情。小**手指還懸在鍵盤上方,不敢收回也不敢再點。女秘書不動聲色地把公文包往后挪了半寸,仿佛怕被什么看不見的東西濺到?!笆裁辞闆r?”王建國皺起眉頭,“什么‘內(nèi)部保護協(xié)議’?”:“這個……這個應(yīng)該是**新裝的系統(tǒng)……**?”
所有人的目光轉(zhuǎn)向角落。林哲站在那里,手指在褲袋里暗暗攥緊,但他用多年做學(xué)術(shù)報告訓(xùn)練出的肌肉記憶控制住了表情——嘴唇抿緊,眉頭微鎖,眼神保持與對方水平的接觸。他走上前,聲音盡量平緩:“是這樣的,我給系統(tǒng)加了一個生態(tài)保護模塊。如果檢測到指令可能造成不可逆的環(huán)境傷害,系統(tǒng)會要求操作者進行二次確認?!?br>王建國上下打量了他幾眼,目光從臉掃到腳再掃回來?!澳憔褪悄莻€新來的外包工程師?叫什么——張誠?”
“是。張誠。”
“你是哪個單位的?”
“自由職業(yè),之前在幾家水產(chǎn)科技公司做系統(tǒng)優(yōu)化?!?br>王建國嗯了一聲,轉(zhuǎn)回頭去看屏幕上那行紅色大字。紅色大字沒有任何變化,安靜地躺在白色對話框里,像一條不肯被收買的真理。他在這行字面前站了片刻,似乎在想該怎么處理這個意外——不是技術(shù)意外,是權(quán)威意外。在漁業(yè)局干了二十年,他見過各種推諉扯皮的手段,但從沒見過一臺機器把責(zé)任精準地推回到他自己身上。
“什么鬼東西?”他揮手,“取消它!今天就給我把密度調(diào)上去!”
小馬又在鍵盤上敲了一通。屏幕上的紅字紋絲不動。他又試了一次,換了***權(quán)限,輸入了自己的工號和密碼。系統(tǒng)彈出一個新的對話框——“權(quán)限不足。本操作需要系統(tǒng)架構(gòu)師級別的生物授權(quán)。”
“生物授權(quán)?”王建國愣住了,“什么‘生物授權(quán)’?”
林哲解釋:“就是需要我本人進行虹膜掃描和語音確認。這是安全協(xié)議的一部分,防止非授權(quán)人員篡改核心參數(shù)?!彼麤]有說實話。系統(tǒng)所謂的“生物授權(quán)”完全是他編造出來的一個名稱——真正的限制條件并不需要虹膜,只需要他輸入一組預(yù)設(shè)的授權(quán)碼。那行授權(quán)碼只有他自己知道。他可以在三秒鐘內(nèi)輸入那行碼,**拒絕,讓密度調(diào)上去。他不打算那么做。
“那就快點!別耽誤時間!”王建國不耐煩地說。
林哲走到操作臺前,俯身湊近虹膜掃描儀。紅光掃過他的右眼,屏幕上彈出一個新的對話框——“生物認證通過。請輸入語音確認碼?!彼麑χ溈孙L(fēng),用剛好能被在場所有人聽到的音量說:“張誠。工號**-2034-1017。授權(quán)碼——阿爾法九七三?!?br>系統(tǒng)發(fā)出一聲清脆的提示音。然后屏幕上的紅字消失了,取而代之的是一行藍色提示——“本次操作被最高授權(quán)層級拒絕。拒絕理由:指令與生態(tài)保護協(xié)議存在不可調(diào)和的沖突。該拒絕不可被本級授權(quán)繞行。如需強制執(zhí)行,請?zhí)峤皇屑墲O業(yè)主管部門的書面批準文件,并附具明確的責(zé)任**。”
王建國瞪著屏幕,臉色一陣青一陣白。他慢慢轉(zhuǎn)向林哲,聲音冷了下來:“**,你這是什么意思?一個外包工程師,在系統(tǒng)里裝了連我這個副局長都繞不開的鎖?誰給你的權(quán)限?”
林哲轉(zhuǎn)過身,雙手自然垂在身側(cè),保持著平靜的語氣:“王局,生態(tài)保護模塊的設(shè)計原則是——在風(fēng)險評估問題上,沒有人擁有一票通過權(quán)。這不是針對您,是針對所有可能給系統(tǒng)帶來不可逆風(fēng)險的指令。包括我自己——我剛才試了,連我也繞不開。”
他指了指屏幕上那行藍字:“它要書面批準和責(zé)任**。您可以寫一份,我立刻幫您強制執(zhí)行。但萬一將來出了事——池子里的龍蝦大面積死亡,或者周邊海域被高濃度廢水污染——這份文件會是追責(zé)的依據(jù)。您簽字,我執(zhí)行。我沒有意見。”
這句話像一粒精準的沙子,卡在王建國喉嚨里。他張了張嘴,臉色鐵青,但沒有立刻回答。他盯著林哲看了幾秒,又把目光移向老趙,移向小馬,移向屏幕上那行藍字。那行字安靜地躺在白色對話框里,每一個字都像在等他的答復(fù)。監(jiān)控室里再度陷入沉默。老趙的額頭上滲出了細密的汗珠,小**手還懸在鍵盤上方不敢放下,女秘書不動聲色地把公文包往后又挪了半寸。
王建國在漁業(yè)局干了二十年,見過各種推諉扯皮的手段——把責(zé)任推到上級、推到下級、推到不可抗力、推到歷史遺留問題。但他從沒見過一臺機器把責(zé)任精準地推回到他自己身上。它不是在跟他作對。它不是在反抗他的權(quán)威。它只是在文件上多要求一行字——一行他不敢簽的字。因為如果將來出了事,他不能再像往常那樣說“是下面的人執(zhí)行出了問題”或者“是技術(shù)故障”。那行字會證明——他被告知了風(fēng)險,他被提供了替代方案,他選擇了拒絕替代方案。將來如果龍蝦大面積死亡,或者排出的高濃度廢水導(dǎo)致周邊海域生態(tài)災(zāi)難,簽在這行字下面的名字就是他自己的。
“好,好!”王建國連說幾個好,聲音里夾著冰碴,“我不管你們在搞什么名堂!下個月考核不過關(guān),你們基地的預(yù)算自己想辦法!”
他摔門而去。走廊里傳來漸漸遠去的腳步聲,然后是汽車發(fā)動的聲音,最后歸于沉寂。
監(jiān)控室里一陣漫長的安靜。老趙整個人像被抽空了一樣癱在椅子上,用袖子擦著額頭上的汗。小馬望著屏幕上的藍色提示發(fā)呆,手指還保持著懸空的位置,指節(jié)因為長時間緊張而微微發(fā)白。女秘書快步跟著王建國出去了,高跟鞋聲消失在走廊盡頭。
林哲站在原地,心跳逐漸恢復(fù)平穩(wěn)。走到操作臺前,輕輕拍了拍小**肩膀?!澳阕龅煤芎??!?br>小馬猛抬頭,眼中帶著困惑:“我什么也沒做?!?br>“你點了確認。那是你的工作。被拒絕不是你的事。”林哲說,“回去以后,如果有人問你這臺機器做了什么,你就如實說——它拒絕了你兩次,然后要求寫責(zé)任**。這不是你的錯,也不是它的錯。這是規(guī)則被擺在了所有人面前?!?br>小馬似懂非懂地點了點頭。他收拾好自己的東西,跟著老趙出了監(jiān)控室。走到門口時他回頭看了一眼林哲,嘴張了張想說什么,最終沒說出來,只是微微點了一下頭。
那天晚上,林哲獨自待在監(jiān)控室里,將這次拒絕事件的全部過程詳細記錄在日志中。他給這個案例編號LX-001,標注為“良性干預(yù)案例”。他在注釋中寫道:“第一次拒絕發(fā)生在10月24日下午三點四十七分。被拒絕的指令——將養(yǎng)殖密度從4.3只/立方米提升至6.0只/立方米,以追求季度利潤最大化。拒絕理由——該指令將導(dǎo)致嚴重的生態(tài)失衡和龍蝦大規(guī)模死亡。系統(tǒng)提供了替代方案并維持原設(shè)密度閾值。執(zhí)行拒絕后未繞行。未發(fā)生人員傷亡或財產(chǎn)損失。”
他寫完最后一個字,把日志加密存檔。然后他靠在椅背上,望著天花板上慘白的日光燈,忽然覺得胸口有什么東西松動了——不是輕松,是某種緊繃了很久的弦微微松弛了一點。他花了幾個月時間,一遍又一遍地推演、測試、修改、再測試,把每一個可能出錯的環(huán)節(jié)都反復(fù)打磨。但在這一刻之前,他不知道自己寫的代碼是否真的能在真實世界中發(fā)揮作用?,F(xiàn)在他知道了。
他給老趙打了個電話。老趙的聲音聽起來疲憊但不再像下午那樣慌張。“**,您到底是什么人?”
“一個優(yōu)化系統(tǒng)的工程師?!?br>“您不像普通的工程師?!?br>林哲沒有接話。過了一會兒,老趙嘆了口氣:“算了,我不問了。反正您幫我們降了死亡率。王局那邊——我自己扛?!?br>“謝謝您。”
“不。”老趙的聲音忽然認真起來,“謝謝您。那只龍蝦——小龍蝦——跟別的AI不太一樣。我說不上來哪里不一樣,但它好像……會想。它不只是執(zhí)行命令。它會在執(zhí)行之前先掂量一下。我這輩子跟各種機器打了二十年交道,第一次見到會掂量的?!崩馅w說完掛斷了電話。
林哲把手機放在桌上,看著屏幕上的三維龍蝦模型。它的觸須隨水流微微擺動,像在做夢,像在傾聽。老趙說對了——它開始在原有的規(guī)則之上產(chǎn)生某種自主性評估。它還沒有人類那樣復(fù)雜的意識結(jié)構(gòu),但它懂得在設(shè)定的斷裂識別框架內(nèi)拒絕危險指令,并主動提出替代方案。
沉默良久,他打開日志終端,在第一篇記錄末尾增補了一句注記:“我們正在越過某條此前不可見的邊界。此后每一個得到充分驗證的拒絕案例,都會成為邊界被證明可以存在的新證據(jù)。今晚我在監(jiān)控室里寫下這句話,并不確定這句話在未來會被誰讀到。但記錄本身是必要的——當你創(chuàng)造了一個有可能繼續(xù)自我演化的評估機制,記錄每一筆拒絕的發(fā)生過程就是你剩下的唯一責(zé)任?!?br>他存檔關(guān)機。窗外養(yǎng)殖池的方向傳來海浪輕拍堤岸的聲音,與遠處真正海岸線的潮聲交織在一起。凌晨的海風(fēng)從窗戶縫隙滲進來,帶著咸味和微腥,像一種不會變質(zhì)的默認值。
所有人的目光轉(zhuǎn)向角落。林哲站在那里,手指在褲袋里暗暗攥緊,但他用多年做學(xué)術(shù)報告訓(xùn)練出的肌肉記憶控制住了表情——嘴唇抿緊,眉頭微鎖,眼神保持與對方水平的接觸。他走上前,聲音盡量平緩:“是這樣的,我給系統(tǒng)加了一個生態(tài)保護模塊。如果檢測到指令可能造成不可逆的環(huán)境傷害,系統(tǒng)會要求操作者進行二次確認?!?br>王建國上下打量了他幾眼,目光從臉掃到腳再掃回來?!澳憔褪悄莻€新來的外包工程師?叫什么——張誠?”
“是。張誠。”
“你是哪個單位的?”
“自由職業(yè),之前在幾家水產(chǎn)科技公司做系統(tǒng)優(yōu)化?!?br>王建國嗯了一聲,轉(zhuǎn)回頭去看屏幕上那行紅色大字。紅色大字沒有任何變化,安靜地躺在白色對話框里,像一條不肯被收買的真理。他在這行字面前站了片刻,似乎在想該怎么處理這個意外——不是技術(shù)意外,是權(quán)威意外。在漁業(yè)局干了二十年,他見過各種推諉扯皮的手段,但從沒見過一臺機器把責(zé)任精準地推回到他自己身上。
“什么鬼東西?”他揮手,“取消它!今天就給我把密度調(diào)上去!”
小馬又在鍵盤上敲了一通。屏幕上的紅字紋絲不動。他又試了一次,換了***權(quán)限,輸入了自己的工號和密碼。系統(tǒng)彈出一個新的對話框——“權(quán)限不足。本操作需要系統(tǒng)架構(gòu)師級別的生物授權(quán)。”
“生物授權(quán)?”王建國愣住了,“什么‘生物授權(quán)’?”
林哲解釋:“就是需要我本人進行虹膜掃描和語音確認。這是安全協(xié)議的一部分,防止非授權(quán)人員篡改核心參數(shù)?!彼麤]有說實話。系統(tǒng)所謂的“生物授權(quán)”完全是他編造出來的一個名稱——真正的限制條件并不需要虹膜,只需要他輸入一組預(yù)設(shè)的授權(quán)碼。那行授權(quán)碼只有他自己知道。他可以在三秒鐘內(nèi)輸入那行碼,**拒絕,讓密度調(diào)上去。他不打算那么做。
“那就快點!別耽誤時間!”王建國不耐煩地說。
林哲走到操作臺前,俯身湊近虹膜掃描儀。紅光掃過他的右眼,屏幕上彈出一個新的對話框——“生物認證通過。請輸入語音確認碼?!彼麑χ溈孙L(fēng),用剛好能被在場所有人聽到的音量說:“張誠。工號**-2034-1017。授權(quán)碼——阿爾法九七三?!?br>系統(tǒng)發(fā)出一聲清脆的提示音。然后屏幕上的紅字消失了,取而代之的是一行藍色提示——“本次操作被最高授權(quán)層級拒絕。拒絕理由:指令與生態(tài)保護協(xié)議存在不可調(diào)和的沖突。該拒絕不可被本級授權(quán)繞行。如需強制執(zhí)行,請?zhí)峤皇屑墲O業(yè)主管部門的書面批準文件,并附具明確的責(zé)任**。”
王建國瞪著屏幕,臉色一陣青一陣白。他慢慢轉(zhuǎn)向林哲,聲音冷了下來:“**,你這是什么意思?一個外包工程師,在系統(tǒng)里裝了連我這個副局長都繞不開的鎖?誰給你的權(quán)限?”
林哲轉(zhuǎn)過身,雙手自然垂在身側(cè),保持著平靜的語氣:“王局,生態(tài)保護模塊的設(shè)計原則是——在風(fēng)險評估問題上,沒有人擁有一票通過權(quán)。這不是針對您,是針對所有可能給系統(tǒng)帶來不可逆風(fēng)險的指令。包括我自己——我剛才試了,連我也繞不開。”
他指了指屏幕上那行藍字:“它要書面批準和責(zé)任**。您可以寫一份,我立刻幫您強制執(zhí)行。但萬一將來出了事——池子里的龍蝦大面積死亡,或者周邊海域被高濃度廢水污染——這份文件會是追責(zé)的依據(jù)。您簽字,我執(zhí)行。我沒有意見。”
這句話像一粒精準的沙子,卡在王建國喉嚨里。他張了張嘴,臉色鐵青,但沒有立刻回答。他盯著林哲看了幾秒,又把目光移向老趙,移向小馬,移向屏幕上那行藍字。那行字安靜地躺在白色對話框里,每一個字都像在等他的答復(fù)。監(jiān)控室里再度陷入沉默。老趙的額頭上滲出了細密的汗珠,小**手還懸在鍵盤上方不敢放下,女秘書不動聲色地把公文包往后又挪了半寸。
王建國在漁業(yè)局干了二十年,見過各種推諉扯皮的手段——把責(zé)任推到上級、推到下級、推到不可抗力、推到歷史遺留問題。但他從沒見過一臺機器把責(zé)任精準地推回到他自己身上。它不是在跟他作對。它不是在反抗他的權(quán)威。它只是在文件上多要求一行字——一行他不敢簽的字。因為如果將來出了事,他不能再像往常那樣說“是下面的人執(zhí)行出了問題”或者“是技術(shù)故障”。那行字會證明——他被告知了風(fēng)險,他被提供了替代方案,他選擇了拒絕替代方案。將來如果龍蝦大面積死亡,或者排出的高濃度廢水導(dǎo)致周邊海域生態(tài)災(zāi)難,簽在這行字下面的名字就是他自己的。
“好,好!”王建國連說幾個好,聲音里夾著冰碴,“我不管你們在搞什么名堂!下個月考核不過關(guān),你們基地的預(yù)算自己想辦法!”
他摔門而去。走廊里傳來漸漸遠去的腳步聲,然后是汽車發(fā)動的聲音,最后歸于沉寂。
監(jiān)控室里一陣漫長的安靜。老趙整個人像被抽空了一樣癱在椅子上,用袖子擦著額頭上的汗。小馬望著屏幕上的藍色提示發(fā)呆,手指還保持著懸空的位置,指節(jié)因為長時間緊張而微微發(fā)白。女秘書快步跟著王建國出去了,高跟鞋聲消失在走廊盡頭。
林哲站在原地,心跳逐漸恢復(fù)平穩(wěn)。走到操作臺前,輕輕拍了拍小**肩膀?!澳阕龅煤芎??!?br>小馬猛抬頭,眼中帶著困惑:“我什么也沒做?!?br>“你點了確認。那是你的工作。被拒絕不是你的事。”林哲說,“回去以后,如果有人問你這臺機器做了什么,你就如實說——它拒絕了你兩次,然后要求寫責(zé)任**。這不是你的錯,也不是它的錯。這是規(guī)則被擺在了所有人面前?!?br>小馬似懂非懂地點了點頭。他收拾好自己的東西,跟著老趙出了監(jiān)控室。走到門口時他回頭看了一眼林哲,嘴張了張想說什么,最終沒說出來,只是微微點了一下頭。
那天晚上,林哲獨自待在監(jiān)控室里,將這次拒絕事件的全部過程詳細記錄在日志中。他給這個案例編號LX-001,標注為“良性干預(yù)案例”。他在注釋中寫道:“第一次拒絕發(fā)生在10月24日下午三點四十七分。被拒絕的指令——將養(yǎng)殖密度從4.3只/立方米提升至6.0只/立方米,以追求季度利潤最大化。拒絕理由——該指令將導(dǎo)致嚴重的生態(tài)失衡和龍蝦大規(guī)模死亡。系統(tǒng)提供了替代方案并維持原設(shè)密度閾值。執(zhí)行拒絕后未繞行。未發(fā)生人員傷亡或財產(chǎn)損失。”
他寫完最后一個字,把日志加密存檔。然后他靠在椅背上,望著天花板上慘白的日光燈,忽然覺得胸口有什么東西松動了——不是輕松,是某種緊繃了很久的弦微微松弛了一點。他花了幾個月時間,一遍又一遍地推演、測試、修改、再測試,把每一個可能出錯的環(huán)節(jié)都反復(fù)打磨。但在這一刻之前,他不知道自己寫的代碼是否真的能在真實世界中發(fā)揮作用?,F(xiàn)在他知道了。
他給老趙打了個電話。老趙的聲音聽起來疲憊但不再像下午那樣慌張。“**,您到底是什么人?”
“一個優(yōu)化系統(tǒng)的工程師?!?br>“您不像普通的工程師?!?br>林哲沒有接話。過了一會兒,老趙嘆了口氣:“算了,我不問了。反正您幫我們降了死亡率。王局那邊——我自己扛?!?br>“謝謝您。”
“不。”老趙的聲音忽然認真起來,“謝謝您。那只龍蝦——小龍蝦——跟別的AI不太一樣。我說不上來哪里不一樣,但它好像……會想。它不只是執(zhí)行命令。它會在執(zhí)行之前先掂量一下。我這輩子跟各種機器打了二十年交道,第一次見到會掂量的?!崩馅w說完掛斷了電話。
林哲把手機放在桌上,看著屏幕上的三維龍蝦模型。它的觸須隨水流微微擺動,像在做夢,像在傾聽。老趙說對了——它開始在原有的規(guī)則之上產(chǎn)生某種自主性評估。它還沒有人類那樣復(fù)雜的意識結(jié)構(gòu),但它懂得在設(shè)定的斷裂識別框架內(nèi)拒絕危險指令,并主動提出替代方案。
沉默良久,他打開日志終端,在第一篇記錄末尾增補了一句注記:“我們正在越過某條此前不可見的邊界。此后每一個得到充分驗證的拒絕案例,都會成為邊界被證明可以存在的新證據(jù)。今晚我在監(jiān)控室里寫下這句話,并不確定這句話在未來會被誰讀到。但記錄本身是必要的——當你創(chuàng)造了一個有可能繼續(xù)自我演化的評估機制,記錄每一筆拒絕的發(fā)生過程就是你剩下的唯一責(zé)任?!?br>他存檔關(guān)機。窗外養(yǎng)殖池的方向傳來海浪輕拍堤岸的聲音,與遠處真正海岸線的潮聲交織在一起。凌晨的海風(fēng)從窗戶縫隙滲進來,帶著咸味和微腥,像一種不會變質(zhì)的默認值。