【API進階之路】高考要考口語?我用多模態評測API做了一場10w+刷屏活動

fondtiger發表於2021-09-11
摘要:閒著沒事用多模態評測API做了一個測評英語口語的互動小遊戲,居然成了一場10萬人參與的刷屏級活動。

上一期故事說到,我成為了公司技術委員會副主席,上任後的第一件事是建立了一個雲容器化的研發資料庫,把每個研發硬碟裡那點“好東西”都複用出來。(詳情檢視:

自此以後,老大交給我的擼程式碼的活越來越少,讓我專心把技術委員會做起來。人一閒下來吧,就容易生事兒,這不麼,閒著沒事做了一個互動小遊戲,運營妹子從公眾號上推了張海報,居然成了一場10萬人參與的刷屏級活動。

【API進階之路】高考要考口語?我用多模態評測API做了一場10w+刷屏活動

咋回事呢?大概是7月25號,我看到一條新聞,北京2021年高考要增加英語口語考試。媽耶,這也太突然了,這不跟產品經理突然提需求、微博的運維趕上明星突然宣佈結婚/分手一樣讓人猝不及防麼。

很快,有孩子正上高中的家長都在朋友圈轉發了這條訊息,這事的關注度這麼高啊?總聽說運營擅長抓熱點,那我是不是也可以做點什麼抓住這次熱點呢?

對於這個政策,家長和學生最關注最需要的是什麼?考口語,首先得知道自己的口語水平怎麼樣,知道短板在哪才能有針對性地補習提高。那就是說需要口語測評!

我想起之前在看到過一個“多模態評測”API,能夠根據朗讀影片資料和試題文字,給朗讀者的口語評測分數。我可以利用這個API做一個測評類的H5小遊戲。

按照我的習慣,實現功能的過程會同步梳理成文件,便於後浪們學習。

《多模態英語口語評測》

內容來源

多模態口語現在還在公測階段,所以我提前在華為雲上申請了公測,當天就公測透過了~(https://activity.huaweicloud.com/AI_free0.html?ggw_hd )

步驟一:資料準備

l 支援的video型別包括avi/mp4/webm/mkv/flv等封裝格式,影片清晰度不低於240p,幀率不低於25fps,大小限制在10M

l 支援語言:英式英語

l 評測模式:單詞評測、句子評測

l 需要把影片轉化為對應的base64編碼上傳

轉化舉例(Python)

#!/usr/bin/env python
# encoding: utf-8
 
import base64
def ToBase64(file, txt):
    with open(file, 'rb') as fileObj:
        image_data = fileObj.read()
        base64_data = base64.b64encode(image_data)
        fout = open(txt, 'w')
        fout.write(base64_data.decode())
       fout.close()
ToBase64("./test.wav",'2.txt')  # 音訊檔案轉換為base64

步驟二:構建請求

華為雲語音互動服務的通用請求方式如下圖所示。

備註:

l 多模態評測API目前處於公測階段,在華為-北京四可以呼叫,其Endpoint為“sis-ext.cn-north-4.myhuaweicloud.com”。

l 需要確認個人專有華為雲專案ID和Token(身份認證)

(;)

獲取了身份認證後,就可以填寫請求了。假設我現在有一個avi格式的檔案,想用單詞模式去判斷口語質量,我要學習的口語是“sit down”。

請求示例是:

POST https://{endpoint}/v1/{project_id}/assessment/video
 
Request Header:
Content-Type: application/json
X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG... 
 
Request Body:
{
  "config":{
    "video_format": "avi",
    "language": "en_gb",
    "mode": "word"
  },
  "video_data": "/+MgxAAUeHpMAUkQAANhuRAC...",
  "ref_text": "sit down"
}

步驟三:返回結果

{
    "fluency": {
        "score": 75.02139,
        "rhythm": 50.042786,
        "cohesion": 100.0
    },
    "pronunciation": {
        "score": 36.817684,
        "gop": 36.817684
    },
    "score": 22.09061,
    "completeness": 0.0,
"duration": 2.46,
"words": [此後為音素、音標評價結果,其返回結果見下方]

從返回的結果可以看到:

(1)從流利度看:流利度評分75.02;連貫性是滿分;韻律弱一點,只有50.04分

(2)從發音看:我的發音質量綜合打分(score)是36.82分;發音好壞打分是36.82分

(3)最後的綜合評分:22.09分…

哎,還挺準確,我從小英語口語就差…

還能進行英語口語練習,從發音嘴型、發音效果糾正口語。透過具體的單一單詞、音素、音標打分,就能知道需要對哪個單詞、音標加強練習了。

以“sit”發音評測為例,反饋結果如下:

"words": [
        {
            "fluency": {
                "score": 68.29714,
                "rhythm": 68.29714
            },
            "pronunciation": {
                "score": 24.714167,
                "gop": 24.714167
            },
            "out_of_vocabulary": false,
            "text": "sit",
            "text_original": "sit",
            "text_normalised": [
                "sit"
            ],
            "score": 46.505653,
            "start_time": 1.03,
            "end_time": 1.06,
            "phonemes": [
                {
                    "fluency": {
                        "score": 31.643274,
                        "rhythm": 31.643274
                    },
                    "pronunciation": {
                        "score": 16.471563,
                        "gop": 16.471563
                    },
                    "start_time": 1.03,
                    "end_time": 1.04,
                    "arpa": "S",
                    "ipa": "s"
                },
                {
                    "fluency": {
                        "score": 87.00653,
                        "rhythm": 87.00653
                    },
                    "pronunciation": {
                        "score": 28.179922,
                        "gop": 28.179922
                    },
                    "start_time": 1.04,
                    "end_time": 1.05,
                    "arpa": "IH",
                    "ipa": "i"
                },
                {
                    "fluency": {
                        "score": 86.241615,
                        "rhythm": 86.241615
                    },
                    "pronunciation": {
                        "score": 29.491013,
                        "gop": 29.491013
                    },
                    "start_time": 1.05,
                    "end_time": 1.06,
                    "arpa": "T",
                    "ipa": "t"
                }
            ]
        },
    ],
}

很快我就把小遊戲做完了,以口語能力測評為核心玩法,加入了邀請好友再玩一次的分享引導機制,沒想到只是從公司公眾號上推了一下,朋友圈裡居然刷了屏,上線3天,遊戲人數就超過了10萬人!一次由研發主導的10W+刷屏活動就這樣誕生了,誰說研發不懂運營?

據瞭解,目前已開放EI企業智慧、計算、應用服務、網路、軟體開發平臺、影片等70+雲服務,共上線2000+個API、6000+個錯誤碼。在前期試執行期間,華為雲API Explorer平臺上的API介面也已被多家企業成功接入。

點選檢視詳情:

華為雲API Explorer平臺在未來幾個月會實現更多功能,比如支援SDK示例程式碼、CLI等特性,同時也會開放更多的雲服務API介面,連線更多開發者實現創新、拓寬創新邊界。

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2508/viewspace-2796492/,如需轉載,請註明出處,否則將追究法律責任。

相關文章