对于语音识别产品的实施方案,给出简易的业务流程,仅供参考。

如下流程图,可以使用如下两个站点查看。

文件转写

创建文件转写任务

客户应用->接入网关: 发送创建文件转写的请求
接入网关->安全网关: 转发请求
安全网关->安全网关: 对请求进行鉴权
安全网关->业务网关: 转发请求
业务网关->业务网关: 校验业务请求
业务网关->业务网关: 选择算法服务
业务网关->数据库: 保存任务信息
业务网关->任务队列: 将文件转写请求放入任务队列
业务网关-->安全网关: 返回响应消息
安全网关-->接入网关: 返回响应消息
接入网关-->客户应用: 返回响应消息

执行文件转写任务

算法服务实例->任务队列: 轮询任务队列,提取任务
算法服务实例->数据库: 启动转写任务
算法服务实例->存储服务: 下载音频文件
算法服务实例->算法服务实例: 前处理
算法服务实例->算法引擎: 加载音频数据,送入识别引擎
算法引擎->算法服务实例: 返回识别结果
算法服务实例->算法服务实例: 后处理
算法服务实例->数据库: 保存识别结果
算法服务实例->数据库: 关闭转写任务

获取转写结果

客户应用->接入网关: 获取文件转写的结果
接入网关->安全网关: 转发请求
安全网关->安全网关: 对请求进行鉴权
安全网关->业务网关: 转发请求
业务网关->业务网关: 校验业务请求
业务网关->数据库: 加载文件转写的结果
业务网关-->安全网关: 返回响应消息
安全网关-->接入网关: 返回响应消息
接入网关-->客户应用: 返回响应消息

实时语音识别

有两个方案,分别如下。二者差别,比如:

  • 在语音识别的过程中,语音数据是否需要经过业务网关转发给算法服务实例。
  • 计费数据、运营数据、运维数据等信息,在哪个组件上实现。

方案一

创建信道

客户应用->接入网关: 发送创建信道的请求
接入网关->安全网关: 转发请求
安全网关->安全网关: 对请求进行鉴权
安全网关->业务网关: 转发请求
业务网关->业务网关: 校验业务请求
业务网关->业务网关: 选择算法服务
业务网关->业务网关: 选择算法服务实例
业务网关->算法服务实例: 创建信道
算法服务实例-->业务网关: 创建信道成功
业务网关-->安全网关: 创建信道成功
安全网关-->接入网关: 创建信道成功
接入网关-->客户应用: 创建信道成功

启动识别会话

客户应用->接入网关: 发送启动识别会话的请求
接入网关->安全网关: 转发请求
安全网关->业务网关: 转发请求
业务网关->算法服务实例: 转发创建识别会话的请求
算法服务实例->算法引擎: 创建识别会话
算法引擎->算法引擎: 创建识别会话
算法引擎-->算法服务实例: 启动识别会话成功
算法服务实例-->业务网关: 启动识别会话成功
业务网关-->安全网关: 启动识别会话成功
安全网关-->接入网关: 启动识别会话成功
接入网关-->客户应用: 启动识别会话成功

发送音频数据

客户应用->接入网关: 发送音频数据
接入网关->安全网关: 转发请求
安全网关->业务网关: 转发请求
业务网关->算法服务实例: 转发数据
算法服务实例->算法引擎: 写入音频数据

回送语音识别结果

算法引擎->算法服务实例: 回送识别结果
算法服务实例->算法服务实例: 后处理
算法服务实例->业务网关: 回送识别结果
业务网关->安全网关: 回送识别结果
安全网关->接入网关: 回送识别结果
接入网关->客户应用: 回送识别结果

方案二

创建信道

客户应用->接入网关: 发送创建信道的请求
接入网关->安全网关: 转发请求
安全网关->安全网关: 对请求进行鉴权
安全网关->业务网关: 转发请求
业务网关->业务网关: 校验业务请求
业务网关->业务网关: 选择算法服务
业务网关->业务网关: 选择算法服务实例
业务网关-->安全网关: 返回信道元数据
安全网关-->接入网关: 返回信道元数据
接入网关-->客户应用: 返回信道元数据
客户应用->接入网关: 发送创建信道的请求
接入网关->安全网关: 转发请求
安全网关->安全网关: 对请求进行鉴权
安全网关->算法服务实例: 转发请求
算法服务实例->算法服务实例: 创建信道
算法服务实例-->安全网关: 创建信道成功
安全网关-->接入网关: 创建信道成功
接入网关-->客户应用: 创建信道成功

启动识别会话

客户应用->接入网关: 发送启动识别会话的请求
接入网关->安全网关: 转发请求
安全网关->安全网关: 对请求进行鉴权
安全网关->算法服务实例: 转发请求
算法服务实例->算法引擎: 创建识别会话
算法引擎->算法引擎: 创建识别会话
算法引擎-->算法服务实例: 启动识别会话成功
算法服务实例-->安全网关: 启动识别会话成功
安全网关-->接入网关: 启动识别会话成功
接入网关-->客户应用: 启动识别会话成功

