IBM 利用 AI 將 COBOL 代碼轉(zhuǎn)換為 Java
IBM 宣布推出一款新的生成式 AI 輔助產(chǎn)品 watsonx Code Assistant for Z,有助于在 IBM Z 上更快地將 COBOL 轉(zhuǎn)換為 Java ,并增強(qiáng)平臺(tái)上的開發(fā)人員生產(chǎn)力。該產(chǎn)品預(yù)計(jì)將在今年 9 月份進(jìn)行預(yù)覽,第四季度實(shí)現(xiàn)全面上市,旨在幫助加速 COBOL 應(yīng)用程序現(xiàn)代化。
COBOL 是最古老的編程語(yǔ)言之一,歷史可以追溯到 1959 年左右;但當(dāng)下仍被大型組織廣泛用于處理來自重要中央系統(tǒng)的數(shù)據(jù),例如賬單、帳戶、工資單和客戶交易等。2022 年的一項(xiàng)調(diào)查指出,92% 的受訪者認(rèn)為 COBOL 具有戰(zhàn)略意義,日常使用的 COBOL 代碼量顯著增加至 775-8500 億行;大約是先前估計(jì)的三倍。
Watsonx Code Assistant for Z 是 watsonx Code Assistant 產(chǎn)品系列的新成員,由 IBM 的 watsonx.ai 代碼模型提供支持。該模型從 1.5 萬億個(gè) tokens 中學(xué)習(xí)了 115 種編碼語(yǔ)言的知識(shí);擁有 200 億個(gè)參數(shù),有望成為代碼自動(dòng)化領(lǐng)域最大的生成式人工智能基礎(chǔ)模型之一。隨著時(shí)間的推移,watsonx Code Assistant 的產(chǎn)品組合還計(jì)劃擴(kuò)展到其他編程語(yǔ)言。
IBM Research 首席科學(xué)家 Ruchir Puri 表示,IBM Z 的 Code Assistant 旨在幫助企業(yè)重構(gòu)其大型機(jī)應(yīng)用程序,同時(shí)保持性能和安全性。Code Assistant 可在本地運(yùn)行,也可作為托管服務(wù)在云中運(yùn)行。
“IBM 構(gòu)建了一個(gè)全新的、最先進(jìn)的生成式 AI 代碼模型,將傳統(tǒng) COBOL 程序轉(zhuǎn)換為企業(yè)級(jí) Java,生成的代碼具有高度自然性。除了代碼轉(zhuǎn)換之外,Code Assistant 還支持完整的應(yīng)用程序現(xiàn)代化生命周期,并幫助開發(fā)人員在現(xiàn)代化架構(gòu)中理解、重構(gòu)、轉(zhuǎn)換和驗(yàn)證翻譯后的代碼?!?/p>
與市場(chǎng)上現(xiàn)有的一些競(jìng)爭(zhēng)產(chǎn)品不同的是,Puri 認(rèn)為,Code Assistant 的優(yōu)勢(shì)在于采取了措施以避免犧牲 COBOL 的性能,同時(shí)降低成本并生成易于維護(hù)的代碼?!癐BM 為 IBM Z 構(gòu)建了 Code Assistant,以便能夠混合搭配 COBOL 和 Java 服務(wù)。如果系統(tǒng)的‘understand’和‘refactor’功能建議應(yīng)用程序的給定子服務(wù)需要繼續(xù)使用 COBOL,那么它將繼續(xù)保持,而其他子服務(wù)則將轉(zhuǎn)換為 Java?!?/p>
不過 Puri 也警告道,在經(jīng)過人類專家審查之前,不要隨便部署由 Code Assistant 生成的代碼。與任何 AI 系統(tǒng)一樣,企業(yè)的 COBOL 應(yīng)用程序可能存在獨(dú)特的使用模式,而 IBM Z 的 Code Assistant 可能尚未掌握這些模式。因此必須先使用漏洞掃描器掃描代碼,以確保代碼的安全性。