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

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

文件转写

创建文件转写任务

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

执行文件转写任务

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

获取转写结果

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

实时语音识别

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

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

方案一

创建信道

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

启动识别会话

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

发送音频数据

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

回送语音识别结果

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

方案二

创建信道

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

启动识别会话

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

发送音频数据

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

回送语音识别结果

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

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. 3步体验在DAYU200开发板上完成OpenHarmony对接华为云IoT

    本文分享自华为云社区<DAYU200+OpenHarmony 3.1.1对接华为云IOT[华为云IoT+鸿蒙]>,作者:DS小龙哥. 一.前言 OpenHarmony 3.1.1 是一个开 ...

  2. 「atcoder - 214G」Three Permutations

    la traduction. link. 如果我们对于每一个 \(k\in[0,n]\) 找到所有满足存在 \(k\) 个 \(i\) 使得 \(r_i=p_i\) 或 \(r_i=q_i\) 条件的 ...

  3. 【Python】代理池针对ip拦截破解

    代理池是一种常见的反反爬虫技术,通过维护一组可用的代理服务器,来在被反爬虫限制的情况下,实现数据的爬取.但是,代理池本身也面临着被目标网站针对ip进行拦截的风险. 本文将详细介绍代理池针对ip拦截破解 ...

  4. MySQL 高级(进阶) SQL 语句

    MySQL 高级(进阶) SQL 语句 use gy; create table location (Region char(20),Store_Name char(20)); insert into ...

  5. 搞懂fflush(stdout)

    使用 printf 或 cout 打印内容时,输出永远不会直接写入"屏幕".而是,被发送到 stdout. (stdout 就像一个缓冲区) 默认情况下,发送到 stdout 的输 ...

  6. [SWPUCTF 2021 新生赛]老鼠走迷宫(详细版

    附件下载 https://wwvc.lanzouj.com/iYLez1br84jg 解题思路 用pyinstxtrator解析exe 重点:将无后缀的5先修改后缀为pyc,然后随便找一个pyc文件补 ...

  7. SQL基础应用

    SQL基础应用 更多详细内容请查阅:https://www.jianshu.com/p/08c4b78402ff 1.SQL介绍 结构化查询语言 5.7 以后符合SQL92严格模式 通过sql_mod ...

  8. 实战攻防演练-利用Everything搜索软件进行内网后渗透利用

    前言 Everything是一款很出名的文件搜索工具,基于文件.文件夹名称的快速搜索的轻量级的软件,而早在几年前就有很多apt组织利用everything来进行文件查找等,前几年在T00ls上也有人发 ...

  9. k8s Rabbitmq安装部署

    安装方式 kubectl apply -f rabbitmq.yaml -n yunda-dev-cache rabbitmq.yaml ##创建PV # 注意更换存储方式 --- apiVersio ...

  10. OI 学习笔记 I:图论(更新中)

    阅读时建议在右下角开启目录. 由于作者的数学水平限制和篇幅限制,有些结论可能仅给出感性理解或不给出证明,有疑惑的读者可以百度答案或者前往参考资料一栏查找. 另外,因为图论的内容比较杂,有些与树相关的算 ...