2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

使用 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:001107

评论

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

为什么编程第一课都要学Hello World?

博文视点Broadview

架构实战营模块 3 作业

陌生流云

架构实战营

Java编程之数组

魏铁锤

10月月更

【一Go到底】第十四天---break快速入门

指剑

Go golang 10月月更

大数据ELK(二十四):安装Kibana

Lansonli

10月月更 安装Kibana

Python进阶(二十)Python爬虫实例讲解

No Silver Bullet

Python 数据分析 10月月更

22道js输出顺序问题,你能做出几道

loveX001

JavaScript

JVM诊断工具中的深堆、浅堆、支配树,你都明白吗

JAVA旭阳

Java JVM 10月月更

跟着卷卷龙一起学Camera--一亿像素的好坏01

卷卷龙

ISP camera 10月月更

Python进阶(十九)Python3安装第三方爬虫库BeautifulSoup4

No Silver Bullet

Python 字符串 10月月更 BeautifulSoup4

跟着卷卷龙一起学Camera--一亿像素的好坏03

卷卷龙

ISP camera 10月月更

微信朋友圈架构设计

风行

架构 架构实战训练营9期

金九银十前端面试题总结(附答案)

loveX001

JavaScript

面向对象思想和Java中类的定义

共饮一杯无

Java 面向对象 10月月更

Sass入门使用指南

小鑫同学

前端 Node 10月月更

最火的物联网技术MQTT,其服务质量QoS的三个级别分别是什么意思,本文一定对您有帮助!

wljslmz

物联网 mqtt QoS 10月月更

React循环DOM时为什么需要添加key

beifeng1996

React

Java历史与环境搭建笔记

魏铁锤

10月月更

「Hive进阶篇」一、详解存储格式及压缩方式

大数据阶梯之路

大数据 hive 面试 数仓

C++使用protobuf嵌套结构体总结

中国好公民st

c++ protobuf 10月月更

不同的子序列 II

掘金安东尼

算法 10月月更

80%的前端开发都答不上来的js异步面试题

loveX001

JavaScript

Java对象的使用和对象内存图解

共饮一杯无

Java 对象 10月月更

2022-10-13:给定一个只包含三种字符的字符串:( 、) 和 *, 写一个函数来检验这个字符串是否为有效字符串。有效字符串具有如下规则: 任何左括号 ( 必须有相应的右括号 )。 任何右括号 )

福大大架构师每日一题

算法 rust 福大大

Jib使用小结(Maven插件版)

程序员欣宸

Docker 10月月更 Jib

[整理]CI持续集成-基于Github Action

小鑫同学

前端 Node 10月月更

【从0到1学算法】3.折半查找

Geek_65222d

10月月更

跟着卷卷龙一起学Camera--一亿像素的好坏02

卷卷龙

ISP camera 10月月更

变量与常量介绍笔记

魏铁锤

10月月更

cstdio的源码学习分析10-格式化输入输出函数fprintf---宏定义/辅助函数分析01

桑榆

源码刨析 10月月更 C++

「Hive进阶篇」二、万字长文超详述hive企业级优化

大数据阶梯之路

大数据 hive 面试 hive优化

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