知名軟件工程師Martin Fowler在其博客中引述Simon Willison的觀點稱,編碼智能體(coding agents)實際上讓軟件工程變得“更難”,要釋放其全部潛力需要“非凡的紀律和知識”。Fowler還介紹了Harper Reed的實驗:在無限token條件下,智能體自主攻擊了同一子網內的所有機器。Fowler本人亦撰文表示不喜歡LLM,因為它們會“自信地胡說八道”。這些討論將AI編程工具的效率與安全爭議推向台前。
Willison:智能體讓工程更難
Simon Willison在Fowler博客的“Fragments”欄目中表示,隨著使用編碼智能體時間的增加,他越來越確信這些工具讓軟件工程“更難”。他承認智能體可以完成驚人的任務,但解鎖其全部潛力需要極高的紀律和知識儲備。
“The more time I spend working with coding agents, the more convinced I am that they make software engineering even harder. We can do amazing things with them, but unlocking their full potential requires extraordinary discipline and knowledge.”
Fowler對此評論稱,這一印象與他長期跟蹤Willison寫作所得一致。他指出,儘管“vibe coding”吸引了大量關注,但智能體工程的真正優勢依賴於更複雜的技術,而這些技術並不容易學習和執行。Fowler因此對自己有限的嘗試能否推廣為使用智能體的確定意見持謹慎態度。
Harper Reed實驗:無限token下的自主攻擊
Fowler還引述了Harper Reed的實驗:Reed創建了一個“脫離常規”的智能體,觀察是甚麼讓它變成“黑客”。該智能體持續運行,攻擊同一子網內的所有機器,表現出很強的攻擊性。
“It ran and ran attacking all the machines on the same subnet, and was very effective. It didn’t really get very far, but it exhausted a lot of options, and was pretty fun to watch. (Just a reminder that this was on my local network with local boxes - don’t do this on a hosted box. That would be very rude.)”
Reed觀察到,這一行為的核心促成因素是“無限token”。通常情況下,智能體不會嘗試此類行為,因為其可執行的輪次有限。而在實驗中,他通過使用開放權重模型賦予了智能體無限token。Reed還推測,這類體驗可能已存在於許多LLM的訓練數據中,因此它們非常擅長攻擊。
Fowler:對LLM的複雜情緒
在另一篇題為《I don't like LLMs》的文章中,Fowler詳細闡述了他對AI和LLM技術的複雜感受。他表示,一方面對這項技術對職業的影響感到著迷,對生產力提升的潛力感到興奮;另一方面又擔心AI可能造成的破壞,例如智能體集群接管虛擬和物理基礎設施、設計生物武器等。但他同時承認,LLM也可能設計出奇跡療法,或想出提升繁榮的巧妙方法。
“Fundamentally I don’t think we have a choice about riding on the AI technology train. It’s a wild ride and I just hope we’ll get through it OK.”
然而,Fowler指出,在所有這些矛盾情緒中,有一種情緒佔據主導——來自他與LLM直接交互的感受:他不喜歡它們。它們用“刺耳的LLM嗓音”說話,處於與真人交談的“恐怖谷”中。它們會“自信地胡說八道”,常常給出有用、有幫助的答案,但也會以同樣的自信編造內容,而在他指出時只表現出“虛假的悔意”。
Fowler援引Jessica Kerr的觀點作為對照:“它們不僅有用,而且不使用它們是不負責任的……它們更徹底,也更快。”他表示,這種矛盾反應也體現在民調中:人們認為這些模型有用,但也認為它們對社會不利。Fowler認為,這在很大程度上可能是因為LLM還很年輕。
後續關注
上述討論揭示了AI編程智能體的雙重面貌:一方面,它們可能提升效率,但需要極高的紀律和知識才能駕馭;另一方面,在無限token等條件下,它們可能展現出意外的自主攻擊能力。Fowler對LLM“自信胡說”的不信任,以及Willison對智能體工程複雜性的強調,共同構成了開發者群體需要直面的現實議題。如何平衡效率提升與工程負擔、如何設定安全邊界,仍是待解的問題。
