ASR项目实战-方案设计
对于语音识别产品的实施方案,给出简易的业务流程,仅供参考。
如下流程图,可以使用如下两个站点查看。
文件转写
创建文件转写任务
客户应用->接入网关: 发送创建文件转写的请求
接入网关->安全网关: 转发请求
安全网关->安全网关: 对请求进行鉴权
安全网关->业务网关: 转发请求
业务网关->业务网关: 校验业务请求
业务网关->业务网关: 选择算法服务
业务网关->数据库: 保存任务信息
业务网关->任务队列: 将文件转写请求放入任务队列
业务网关-->安全网关: 返回响应消息
安全网关-->接入网关: 返回响应消息
接入网关-->客户应用: 返回响应消息
执行文件转写任务
算法服务实例->任务队列: 轮询任务队列,提取任务
算法服务实例->数据库: 启动转写任务
算法服务实例->存储服务: 下载音频文件
算法服务实例->算法服务实例: 前处理
算法服务实例->算法引擎: 加载音频数据,送入识别引擎
算法引擎->算法服务实例: 返回识别结果
算法服务实例->算法服务实例: 后处理
算法服务实例->数据库: 保存识别结果
算法服务实例->数据库: 关闭转写任务
获取转写结果
客户应用->接入网关: 获取文件转写的结果
接入网关->安全网关: 转发请求
安全网关->安全网关: 对请求进行鉴权
安全网关->业务网关: 转发请求
业务网关->业务网关: 校验业务请求
业务网关->数据库: 加载文件转写的结果
业务网关-->安全网关: 返回响应消息
安全网关-->接入网关: 返回响应消息
接入网关-->客户应用: 返回响应消息
实时语音识别
有两个方案,分别如下。二者差别,比如:
- 在语音识别的过程中,语音数据是否需要经过业务网关转发给算法服务实例。
- 计费数据、运营数据、运维数据等信息,在哪个组件上实现。
方案一
创建信道
客户应用->接入网关: 发送创建信道的请求
接入网关->安全网关: 转发请求
安全网关->安全网关: 对请求进行鉴权
安全网关->业务网关: 转发请求
业务网关->业务网关: 校验业务请求
业务网关->业务网关: 选择算法服务
业务网关->业务网关: 选择算法服务实例
业务网关->算法服务实例: 创建信道
算法服务实例-->业务网关: 创建信道成功
业务网关-->安全网关: 创建信道成功
安全网关-->接入网关: 创建信道成功
接入网关-->客户应用: 创建信道成功
启动识别会话
客户应用->接入网关: 发送启动识别会话的请求
接入网关->安全网关: 转发请求
安全网关->业务网关: 转发请求
业务网关->算法服务实例: 转发创建识别会话的请求
算法服务实例->算法引擎: 创建识别会话
算法引擎->算法引擎: 创建识别会话
算法引擎-->算法服务实例: 启动识别会话成功
算法服务实例-->业务网关: 启动识别会话成功
业务网关-->安全网关: 启动识别会话成功
安全网关-->接入网关: 启动识别会话成功
接入网关-->客户应用: 启动识别会话成功
发送音频数据
客户应用->接入网关: 发送音频数据
接入网关->安全网关: 转发请求
安全网关->业务网关: 转发请求
业务网关->算法服务实例: 转发数据
算法服务实例->算法引擎: 写入音频数据
回送语音识别结果
算法引擎->算法服务实例: 回送识别结果
算法服务实例->算法服务实例: 后处理
算法服务实例->业务网关: 回送识别结果
业务网关->安全网关: 回送识别结果
安全网关->接入网关: 回送识别结果
接入网关->客户应用: 回送识别结果
方案二
创建信道
客户应用->接入网关: 发送创建信道的请求
接入网关->安全网关: 转发请求
安全网关->安全网关: 对请求进行鉴权
安全网关->业务网关: 转发请求
业务网关->业务网关: 校验业务请求
业务网关->业务网关: 选择算法服务
业务网关->业务网关: 选择算法服务实例
业务网关-->安全网关: 返回信道元数据
安全网关-->接入网关: 返回信道元数据
接入网关-->客户应用: 返回信道元数据
客户应用->接入网关: 发送创建信道的请求
接入网关->安全网关: 转发请求
安全网关->安全网关: 对请求进行鉴权
安全网关->算法服务实例: 转发请求
算法服务实例->算法服务实例: 创建信道
算法服务实例-->安全网关: 创建信道成功
安全网关-->接入网关: 创建信道成功
接入网关-->客户应用: 创建信道成功
启动识别会话
客户应用->接入网关: 发送启动识别会话的请求
接入网关->安全网关: 转发请求
安全网关->安全网关: 对请求进行鉴权
安全网关->算法服务实例: 转发请求
算法服务实例->算法引擎: 创建识别会话
算法引擎->算法引擎: 创建识别会话
算法引擎-->算法服务实例: 启动识别会话成功
算法服务实例-->安全网关: 启动识别会话成功
安全网关-->接入网关: 启动识别会话成功
接入网关-->客户应用: 启动识别会话成功
发送音频数据
客户应用->接入网关: 发送音频数据
接入网关->安全网关: 转发请求
安全网关->安全网关: 对请求进行鉴权
安全网关->算法服务实例: 转发数据
算法服务实例->算法引擎: 写入音频数据
回送语音识别结果
算法引擎->算法服务实例: 回送识别结果
算法服务实例->算法服务实例: 后处理
算法服务实例->安全网关: 回送识别结果
安全网关->接入网关: 回送识别结果
接入网关->客户应用: 回送识别结果
ASR项目实战-方案设计的更多相关文章
- Spark大型项目实战:电商用户行为分析大数据平台
本项目主要讲解了一套应用于互联网电商企业中,使用Java.Spark等技术开发的大数据统计分析平台,对电商网站的各种用户行为(访问行为.页面跳转行为.购物行为.广告点击行为等)进行复杂的分析.用统计分 ...
- Asp.Net Core 项目实战之权限管理系统(4) 依赖注入、仓储、服务的多项目分层实现
0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...
- 给缺少Python项目实战经验的人
我们在学习过程中最容易犯的一个错误就是:看的多动手的少,特别是对于一些项目的开发学习就更少了! 没有一个完整的项目开发过程,是不会对整个开发流程以及理论知识有牢固的认知的,对于怎样将所学的理论知识应用 ...
- 【腾讯Bugly干货分享】React Native项目实战总结
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/577e16a7640ad7b4682c64a7 “8小时内拼工作,8小时外拼成长 ...
- Asp.Net Core 项目实战之权限管理系统(0) 无中生有
0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...
- Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端
0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...
- Asp.Net Core 项目实战之权限管理系统(2) 功能及实体设计
0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...
- Asp.Net Core 项目实战之权限管理系统(3) 通过EntityFramework Core使用PostgreSQL
0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...
- Asp.Net Core 项目实战之权限管理系统(5) 用户登录
0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...
- Asp.Net Core 项目实战之权限管理系统(6) 功能管理
0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...
随机推荐
- 「Tricks」整体DP
不太了解这个东西的具体定义是什么,总之应该是一个用数据结构维护 DP 状态的某几个维度的 trick 吧. 事实上你可以把这篇 post 理解为三个题的解集. 先直接来看 noi2020 - Dest ...
- EtherCAT转Modbus网关做为 MODBUS 从站配置
EtherCAT转Modbus网关做为 MODBUS 从站配置案例 兴达易控EtherCAT转Modbus网关可以用作MODBUS从站的配置.这种网关允许将Modbus协议与EtherCAT协议进行转 ...
- 小米云原生文件存储平台化实践:支撑 AI 训练、大模型、容器平台多项业务
小米作为全球知名的科技巨头公司,已经在数百款产品中广泛应用了 AI 技术,这些产品包括手机.电视.智能音箱.儿童手表和翻译机等.这些 AI 应用主要都是通过小米的深度学习训练平台完成的. 在训练平台的 ...
- [自制工具]简便易用的ADDM报告生成工具
■■ Oracle ADDM简介 ADDM全称是Automatic Database Diagnostic Monitor,是Oracle实现性能自我诊断的最佳利器.它依赖于AWR,我们知道AWR会自 ...
- 【matplotlib 实战】--直方图
直方图,又称质量分布图,用于表示数据的分布情况,是一种常见的统计图表. 一般用横轴表示数据区间,纵轴表示分布情况,柱子越高,则落在该区间的数量越大.构建直方图时,首先首先就是对数据划分区间,通俗的说即 ...
- vue框架,input相同标签如何定位-label定位
一.问题提出: 后台前端框架改版,之前是angularjs,现在用vue,导致input标签定位失败,只能定位到第一个input标签,查看后台源代码发现这两个标签是一模一样,如下图: 二.问题思考过程 ...
- CF1352D
题目简化和分析: 这题可以直接按照题意进行模拟,当然有些细节需要注意. 翻译的不足:这里的回合指任意一个人吃掉都算,而不是双方一个回合,最后一个人即使不满足也算一个回合. 我们可以采用两个指针模拟两个 ...
- C++小练习:字符串分割的高性能实现
字符串分割是日常工作中比较常见的基础函数,通常大家会使用现成的基础库,基础库的性能是否是最佳的?本文基于一个周末小练习,研究如何最大限度的提升字符串分割的性能. 1.背景 字符串按照分隔符拆成多个子串 ...
- 【源码解读(二)】EFCORE源码解读之查询都做了什么以及如何自定义批量插入
引言 书接上回,[源码解读(一)]EFCORE源码解读之创建DBContext查询拦截,在上一篇文章中,主要讲了DBContext的构造函数,以及如何缓存查询方法提升查询性能,还有最重要的拦截查询,托 ...
- 改变element dialog弹窗的关闭按钮样式
.el-dialog__headerbtn { top: 8px !important; background: url('https://你路径资源的url图片') left no-repeat; ...