主页 > 文档 > 文章列表

你给需求文档AI就能帮你开发安卓App

发布日期:2021-06-09 22:05   来源:未知   阅读:

  用自然语言生成代码不算稀奇,但现在,这项技术涉及的业务范围真是越来越广了。

  就有一个叫做Text2App的“AI”,你“喂”给它一串文字需求,它就能直接给你“消化”成安卓应用!

  创建一个APP,上面有一个视频、一个按钮,一个文本转语音的功能以及一个手机加速传感器。点击按钮,播放视频;摇晃手机,念出文字“happy Text2App”。

  整个过程除了等编译花上几分钟,无需别的代码操作,就能直接生成下面这样一个安卓应用:

  Text2App这个框架出自加州大学洛杉矶分校和孟加拉国工程技术大学。

  它不是直接将自然语言生成源码,而是先生成中间语言,再由编译器生成源码。

  因为此前大多数根据文字描述生成程序的研究都是基于端到端的神经机器翻译 (NMT) 模型,类似于Google 翻译,将自然语言直接翻译成源码。

  为了克服这个限制,研究人员就在这个过程发明了一个新的形式语言 (formal language)做“桥梁”。

  它能“搞懂”复杂的源码,并将用户给定的自然语言转换出一小部分tokens(标记),再形成一个简单的程序表示代码。

  最理解编程语言的还是编译器,完全让AI来生成复杂的程序还不行,所以离不开编译器的大力支持。

  上面这段自然语言首先被格式化(例如将“Speak”转为“ ‘STRING0’:’Speak’ ”),然后交给一个有编码器和解码器的Seq2Seq神经网络翻译成简单的应用程序表示(SAR)——这就是上面说的中间语言:

  再通过SAR编译器将中间语言转换成MIT App Inventor源码文件(.scm/.bky),由MIT打包成最终可用的安卓端应用程序即可。

  正如大家所料,这个框架还是比较初级,目前描述文字需要被限定在一个固定范围:

  能实现的事件、操作等倒是没有明确限制,感兴趣的可以具体测测能实现多少。

  目前的功能也很单一,广大安卓开发程序员们还远远不用担心AI“抢饭碗”。

  不过研究人员说了,最终目的是使Text2App 成为一个成熟的基于自然语言的APP开发平台。本港台同步报开奖直播现场