成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

取人類與大模型之長,人機協作式智能軟件開發框架AgileGen來了

人工智能 新聞
通過人機協作,充分發揮人類的創造力和 AI 的計算能力,軟件開發將變得更加高效、準確和個性化。

本論文作者張賽是天津大學博士研究生,師從張小旺教授。目前是澳大利亞聯邦科學與工業研究組織(SE4AI 團隊)聯合培養博士生,合作導師為邢振昌教授。主要研究方向為生成式軟件開發,軟件工程需求分析等。她曾經以第一作者在 TOSEM, TNNLS, TCBB, Bioinformatics 等頂級期刊上發表論文。曾獲得 2022 年度省級優秀碩士學位論文,國家獎學金和國家公派獎學金等榮譽。

在人工智能迅猛發展的今天,我們正站在軟件開發領域一次深刻變革的起點上。想象一下,只需一句簡單的需求描述,就能生成符合你期望的軟件。這不再是科幻小說中的情節,而是即將成為現實的創新技術。

而這一切的背后,正是我們即將介紹的 AgileGen— 一種基于人機協作的敏捷生成式軟件開發框架。

圖片

  • 論文題目:Empowering Agile-Based Generative Software Development through Human-AI Teamwork
  • 論文鏈接:https://arxiv.org/abs/2407.15568
  • github 鏈接:https://github.com/UGAIForge/AgileGen
  • Huggingface (試用):https://huggingface.co/spaces/HarrisClover/AgileGen

目前,該論文已被 ACM TOSEM (CCF A) 錄用。

軟件開發的根本挑戰:需求的不完整性

著名的圖靈獎得主 Frederick P. Brooks 在他的經典論文”No Silver Bullet: Essence and Accidents of Software Engineering” 中指出:“軟件開發的本質困難在于對復雜概念結構的構思和理解,這主要涉及需求分析和設計。相比之下,使用編程語言來實現這些抽象的軟件實體只是偶然性的困難。” 也就是說,理解用戶需求,設計出滿足這些需求的系統架構和功能,是軟件開發中最核心、最具挑戰性的部分。

然而,在實際開發過程中,用戶往往難以完整、準確地描述他們的需求。這并非用戶的錯,而是因為他們可能缺乏專業的技術背景,或者對自己的需求也不是特別清晰。舉個例子,一位教師可能會提出:“我需要一個可以隨機點名的應用。” 但是,這樣的描述并未明確系統需要具備哪些具體功能,比如學生名單是否固定還是要動態添加刪除,是否需要考慮請假學生,界面應該如何設計,是否需要配合隨堂提問等。

現有生成式軟件開發的局限性

隨著大型語言模型(LLM)的發展,許多人開始嘗試利用 AI 來自動生成代碼。然而,現有的生成式軟件開發方法在處理不完整的需求時仍存在巨大挑戰:他們要么過于依賴用戶的指導,要么在沒有用戶參與的情況下自行決策,導致生成的代碼與用戶的期望有較大偏差,也就是即使生成的軟件可以成功運行 (build software right),也無法彌合用戶的期待 (build right software)。

AgileGen 的誕生:人機協作的新范式

面對這些挑戰,我們提出了 AgileGen,一種基于人機協作的敏捷生成式軟件開發框架,旨在融合人類的創造力和 AI 大模型的生成能力,實現高效、準確的軟件生成。

1. 核心理念:發揮人類與 AI 各自的優勢

AgileGen 的核心理念是讓用戶和 AI 各自專注于自己擅長的領域。用戶負責提出需求和進行決策,AI 負責技術實現和代碼生成。通俗的講就是人干兩頭,AI 干中間。通過這種人機協作的方式,我們能夠更精準地捕捉用戶的隱含需求,減少溝通成本。

圖片

圖 1:問題陳述圖。用戶不確定如何驅動代理生成所需的軟件,Agent 也不知道如何滿足用戶需求。我們在用戶和 Agent 之間建立了一座橋梁,促進了人類決策技能和 Agent 編碼能力之間的協作。這種協作創建了一個具有輕量級迭代反饋的生成式軟件開發代理。

2. 關鍵創新

我們的創新主要體現在以下三個方面:

  • 人干兩頭 AI 干中間的人機協作方式

用戶在每次迭代的開始(場景決策)和結束(驗收與建議)參與進來,AI 則負責中間的技術實現。這樣既保留了用戶的控制權,又充分利用了 AI 的優勢,減少了錯誤的發生。

  • 構建用戶和 Agent 之間的橋梁

