50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

语音编程,软件开发领域的下一个前沿技术?

  • 2021-04-08
  • 本文字数:2048 字

    阅读完需:约 7 分钟

语音编程,软件开发领域的下一个前沿技术?

从语音到代码:当今有两种领先的语言编程平台,它们提供了不同的方式来向计算机“朗诵”代码。其中一个叫做 Serenade,有点像数字助理:它允许你描述你正在编写代码的指令,而不要求你必须逐字逐句地口述每条指令;另一个叫做 Talon,它提供了对每一行更细粒度的控制,它还要求对编入计算机中的每一项任务都有更细致的了解。本文的一个简单的例子是 Serenade 和 Talon 中生成 Python 代码的分步指南,它将在屏幕上打印“hello”。


通过与小工具的对话,我们与它们的互动日益频繁。如今,像 Alexa 和 Siri 这样的老朋友,加入了像苹果 CarPlay 和 Android Auto 这样的汽车助手的行列,甚至加入了对语音生物识别和指令敏感的应用程序。但是,如果这种技术本身可以用语音构建呢?


那就是语音编程的前提,语音编程是一种软件开发方法,用语音代替键盘和鼠标来编写代码。在语音编程平台上,程序员“说出”命令来操作代码,创建适应并自动执行工作流的定制命令。


语音编程并不像看上去那么简单,它背后有很多复杂的技术。例如,语音编程应用Serenade,它有一个专门为代码开发的语音转文字引擎,与谷歌的语音转文字 API不一样,它是为对话式语音设计的。当软件工程师把代码说出来后,Serenade 的引擎就会将它反馈给自然语言处理层,它的机器学习模型被训练来识别并将常见的编程结构转换为语法上有效的代码。


Serenade在 2020 年的种子轮融资中募集到 210 万美元,当联合创始人 Matt Wiethoff 在 2019 年被诊断出重复使力伤害(RSI,译注:指因长时间重复使用某组肌肉造成的损害,是常见的职业病)时,Serenade 就应运而生了。“我放弃了 Quora 的软件工程师职位,因为我再也不能干这个工作了。”他说。“要么选择一份不用打这么多字的工作,要么想出一些解决办法。”


Ryan Hileman 也走上了同样的道路,在一年前遭受手痛之苦之后,2017 年他辞掉了软件工程师的全职工作。于是,Hileman 开始创建Talon,一种免手敲的编程平台。他说:“Talon 的目的是要完全取代键盘和鼠标。”


Talon 有几个组件:语音识别、眼球追踪和噪音识别。Talon 的语音识别引擎基于 Facebook 的Wav2letter自动语音识别系统,Hileman 将其扩展到了与语音编程命令相适应的范围。同时,Talon 的眼球追踪和噪音识别功能可以模拟使用鼠标导航,根据眼球运动在屏幕上移动光标,并根据嘴巴的爆音来点击。“这种声音很容易发出。这种方法不费吹灰之力,并且只需较低的延迟就可识别,因此这种点击鼠标的非语言方式速度更快,而且不会引起声音疲劳。”Hileman 说。


用 Talon 编程听起来就像是用另一种语言说话,软件工程师兼语音编程员 Emily Shea 在2019 年的一次会议演讲时这样说道。她的演讲视频里满是语音命令,如“slap”(点击回车)、“undo”(删除)、“spring 3”(转到文件的第三行) ,以及“phrase name op equals snake extract word paren mad”(结果是这行代码:name = extract_word(m))。


而在使用 Serenade 进行编程时,遵循的是一种更自然的讲代码的方式。你可以说“delete import”来删除文件顶部的导入指令,或者说“build”来运行自定义的构建命令。你也可以说“Add function factorial”来创建一个函数,在 JavaScript 中计算阶乘,并且应用程序将处理语法 —— 包括“function”关键字、括号和大括号 —— 因此你无需显式地声明每个元素。



语音编程的确需要一个像样的麦克风,尤其是当你想去除背景噪音时,Serenade 的模型是根据笔记本电脑上麦克风产生的音频来训练的。如果你想用眼球追踪运行 Talon,你还需要眼球追踪硬件。不过,在没有这种硬件的情况下,Talon 也能正常运行。开源语音编程平台,如AeneaCaster,是免费的,但都依赖于Dragon语音识别引擎,用户必须自行购买。这就是说,Caster 支持Kaldi和 Windows 语音识别,前者是一个开源的语音识别工具包,后者预装在 Windows 上。