发送音频数据

客户应用->接入网关: 发送音频数据
接入网关->安全网关: 转发请求
安全网关->安全网关: 对请求进行鉴权
安全网关->算法服务实例: 转发数据
算法服务实例->算法引擎: 写入音频数据

回送语音识别结果

算法引擎->算法服务实例: 回送识别结果
算法服务实例->算法服务实例: 后处理
算法服务实例->安全网关: 回送识别结果
安全网关->接入网关: 回送识别结果
接入网关->客户应用: 回送识别结果

ASR项目实战-方案设计的更多相关文章

  1. Spark大型项目实战:电商用户行为分析大数据平台

    本项目主要讲解了一套应用于互联网电商企业中,使用Java.Spark等技术开发的大数据统计分析平台,对电商网站的各种用户行为(访问行为.页面跳转行为.购物行为.广告点击行为等)进行复杂的分析.用统计分 ...

  2. Asp.Net Core 项目实战之权限管理系统(4) 依赖注入、仓储、服务的多项目分层实现

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  3. 给缺少Python项目实战经验的人

    我们在学习过程中最容易犯的一个错误就是:看的多动手的少,特别是对于一些项目的开发学习就更少了! 没有一个完整的项目开发过程,是不会对整个开发流程以及理论知识有牢固的认知的,对于怎样将所学的理论知识应用 ...

  4. 【腾讯Bugly干货分享】React Native项目实战总结

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/577e16a7640ad7b4682c64a7 “8小时内拼工作,8小时外拼成长 ...

  5. Asp.Net Core 项目实战之权限管理系统(0) 无中生有

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  6. Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  7. Asp.Net Core 项目实战之权限管理系统(2) 功能及实体设计

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  8. Asp.Net Core 项目实战之权限管理系统(3) 通过EntityFramework Core使用PostgreSQL

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  9. Asp.Net Core 项目实战之权限管理系统(5) 用户登录

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  10. Asp.Net Core 项目实战之权限管理系统(6) 功能管理

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

随机推荐

  1. [HUBUCTF 2022 新生赛]ezPython

    附件链接:https://wwvc.lanzouj.com/iIqq218z5x0d 给了一个pyc文件 利用命令将pyc转换为py文件 uncompyle6 ezPython.pyc > ez ...

  2. Azure Data Factory(九)基础知识回顾

    一,引言 在本文中,我们将继续了解什么是 Azure Data Factory,Azure Data Factory 的工作原理,Azure Data Factory 数据工程中的数据管道,并了解继承 ...

  3. 汇编debug的安装

    实验一查看CPU和内存,用机器指令和汇编指令编程 在做实验前需要debug命令. 工具:dosbox,debug.exe 安装:dosbox :https://www.dosbox.com/ debu ...

  4. .NET微服务系列之Saga分布式事务案例实践

    自从Wing正式发布以后,很多童鞋反馈对Saga分布式事务比较感兴趣,今天就跟大家分享一下"跨行转账"的分布式事务实践案例,入门使用教程请自行前往Wing官方文档. 假设自己名下有 ...

  5. 征集 meme

    当你每次兴致勃勃地和好友分享自己喜欢的歌但 Ta 不屑一顾 / 不喜欢时:

  6. 数据结构与算法 | 链表(Linked List)

    链表(Linked List)是一种线性数据结构,它由一系列节点(Node)组成,每个节点包含两部分:数据和指向下(上)一个节点的引用(或指针).链表中的节点按照线性顺序连接在一起(相邻节点不需要存储 ...

  7. 网络基础-OSI七层vsTCP/UDP四层 五层 数据封装

    1.0 网络基础 1.1 网络是什么? 网络是信息传输.接收.共享的虚拟平台,通过它把各个点.面.体的信息联系到一起,从而实现这些资源的共享 网络分类:局域网 ,城域网,广域网 1.2 数据通信方式 ...

  8. JS异步任务的并行、串行,以及二者结合

    让多个异步任务按照我们的想法执行,是开发中常见的需求.今天我们就来捋一下,如何让多个异步任务并行,串行,以及并行串行相结合. 一.并行 并行是使用最多的方式,多个相互间没有依赖关系的异步任务,并行执行 ...

  9. animate.css 动画种类(详细)

    作者:WangMin 格言:努力做好自己喜欢的每一件事 以下为各种动画类型包含的不同动画效果类,仅供参考.具体可查看animate.css 官网. bounce 弹跳 2. flash 闪烁 3. p ...

  10. 使用JWT、拦截器与ThreadLocal实现在任意位置获取Token中的信息,并结合自定义注解实现对方法的鉴权

    1. 简介 1.1 JWT JWT,即JSON Web Token,是一种用于在网络上传递声明的开放标准(RFC 7519).JWT 可以在用户和服务器之间传递安全可靠的信息,通常用于身份验证和信息交 ...