GenAI在軟件開發方面的早期回報
GenAI已經對IT的多個領域產生了影響,尤其是在軟件開發領域。
早期用例包括代碼生成和文檔編制、測試用例生成和測試自動化,以及代碼優化和重構等。
盡管如此,軟件開發的GenAI仍處于初級階段,因此技術領導者和軟件團隊可以預期在道路上會遇到顛簸,但早期的回報表明,這項技術可以為創建和增強應用程序的過程提供好處,但有一些警告。
在應用程序開發生命周期中提供幫助
客戶服務軟件提供商FreshWorks負責IT和CIO的高級副總裁Prasad Ramakrishnan表示,GenAI“打開了開發人員可以在對話式范式中利用的知識體系。”
Ramakrishnan說:“這感覺就像有一位坐在辦公桌旁的同事可以一起頭腦風暴。”我們最初推出的GenAI使我們的團隊能夠在幾天內開發代碼,而不是幾周。
Ramakrishnan說,軟件開發生命周期中成功的關鍵是質量保證(QA)和驗證過程。“任何開發企業的成熟度都可以很容易地通過QA投資的規模和類型來衡量,”他說,“GenAI在協助執行代碼審查和及早發現潛在問題方面發揮了作用。”
Ramakrishnan說,GenAI還通過自動化減少了完成測試所需的時間。“異常檢測是GenAI可以幫助識別隱藏缺陷和地雷的另一個領域。”他說。
金融服務公司Vanguard的首席信息官Nitin Tandon表示,該公司正在“快速、安全地”試驗具有GenAI工具——在人工監督和專業知識的作用下——使開發人員的工作效率得到提高。
“除了內容開發和知識管理,軟件和編碼開發仍是一個高價值的實驗領域,以努力提高運營效率”他說。
Tandon說,GenAI開發試點項目的初步結果令人鼓舞,開發人員報告說,GenAI簡化了代碼生成、調試和代碼一致性。
Tandon說:“初級開發人員報告的生產率提升幅度最大,但這仍然是一個積極研究和試驗的領域。”
“此外,我們正在考慮對大型語言模型進行關于我們的代碼庫的培訓,以進一步提高我們的開發人員和數據工程師的生產率。憑借我們在Vanguard龐大的開發人才基礎,即使是生產率的適度提高也可以為我們的客戶釋放有意義的價值。“
金融技術提供商Momnt正在使用Github Copilot,這是一款由微軟的GitHub和OpenAI開發的基于云的人工智能工具,通過自動完成代碼來幫助各種開發平臺的用戶。
Momnt的軟件開發團隊,包括工程和質量保證專業人員,使用GitHub Copilot來支持公司貸款平臺的開發,以及其他工具。
“我們希望我們的軟件開發人員和工程師使用AI和GenAI工具來幫助生成各種測試用例,我們的質量保證工程師將使用這些工具在不犧牲時間的情況下更徹底地進行評估”總裁兼首席技術官Brian Lanehart說。
“到目前為止,我們的團隊對新技術解決方案和GenAI的集體接受是積極的,他們繼續保持好奇心,在他們的日常工作中尋找新的工具來實施,這樣做不僅簡化了日常任務,還提高了整體團隊效率。”
Lanehart說,隨著開發團隊越來越熟悉這些工具,他們對工具的理解以及將它們應用于不同業務場景的能力將帶來更大的價值。
“例如,能夠將整個應用程序請求完全傳達給生成所有必要代碼的人工智能,將顯著縮短任務時間線。”他說,這意味著工程師或團隊可以騰出更多時間,創造性地或戰略性地思考整個項目以及如何進一步改進它。
軟件公司ZoomInfo的開發團隊渴望在GenAI工具去年投入大規模使用后對其進行實驗,首席技術官Ali Dasdan。
最早的用例之一為該公司的軟件開發人員提供了訪問Github Copilot的權限,Dasdan說,在取得初步成功后,ZoomInfo已經開始將GenAI整合到整個企業中,以提高生產率。一個例子是文檔搜索和摘要。
“軟件開發需要大量的文檔,”Dasdan說,“產品需求和架構設計等文檔在運行良好的企業中是標準的”但開發團隊需要大量時間來審查這些文檔。“通過在短短幾分鐘內對這些文檔進行摘要和索引,GenAI節省了大量的時間”他說。
試驗的成功使該公司幾乎所有的軟件開發人員都獲得了許可。“然而,我們的工程師仍然必須審查該工具創建的代碼”Dasdan說,“我們已經接受了數以萬計的代碼,我們已經意識到節省了大量的時間。”
限制、團隊影響和吸取的經驗教訓
早期使用GenAI的一個關鍵教訓是,它不會取代人類開發人員。
IT服務提供商BDO Digital的數據和人工智能業務負責人Kirstie Tiernan表示,最初,人們對GenAI自主生成復雜軟件的潛力感到“興奮”。
“然而,我們很快了解到,人工智能是一種增強人類專業知識的工具,而不是取代它,” Tiernan說,“人工監督的必要性很快就變得明顯起來,以確保人工智能生成代碼的質量和功能。這是一種合作伙伴關系,人工智能處理了一些繁重的任務,使開發人員能夠專注于戰略問題解決。”
BDO正在努力的一個關鍵教訓是將人工智能工具與現有工作流集成的重要性。“這不僅僅是關于采用新工具,它更多地是關于開發團隊如何操作、溝通和協作”Tiernan說,“整合過程突出了我們所有開發實踐中對靈活性和適應性的需求。”
在BDO上,更有趣的驚喜之一是GenAI對創造力和創新的影響。Tiernan說:“通過將常規任務自動化,開發人員可以自由地應對更復雜的挑戰,探索更具創新性的解決方案,看到人工智能如何成為人類創造力和思維的催化劑,令人興奮。”
對于任何新的技術解決方案,最大的挑戰之一是確定團隊應該在多大程度上集成或依賴該工具,Momnt的Lanehart說。
他說:“我們的核心信念之一是使用技術來賦予和支持人們,因此,我們知道我們不希望人工智能和GenAI工具取代我們的員工,相反,我們希望這些工具能夠補充這些人為團隊帶來的技能,并幫助他們更有效和高效地發揮作用。”
Lanehart說,總體來說,科技行業對能夠監督、實施和運行GenAI工具的人的需求正在增加,例如,他表示,這可能是一名在產品開發團隊工作的員工,但其核心專長是ChatGPT或Copilot。
隨著GenAI變得越來越普遍,“我們看到了使用這些工具進行交叉培訓的人的價值,”Lanehart說,“我們需要能夠以不同方式解決新問題的人,我們希望他們把這些知識帶回我們的團隊。”
Lanehart說,Momnt已經開始鼓勵其軟件開發團隊成員通過將其應用于個人興趣,如音樂、喜劇和其他領域來擴大他們對GenAI工具的理解。他表示:“發現人工智能對金融科技和個人興趣的應用之間的重疊,讓我們的團隊在推動新的行業增長方面處于獨特的地位。”
首席人工智能官Akshay Sharma表示,醫療保健技術公司Lyric正在利用大語言模型的力量來改進幾個流程,但早期的教訓之一是,需要做多少工作才能從大語言模型獲得正確的值。
Sharma說:“他們開箱即用,有些泛化,錯過了目標,產生了幻覺,但是,有了正確的工程和設計,并通過在提示下運行實驗,我們可以從中獲得很多里程,我們不得不構建大量的實驗和測試框架來持續評估GenAI。”
FreshWorks的Ramakrishnan認為,GenAI有潛力使開發人員能夠更快地將應用程序推向市場。他表示:“然而,他們的技能需要調整,以成為快速工程方面的專業人員,人工智能生成的編碼只會像所詢問的提示類型一樣有價值和準確。”
此外,Ramakrishnan補充說,人工智能代碼需要由經驗豐富的開發人員驗證以確認準確性。“我不能過分強調人類對機器生成代碼進行代碼審查的價值,”他說,“盡管人工智能對工作場所具有生產力價值,但它遠不是完美的,需要監督。”
此外,Ramakrishnan說,人工智能的使用引發了一些與在算法中引入偏見相關的倫理問題,如果不加以控制,這可能會導致意想不到的后果。“它還在信息安全領域引入了新的考慮,”他表示,“不良行為者現在可以更廣泛地將惡意代碼引入數百萬甚至數十億的系統中。”
將不斷需要重新配備勞動力,以有效利用人工智能。“這就是說,我們僅僅觸及了人工智能生產力價值的皮毛,”他說,“最好的日子就在我們前面。”
從開發商的角度來看
確定GenAI對開發團隊影響的最好方法之一是讓團隊成員對他們的經驗進行權衡。為了收集內部對ZoomInfo使用GitHub Copilot的反饋,該公司對大約80名開發人員進行了調查。研究表明,Copilot有幾個優點。
一個是生成模板和重復性代碼的能力,這使開發人員能夠專注于復雜的邏輯,另一個原因是編寫單元測試所需的時間大幅減少。ZoomInfo的達斯丹表示:“許多用戶反映,該工具通過提供有用的代碼建議和自動補齊代碼行,提高了他們的編碼速度。”
這些優勢為ZoomInfo的開發者帶來了幾個好處,絕大多數人表示,Copilot減少了完成任務所需的時間,平均減少了20%。約三分之二的人表示,使用GenAI技術可以讓他們在每次沖刺中完成更多任務,約四分之三的人表示,他們的工作質量得到了提高。
“基于這些強勁的早期結果,我們預計GenAI工具將繼續提高我們工程師的生產率,并從輔助編寫實際生產代碼的任務中節省時間,”Dasdan說。
軟件開發的GenAI未來
開發領導者相信,作為一種開發工具,GenAI只會變得越來越重要。
BDO Digital的Tiernan說:“展望未來,GenAI提高生產率的潛力是巨大的,隨著這些工具越來越多地融入軟件開發的結構中,我們很可能會看到開發時間和成本的大幅減少。”
例如,Tiernan說,自動生成樣板代碼并提供錯誤修復的實時建議可以將某些開發任務傳統上所需的時間減半。
Tiernan說:“但真正的游戲規則改變者將是如何使GenAI使我們能夠更有效地處理更復雜的問題,有了人工智能處理例行公事,開發人員可以專注于戰略創新,推動軟件解決方案中可能發生的事情的界限。”