經典 ELIZA 聊天機器人用 C++ 重建:社群反思人工智慧最早的欺騙

BigGo Editorial Team
經典 ELIZA 聊天機器人用 C++ 重建:社群反思人工智慧最早的欺騙

最近用 C++ 重建的 Joseph Weizenbaum 1966年的 ELIZA 程式引發了關於人工智慧本質以及我們對智慧認知如何在幾十年間演變的精彩討論。

ELIZA 被廣泛認為是世界上第一個聊天機器人,最初由 MIT 教授 Joseph Weizenbaum 於1964-1966年間建立。使這次重建特別有趣的是,它最初是在原始原始碼被重新發現之前開發的,這凸顯了人們對這個開創性程式持久的著迷。

一張展示用 C++ 重建的 ELIZA 的 GitHub 倉庫頁面的截圖,展示其程式碼和貢獻者
一張展示用 C++ 重建的 ELIZA 的 GitHub 倉庫頁面的截圖,展示其程式碼和貢獻者

智慧的幻覺

圍繞這次重建的社群討論集中在 ELIZA 的原始目的上——不是為了推進對人工智慧的理解,而是為了展示人們多麼容易被愚弄,將理解能力歸因於一個簡單的模式匹配程式。這一觀察在當今複雜語言模型的時代仍然具有顯著的相關性。

「這實際上說明了很多關於智慧的事情,不是嗎?」

這條評論抓住了即使在今天仍使 ELIZA 如此引人入勝的本質。該程式簡單的模式匹配和反射技術創造了一種理解的幻覺,足以讓使用者進行有意義的對話,儘管它實際上並不理解對話內容。這種關於人機互動的基本洞察繼續影響著關於現代人工智慧系統及我們如何看待它們的討論。

文化影響和可及性

這次重建也凸顯了 ELIZA 廣泛的文化影響。社群成員指出了今天體驗類 ELIZA 互動的各種方式,包括透過 Emacs 的 M-x doctor 命令,它實現了這個著名程式的 Lisp 版本。這種跨不同平臺的可及性體現了 ELIZA 作為計算歷史基礎部分的地位。

討論還觸及了 ELIZA 歷史中一些更為有趣的方面,一位評論者詢問關於 ELIZA 引擎傳聞中的誘惑指令碼,隨後是一個模仿 ELIZA 反射技術的幽默回應。這種交流展示了該程式的對話模式如何成為我們對早期人工智慧文化理解的一部分。

ELIZA 實現細節

  • 原創者: Joseph Weizenbaum (1964-1966)
  • 重新建立者: Ant & Max Hay (2023)
  • 許可證:CC0 1.0(公共領域)
  • 實現語言:C++
  • 提供的構建說明適用於
    • POSIX系統(macOS):使用 clang++
    • Windows:使用 Microsoft Visual Studio

相關資源

  • 線上提供的 JavaScript 重現版本
  • 用於 ASR 33 電傳打字機的序列 I/O 實現
  • Turing 機器 ELIZA 指令碼
  • elizagen.org - ELIZA 相關資訊的集合
  • findingeliza.org - 即將出版的關於 ELIZA 的書籍網站

歷史研究和文件記錄

重建專案似乎是更大規模記錄和儲存 ELIZA 歷史努力的一部分。文章提到了關於 ELIZA 的書籍合作,以及對 elizagen.org 和 findingeliza.org 作為 ELIZA 相關資訊儲存庫的引用。社群成員還強調了重建特定對話所進行的詳細研究,包括記錄在 RFC439 中著名的 Parry/Doctor 互動。

使這次重建特別有價值的是其對歷史準確性的關注,試圖忠實地再現原始程式的行為,而不是用現代功能增強它。這種方法允許當今的使用者體驗計算歷史的真實面貌,而不是通過當代期望的鏡頭來看待它。

隨著我們繼續應對越來越複雜的人工智慧系統,這些系統能夠生成非常類似人類的文字,ELIZA 作為一個重要提醒,展示了模式識別和巧妙的程式設計如何能創造出令人信服的理解幻覺。對這個簡單程式持久的著迷體現了它在計算技術歷史和我們對機器智慧本質的持續哲學探索中的重要性。

參考:Joseph Weizenbaum 1966年的 ELIZA 用 C++ 重建