撰稿 | 王瑞平
既AutoGPT之后,GPT家族又添GPT-Engineer新成員。
如同其它GPT家族成員一樣,它能夠根據用戶指令生成生成整個代碼庫、學習你的代碼風格,易于調整、擴展。這下,程序員又要失業了。
簡單易用、靈活、易于添加新的AI步驟是GPT-Engineer最強的優勢。
它可以逐步構建用戶體驗,用戶也可以使用高級提示,然后將反饋輸送回AI。隨著時間的推移,AI能夠記住這些反饋。
1、在GitHub上狂飆:斬獲30k星
GPT-Engineer于6月11日閃亮登場,是由Depict創始人兼首席技術官Anton Osika開發,供程序員進行AI編程工具。
上線僅一周多的時間,GPT-Engineer就在GitHub上狂飆,迅速斬獲30k星。
據Anton Osika 的推文介紹,在使用 GPT-Engineer 時,你可以:
- 用一個提示詞生成代碼庫
- 提出清晰的問題
- 生成技術規范
- 編寫所有必要的代碼
- 輕松添加自己的推理步驟、修改和實驗
- 讓你在幾分鐘內完成一個編碼項目
2、優勢:一個提示詞生成整個代碼庫
如前文所述,GPT-Engineer最大的優勢還在于能夠根據提示詞生成整個代碼庫。
網友們都躍躍欲試,并在互動區評論道:“這看起來太棒了,要試一試嗎?”
小編不禁感嘆,這讓我們離AGI又近了一步...
3、實測:完成貪食蛇游戲項目
我們還實測了項目中列舉的貪吃蛇游戲例子,現在描述出來,便于大家理解:
完成任務大概分3步:
1)告訴GPT-Engineer你想讓它完成什么;
2)GPT-Engineer詢問用戶輸入模糊的問題,以便更明確任務需求;
3)GPT-Engineer開始構建運行代碼。
- 輸入提示
首先,你需要通過輸入提示,讓GPT-Engineer知道要干什么。
貪吃蛇游戲的提示詞大致為“網頁版多人可玩的貪吃蛇游戲”。系統使用帶有MVC組件的Python后端,必要時可以使用html、js。
- 提問
然后,GPT-Engineer對任務要求進行更細致的提問,比如蛇是如何移動的?有多少玩家可以加入這個游戲?游戲狀態更新頻率是多少?
值得注意的是,GPT-Engineer不是無條件地詢問這些問題,而是采用QA方式確定需要澄清的缺失細節。
- 生成游戲代碼
上述問題明確之后,GPT-Engineer 就能按照用戶要求生成多人玩貪吃蛇游戲的代碼。
4、記住代碼:將互動歷史存儲在文件夾中
GitHub上不僅公開了從輸入到輸出的整個程序設置,還重點介紹了系統是如何記住代碼的:
- 通過編輯文件夾中的文件指定AI標識。(identity)
- 編輯標識并改進,使AI代理“記住”項目。(main_prompt)
- 與GPT-4通信的歷史都被記錄存儲在logs文件夾中
這項特殊的功能便于系統更容易了解你的喜好,在進行類似操作時提升生成代碼的效率和準確度。
5、拋出問題:幫助用戶彌補缺失細節
在這里,不得不提及項目的獨特之處,即,當用戶輸入自己的需求時,GPT-Engineer并不會直接接受,而是會根據自己的判斷提出問題,幫助程序員彌補缺失的細節。
該過程分為兩個步驟進行:
(1)需求細化
(2)軟件構建
- 在需求細化階段:
1)用戶提供的包含需求和問題指示的文件夾被提交給GPT-Engineer,并被放置在GPT初始消息中;
2)系統接收來自GPT-4的反饋,了解需要澄清的問題并提示用戶;
3)GPT-Engineer將該過程循環,解釋所有問題直到GPT-4“滿意”為止。
- 在軟件構建階段:
1)上個階段提煉出的用戶需求被打包,并與GPT系統提示和另外一套用戶輸出指示一起包裝起來。
2)GPT-Engineer接收來自GPT-4的響應,然后創建源代碼文件,為用戶提供指令。
6、項目理念:簡單易用,為用戶提供價值
GitHub上還著重強調了GPT-Engineer的主要項目理念:
- 簡單易用,為用戶提供價值;
你只需用谷歌登錄,便可以輕易操作,輸入提示詞后就能生成整個代碼庫。
- 靈活且易于添加新的AI步驟;
- 支持高級提示,記住用戶反饋;
系統能夠自動記憶你的操作,并模仿你的風格完成整個項目;
- 在人類與人工智能之間快速切換;
- 所有計算可恢復并永久保存在文件系統中。
7、總結:AI代碼生成工具火遍全網
AutoGPT之后,AI代碼生成工具GPT-Engineer火爆全網。
它作為一個根據指示生成代碼的AI工具,能學習到不同的代碼風格,短時間幫你搞定編碼項目。全過程由需求細化促進階段和軟件構建階段組成。
項目最獨特之處在于:開發者在文本文件中提交需求,GPT-Engineer不是無條件接受這些要求,而是提出許多詳細的問題來讓程序員澄清缺失的細節。
8、網友評論:我們也在嘗試與GPT-Engineer相似的應用
我們在Anton Osika的帖子下搜集到部分網友的評論:
“額外功能:像一個真正的咨詢工程師一樣,承諾過多、交付不足。”
部分網友還在評論區展示出類似的應用:“這很酷,我在研發一些類似的應用dev-GPT。”
小編對此還去親測了一番:該款應用能夠像真正的Python開發者一樣自動提取用戶需求,輸出你想要的程序,在GitHub上斬獲了153k星。
一位名為OxVivek的用戶說:“哇,GPT-Engineer是游戲改變者。我很好奇它與smol相比帶來了哪些創新...迫不及待想嘗試下在幾分鐘內完成編碼項目。”
GPT-Engineer預示著未來創造軟件將邁入人機交互新時代。此外,網友提到的dev-GPT、Auto-GPT、smol等也能夠輸出你想要的代碼,你可以根據需求選擇最適合的一款應用。
未來,你將不用絞盡腦汁編寫一行代碼,創建項目就像和好友聊天那樣簡單。
如果你對此感興趣并且是一名程序員,不妨用谷歌注冊賬號親自實測一番,在對話中寫出你想要的程序、創建一套軟件系統,并將你的感受留在評論區...
參考資料:
1.https://github.com/AntonOsika/gpt-engineer
2.https://twitter.com/antonosika/status/1667641038104674306?cxt=HHwWhIC-kYms06QuAAAA