历趣首页 手机客户端

当前位置:历趣下载软件平台>资讯>新闻>你给需求文档,AI就能帮你开发安卓App

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

时间:2021-06-08热度:

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

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

不信你看。

这是输入的文字:

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

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

不知广大程序员们尤其是安卓开发,感觉如何?

介于文字描述和源码之间的“中间语言”

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

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

为什么要先生成中间语言呢?

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

虽然其中一些效果还不错,但大多数无法生成大一点的、上百行代码的程序。

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

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

最后用研究人员开发的一个编译器,就能把这个中间语言转换成源码。

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

当然,生成中间语言还是靠的神经机器翻译模型。

下面是“文字描述转换成APP”的具体流程:

文字描述:

Create an app with a textbox, a button named “Speak”, and a text2speech. When the button is clicked, speak the text in the text box.

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

<complist> <textbox> <button> string0 </button> <text2speech> </complist><code> <button1clicked> <text2speech1> <textboxtext1> </text2speech1></button1clicked> </code>

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

下面是自然语言和中间语言(SAR)自动合成的示意图,很直观:

功能还比较初级

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

只能描述11种组件:文本框、按钮、标签、播放器、时间选择器……

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

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

不过研究人员说了,最终目的是使Text2App 成为一个成熟的基于自然语言的APP开发平台。

需要多久呢?还未可知。

热门APP标签
手机赚钱软件手机直播软件手机客户管理软件手机录屏软件手机视频播放器软件 二手汽车交易平台app免费真人视频app解压软件应用商店可以免费追剧的app
热门手游标签
手机赛车游戏手机吃鸡游戏手机枪战游戏手机打金游戏手机三国策略游戏 传奇的手机游戏挂机刷装备的手游奇迹手游赛车游戏单机小游戏
热门APP电脑版
小红书电脑版快手电脑版汽水音乐电脑版小红书千帆电脑版拼多多电脑版淘宝电脑版CAD看图王电脑版元气桌面壁纸电脑版美团电脑版哔哩哔哩电脑版
热门电脑软件
微信电脑版抖音电脑版剪映专业版企业微信电脑版钉钉电脑版QQ电脑版美图秀秀360安全浏览器UC浏览器电脑版搜狗输入法
热门文章
微信分身怎么弄 微信分身如何设置微信删除的聊天记录怎么恢复 微信删除的聊天记录如何恢复支付宝如何解绑银行卡怎么操作 支付宝解绑银行卡操作方法介绍和平精英超体对抗新职业 和平精英超体对抗职业介绍一览爱奇艺会员怎么取消自动续费 取消爱奇艺的自动续费方法淘宝双12大促5元店铺红包是什么开始领取 怎样使用支付宝怎么关闭自动续费 支付宝关闭自动续费教程抖音怎么将商品橱窗功能开通 开通方法介绍货拉拉收费标准是多少 货拉拉怎么收费腾讯地图如何标注自己店铺位置 具体操作步骤