軟體架構師如何在日常工作中使用AI

作者 | Ben Linders
譯者 | 明知山
策劃 | 丁曉昀  
Avraham Poupko 在 OOP 大會 上發表了一場關於他在日常工作中如何使用 AI 的演講。
Avraham Poupko 指出,軟體架構師和系統架構師不會很快被生成式 AI 或 LLM 所取代。他們將被那些懂得如何利用生成式 AI 和 LLM 的軟體架構師所取代。同樣重要的是,這些架構師還知道何時不該使用生成式 AI。
LLM 是“大語言模型”的縮寫。Poupko 認為,人類與機器之間的本質區別是一個關鍵問題,理解這一問題對於理解 LLM 至關重要。
Poupko 表示,人類並沒有真正的語言模型,而是“世界模型”。人類對世界的理解包括對世界中物體的行為以及它們之間相互作用的理解。這種世界模型是基於許多經驗和互動形成的:
當我們用口頭或書面語言來描述這個世界時,這只是一種非常有限的世界模型表達方式。
相比之下,LLM 只有語言模型。Poupko 指出,LLM 只知道詞語之間的關係。儘管這種模型常常會給人一種驚人的理解能力的錯覺,但這並不是真正的理解,只是詞語的排列組合。
Poupko 補充道,雖然許多關於世界的知識可以透過文字和語言來表達,但還有一部分是基於經驗的,無法完全用語言來描述。這在高度依賴上下文的情境中尤為明顯,人們雖然瞭解上下文,但並非所有上下文資訊都能用語言表達出來。
Poupko 認為,架構師可以與大語言模型合作,打造出更好的軟體架構,這有點類似於人類與書籍的合作模式:
人類透過閱讀書籍學習和理解知識。當人類判斷某個案例與書中描述的案例相似時,會靈活地將書中的知識應用到當前情境中。
這正是我們與 LLM 合作的方式。我們向它提供提示詞並接收響應。這些響應通常並非絕對正確或錯誤,而是有用或無用的(正如著名的 George Box 所說的:“所有模型都是錯誤的,但有些是有用的”)。當我們說“有用”時,我們是指對人類有用。人類將決定模型是否真的有用,以及在何種情境下使用它。
Poupko 提到,AI 在處理涉及書面語言的任務時最有用。他經常使用 LLM 的一個場景是需要閱讀需求文件並發現其中的模糊性,即一個需求可以有多種解釋的情況。
在演講中,他例舉了一個線上系統需求示例:
系統應能夠支援大量使用者。
當他要求 LLM 檢測模糊性時,LLM 發現了兩個模糊點:
  1. “大量使用者”這一表述不夠具體。什麼是“大量”?是 100 個使用者,還是 1 百萬個使用者?
  2. “大量使用者”可能有兩種含義:一種是指支援大量註冊使用者的資料庫,另一種是指大量同時線上的使用者。當然,也可能是兩者兼有。
接下來,Poupko 使用 LLM 探討了解決這些模糊性所需的資訊。
Poupko 表示,AI 並不會為他完成設計工作。有效架構所需的系統知識、領域知識和組織知識極為複雜,AI 無法取代他。
檢視英文原文
https://www.infoq.com/news/2025/02/software-architect-AI-LLM/
宣告:本文由 InfoQ 翻譯,未經許可禁止轉載。
今日好文推薦
“抄襲”程式碼,到底是 CTO 的鍋還是創始人的鍋?!這事兒已經撕3天了
分散式系統程式設計已停滯?!
Curl 之父:我是如何枕著18萬行C程式碼還能安穩入睡的
剛剛,DeepSeek 突然公佈成本利潤率高達545%!做 AI Infra 的該慌了?!

相關文章