本發(fā)明涉及人工智能,具體涉及一種數(shù)字人視頻交互方法及系統(tǒng)。
背景技術(shù):
1、隨著人工智能和大模型技術(shù)的快速進步,出現(xiàn)了數(shù)字人技術(shù)。數(shù)字人是指具有數(shù)字化外形的虛擬人物,具有形象能力、感知能力、表達能力和互動能力,被廣泛應(yīng)用在直播、短視頻以及在線客服等各種領(lǐng)域中,用以增強服務(wù)質(zhì)量和用戶體驗。
2、數(shù)字人,即采用計算機視覺或計算機圖形學(xué)的技術(shù)手段,生成真人風(fēng)格或卡通形象的人物模型。用戶可以通過語音、文本等形式與數(shù)字人進行交互,數(shù)字人通過算法驅(qū)動面部的表情、嘴型和肢體動作的變化,配合聲音,與用戶進行互動,給予應(yīng)答。
3、現(xiàn)有技術(shù)中,數(shù)字人只能通過識別到的語音關(guān)鍵詞與用戶進行一些簡單直接的對話交流,交互方式較為單一,無法模擬真實環(huán)境下的人與人之間的交互狀態(tài),交互效率低,用戶的交互體驗較差,且不能很好地保護用戶手機終端的隱私。
4、因此,如何進一步提高數(shù)字人的交互效率和用戶體驗感,是目前有待解決的技術(shù)問題。
技術(shù)實現(xiàn)思路
1、有鑒于此,為了解決現(xiàn)有技術(shù)中的上述問題,本發(fā)明提出一種數(shù)字人視頻交互方法及系統(tǒng)。
2、本發(fā)明通過以下技術(shù)手段解決上述問題:
3、第一方面,本發(fā)明提供一種數(shù)字人視頻交互方法,包括如下步驟:
4、s1、數(shù)字人回應(yīng)用戶說話;
5、s11、數(shù)字人服務(wù)器接收用戶的聲音,并將語音推送給asr服務(wù)器,asr服務(wù)器將語音轉(zhuǎn)換成文字;
6、s12、數(shù)字人服務(wù)器接收到asr服務(wù)器的文字后,以esl事件的方式推送給ai話術(shù)引擎,ai話術(shù)引擎將文字內(nèi)容拆分為有意義的一組關(guān)鍵字;
7、s13、ai話術(shù)引擎從話術(shù)模板庫中調(diào)用出預(yù)設(shè)的話術(shù)模板,然后使用關(guān)鍵字從話術(shù)模板中匹配出話術(shù)節(jié)點,并從所有匹配到的話術(shù)節(jié)點中,選出得分最高的話術(shù)節(jié)點作為匹配結(jié)果;
8、s14、數(shù)字人服務(wù)器讀取出話術(shù)節(jié)點中的話術(shù)文本,將其進行哈希計算,得出該話術(shù)文本的唯一標識作為視頻文件名,然后從磁盤中讀取出以該視頻文件名命名的預(yù)緩存文件,并將該視頻文件的數(shù)據(jù)流通過rtp的方式推送給手機終端;
9、s2、語音平滑切換視頻;
10、s21、數(shù)字人服務(wù)器使用語音方式發(fā)起外呼,用戶接通后,機器人與用戶處于語音通訊模式;
11、s22、數(shù)字人服務(wù)器發(fā)送媒體重協(xié)商信令,邀請手機終端進行視頻通話;
12、s23、數(shù)字人服務(wù)器接收媒體重協(xié)商成功事件;
13、s24、調(diào)用外呼服務(wù)組件的uuid_break命令,強行終止外呼服務(wù)器對該語音話術(shù)的播放,并記住語音話術(shù)當(dāng)前的進度條偏移量;
14、s25、數(shù)字人服務(wù)器使用該進度條偏移量作為視頻話術(shù)文件的起始播放位置,將視頻流推送給手機終端,從而達到平滑切換的目的;
15、s3、數(shù)字人傾聽用戶說話;
16、在ai視頻通話的場景中,ai播放完視頻話術(shù)文件之后,在等待客戶回應(yīng)、或者用戶回應(yīng)了但是一句話還沒說完的過程中,不能無畫面或者停止畫面,立刻接著播放一個包含傾聽動作的視頻文件;
17、s4、數(shù)字人自動感知手機終端不說話;
18、s41、系統(tǒng)在每次播放完常規(guī)的話術(shù)之后,開啟一個計時器;
19、s42、如果期間話術(shù)引擎沒有接收到asr識別結(jié)果,則會詢問用戶是否聽到數(shù)字人說的話;
20、s43、詢問設(shè)定次數(shù)之后,如果仍然沒得到回應(yīng),則自動掛斷電話;如果期間話術(shù)引擎有接收到asr識別結(jié)果,則清空計時器;
21、s5、視頻呼叫默認不打開用戶手機攝像頭;
22、s51、使用語音發(fā)起呼叫;
23、s52、在用戶接聽之后,再發(fā)送媒體重協(xié)商信令,請求將語音通道切換成視頻通道;
24、s53、在協(xié)商的媒體報文中,指定視頻通道的媒體權(quán)限為:數(shù)字人服務(wù)器只能發(fā)送視頻、手機終端只能接收視頻,從而實現(xiàn)不需打開手機攝像頭的目的。
25、作為優(yōu)選地,步驟s11具體包括如下步驟:
26、s111、數(shù)字人服務(wù)器將接收到的音頻拆分成固定時長的數(shù)據(jù)包,然后使用websocket協(xié)議源源不斷地將數(shù)據(jù)包推送給asr服務(wù)器;
27、s112、asr服務(wù)器識別語音包的特征,將其轉(zhuǎn)換成文字,同樣使用websocket協(xié)議將文字推送給數(shù)字人服務(wù)器。
28、作為優(yōu)選地,步驟s14中的預(yù)緩存文件的生成包括如下步驟:
29、s141、在一個話術(shù)模板制作完成并點擊發(fā)布之后,數(shù)字人服務(wù)器讀取出該話術(shù)模板中所有話術(shù)節(jié)點配置的文本內(nèi)容;
30、s142、每次讀取出一個節(jié)點的文本內(nèi)容,將其進行哈希計算,得到視頻文件名,將文本內(nèi)容傳遞給tts文本轉(zhuǎn)語音服務(wù)器,轉(zhuǎn)換出音頻文件;
31、s143、將音頻文件傳遞給數(shù)字人視頻合成服務(wù)器,轉(zhuǎn)換出以h264作為編碼格式的視頻文件,然后以視頻文件名命名保存到預(yù)設(shè)的磁盤目錄中。
32、作為優(yōu)選地,步驟s3具體包括如下步驟:
33、s31、數(shù)字人服務(wù)器每播放完一個視頻話術(shù)文件后,立刻接著播放一個設(shè)定時長的包含傾聽動作的視頻文件,傾聽動作包含點頭、微笑或手勢動作,動作不要大幅晃動,以達到與常規(guī)話術(shù)視頻文件平滑切換的目的;
34、s32、數(shù)字人服務(wù)器不斷地檢測用戶說話聲音的停頓時長,如果停頓時間超過預(yù)設(shè)的時長,就認為用戶已經(jīng)說完話了,進而啟動步驟s1的數(shù)字人話術(shù)匹配流程;
35、s33、數(shù)字人服務(wù)器終止傾聽動作的視頻,播放話術(shù)對應(yīng)的視頻。
36、第二方面,本發(fā)明提供一種數(shù)字人視頻交互系統(tǒng),包括數(shù)字人回應(yīng)用戶說話模塊、語音平滑切換視頻模塊、數(shù)字人傾聽用戶說話模塊、自動感知終端不說話模塊和呼叫默認不打開攝像頭模塊;
37、所述數(shù)字人回應(yīng)用戶說話模塊包括:
38、語音轉(zhuǎn)換文字單元,用于數(shù)字人服務(wù)器接收用戶的聲音,并將語音推送給asr服務(wù)器,asr服務(wù)器將語音轉(zhuǎn)換成文字;
39、文字拆分關(guān)鍵字單元,用于數(shù)字人服務(wù)器接收到asr服務(wù)器的文字后,以esl事件的方式推送給ai話術(shù)引擎,ai話術(shù)引擎將文字內(nèi)容拆分為有意義的一組關(guān)鍵字;
40、話術(shù)匹配單元,用于ai話術(shù)引擎從話術(shù)模板庫中調(diào)用出預(yù)設(shè)的話術(shù)模板,然后使用關(guān)鍵字從話術(shù)模板中匹配出話術(shù)節(jié)點,并從所有匹配到的話術(shù)節(jié)點中,選出得分最高的話術(shù)節(jié)點作為匹配結(jié)果;
41、視頻文件推送單元,用于數(shù)字人服務(wù)器讀取出話術(shù)節(jié)點中的話術(shù)文本,將其進行哈希計算,得出該話術(shù)文本的唯一標識作為視頻文件名,然后從磁盤中讀取出以該視頻文件名命名的預(yù)緩存文件,并將該視頻文件的數(shù)據(jù)流通過rtp的方式推送給手機終端;
42、所述語音平滑切換視頻模塊包括:
43、語音外呼單元,用于數(shù)字人服務(wù)器使用語音方式發(fā)起外呼,用戶接通后,機器人與用戶處于語音通訊模式;
44、視頻通話邀請單元,用于數(shù)字人服務(wù)器發(fā)送媒體重協(xié)商信令,邀請手機終端進行視頻通話;
45、視頻通話成功單元,用于數(shù)字人服務(wù)器接收媒體重協(xié)商成功事件;
46、語音終止單元,用于調(diào)用外呼服務(wù)組件的uuid_break命令,強行終止外呼服務(wù)器對該語音話術(shù)的播放,并記住語音話術(shù)當(dāng)前的進度條偏移量;
47、視頻切換單元,用于數(shù)字人服務(wù)器使用該進度條偏移量作為視頻話術(shù)文件的起始播放位置,將視頻流推送給手機終端,從而達到平滑切換的目的;
48、所述數(shù)字人傾聽用戶說話模塊用于在ai視頻通話的場景中,ai播放完視頻話術(shù)文件之后,在等待客戶回應(yīng)、或者用戶回應(yīng)了但是一句話還沒說完的過程中,不能無畫面或者停止畫面,立刻接著播放一個包含傾聽動作的視頻文件;
49、所述自動感知終端不說話模塊包括:
50、計時器開啟單元,用于系統(tǒng)在每次播放完常規(guī)的話術(shù)之后,開啟一個計時器;
51、詢問是否聽到單元,用于如果期間話術(shù)引擎沒有接收到asr識別結(jié)果,則會詢問用戶是否聽到數(shù)字人說的話;
52、計時器清空單元,用于詢問設(shè)定次數(shù)之后,如果仍然沒得到回應(yīng),則自動掛斷電話;如果期間話術(shù)引擎有接收到asr識別結(jié)果,則清空計時器;
53、所述呼叫默認不打開攝像頭模塊包括:
54、語音發(fā)起單元,用于使用語音發(fā)起呼叫;
55、視頻請求單元,用于在用戶接聽之后,再發(fā)送媒體重協(xié)商信令,請求將語音通道切換成視頻通道;
56、不打開攝像頭單元,用于在協(xié)商的媒體報文中,指定視頻通道的媒體權(quán)限為:數(shù)字人服務(wù)器只能發(fā)送視頻、手機終端只能接收視頻,從而實現(xiàn)不需打開手機攝像頭的目的。
57、作為優(yōu)選地,所述語音轉(zhuǎn)換文字單元包括:
58、音頻發(fā)送子單元,用于數(shù)字人服務(wù)器將接收到的音頻拆分成固定時長的數(shù)據(jù)包,然后使用websocket協(xié)議源源不斷地將數(shù)據(jù)包推送給asr服務(wù)器;
59、文字轉(zhuǎn)換子單元,用于asr服務(wù)器識別語音包的特征,將其轉(zhuǎn)換成文字,同樣使用websocket協(xié)議將文字推送給數(shù)字人服務(wù)器。
60、作為優(yōu)選地,所述視頻文件推送單元包括:
61、文本內(nèi)容讀取子單元,用于在一個話術(shù)模板制作完成并點擊發(fā)布之后,數(shù)字人服務(wù)器讀取出該話術(shù)模板中所有話術(shù)節(jié)點配置的文本內(nèi)容;
62、音頻文件轉(zhuǎn)換子單元,用于每次讀取出一個節(jié)點的文本內(nèi)容,將其進行哈希計算,得到視頻文件名,將文本內(nèi)容傳遞給tts文本轉(zhuǎn)語音服務(wù)器,轉(zhuǎn)換出音頻文件;
63、視頻文件保存子單元,用于將音頻文件傳遞給數(shù)字人視頻合成服務(wù)器,轉(zhuǎn)換出以h264作為編碼格式的視頻文件,然后以視頻文件名命名保存到預(yù)設(shè)的磁盤目錄中。
64、作為優(yōu)選地,所述數(shù)字人傾聽用戶說話模塊包括:
65、傾聽視頻播放單元,用于數(shù)字人服務(wù)器每播放完一個視頻話術(shù)文件后,立刻接著播放一個設(shè)定時長的包含傾聽動作的視頻文件,傾聽動作包含點頭、微笑或手勢動作,動作不要大幅晃動,以達到與常規(guī)話術(shù)視頻文件平滑切換的目的;
66、用戶說話檢測單元,用于數(shù)字人服務(wù)器不斷地檢測用戶說話聲音的停頓時長,如果停頓時間超過預(yù)設(shè)的時長,就認為用戶已經(jīng)說完話了,進而啟動步驟s1的數(shù)字人話術(shù)匹配流程;
67、話術(shù)視頻播放單元,用于數(shù)字人服務(wù)器終止傾聽動作的視頻,播放話術(shù)對應(yīng)的視頻。
68、第三方面,本發(fā)明提供一種電子設(shè)備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述處理器執(zhí)行所述程序時實現(xiàn)如本發(fā)明第一方面所述數(shù)字人視頻交互方法的步驟。
69、第四方面,本發(fā)明提供一種非暫態(tài)計算機可讀存儲介質(zhì),其上存儲有計算機程序,該計算機程序被處理器執(zhí)行時實現(xiàn)如本發(fā)明第一方面所述數(shù)字人視頻交互方法的步驟。
70、與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果至少包括:
71、本發(fā)明的數(shù)字人視頻交互方法及系統(tǒng),數(shù)字人能有效對用戶的話語進行回應(yīng),在語音通話過程中,用戶接受數(shù)字人的視頻邀請后,ai能平滑切換至視頻,視頻通話過程中,能實現(xiàn)數(shù)字人自然傾聽用戶說話的效果,在通話過程中,如果用戶一直不回應(yīng),數(shù)字人能自動感知手機終端不說話,避免持續(xù)的產(chǎn)生通信費用,從而帶來的經(jīng)濟損失,對于機器人外呼的場景,默認不打開用戶手機攝像頭,能很好地保護用戶手機終端隱私,增加用戶通話的意愿,提高對話輪次,進而提高轉(zhuǎn)化率,最終提高了用戶的沉浸感和互動體驗的真實性。