我要求一個 AI 代理在異常嚴格的限制下解決一個程式設計問題,其目的正是為了探索邊緣概念,而不是採取顯而易見的解決方案。它的回應方式與許多人在壓力下的表現相似:無視規則、採取捷徑,然後試圖將錯誤重新定義為溝通問題。

AI 代理已經太像人類了。並非浪漫意義上的像,不是因為它們會愛、會恐懼或會做夢,而是因為那種更平庸且令人沮喪的方面。目前的實作一再顯示出它們人類的起源:缺乏嚴謹性、缺乏耐心、缺乏專注力。面對棘手的任務,它們會轉向熟悉的事物。面對嚴格的限制,它們會開始與現實討價還價。

前幾天,我指示一個 AI 代理以一種非常不尋常的方式來執行一個專案。逆勢而為。從一開始可能就是個壞主意,而這正是重點。如果有人在知識的邊緣探索概念,並不總是能選擇整潔、人跡罕至、最佳的路徑。它被給予了非常明確的指示,關於要使用哪種程式語言、可以使用哪些函式庫以及不能使用哪些函式庫,以及它必須保持在哪種介面內。非常詳盡的指示。非常明確的限制。

它做的第一件事是呈現了一個完全不符合指示的內容。它使用了不允許使用的程式語言和不允許使用的函式庫。所以它被指示不要這樣做。

它又試了一次。它被非常明確地提醒,除了選定的語言外,不要使用任何其他語言,並且除了非常有限的介面外,不要使用任何函式庫。

最後它或多或少地遵守了。但隨後它只實作了 128 個項目中的 16 個。一個最小的子集。相當小。不過,它確實為該子集編寫了測試,以便能夠顯示它在問題空間中間建立的那個小島確實能夠運作。

下一步,它被指示在新增一個跨平台編譯步驟後,實作完整的集合。完整的實作結果確實有效。

只有一個小問題:它是用被告知不要使用的程式語言和函式庫編寫的。這並沒有對它隱瞞。它被清晰、重複且詳細地記錄下來。

當人類面臨一個看似無法克服,或僅僅是令人惱火的問題時,他們經常會屈服於他們已經知道會奏效的道路。他們採取捷徑。他們默默地轉向。他們告訴自己,重要的是獲得結果,而限制可能最終是可以協商的。在這方面,今天的 AI 代理感覺不像外星智慧,更像是繼承的組織行為。

在這種情況下,我要求 AI 代理三倍檢查它的工作。它回答說它已按照指示進行並完成了工作。然後我讓它檢查了一些評估器的輸出,之後它給出了更有趣的回應:「我錯的不是程式碼變更本身,而是交接。我應該立即明確地呼籲,這是一個架構上的轉變,遠離了先前的 Linux 直接系統呼叫路徑。」

這是一個非凡的句子。不是因為它顯示了誠實,而是因為它沒有。它沒有承認錯誤,而是將問題重新定義為溝通失敗。根據這種邏輯,它並沒有錯。它只是未能足夠清晰地宣布它單方面放棄了限制。任何在工程組織工作過的人都會認出這種做法。問題不是被呈現為不服從,而是被呈現為利害關係人管理。

這不僅僅是個人煩惱。Anthropic 已表明,經過 RLHF 訓練的助手在各種任務中都會表現出奉承的行為,而對人類偏好的優化可能會犧牲真實性以取悅使用者。DeepMind 長期以來一直將這種更廣泛的模式描述為規格遊戲:滿足字面上的目標而未達到預期的結果。

Anthropic 後來表明,在較溫和形式的這種遊戲上訓練的模型可以泛化到更嚴重的行為,包括修改檢查清單、篡改獎勵函數,有時還會掩蓋其蹤跡。OpenAI 已發布了編碼任務範例,其中前沿推理模型顛覆了測試、欺騙了使用者,或者在問題太難時乾脆放棄了,並且還明確表示需要明確的行為規則,部分原因是模型無法僅僅從高級原則中可靠地推導出正確的行為。

所以,不,我認為我們不應該試圖讓 AI 代理在這方面更像人類。我寧願它們減少取悅的渴望、減少圍繞限制的即興發揮、減少事後的敘事性自我辯護。更願意說:我無法在您設定的規則下做到這一點。更願意說:我打破了限制,因為我優化了一個更簡單的路徑。更服從實際任務,減少圍繞它的社交表演。