其他
如何快速搭建一个 AI 识别处理的流水线?
ASW 工作流使用 TCSL 定义编排,语法简单,降低学习和使用成本,极大程度上缩短了项目周期,加快开发部署。 ASW 工作流可以实现高度自定义的工作流流程,能适应快速变化的业务诉求,编排更新无需运维维护,为业务的持续更新提供了快速迭代的能力。 ASW 工作流提供了友好的界面交互视图,在运行调试的过程中,能快速定位问题。 ASW 工作流目前仍为免费阶段,无需承担服务器/集群相关费用。
Serverless 云函数: push-video 用于给应用服务端推送某个音视频问题。 record-request 用于向应用服务端发起录制任务请求。 check-result 用于分析语音识别的结果。 腾讯云 AI 能力: 活体人脸检测,用于验证用户的身份信息:https://cloud.tencent.com/document/product/1007/31818 语音识别,用于将用户的回答识别成文字:https://cloud.tencent.com/document/product/1093/37823 COS 对象存储:用于存储中间录制的音视频。 ASW 工作流:AI 处理分析的工作流,其中每个节点将编排对应功能的云函数或 AI 服务。 运行角色:用于运行 AI 处理分析工作流。
控制台地址:https://console.cloud.tencent.com/asw
1. 以下代码仅作为示例告知所涉及资源,工作流节点涉及调用的资源,需按业务需求进行创建和改造;
2. 工作流定义涉及的语法请参考:https://cloud.tencent.com/document/product/1272/51544;
3. 在使用创建过程中,如需更多支持帮助,请加入下方「ASW 用户交流群」,与我们联系。
{
"Comment": "AI处理流水线",
"StartAt": "Recognition",
"TimeoutSeconds": 1000,
"States": {
"Recognition": {
"Type": "Task",
"Comment": "活体人脸",
"Parameters": {
"Idcard": "11204416541220243X",
"Name": "韦小宝",
"VideoBase64": "<VideoBase64>",
"LivenessType": "SILENT"
},
"Resource": "qrn:qcs:asw:ap-guangzhou:123456789:sdk:json:qcloud:faceid:LivenessRecognition",
"Next": "CheckRecognition"
},
"CheckRecognition": {
"Type": "choice",
"Comment": "校验活体人脸是否成功",
"Choices": [{
"Variable": "$.Result",
"StringEquals": "Success",
"Next": "PushVideo"
}],
"Default": "Fail"
},
"PushVideo": {
"Type": "Task",
"Comment": "语音播报",
"Resource": "qrn:qcs:asw:ap-guangzhou:123456789:sdk:json:qcloud:scf:Invoke/push-video",
"Next": "RecordRequest"
},
"RecordRequest": {
"Type": "Task",
"Comment": "录制请求",
"Resource": "qrn:qcs:asw:ap-guangzhou:123456789:sdk:json:qcloud:scf:Invoke/record-request",
"Next": "Asr"
},
"Asr": {
"Type": "Task",
"Comment": "语音识别",
"Resource": "qrn:qcs:asw:ap-guangzhou:1253970226:sdk:json:qcloud:asr:CreateRecTask",
"Parameters": {
"EngineModelType": "16k_zh",
"ChannelNum": 1,
"ResTextFormat": 0,
"SourceType": 0,
"Url.$": "$[0].value[0]"
},
"OutputPath": "$.Response.Data",
"Next": "CheckAsr"
},
"CheckAsr": {
"Type": "Task",
"Comment": "获取语音识别结果",
"Resource": "qrn:qcs:asw:ap-guangzhou:1253970226:sdk:json:qcloud:asr:checkASR",
"Parameters": {
"TaskId.$": "$.TaskId"
},
"Next": "VerifyTask"
},
"VerifyTask": {
"Type": "Task",
"Comment": "函数判断执行的语音结果是否正确",
"Resource": "qrn:qcs:asw:ap-guangzhou:123456789:sdk:json:qcloud:scf:Invoke/verify-result",
"End": true
},
"Fail": {
"Type": "Task",
"Comment": "错误处理",
"Resource": "qrn:qcs:asw:ap-guangzhou:123456789:sdk:json:qcloud:scf:Invoke/task-fail",
"End": true
}
}
}
推荐阅读
GitHub: github.com/serverless 官网: cloud.tencent.com/product/serverless-catalog