写点什么

使用 Astro 如何构建 Astrobot Voice

  • 2019-11-07
  • 本文字数:1971 字

    阅读完需:约 6 分钟

使用 Astro 如何构建 Astrobot Voice

这是 Astro Technology, Inc. 首席技术官 Roland Schemers 撰写的一篇客座文章。用他们自己的话说,Astro “在人工智能的支持下,为人员和团队创建适用于 Mac、iOS 和 Android 的现代电子邮件应用程序。现在,使用应用内电子邮件语音辅助工具 Astrobot Voice,您不用离开 Astro 的应用程序即可阅读、管理和回复电子邮件。”


最近,Astro 发布了 Astrobot Voice,这是第一款应用内电子邮件语音辅助工具。这意味着,现在,您不用离开 Astro 的 iOSAndroid 应用程序即可阅读、管理和回复电子邮件。


在 6 月份 Astro 发布 Amazon Alexa 技能后,我们期待让更多人能够通过语音管理电子邮件。在这篇文章中,我们从技术角度详细介绍了我们为何选择这条路、我们如何完成目标以及我们所使用的技术。

为何要构建应用内语音?

我们是 Amazon Echo 的所有者和粉丝,为了表示欢迎和对我们自己的 Alexa 技能进行 dogfood 测试,我们实际上为每位 Astro 新员工提供了 Echo Dot。我们看到技能获得了成功,并想出了多种与更多人在更多场合进行互动的方法。因此,我们决定探索构建应用内语音的可行性。

选择软件

在确定如何构建应用内语音时,我们考虑了一些选项,但同时谨记以下几点目标:


  1. 尽可能重复使用我们基于文本的辅助功能 (在 api.ai 上运行) 或 Alexa 技能中的代码和逻辑。

  2. 通过精准的语音识别打造流畅的用户体验。

  3. 让服务器来处理繁重的工作。


考虑到时间表和工程资源,第一个目标非常重要。我们是小型初创公司,像这样节省时间对我们非常有帮助。


第二个目标,打造流畅用户体验,极具挑战性。Amazon Alexa 因其规模在自然语言处理方面肯定能够提供帮助。因此,我们知道,在尝试打造精确体验的过程中,我们希望利用 AWS 服务及其背后的深度学习技术。


对于第三个目标,我们知道,Astrobot Voice 需要将操作系统级 API 和服务器端开发相结合。对于初始实施,我们决定确保由服务器来完成大部分繁重工作,同时谨记成本问题。由服务器完成大部分工作的好处包括可为 iOS 和 Android 应用提供共享代码,并且无需将 Astro 应用程序的更新版本推送到应用商店即可更改服务器上的流。

堆栈

iOS

对于用于语音识别的 iOS API,我们使用了 AVSpeechSynthesizerSFSpeechRecognizer。SFSpeechRecognizer 仅对 iOS 10 或更高版本可用,因此 Astrobot Voice 只在 iOS 10 和 11 上可用。这一点对于某些应用程序开发人员而言可能是一个限制因素,但并不影响我们的使用。

Android

对于 Android,我们将标准 Android API 用于语音识别,它包含语音识别器文本到语音转换功能。


我们为 iOS 和 Android 都提供了发送服务器记录的文本或文本字符串的选项。由于成本、时间限制和延迟问题,我们决定选择后者。

服务器

在服务器端,我们使用了 Amazon Lex。通过选择 Amazon Lex 而舍弃 api.ai,我们可以重复使用和共享大量已经用于 Alexa 的相同逻辑。虽然我们可以在基于文本的 Astrobot 版本中重复使用一些逻辑,但我们最后决定使用 Amazon Lex 来节约更多时间并提供更好的体验。我们预计,这样可帮助一位开发人员节省 2 至 4 周的时间。随着进一步开发 Astrobot Voice 和 Alexa 技能,这一决策将继续帮助我们节省时间。


将来,当我们提供 Astro 的付费版本 (目前我们的应用程序是免费的) 时,我们计划用适用于语音输入的 Amazon Lex 以及适用于语音输出的 Amazon Polly 来代替设备上语音识别功能,从而利用更多 AWS 服务。这将提升自动程序体验的品质。


下面是这些服务如何协作以创建 Astrobot Voice 体验的流程和架构图:



针对应用内语音开发人员的建议

