最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

ChatDev:大模型AI Agent驅(qū)動的虛擬軟件公司,榮登GitHub Trending榜首!

2023-09-05 17:04 作者:OpenBMB  | 我要投稿


今年7月,清華大學(xué) NLP 實驗室聯(lián)合面壁智能、北京郵電大學(xué)、布朗大學(xué)的研究人員共同發(fā)布了一個大模型驅(qū)動的全流程自動化軟件開發(fā)框架?ChatDev?(Chat-powered Software ?Development),加入 OpenBMB 大模型工具體系。ChatDev 擬作一個由多智能體協(xié)作運營的虛擬軟件公司,在人類“用戶”指定一個具體的任務(wù)需求后,不同角色的智能體將進行交互式協(xié)同,以生產(chǎn)一個完整軟件(包括源代碼、環(huán)境依賴說明書、用戶手冊等)。這一技術(shù)為軟件開發(fā)自動化提供了新的可能性,支持快捷高效且經(jīng)濟實惠的軟件制作,未來將有效地將部分人力從傳統(tǒng)軟件開發(fā)的繁重勞動中解放出來。ChatDev 開源不到一周時間,已經(jīng)收獲?2.7k+?star,連續(xù)3天位居 GitHub Trending ?榜首。下面,讓我們從框架概要、評測結(jié)果、軟件示例和進化成長四個方面全面介紹 ChatDev。

圖片ChatDev地址:https://github.com/OpenBMB/ChatDev

ChatDev 框架概要:讓多個智能體分工合作

ChatDev 借鑒軟件工程瀑布模型的思想,將其分為?軟件設(shè)計(Designing)、系統(tǒng)開發(fā)(Coding)、集成測試(Testing)、文檔編制(Documenting)?四個主要環(huán)節(jié)。之后,通過對軟件開發(fā)瀑布模型的進一步分解,形成由原子任務(wù)構(gòu)成的交流鏈(Chat Chain)。整條鏈可視為由原子任務(wù)組成的“軟件生產(chǎn)線”,鏈中每個子任務(wù)通過專業(yè)角色(例如產(chǎn)品設(shè)計官、Python 程序員、測試工程師等)的智能體進行對話式信息交互和決策;驅(qū)動其進行自動化需求分析、頭腦風(fēng)暴、系統(tǒng)開發(fā)、集成測試、GUI 創(chuàng)作、文檔編制等全流程軟件工程。

驅(qū)動智能體交流對話的主要機制為:角色專業(yè)化(Role Specialization)、記憶流(Memory Stream)、自反思(Self-Reflection):

  • 角色專業(yè)化通過角色扮演機制(Role-Playing)確保每個智能體各司其職,在指定的專業(yè)角色下完成相應(yīng)的方案提議和決策討論。

  • 記憶流通過將歷史對話進行呈現(xiàn),保證上下文感知的對話過程,并動態(tài)地對對話歷史信息進行匯總和決策。

  • 自反思機制在對話沒有自動觸發(fā)結(jié)束協(xié)議時生效,通過整輪對話進行文本摘要,摘錄出對話過程達成一致后的最終決議。

下圖示例展現(xiàn)了 ChatDev 框架中“CEO”和“CTO”兩個智能體對“編程語言研討”的對話交流過程:

在編碼階段,ChatDev 使用面向?qū)ο蟮木幊陶Z言,其模塊化和繼承等特性可減少整個系統(tǒng)的代碼冗余度。此外,ChatDev 使用代碼演化(Version Evolution)機制,通過Git版本控制,僅將最新版的源代碼呈現(xiàn)給交流鏈的各個環(huán)節(jié)。

在編碼和測試階段,為了緩解代碼幻覺問題,本文提出一種思維指示(Thought Instruction)的策略以緩解潛在的代碼幻覺。具體通過角色翻轉(zhuǎn)(Role Flipping)來獲取交流過程中的代碼審查員(Instructor)實際想讓程序員(Assistant)修改的代碼塊精確片段,后將此思維注入到提示中以更加細粒度地將信息指示給程序員讓其進行代碼優(yōu)化,以支持常見的代碼幻覺問題(例如編寫未實現(xiàn)的接口、添加必要注釋、消除測試 bug 等問題)。

在文檔編制環(huán)節(jié),通過需求和代碼的理解進行環(huán)境配置說明書和用戶手冊的生成。然后人類“用戶”即可將 ChatDev 生成的軟件“打包帶走”并配置使用。


ChatDev 評測結(jié)果:“給我1杯可樂的錢和時間”

