軟體行業迫切需要基於正向生成的編碼模型

徐少俠發表於2023-04-18

逆向生成難以實現飛躍

軟體行業長期面臨生產率瓶頸。程式設計師的工作強度已經接近極限,要繼續提高軟體交付速度似乎難上加難。近年來在開發流程和工具上,如GPT顯然提供了一定的提效,但是實質上沒有改變軟體開發的基本模式————逆向生成。目前軟體專案的大部分工作時間都花在理解“現有”系統和程式碼上,然後基於此進行修改或擴充套件。僅靠檔案很難完全重構一個程式碼庫。程式設計師不得不深入理解語句級別的程式碼細節,這顯然不是人工智慧的最佳應用場景。程式碼一旦完成,整個系統的內部機理又成為一個黑箱。

GPT仍屬逆向生成

GPT雖然可以根據上下文生成程式碼,但它並不是在進行正向生成————根據需求構建新系統,而是在翻譯和擴充套件現有系統,難免侷限於系統原有的設計和架構。這更像一種“逆向生成”————機械化地解讀並翻譯一段既有的程式碼,而非根據需求正向構建新系統。GPT需要大量的訓練資料來學習通用的程式碼模式和上下文關聯,然後在特定上下文中生成相應的程式碼。這種生成過程其實是在解讀訓練資料,並在新的上下文中翻譯類似的程式碼。它難以理解真實需求中的概念和邏輯,真正根據需求生成全新的解決方案。

正向生成是軟體工程的未來

真正意義上的強人工智慧出現之前,軟體行業要進一步提高生產力,還需要一個全新的編碼正規化————正向生成。這需要系統性地研究從需求到設計與實現的正向生成流程,構建能夠根據訴求自動推演出高質量解決方案的智慧系統。要實現正向生成,關鍵是建立“需求->設計->程式碼”之間的可信對映關係。
相比之下,逆向生成的難度更大,生成的程式碼質量更難保證。因此,理想的正向生成系統應該可以大幅超越逆向生成系統的生成能力。這需要跨越的技術難度不小,但其潛在的產業價值同樣巨大。
總之,就目前而言,軟體工程主要依靠逆向生成完成工作,這難以實現質的飛躍,並導致編碼質量和效率的天花板。軟體行業迫切需要一個完整的正向生成編碼模型與之對應,真正實現「說需求,出系統」的軟體生產自動化新正規化。這將使軟體工程從“逆向解碼之藝”邁向“正向構建之道”,開啟軟體工業化的新篇章。

相關文章