簡單三步,經過工做流(ASW)進行音頻提取關鍵字操做

本文介紹如何經過工做流 ASW 編排語音識別 AI 服務,將一段離線錄音文件進行文字識別後,將輸出的識別字段進行關鍵字提取。算法

工做原理

  1. 異步調用語音識別 (ASR) 能力進行離線語音文字識別,並採用輪詢 check 方式等待語音識別任務執行結束。
  2. 將語音識別的結果傳遞給關鍵字提取任務,輸出語音中的關鍵字。

前提條件

  1. 開通 騰訊雲語音識別(ASR)服務。
  2. 開通 騰訊雲天然語言處理(NLP)服務。
  3. 操做帳號擁有【建立角色】和【綁定策略到角色】的權限,或在帳號已經有了某個角色能夠調用 ASR 和 NLP 服務。更多參考 運行角色

操做步驟

建立狀態機

  1. 登陸 應用與編排服務流控制檯
  2. 在狀態機頁面,單擊【新建】,進入建立工做流頁面中,進行狀態機編排。
  3. 在【使用代碼建立】>【可視化編輯】頁面中,單擊【公有云算法】,選擇【錄音文件識別-請求生成】、【錄音文件識別-結果查詢】、【天然語言-關鍵詞提取】拖拽至可視化窗口中。

  1. 在右側的彈框中,分別給節點命名爲「語音識別請求」、「獲取語音識別結果」、「關鍵字提取」。單擊【代碼】區域的【刷新】,能夠看到【代碼】中生成代碼以下:
{
     "Comment": "",
     "StartAt": "語音識別請求",
     "States": {
       "語音識別請求": {
         "Type": "Task",
         "Comment": "https://cloud.tencent.com/document/api/271/35498",
         "Resource": "qrn:qcs:asw:ap-guangzhou:123456789:sdk:json:qcloud:asr:generalASR",
         "Next": "獲取語音識別結果"
       },
       "獲取語音識別結果": {
         "Type": "Task",
         "Comment": "https://cloud.tencent.com/document/api/271/35498",
         "Resource": "qrn:qcs:asw:ap-guangzhou:1223456789:sdk:json:qcloud:asr:checkASR",
         "Next": "關鍵字提取"
       },
       "關鍵字提取": {
         "Type": "Task",
         "Comment": "https://cloud.tencent.com/document/api/271/35498",
         "Resource": "qrn:qcs:asw:ap-guangzhou:123456789:sdk:json:qcloud:nlp:KeywordsExtraction",
         "End": true
       }
     }
   }

說明:Resource 字段格式爲qrn:qcs:asw:{服務所在區域}:{Appid}:sdk:json:qcloud:{服務名稱}:{組件名稱}。更多詳情參考 Task 節點json

  1. 因爲工做流中的三個 Task 節點調用了不一樣雲產品服務能力,這些能力都是相關 API 的封裝,所以須要傳遞一些必要的參數,根據 API 文檔參考:
{
     "Comment": "",
     "StartAt": "語音識別請求",
     "States": {
       "語音識別請求": {
         "Type": "Task",
         "Comment": "發送語音識別請求",
         "Resource": "qrn:qcs:asw:ap-guangzhou:123456789:sdk:json:qcloud:asr:generalASR",
         "Parameters":{
             "EngineModelType":"16k_zh",
             "ChannelNum":1,
             "ResTextFormat":0,
             "SourceType":0,
             "Url.$":"$.Url"
             },
         "OutputPath":"$.Response.Data",
         "Next": "獲取語音識別結果"
       },
       "獲取語音識別結果": {
         "Type": "Task",
         "Comment": "獲取語音識別結果",
         "Resource": "qrn:qcs:asw:ap-guangzhou:123456789:sdk:json:qcloud:asr:checkASR",
         "Parameters":{"TaskId.$":"$.TaskId"},
         "Next": "關鍵字提取"
       },
       "關鍵字提取": {
         "Type": "Task",
         "Comment": "關鍵詞提取任務",
         "Parameters":{
             "Text.$":"$.Response.Data.Result",
             "Num":10
         },
         "End": true,
         "Resource": "qrn:qcs:asw:ap-guangzhou:123456789:sdk:json:qcloud:nlp:KeywordsExtraction"
       }
     }
   }

說明:Task 中定義的 Resource 對應爲雲服務 API 接口的調用封裝,Parameters 爲調用時的傳參。更多詳情參考 狀態機語言api

  1. 單擊右上角【下一步】,進入保存界面,輸入狀態機名稱,運行角色選擇【使用已有角色】或【新建角色】,類型選擇【快速】,單擊右上角【完成】,在狀態機列表頁能夠看到建立好的狀態機。

說明:使用已有角色須要先建立角色,並給角色受權相關策略,操做詳情參考 運行角色less

運行狀態機

狀態機建立完成後,您能夠在登陸後的主頁面查看建立好的狀態機。異步

  1. 單擊須要運行的狀態機的【名稱】,進入狀態機。3d

  2. 您能夠在界面中看到狀態機的基本信息。單擊【工做流執行】下的【開始執行】code

  3. 在彈出的「輸入」窗口中,以 JSON 格式輸入狀態機須要的輸入內容。例如:orm

{
     "Url":"https://chaoshi-123456789cos.ap-guangzhou.myqcloud.com/storage/asr/16k.wav"
   }

說明:Url 中的連接必須公網能夠訪問server

  1. 單擊【肯定】,完成狀態執行後,能夠在詳情頁查看執行結果:blog

  2. 滑動至頁面最下方,在【執行歷史記錄】條目下,您能夠查看子節點的運行狀況。

申請試用 ASW

ASW 目前處於公測階段,公測階段免費提供服務。歡迎提出產品改進建議,反饋採納後便可得到騰訊萌新短鵝公仔!

反饋入口

當即申請公測,咱們將會在 3 個工做日內完成審批,並經過短信和站內信通知您,感謝您的支持。

One More Thing

當即體驗騰訊雲 Serverless Demo,領取 Serverless 新用戶禮包 👉 serverless/start

歡迎訪問:Serverless 中文網

相關文章
相關標籤/搜索