我們首次將行為驅動開發(BDD) 引入生成式軟件開發中,使用 Gherkin 語言 將用戶的模糊需求轉化為清晰、可測試的場景描述,彌合了不完整需求與精確功能之間的差距。通過動態融入用戶的決策,我們確保了生成的軟件始終符合用戶的真實需求。

  • 自我進化的 Agent 圖架構

我們設計了一個包含人類決策點的 Agent 圖,形成了一個有向循環的流程,便于迭代和擴展。引入了記憶池來收集用戶的決策結果,推薦給有類似需求的后續用戶,形成自我更新的循環。

AgileGen 核心組件設計介紹

圖片

圖 2 AgileGen 概括

1. 用戶需求和場景決策組件

- 用戶需求決策:用戶首先以自然語言描述自己的需求。這是用戶參與決策的第一步,決定了要生成的軟件目標。例如,用戶可能會輸入:“Please generate a web system with a random roll call function”

- 場景決策:AgileGen 會根據用戶的需求,從記憶池中匹配類似的需求和場景,為用戶提供參考。用戶可以對這些場景進行確認、添加、刪除或修改,從而迭代地澄清需求。這些決策將被記錄并存儲在記憶池中,供后續用戶參考并循環使用。

2. 場景設計組件

- 記憶池機制:存儲了大量先前用戶決策的場景描述,當新的需求輸入時,系統會從記憶池中匹配相似的需求,提供參考場景,提升場景設計的可靠性。隨著使用次數的增加,記憶池會不斷豐富,為用戶提供更精準的參考。

- 交互橋:為了讓用戶無需學習領域特定語言 Gherkin,系統設計了一個交互式橋梁,將 Gherkin 場景轉換為自然語言。用戶可以輕松理解這些場景,并進行相應的決策,降低了技術門檻。

3. 快速原型設計組件

- 視覺設計:系統根據用戶確認的 Gherkin 場景,自動生成頁面布局和視覺描述,遵循八大成功的視覺設計原則,確保界面美觀、易用。

- 代碼生成與一致性因子:通過生成一致性因子(測試用例),確保生成的代碼與業務邏輯一致,減少功能偏差。

- 自動修改與迭代:系統能夠根據用戶的反饋,自動修改代碼,實現快速迭代。

4. 用戶驗收與推薦反饋決策

- 用戶驗收決策:在原型生成后,AgileGen 為用戶提供一個代碼執行鏈接,用戶可以直接體驗軟件的功能。如若滿意可以下載完整代碼,部署到實際環境中。

- 用戶推薦反饋決策:通過對界面和功能的測試,用戶可以提出修改建議,如調整界面風格、添加新功能等。AgileGen 會根據用戶的反饋,自動修改代碼,并提供新的原型供用戶驗收。這種循環持續進行,直到用戶滿意并完成軟件交付。

實戰案例:從想法到成品

讓我們回到之前的例子,看看 AgileGen 是如何將一個簡單的想法轉化為完整的軟件的。

步驟 1:提出需求

用戶輸入初始需求:“Please generate a web system with a random roll call function”

圖片

步驟 2:場景設計與確認

AgileGen 利用記憶池,從類似的需求中提取可能的場景,并以自然語言呈現給用戶:

圖片

用戶可以確認這些場景,或者進行修改。例如,用戶可能希望添加一個功能:“I need to be able to save the history of the roll call name.”

圖片

步驟 3:快速原型生成

AgileGen 根據用戶決策過的 Gherkin 場景,生成初步的代碼和界面設計,包括頁面布局、按鈕位置、顏色搭配等。

圖片

圖片

步驟 4:用戶反饋與迭代

用戶運行生成的原型,如果發現界面顏色不符合期望,或者按鈕位置需要調整。他可以在系統中提出這些問題,AgileGen 將根據反饋自動修改代碼。

- 功能增加反饋:隨機點名時給我一些 python 相關的問題。

圖片


圖片

- 樣式修改反饋:我希望顏色能夠更豐富一些。

圖片

圖片

步驟 5:完成并交付

經過幾次迭代,用戶對功能和界面都滿意之后,下載完整的代碼,部署到實際環境中。

圖片

- 更多示例和講解

圖片

視頻鏈接:https://www.youtube.com/watch?v=lClwF7KN2xw

案例對比:與現有生成式軟件開發方法對比

1. 筆記本助理項目 (Bookkeeping Assistant)

用戶需求描述:I need a bookkeeping assistant website.

圖片

