Devin到底是一個漂亮的Demo,還是一個已經能替代程序員的智能體,使用體驗怎麼樣,拿到測試資格的網友第一時間分享自己的體驗。由10枚IOI金牌在手的創業團隊CognitionAI開發的全球首個AI程序員智能體Devin,一發佈就讓科技圈坐立不安。
在演示中,Devin 幾乎已經可以獨立完成很多人類程序員需要大量時間才能完成的工作,效果一點不比普通程序員差。
但是,產品能力的邊界在哪裡,實際體驗和演示時候有差距,還得看上手實測之後的效果。
這位斯坦福的小哥在 Devin 發佈的第一時間就聯系團隊,獲得第一手體驗的資格。
他讓 Devin 幫它做幾個難度不一的項目,錄制一個視頻,在推上寫下自己的使用感受。
首先是讓 Devin 做一個用 API 獲取股票價格的軟件:
下一個任務是讓 Devin 做一個可以讓普通用戶直接與大模型下棋的網站。
需求復雜的編程任務還搞不定
用戶下一步棋,系統會翻譯成提示詞給 GPT-4,然後 GPT-4 進行回復,然後回復再被轉換為反映在棋盤上的具體某一步棋。
按照小哥的要求,系統需要由相當多的部件組成。
他個人最為關註在這個系統的開發過程中,Devin 能不能做到以下幾點:
知道如何準確地使用 GPT-4 API,因為大多數 LLM 實際上並不知道如何使用,並且 API 的調用存在版本沖突。
正確地請求 API 密鑰並安全地處理。
處理包錯誤。
解如何提示 LLM 下棋並能精確地返回提示詞。
令小哥想不到的是,Devin 不僅要求小哥提供 API 密鑰,而且在試用過程中還可以正確地保護它。
不過,Devin 目前反饋速度還相當慢,小哥推測是因為後臺發生的代理提示遠遠比要看到的要多得多。
從小哥發起請求開始,它花大約 19 分鐘才詢問 API 密鑰。
小哥猜測,如果延遲是由於他們在後臺運行大量提示造成的,那麼延遲應該會隨著時間的推移而加快。
因為他們以後可以訪問專用 GPU 或與 Claude 或 OpenAI 合作降低延遲(估計是 GPT-4 或 Claude Opus)。
Devin 首先制定一個規劃。
在右上角,用戶可以切換“跟隨”狀態,這樣用戶可以將屏幕自動移動到#Devin 當前激活的選項卡上。
小哥沒有打開跟隨狀態,因為他希望隨時觀察各個位置的變化。
規劃器會隨時保持針對當前任務的更新狀態。
Shell 看起來和普通的 Shell 沒什麼區別,但用起來真的很有趣!
Devin 在工作過程中會打開多個 shell,在 shell 的底部,用戶可以拖動藍色滑塊來往前查看 Devin 編寫的命令。
下圖是它當在嘗試調試棋盤未渲染的內容。
與此同時,小哥要求它再執行一個數據分析的任務。
小哥讓 Devin 去“創建一張過去五十年南極洲海水溫度的地圖”。
對於這個請求,小哥覺得有兩個方面可能很具有挑戰性:
處理空間數據繪圖 / 可視化。
知道在哪裡下載數據,而且解如何使用數據源,因為地理空間數據處理起來很麻煩。
Devin 能像一個優秀的程序員一樣聰明地閱讀自述文件,並且還執行一些基本的 EDA 來理解數據結構。
數據居然是一個 ascii 文件,小哥覺得有點奇怪。
小哥單擊對話“調試 Python 腳本...”中的其中一個步驟時,它會打開與該步驟相關的代碼庫部分,因此可以跟蹤某一個具體時間點發生的情況。
小哥比較擔心的是,如果不是必須要詢問 API 密鑰,Devin 似乎會不停地編碼停不下來。
所以他試試是否可以更改他之前提出的請求或指定其他內容,中斷 Devin 的編碼過程。
因為對於大部分用戶在編碼時,都有可能會改變主意或者有一些新的東西想要添加進系統之中,能夠處理這種情況是很有必要的。
這是編碼過程中的截圖:
瀏覽器界面的呈現方式如下:
然後小哥又提針對數據可視化的任務又提一個要求,讓系統將高溫設置為藍色,低溫設置為紅色。
為不中斷編碼的過程,似乎 Devin 又開啟一個工作線程來記錄小哥的臨時要求。
最終,Devin 將 App 部署到 Netlify 上,一個應用已經上線。
網頁的鏈接:https://t.co/wTbtz2waDn
就像人類寫的程序一樣,第一個版本肯定是有 Bug 的。
因為小哥要求的是南極洲的溫度記錄,似乎對於 Devin 來說它理解起來有些障礙。
於是小哥把要求顯示的位置改為北美。
總結
小哥沒有給出 Devin 修改 Bug 的結果,隻是初步總結用 Devin 開發的第一個網站的使用體驗。
先說優點:
Devin 產品化做得很好,他給人的使用體驗是一個完整的產品而不是隻是一個簡單的對話框。
AI 是系統最關鍵的部分,但支撐 AI 功能的產品化的結構是 Devin 的亮點。
Devin 能夠完成自動部署,API 密鑰保護,隨時修改和添加需求等等非常好的各種功能。
產品的完成度已經非常高,遠遠超過一般的演示 Demo。
再說缺點:
Devin 的反應還很慢,當然小哥也說,因為他用的是 1M 的 Starlink 來上網,所以反應慢很有可能是他自己的原因。
其次就是還不能允許用戶直接自己編輯代碼,而且也沒法協作完成。
當然,最初那個下棋的應用,難住 Devin,最終沒有完成部署。而那個數據可視化的任務,似乎也有些 Bug。
最終,小哥用 Devin 做一個 chrome 插件,可以幫助用戶把 Github repo 轉化成 Claude prompt。
插件下載地址:https://t.co/k3l8JTWK7Z
網友評價
網友看這個實測之後還是感覺有點失望,畢竟這個任務一個初級程序員是能做到的,但是 Devin 的可視化項目的結果隻做出一個有 Bug 的網頁。
看樣子 Devin 本質上還隻是一個可以上網的大模型,現在要讓他解決實際問題還有難度。
參考資料:
https://twitter.com/itsandrewgao/status/1768012781083566217?s=20
https://twitter.com/varunshenoy_/status/1767591341289250961?s=20