Serenade Labs 联合创始人 Tommy MacWilliam 表示,这些结果足以说明问题。“能够描述你想做的事情是如此简单,”他说。“与打字或按键盘快捷键相比,说‘move these three lines down’或者‘duplicate this method’会更加流畅。”


语音编程还可以让那些有伤病或慢性疼痛的人继续他们的职业生涯。“能够使用语音,只需将我的手臂从等式中移除,就可以开辟一种限制较小的方式来使用电脑。”Shea 说。


通过语音进行编程也可以降低软件开发的准入门槛。“如果他们能够用逻辑和结构化的方式思考他们想要写的代码,”MacWilliam 说,“那么我们就能让机器学习走完最后一公里,并将这些想法转化成语法上有效的代码。”


语音编程还处于起步阶段,它能否被广泛采用还取决于软件工程师对传统键盘和鼠标编写代码模式的束缚程度。但是语言编程给了我们各种各样的可能性,也许在将来,脑机接口会直接将你所想的内容转换成代码,或者说是软件本身。

作者介绍:

Rina Diane Caballar,记者,曾做过软件工程师,居住新西兰惠灵顿。


原文链接:


https://spectrum.ieee.org/computing/software/programming-by-voice-may-be-the-next-frontier-in-software-development

2021-04-08 14:332591
用户头像
刘燕 InfoQ高级技术编辑

发布了 1112 篇内容, 共 598.3 次阅读, 收获喜欢 1982 次。

关注

评论

发布
暂无评论
发现更多内容

阿里大师口述:让你可以在简历上写精通SpringBoot

编程 架构 springboot

融云清空历史消息 Android 端

融云 RongCloud

sdk

融云即时通讯SDK集成 -- 通知检查

融云 RongCloud

即时通讯

markdown如何插入图片、音频、视频?

xiezhr

markdown markdown语法 音频

叫练手把手教你读JVM之GC信息

叫练

JVM JVM简介 JVM笔记

融云聊天室属性 kv

融云 RongCloud

IM

融云即时通讯SDK集成 -- 华为推送的点击跳转处理

融云 RongCloud

即时通讯

跳转到@消息的位置

融云 RongCloud

即时通讯

Android 端如何添加自定义表情

融云 RongCloud

IM

融云IMKit 动态删除或添加plugin 的实现

融云 RongCloud

IM

技术实践 | 网易云信 QUIC 加速服务架构与实践

网易云信

架构 音视频

唠一唠融云 VIVO push 无法跳转的解决方案

融云 RongCloud

sdk

唠一唠融云的消息扩展功能

融云 RongCloud

sdk

融云即时通讯SDK集成 -- 定制UI(二) ——添加自定义表情库

融云 RongCloud

金三银四跳槽阿里必备:分布式/高并发/Redis,不看我真的怕你后悔

比伯

Java 编程 架构 面试 程序人生

一卷河图赋太虚:HMS Core CG kit与移动游戏新可能

脑极体

2万字系统总结,带你实现 Linux 命令自由?

比伯

Java 编程 架构 面试 程序人生

京东数科面试真题:常见的 IO 模型有哪些?Java 中的 BIO、NIO、AIO 有啥区别?

Java 架构 面试

融云 IMkit 拦截或监听所有发送消息

融云 RongCloud

sdk

关于融云聊天室KV 值的正确使用

融云 RongCloud

即时通讯

配置融云SDK的自签证书

融云 RongCloud

sdk

融云即时通讯SDK集成 -- 定制UI(一) ——会话界面小改动

融云 RongCloud

即时通讯

融云如何把图片消息的图片上传到自己的文件服务器

融云 RongCloud

sdk

融云 ConversationListFragment 会话列表添加头部布局

融云 RongCloud

sdk

项目延期了,怎么办?

石云升

项目管理 28天写作 职场经验 管理经验 3月日更

短网址服务设计整理

程序员架构进阶

架构 设计实践 28天写作 实操案例 3月日更

融云即时通讯SDK集成 -- 定制UI(三) ——兼容Android Q

融云 RongCloud

即时通讯

在融云 IMkit 会话界面基础上添加消息已读未读

融云 RongCloud

IM

融云如何更换用户信息

融云 RongCloud

即时通讯

融云 IM SDK 集成 --- 刷新会话界面和会话列表界面

融云 RongCloud

IM

学习感悟

shun123456789

语音编程,软件开发领域的下一个前沿技术?_AI&大模型_Rina Diane Caballar_InfoQ精选文章