ASR项目实战-方案设计

发布时间 2023-12-30 15:22:24作者: jackieathome

对于语音识别产品的实施方案,给出简易的业务流程,仅供参考。
如下流程图,可以使用如下两个站点查看。

文件转写

创建文件转写任务

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

执行文件转写任务

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

获取转写结果

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

实时语音识别

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

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

方案一

创建信道

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

启动识别会话

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

发送音频数据

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

回送语音识别结果

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

方案二

创建信道

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

启动识别会话

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

发送音频数据

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

回送语音识别结果

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