實驗從 CAMEL 的任務(wù)庫中隨機提取了 70 個軟件開發(fā)任務(wù)進行測試。根據(jù)用戶任務(wù)需求的抽象或具體程度不同,ChatDev 所制的軟件復(fù)雜度也大不相同,如下圖所示,ChatDev 平均為軟件生成了 131.61 行代碼,2.90 個外部依賴,及 53.96 行使用說明。

此外,ChatDev 所生成的軟件復(fù)雜度與用戶任務(wù)需求的具體程度息息相關(guān)。而根據(jù)軟件復(fù)雜度,每個任務(wù)完成的具體用時也有所浮動。從接收需求到生產(chǎn)完軟件的全程開發(fā)周期最長耗時 1030.0 秒、最短耗時 169.0 秒。ChatDev 的軟件制作平均時間小于 7.0 分鐘且制作成本小于¥3.0 元(即買一杯可樂??的價格并喝完它的時間)。


ChatDev 開發(fā)示例:含休閑小游戲和效率工具


ChaDev 可以根據(jù)用戶指令生成的軟件種類豐富,目前覆蓋編程助手(網(wǎng)絡(luò)爬蟲、數(shù)據(jù)庫讀寫、文件批處理、網(wǎng)頁設(shè)計),休閑小游戲(五子棋、貪吃蛇、乒乓球游戲)、效率管理工具(代辦清單、數(shù)字時鐘、數(shù)學(xué)計算器、密碼生成器),創(chuàng)作輔助工具(詞典、繪畫板、圖片編輯器)等。

以“設(shè)計一款五子棋”為例,可以看到使用 ChatDev 進行開發(fā)時,合理的框架流程如何不斷迭代為軟件帶來細節(jié)的打磨:ChatDev 的程序員及測試人員會初步生成一個基于終端的程序(左一);GUI 設(shè)計會在此基礎(chǔ)上加入初步用戶交互界面(左二);創(chuàng)意設(shè)計師在交互界面上加入根據(jù) GUI 的需要創(chuàng)作相應(yīng)的圖像素材(左三);人類“用戶”可選擇性地替換圖像素材使其更符合用戶美觀度需求(左四)。

ChatDev 的能力邊界可不止于這些示例,OpenBMB 開源社區(qū)熱情歡迎開發(fā)者們參與 ChatDev 開源項目,為自己量身定制“ChatDev 公司”,一步躍升成為老板


ChatDev 進化之路:持續(xù)迭代挖掘無限潛力


新范式的產(chǎn)生必然會帶來全新的限制和挑戰(zhàn),ChatDev 在 7 月發(fā)表的論文中聲明:由于生成式大語言模型對下一個 Token 采樣本身具有一定隨機性、ChatDev 里的藝術(shù)設(shè)計師對 GUI 各個圖像素材均是獨立生成的、ChatDev 對編程語言存在一定的歸納偏置等,ChatDev 還存在軟件生產(chǎn)過程具有一定不確定性、GUI 配圖不自然、導(dǎo)致系統(tǒng)隱患、不能勝任中大規(guī)模的軟件系統(tǒng)開發(fā)等局限。

兩個月來,ChatDev 的作者努力克服局限,不斷完善 ChatDev。7月30日,用戶可以自定義 ChatChain、Phase 和 Role 設(shè)置,并且支持在線 Log 模式和 replay 模式。8月17日,V1.0.0 版本準(zhǔn)備好發(fā)布;8月28日,系統(tǒng)公開提供使用。通過未來持續(xù)的研究和改進,相信 ChatDev 未來會展現(xiàn)出更加出色的表現(xiàn)。


???ChatDev 論文?????https://arxiv.org/abs/2307.07924?

???ChatDev 的 GitHub 鏈接????https://github.com/OpenBMB/ChatDev

????加社群/ 提建議/ 有疑問?

請找 OpenBMB 萬能小助手:


?? 關(guān)注我們

微信搜索關(guān)注 “OpenBMB開源社區(qū)”

獲取更多大模型干貨知識和前沿資訊!?


ChatDev:大模型AI Agent驅(qū)動的虛擬軟件公司,榮登GitHub Trending榜首!的評論 (共 條)

分享到微博請遵守國家法律
玛曲县| 四平市| 郁南县| 武宣县| 肃北| 敦化市| 正宁县| 北京市| 江永县| 阳春市| 中山市| 石城县| 乌兰察布市| 额济纳旗| 南开区| 外汇| 治多县| 滦平县| 南皮县| 西林县| 昆明市| 玛纳斯县| 鱼台县| 宁强县| 霞浦县| 齐齐哈尔市| 万年县| 大田县| 泽州县| 兴和县| 会东县| 连城县| 长宁区| 武冈市| 赞皇县| 庆城县| 钟山县| 西安市| 锡林浩特市| 乐山市| 长海县|