訂閱
糾錯
加入自媒體

把需求說出來,就能自動生成應(yīng)用了?

就在前段時間,小黑在《低代碼開發(fā)是什么,它會讓程序員失業(yè)嗎?》一文中,描繪過這樣一幅美好的圖景:

在未來,人們可以像拼積木一樣,把不同的功能模塊拼到一起,制作出自己的應(yīng)用。這不僅有助于提升程序員的工作效率,同時也降低了人們的學(xué)習(xí)門檻。

不過,低代碼開發(fā)也有這自己的局限性:它就像是用現(xiàn)成的材料來搭建一座建筑,雖然方便,但對有些人來說,反而會限制他們實現(xiàn)自己的需求。

在這種情況下,一種用自然語言(也就是我們?nèi)粘Uf的話)來生成應(yīng)用的技術(shù)就此誕生了。

把需求說出來,就能自動生成應(yīng)用了?

其實,用自然語言生成代碼并不是一個新生事物。

早在幾年前,就已經(jīng)有不少企業(yè)和學(xué)校在研究這一技術(shù)了。到了去年,更是有人利用OpenAI的開放接口訓(xùn)練出了可以將一些簡單的需求轉(zhuǎn)化成代碼的案例。

而到了現(xiàn)在,這項技術(shù)可以做的事情也變得更多,甚至可以直接將自然語言轉(zhuǎn)換成安卓應(yīng)用。

▲ 自然語言直接生成安卓應(yīng)用

實現(xiàn)這一功能的AI叫“Text2App”,而上面這張圖片,就是它的整個工作流程。

圖片左側(cè)是測試人員輸入的自然語言,翻譯過來就是“創(chuàng)建一個應(yīng)用,其中包含文字輸入框、說話按鈕和語音輸出功能。當(dāng)按下按鈕時,朗讀文字輸入框中的文字!

右側(cè),則是應(yīng)用實現(xiàn)的功能了。整個編譯過程并不需要人工介入,等上幾分鐘,一個安卓應(yīng)用就這樣生成了。

把輸入的文字編程應(yīng)用,要經(jīng)過幾步?

如果要說能有一個AI能直接把人說的話變成應(yīng)用,小黑肯定是不信的。不過,Text2App采用的方法倒是非常聰明:它先將我們輸入的需求文本編譯成一種中間語言,之后再通過編譯器生成代碼。

什么是中間語言呢?其實,小黑也不是很懂,于是大概地查了一下網(wǎng)上的釋義。不過這一查,小黑就更云里霧里了,還是貼一段百科的原文來讓大家了解吧:

“中間語言(英語:Intermediate language),在計算機科學(xué)中,是指一種應(yīng)用于抽象機器(abstract machine)的程序語言。它設(shè)計的目的是用來幫助我們分析電腦程序。”

希望有懂的程序員老師能幫小黑解釋一下這句話。

不過,看不懂也不是什么大問題,我們把它看成是連接自然語言和代碼的橋梁就對了。

在之前,大多數(shù)希望實現(xiàn)自然語言直接生成應(yīng)用的嘗試,都是采用直接翻譯的模式進行的。這就帶來一個問題:自然語言的結(jié)構(gòu)與代碼不同,直接翻譯的效果就會像谷歌翻譯的結(jié)果一樣,對一些短句和常用句式效果良好,一旦要翻譯整段文字,輸出的效果就慘不忍睹了。

因此,研究人員為了克服不能生成大型應(yīng)用的限制,發(fā)明了一個形式語言作為中間語言。它能提取自然語言中的重要內(nèi)容,再形成一個簡單的程序來表示代碼。

▲ Text2App的完整工作流程

不過,很顯然,目前Text2App能夠?qū)崿F(xiàn)的功能還相當(dāng)簡單,但研究人員的最終目標非常遠大:使Text2App成為一個成熟的、基于自然語言的app開發(fā)平臺。

如果要小黑來評價Text2App這一類自然語言生成應(yīng)用的嘗試,小黑只能用敬佩來表示:長期以來,編程的學(xué)習(xí)成本一直都不低,如果Text2App的理想真的能實現(xiàn),那對人們學(xué)習(xí)、利用編程有著莫大的幫助。

但同時,小黑也對它的前景不那么樂觀:人工智能時至今日都只在發(fā)展的初期,Text2App究竟何時才能達成這一遠大理想,似乎還遙遙無期。

圖源:Text2App研究團隊、百度搜索

聲明: 本文由入駐維科號的作者撰寫,觀點僅代表作者本人,不代表OFweek立場。如有侵權(quán)或其他問題,請聯(lián)系舉報。

發(fā)表評論

0條評論,0人參與

請輸入評論內(nèi)容...

請輸入評論/評論長度6~500個字

您提交的評論過于頻繁,請輸入驗證碼繼續(xù)

暫無評論

暫無評論

人工智能 獵頭職位 更多
掃碼關(guān)注公眾號
OFweek人工智能網(wǎng)
獲取更多精彩內(nèi)容
文章糾錯
x
*文字標題:
*糾錯內(nèi)容:
聯(lián)系郵箱:
*驗 證 碼:

粵公網(wǎng)安備 44030502002758號