機器之心報道
編輯:陳萍
(資料圖片)
想象一下這樣一個場景:創建一個軟件項目就像和好友聊天一樣簡單,你要做的就是提出需求,AI 就能幫你實現,而你不需要編寫一行代碼。
近日,一個爆火 GitHub 的項目實現了這一愿景,項目上線短短幾天,星標量已經達到 20k 左右。這個項目的名字叫 GPT-Engineer,和代碼生成類工具差不多,其能根據提示生成代碼庫(codebase)。就像前面講到的,只要你提出合理的要求,GPT-Engineer 都能完成。
項目地址:https://github.com/AntonOsika/gpt-engineer
根據項目作者 Anton Osika 說法,GPT-Engineer 具有以下特點:
可以根據一個提示生成代碼庫;
提出針對任務的詳細問題;
生成的技術非常規范;
幫你編寫必要的代碼;
用戶可以添加推理步驟,進行修改,還可以在此基礎上進行實驗;
項目是開源的;
讓你在幾分鐘內完成編碼。
另外,項目主頁介紹了 GPT-Engineer 理念:
簡單易用;
靈活且易于添加新的 AI 步驟;
可以逐步構建用戶體驗:用戶可以使用高級提示,此外,用戶還可以將反饋輸送給 AI,隨著時間的推移,AI 能夠記住這些反饋;
人類和 AI 可以快速的切換,相互接手對方的任務;
所有計算都是可恢復的,并持久化到文件系統中。
為了讓大家更好的理解 GPT-Engineer,項目中還列舉了貪吃蛇游戲的例子。完成這項任務大致分為三步:第一步,告訴 GPT-Engineer 你想讓它完成的任務是什么;第二步,GPT-Engineer 會詢問一些用戶輸入的比較模糊的問題,以便更明確任務需求;第三步,GPT-Engineer 開始構建運行代碼。
首選你需要通過輸入提示,讓 GPT-Engineer 知道它自己要干什么,貪吃蛇游戲的提示大致為網頁版多人可玩的貪吃蛇游戲;使用帶有 MVC 組件的 Python 后端;請按照上述要求實現,必要時可以使用 html、js。
然后,GPT-Engineer 對任務要求進行更細致的提問,比如蛇是如何移動的?有多少玩家可以加入這個游戲?游戲狀態更新的頻率應該是多少?對于 Python 后端、HTMl 和 JavaScript 代碼的組織是否有任何特定的要求等等。
值得注意的是,GPT-Engineer 不是無條件地詢問這些問題,而是采用 QA 的方式來確定需要澄清的缺失細節。
上述問題明確之后,GPT-Engineer 就能按照用戶要求生成多人玩貪吃蛇游戲的代碼:
整個過程可概括為:(1)需求細化階段和(2)軟件構建階段,這兩個階段的流程圖如下所示:
需求細化階段
軟件構建階段
項目一出,網友不禁贊嘆:GPT-Engineer 真是殺瘋了,用戶只需使用提示指定自己想要構建的內容,AI 智能體就會構建整個代碼庫。
不過也有網友上手體驗了一番,表示 GPT-Engineer 可以快速為用戶開發一個 currency_converter,但是不能正確地編寫一個 pomodoro_timer。
不管怎樣,想要嘗試的小伙伴,可以上手一試了。更多使用、配置信息,可參考原項目。
參考鏈接:https://www.linkedin.com/pulse/conversational-code-exploration-gpt-engineer-tom-glaser/
關鍵詞: