約瑟夫·魏岑鮑姆(Joseph Weizenbaum)所創造的ELIZA,其相對簡單的程式輸出卻讓許多使用者賦予了深刻的意義,這令他本人也感到驚訝。ELIZA被譽為世界上第一位AI明星,一個以聊天機器人形式存在的友善治療師,溫和地探詢使用者的煩惱。

這項人機互動實驗獲得的熱烈迴響,甚至連魏岑鮑姆都始料未及。有些人認為它預示著自動化心理治療時代的來臨,而另一些人則相信該程式展現了感知能力,這種謬誤很快被稱為「ELIZA效應」。

根據已發表的描述,ELIZA曾在許多不同的電腦上實作,但直到最近,其原始程式碼才從麻省理工學院的檔案中被挖掘出來。在麻省理工學院出版社剛出版的《發明ELIZA:首款聊天機器人如何塑造AI的未來》一書中,一群研究人員分析了這些程式碼,揭示了一個比假裝精神病學家更為複雜的程式。

事實上,ELIZA能夠扮演多種不同的角色。作者們還忠實地模擬了治療師角色,讀者在閱讀下面的書摘後可以親自體驗。

ELIZA軟體程式於1960年代中期首次亮相時,徹底改變了人們對與電腦互動的看法。作為首款聊天機器人,ELIZA展示了計算機如何進行對話,引發了一系列至今仍具影響力的社會和技術問題。

如今,我們對於即時與機器互動、透過文字交談,甚至對著空氣詢問天氣已習以為常。在許多方面,ELIZA不僅塑造了我們與電腦互動的方式,也影響了我們對電腦本身的看法。它開始將科幻小說中對電腦運作方式的想像變為現實。

本文改編自麻省理工學院出版社2026年出版的新書《發明ELIZA:首款聊天機器人如何塑造AI的未來》。

儘管ELIZA遠非完美的對話夥伴,但它仍讓使用者感到驚訝。最近對ELIZA原始程式碼的發現與「考古」工作,代表著計算機歷史上的一項重要突破。

透過檢視ELIZA的實際實作,而非依賴後來的重建和重新實作,我們挑戰了對這個關鍵軟體產物長期以來被視為理所當然的假設。

例如,原始程式碼揭示ELIZA不僅僅是一個簡單的模式匹配聊天機器人,而是一個為多個「人格」(或稱腳本)設計的複雜平台,具備腳本編輯和上下文記憶等複雜功能。

大多數人將其與ELIZA程式混淆的腳本,實際上名為Doctor,它扮演著心理治療師的角色。然而,就像現代聊天機器人可以被提示以不同個性行事一樣,ELIZA也能扮演許多角色。

「這些程式碼和腳本……揭示了關於語言、治療和人機互動的潛在假設,這些假設持續影響著現代AI的發展。」這些出土的材料改變了我們對早期AI發展的理解,證明約瑟夫·魏岑鮑姆的技術創新遠比先前記載的更為先進。

此外,他發表的描述與實際實作之間的差異,也幫助我們看到理論計算模型與其在電腦原始程式碼中的具體實例之間的鴻溝,這種張力至今仍在塑造數位文化。

儘管ELIZA問世後的數十年裡出現了許多技術創新,但檢視ELIZA/Doctor的程式碼,提供了一個難得的機會,讓我們一窺最早將人類對話模型化的正式嘗試之一。ELIZA之所以特別引人入勝,不僅在於其歷史意義,更在於它揭示了魏岑鮑姆對計算機和人機互動的看法。

這些程式碼和腳本不僅展示了1960年代的程式設計技術;它們還揭示了關於語言、治療和人機互動的潛在假設,這些假設持續影響著現代AI的發展。透過檢視這些程式碼,我們可以開始揭示那些讓一個基本模式匹配系統,能夠創造出令人信服的理解模擬的複雜語言學和程式設計技術。

但在我們閱讀程式碼之前,讓我們先概述一下這個系統。

ELIZA如何創造「人格」?ELIZA與Doctor之間的架構區別,代表著AI歷史上一個重要的設計決策。

我們可以將ELIZA視為一個互動系統,而Doctor則是魏岑鮑姆設計的其中一套規則。這種分離,體現在ELIZA的系統-腳本二分法中,預示了許多當代軟體模式,從「配置即資料」到外掛程式架構和領域特定語言。

根據已發表的期刊文章,ELIZA曾在許多平台上被重新創建,例如IBM PC。然而,其原始程式碼卻在麻省理工學院的檔案中塵封多年。

毫無疑問,1960年代計算機的歷史背景也從根本上塑造了ELIZA的架構。反映物質限制的計算決策會產生路徑依賴,並最終成為程式設計的文化規範。

這些限制體現在ELIZA的單次處理、磁帶儲存和堆疊導向實作中。然而,在這些限制之下,魏岑鮑姆仍設計出了一個優雅的解決方案。

這些技術特性,儘管使用者看不見,卻對於創造讓ELIZA如此引人入勝的「理解」幻覺至關重要。

魏岑鮑姆在1966年1月出版的《計算機協會通訊》(CACM)期刊上,一篇長達10頁的論文中解釋了ELIZA的許多技術特性。但他選擇省略了一些關鍵細節。

在那篇論文中,魏岑鮑姆發表了ELIZA最著名的對話,對話開頭是:「男人都一樣。」「怎麼說?」「他們總是為這為那煩我們。」「你能舉個具體例子嗎?」「嗯,我男朋友讓我來這裡。」