AgileGen+GPT3.5 和 AgileGen+GPT4 和 GPT-Engineer 能夠做到實現記賬功能。AgileGenAgileGen+GPT3.5 生成的功能更多,而 AgileGen+GPT4 生成了更簡潔的功能,以更合理的頁面布局完成核心功能。ChatDev (_23 版本,_24 版本)、GPT3.5+CoT 和 GPT4+CoT 生成的頁面未完成簿記功能。相反,它們是常見網頁元素的組合(例如 “關于我們” 和 “聯系我們”)。GPT4o+CoT 生成的頁面使用 Bootstrap 樣式表,但功能不完整無法記錄條目。

2. 運動場地預定軟件 (Sport Arena)

用戶需求描述:Develop a user-friendly software application that allows users to create and customize virtual sports arenas.(來源于 ChatDev’s SRDD 數據集)

圖片

AgileGen+GPT4 方法支持場地的創建、功能定制和配置管理,而 ChatDev+GPT-4 生成沒有 GUI 的應用程序,ChatDev+GPT-3.5 生成了兩個點擊無響應的按鈕界面,標記為 “Create arena” 和 “Customize arena”。

3. 視頻分割軟件 (Video Clipper)

用戶需求描述:VideoClipper is a software application that allows users to easily clip and trim videos. It provides an intuitive interface to select specific sections of the video, and saves the trimmed video as a new file.(來源于 ChatDev’s SRDD 數據集)

圖片

所有方法都生成了能夠完成視頻剪輯的軟件,但 AgileGen 生成的界面體現了更好的界面設計和交互性。

展望未來:開啟軟件開發的新紀元

我們相信,AgileGen 的出現,將開啟軟件開發的新紀元。通過人機協作,充分發揮人類的創造力和 AI 的計算能力,軟件開發將變得更加高效、準確和個性化。正如 Frederick P. Brooks 所言,軟件開發的本質困難在于需求分析和設計。AgileGen 通過引入人機協作的敏捷開發理念,讓用戶深度參與需求的澄清和驗收,使得軟件真正滿足用戶的需求。

我們誠摯地邀請廣大開發者、企業和對軟件開發感興趣的朋友和學者,關注并參與 AgileGen 的未來發展。讓我們攜手共進,探索人機協作在軟件開發中的無限可能,開啟智能軟件開發的新時代!

責任編輯:張燕妮 來源: 機器之心
相關推薦

2025-04-25 02:30:00

機械臂大模型多模態

2011-06-08 00:09:30

RationalInnovate 20軟件開發

2023-10-31 00:49:20

對話式軟件開發

2024-12-18 08:11:52

2017-03-15 08:43:35

2024-01-23 10:35:09

ChatGPT人工智能

2021-08-31 08:00:00

開發軟件框架

2011-11-24 21:25:23

ibmdw

2024-09-20 14:23:25

2023-08-24 10:05:30

人工智能開發測試

2024-04-26 12:37:57

AI訓練

2025-06-23 10:05:40

2021-08-24 09:00:00

開發軟件框架

2023-12-04 08:00:00

人工智能軟件開發

2021-12-06 09:00:00

開發WebDjango

2017-12-06 18:03:06

人工智能機器物聯網

2024-09-23 15:02:40

2010-01-14 19:34:09

云計算IBMRational
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产一区二区三区免费观看在线 | 亚洲三级在线观看 | 欧美日韩亚洲一区 | 国产成人99久久亚洲综合精品 | 欧美 日韩 国产 一区 | 日日草夜夜草 | 午夜久久久久久久久久一区二区 | 国产亚洲一区二区在线观看 | 日韩高清中文字幕 | 91精品国产高清一区二区三区 | 国产成人久久久 | 久久aⅴ乱码一区二区三区 91综合网 | 日韩精品一区二区三区中文在线 | 国产成人精品一区二区三区在线 | 亚洲精品日韩精品 | 一区二区三区免费观看 | 日本一二三区高清 | 草草视频在线免费观看 | 久久精品国产一区二区电影 | 精品久久香蕉国产线看观看亚洲 | 一级片av| 美女黄网 | 久久精品亚洲 | 免费在线观看一区二区三区 | 国产黑丝在线 | 国产精品美女久久久久久久久久久 | 日韩av一二三区 | 国产不卡视频在线 | 亚洲福利在线观看 | 91精品国产综合久久久久久 | 精品国产久 | 黄色av一区 | 国产日韩欧美在线观看 | 欧美精品1区 | 一区二区三区免费在线观看 | 久久久免费电影 | 亚洲精品在线观 | 欧美一区免费 | 久久久不卡网国产精品一区 | 成人免费淫片aa视频免费 | 视频一区二区在线 |