【API進階之路】高考要考口語?我用多模態評測API做了一場10w+刷屏活動
摘要:閒著沒事用多模態評測API做了一個測評英語口語的互動小遊戲,居然成了一場10萬人參與的刷屏級活動。
上一期故事說到,我成為了公司技術委員會副主席,上任後的第一件事是建立了一個雲容器化的研發資料庫,把每個研發硬碟裡那點“好東西”都複用出來。(詳情檢視:
自此以後,老大交給我的擼程式碼的活越來越少,讓我專心把技術委員會做起來。人一閒下來吧,就容易生事兒,這不麼,閒著沒事做了一個互動小遊戲,運營妹子從公眾號上推了張海報,居然成了一場10萬人參與的刷屏級活動。
咋回事呢?大概是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/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【API進階之路】破圈,用一個API代替10人內容團隊API
- 活體檢測API對接php語言方式-人臉靜態/動態活體檢測免費APIPHP
- 我做了第一個ChatGPT .net api聊天庫ChatGPTAPI
- 使用Pandaria編寫API自動化測試進階用法API
- 我用釦子API做了個小程式,實現財務自由API
- API自動化測試平臺,支援場景化的API測試API
- 考勤系統的應用實踐 - 靜態活體檢測 API 技術API
- 靈活的API查詢語言——GraphQLAPI
- Django進階之路(一)Django
- React 進階之路(一)React
- 【API進階之路6】一個技術盲點,差點讓整個專案翻車API
- 使用SAP API portal進行SAP SuccessFactors的API測試API
- 如何透過CRM系統進行市場活動評估?
- 「進擊Redis」六、Redis List運用場景、API解析RedisAPI
- 前端進階(一)掌握Web API,開發常見的頁面互動功能前端WebAPI
- 使用 HTTPie 進行 API 測試HTTPAPI
- 使用PostMan進行API測試PostmanAPI
- 一枚晶片的趕考之路:究竟該如何看待“AI評測”?晶片AI
- 鯤鵬說:高考之路你們走,高考閱卷我來守
- 多模態LLM進展✊
- 標準化考點考場高考英語聽力廣播系統解決方案
- API自動化測試API
- Blender參考API用法API
- API 測試 | 瞭解 API 介面測試 | API 介面測試指南API
- 基於語義感知SBST的API場景測試智慧生成API
- .net Framework Web Api 實現多國語FrameworkWebAPI
- 介面測試--獲取動態引數進階
- 使用go語言開發自動化API測試工具GoAPI
- 我用Python程式語言做了一些神奇好玩的事情Python
- 運用 Hacking APIs GPT 進行 API 安全性測試APIGPT
- API測試:瞭解API介面測試與API介面測試指南API
- React@16.3 全新的Context API進階教程ReactContextAPI
- 使用Spring Boot REST API進行測試驅動開發Spring BootRESTAPI
- SpringCloud升級之路2020.0.x版-3.Eureka Server 與 API 閘道器要考慮的問題SpringGCCloudServerAPI
- 戀愛口語:我們到底要跟男人聊什麼?
- Js高階APIJSAPI
- Hugging News #0414: Attention 在多模態情景中的應用、Unity API 以及 Gradio 主題構建器UnityAPI
- Ansible 進階 | 動態 Inventory