這段對話作為Doctor腳本產生的一個範例,標誌著ELIZA在1966年的首次公開亮相。透過找到ELIZA的原始程式碼並檢視其如何執行Doctor腳本,我們現在能更好地理解系統的這兩個獨立部分,並能探索ELIZA的許多其他「人格」。

在迄今已知的一些其他腳本中,ELIZA被編程來討論數學、詩歌、顏色、悖論、同步、相對論、法國和電梯等主題。

這些腳本就像模板一樣。它們是結構化資料,指示ELIZA系統「扮演」特定的任務或角色。

透過比較檔案中和已發表的ELIZA對話,包括與Doctor腳本的互動,我們可以更深入地了解機器人「人格」及其運作方式,並密切關注機器人如何在系統與互動者之間喚起社會動態。

最終,研究這些對話和腳本證明了協作在這些交流中扮演的關鍵角色,因為機器人與使用者共同創造了互動的意義。

為了理解ELIZA的全部能力和對話可能性,讓我們來看看為ELIZA系統創建的各種腳本。

每個ELIZA腳本的區別在於其主題內容以及傳達內容所使用的語言和風格選擇。這些選擇並非中立;

可以說,它們透過腳本的語言模式、詞彙和對話方式,建構出具有特定特徵的「人格」。簡而言之,重要的不僅是你說了什麼,還有你怎麼說。

「其目的與其說是創造一個功能性的自動化治療師,不如說是找到一個適當受限的角色,以符合程式設計環境的限制。」

例如,在Doctor腳本中,魏岑鮑姆刻意模仿了羅傑斯式「談話」治療師的風格。他選擇這個角色,因為精神病學模式是少數幾種對話類型之一,其中一個人可以「假裝對現實世界幾乎一無所知」。

「舉例來說,如果一個人告訴精神科醫生『我搭船出遊很久』,而他回應『跟我說說船的事』,你不會認為他對船一無所知,而是他有目的性地引導後續對話。」ELIZA的第一批使用者是透過電傳打字機終端機與其互動的。

因此,為ELIZA創建的最著名「人格」是一種技術上的便利。正如人機互動專家露西·薩奇曼(Lucy Suchman)所解釋的:「Doctor程式利用了『共享前提可以不言而喻』的原則:在對話中我們說得越少,所說的內容就越被認為是理所當然的。」

在創造最初的ELIZA效應時,「少即是多」。

其目的與其說是創造一個功能性的自動化治療師,不如說是找到一個適當受限的角色,以符合程式設計環境的限制。

隨後,魏岑鮑姆透過選擇能喚起修辭語氣和角色特徵的特定詞語來編寫腳本,例如「讓我們進一步討論你為何……」、「這讓你想到什麼?」。

在Doctor腳本中,機器一方的對話需要表現得像一個好的傾聽者,關心使用者之前提及的內容,因此它經常在回覆中包含使用者的文字,並保持開放式回應。由於真正的醫生會很好奇,所以腳本中包含許多「什麼」和「為什麼」的問題。

在其他腳本和對話中,腳本關鍵字和分配的回應揭示了有助於創建不同特定「人格」的設計決策。當我們檢視更廣泛的ELIZA腳本時,這種變化變得越來越明顯。

ELIZA還有哪些替代「人格」?讓我們從一個名為Neweng的腳本開始,它是New England的縮寫。

到1950年代中期,科學家們已經將圖靈關於與電腦對話的提議視為一個具體的想法。1959年,多倫多大學計算中心的一個小團隊製造了一台「對話機器」,如果預先提示當前資料,它就能進行關於天氣的閒聊。

它的腳本包含一系列按等級排列的時間詞、天氣詞和情感詞,但該系統「視野相當狹窄」,詞彙量有限,且不具備語法知識。據其創造者稱,「儘管如此粗糙,但其在可接受對話方面的結果卻出奇地好,這在某種程度上是對普通天氣對話膚淺性的評論。」

這段ELIZA原始程式碼片段展示了腳本回應是如何編碼的,在此案例中是為了讓ELIZA聽起來像羅傑斯式治療師。

在檔案中發現的一個ELIZA測試腳本具有類似的功能。Neweng不提供安慰、治療或指導,而只是進行閒聊。它就像在一個無聊的晚宴上聊天。

「你最喜歡哪個新英格蘭州?」

「我喜歡羅德島。」

「我喜歡長島灣的海灘。」

「你還喜歡哪個新英格蘭州?」

「我喜歡麻薩諸塞州。」

「那是我的家鄉。」

「你還喜歡哪個新英格蘭州?」

「你一定也喜歡麻薩諸塞州。」

「你還喜歡哪個新英格蘭州?」

「我喜歡在新罕布夏滑雪。」

「那裡夏天很涼爽。」

「你還喜歡哪個新英格蘭州?」

「我喜歡密蘇里州。」

「密蘇里州不是新英格蘭州。」

「你還喜歡哪個新英格蘭州?」

「我喜歡科德角。」

「那是麻薩諸塞州一個美麗的地方。」

從這種看似沒有分享任何有趣內容的基本對話中,我們能學到什麼?儘管對話平淡無奇,但機器人腳本中仍透過「涼爽宜人」、「在那裡」等詞語,以及「長島灣的海灘」等地點,展現出一個「人格」。

從這些評論中,我們可以開始想像一個不僅擁有特定詞彙,還有特定愛好和度假地點的「人格」。或許,種族和階級的隱含假設也隨之浮現。一個健談的「人格」可能會根據地點和時間呈現多種形式。