首先,确保您的服务或应用程序支持语音。考虑到语音的状态,立即在特定应用程序中添加语音可能并不是最重要的。虽然语音功能具有自然语言理解和自动语音识别能力,但它仍然不是使用应用程序的默认方式。因此,您的使用案例需要具有显著的吸引力并位于产品路线图的顶部。我们发现了一个清晰的使用案例,那就是在家庭使用电子邮件和语音的情况,例如准备上班或在车里时。


第二,我们建议切实考虑您使用的技术,避免重复工作。有很多服务和资源可以简化开发过程,让 MVP 走向世界。另一方面,确保在服务器端实现良好的文摘生成,以防止将您限定在用于意图检测的特定服务上。由于这些服务仍然非常新,因此还在不断发展,您可能最终 (甚至很快) 需要切换服务。对于 Astrobot (包括基于语音和基于文本),我们曾经尝试过 Luis.ai、wit.ai、api.ai,而现在使用 Amazon Lex,并且无需对服务器逻辑进行重大更改。


我们很高兴,这是首款内置语音辅助功能的电子邮件应用程序,我们还希望看到其他应用程序在语音领域取得进步。在许多情况下,通过语音方式检索信息和创建新信息要快得多,我们渴望看到接下来的发展。


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/how-astro-built-astrobot-voice-a-chatbot-for-email/


2019-11-07 08:00991

评论

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

iOS 面试策略之经验之谈- App的测试和上架

iOSer

ios 面试 app上架 app测试

打造生态“朋友圈”,英特尔以生态之道培育AI创新“大气候”

E科讯

助力秋招第二弹:Java并发编程知识梳理

北游学Java

Java 面试 秋招

打破固有思维(十九)

Changing Lin

阿里P9架构师力荐:Java面试必刷的17套一线大厂真题(含答案)

Java架构追梦

Java 阿里巴巴 架构 腾讯 面试

iOS面试大全从面试的准备和流程到算法和数据结构以及计算机基础知识

iOSer

ios 面试 面向协议protocol编程 iOS 知识体系

GitHub上下载量突破100000+阿里巴巴的这份开源项目如此牛逼

阿里巴巴 开源 编程 Java 25 周年

阿里云黄博远:AI工程化是发挥算法及数据价值的效能中枢

阿里云大数据AI技术

Flutter 混合开发基础

网易云信

flutter 框架

提高建模效率:自动化机器学习之贝叶斯优化综述

索信达控股

机器学习 自动化 金融科技 贝叶斯公式 产品建模

强劲性能释放释放:联想消费新品笔记本震撼发布

E科讯

将模型转为NNIE框架支持的wk模型第一步:tensorflow->caffe

华为云开发者联盟

tensorflow caffe NNIE框架 wk模型 mxnet

直播点播窄带高清之 JND 感知编码技术

网易云信

音视频 视频编码

“零信任产业标准工作组”再度升级,持续促进国内零信任产业的协同发展

不同数据库模式下DATE类型的行为解析

华为云开发者联盟

MySQL oracle GaussDB(DWS) TD DATE类型

SUSECON 2021首日重点新闻:SLES 15 SP3和SUSE Rancher 2.6全新发布

Rancher

膜拜!多次霸榜Github的springboot 实战派文档到底有多强?

Java 程序员 架构 面试

iOS 面试策略之经验之谈-架构的选择

iOSer

ios 架构

看德威学校如何通过亚马逊云科技开启青少年AI探索之旅

亚马逊云科技 (Amazon Web Services)

硬核出击,只为守护你的秘密!

亚马逊云科技 (Amazon Web Services)

太为难我了,阿里面试了7轮(5年经验,拿下P7岗offer)

Java 程序员 架构 面试

Docgeni,开箱即用的 Angular 组件文档工具

PingCode研发中心

开源 研发工具

iOS 面试策略之经验之谈-面向协议的编程

iOSer

ios swift 面试 面向协议protocol编程 面向协议编程

hive的DDL语法基本操作

大数据技术指南

hive 5月日更

一文通关苦涩难懂的Java泛型

程序猿阿星

泛型 java基础 Java泛型

工业绿色发展可视化管理——高炉炼铁厂可视化系统

一只数据鲸鱼

数据可视化 工业物联网 智慧工厂 三维可视化 高炉炼铁

Python3 Note 浮点类型误差问题

awen

Python 浮点型 decimal

Django 之路由篇

若尘

django Python编程 路由 5月日更

农产品区块链溯源平台建设解决方案,健全食品安全体系

源中瑞-龙先生

区块链 溯源 食品安全

使用 Astro 如何构建 Astrobot Voice_其他_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章